You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

54 lines
1.4 KiB

namespace ET
{
[FriendClass(typeof(Cabin))]
public static class CabinSystem
{
public static void FromMessage(this Cabin self, CabinProto proto)
{
self.Id = proto.Id;
self.PeopleId = proto.PeopleId;
self.FarmlandIds = proto.FarmlandIds;
}
public static CabinProto ToMessage(this Cabin self)
{
var proto = new CabinProto();
proto.Id = self.Id;
proto.PeopleId = self.PeopleId;
proto.FarmlandIds = self.FarmlandIds;
return proto;
}
public static void PeoplePrepare(this Cabin self,long peopleId)
{
self.PeopleId = peopleId;
}
public static bool PeopleArrive(this Cabin self,long peopleId)
{
if (self.PeopleId != peopleId)
{
return false;
}
self.ResidentState = 1;
return true;
}
public static void PeopleLeave(this Cabin self)
{
self.ResidentState = 0;
self.PeopleId = 0;
}
public static bool AddFarmland(this Cabin self,long farmlandId)
{
if (self.FarmlandIds.Contains(farmlandId))
{
return false;
}
self.FarmlandIds.Add(farmlandId);
return true;
}
}
}