public static Serialize ( |
||
s | ||
squad | ||
return | void |
public static void Serialize(BinaryWriter s, RTSSquad squad)
{
s.Write(squad.units.Count);
foreach(var unit in squad.units) {
s.Write(unit.UUID);
}
s.Write(squad.GridPosition);
if(squad.ActionController != null) {
s.Write(true);
squad.ActionController.Serialize(s);
}
else {
s.Write(false);
}
if(squad.MovementController != null) {
s.Write(true);
squad.MovementController.Serialize(s);
}
else {
s.Write(false);
}
if(squad.TargetingController != null) {
s.Write(true);
squad.TargetingController.Serialize(s);
}
else {
s.Write(false);
}
}
public static void Serialize(BinaryWriter s, RTSTeam team) { s.Write(team.Type); RTSRace.Serialize(s, team.Race); if (team.Input != null) { s.Write(true); s.Write(ReflectedScript.GetKey(team.Input)); team.Input.Serialize(s); } else { s.Write(false); } s.Write(team.ColorScheme.Name); s.Write(team.ColorScheme.Primary); s.Write(team.ColorScheme.Secondary); s.Write(team.ColorScheme.Tertiary); s.Write(team.Buildings.Count); foreach (var building in team.Buildings) { RTSBuilding.Serialize(s, building); } s.Write(team.Units.Count); foreach (var unit in team.Units) { RTSUnit.Serialize(s, unit); } s.Write(team.Squads.Count); foreach (var squad in team.Squads) { RTSSquad.Serialize(s, squad); } }