public ServerCurrentStateTransferMessage SetExit(int x, int y) { this.Exit = this.Exit ?? PointSubMessage.Create(); this.Exit.X = x; this.Exit.Y = y; return(this); }
public void Reset() { UnitId = 0; Hp = 0; Position?.Free(); Position = null; }
public ServerCurrentStateTransferMessage AddDoor(int x, int y) { var door = PointSubMessage.Create(); door.X = x; door.Y = y; this.Doors.Add(door); return(this); }
public ServerCurrentStateTransferMessage AddUnit(int playerIndex, int unitId, int posX, int posY, int hp) { var unit = UnitSubMessage.Create(); unit.Hp = hp; unit.UnitId = unitId; unit.Position = PointSubMessage.Create(); unit.Position.X = posX; unit.Position.Y = posY; this.Players[playerIndex].Units.Add(unit); return(this); }
public ClientTurnDoneTransferMessage SetNewPosition(int unitId, int x, int y) { if (!UnitActions.ContainsKey(unitId)) { UnitActions[unitId] = UnitActionSubMessage.Create(); } UnitActions[unitId].NewPosition = UnitActions[unitId].NewPosition ?? PointSubMessage.Create(); UnitActions[unitId].NewPosition.X = x; UnitActions[unitId].NewPosition.Y = y; return(this); }