public override void Serialize(IDataWriter writer) { writer.WriteVarShort((int)subAreaId); writer.WriteDouble(mapId); writer.WriteShort((short)houses.Length); foreach (var entry in houses) { writer.WriteShort(entry.TypeId); entry.Serialize(writer); } writer.WriteShort((short)actors.Length); foreach (var entry in actors) { writer.WriteShort(entry.TypeId); entry.Serialize(writer); } writer.WriteShort((short)interactiveElements.Length); foreach (var entry in interactiveElements) { writer.WriteShort(entry.TypeId); entry.Serialize(writer); } writer.WriteShort((short)statedElements.Length); foreach (var entry in statedElements) { entry.Serialize(writer); } writer.WriteShort((short)obstacles.Length); foreach (var entry in obstacles) { entry.Serialize(writer); } writer.WriteShort((short)fights.Length); foreach (var entry in fights) { entry.Serialize(writer); } writer.WriteBoolean(hasAggressiveMonsters); fightStartPositions.Serialize(writer); }
public override void Serialize(IWriter writer) { writer.WriteInt(mapId); fightStartPositions.Serialize(writer); }
public override void Serialize(IDataWriter writer) { writer.WriteVarShort(subAreaId); writer.WriteInt(mapId); var houses_before = writer.Position; var houses_count = 0; writer.WriteShort(0); foreach (var entry in houses) { writer.WriteShort(entry.TypeId); entry.Serialize(writer); houses_count++; } var houses_after = writer.Position; writer.Seek((int)houses_before); writer.WriteShort((short)houses_count); writer.Seek((int)houses_after); var actors_before = writer.Position; var actors_count = 0; writer.WriteShort(0); foreach (var entry in actors) { writer.WriteShort(entry.TypeId); entry.Serialize(writer); actors_count++; } var actors_after = writer.Position; writer.Seek((int)actors_before); writer.WriteShort((short)actors_count); writer.Seek((int)actors_after); var interactiveElements_before = writer.Position; var interactiveElements_count = 0; writer.WriteShort(0); foreach (var entry in interactiveElements) { writer.WriteShort(entry.TypeId); entry.Serialize(writer); interactiveElements_count++; } var interactiveElements_after = writer.Position; writer.Seek((int)interactiveElements_before); writer.WriteShort((short)interactiveElements_count); writer.Seek((int)interactiveElements_after); var statedElements_before = writer.Position; var statedElements_count = 0; writer.WriteShort(0); foreach (var entry in statedElements) { entry.Serialize(writer); statedElements_count++; } var statedElements_after = writer.Position; writer.Seek((int)statedElements_before); writer.WriteShort((short)statedElements_count); writer.Seek((int)statedElements_after); var obstacles_before = writer.Position; var obstacles_count = 0; writer.WriteShort(0); foreach (var entry in obstacles) { entry.Serialize(writer); obstacles_count++; } var obstacles_after = writer.Position; writer.Seek((int)obstacles_before); writer.WriteShort((short)obstacles_count); writer.Seek((int)obstacles_after); var fights_before = writer.Position; var fights_count = 0; writer.WriteShort(0); foreach (var entry in fights) { entry.Serialize(writer); fights_count++; } var fights_after = writer.Position; writer.Seek((int)fights_before); writer.WriteShort((short)fights_count); writer.Seek((int)fights_after); writer.WriteBoolean(hasAggressiveMonsters); fightStartPositions.Serialize(writer); }
public override void Serialize(IDataWriter writer) { writer.WriteDouble(mapId); fightStartPositions.Serialize(writer); }