private static int CommandListPrintout(int id, SceneHeader header, int sceneId, int roomId, StringBuilder result) { List <List <SceneCommand> > commandList = header.GetAllCommandsWithId(id); AppendCommandList(commandList, sceneId, roomId, result); return(GetSublistCount(commandList)); }
private static int ActorListPrintout(int id, SceneHeader header, int sceneId, int roomId, StringBuilder result) { List <List <ActorSpawn> > actorList = header.GetActorsWithId(id); AppendActorList(actorList, sceneId, roomId, result); return(GetSublistCount(actorList)); }
private static int ObjectListPrintout(int id, SceneHeader header, int sceneId, int roomId, StringBuilder result) { List <List <ushort> > objectList = header.GetObjectsWithId(id); AppendObjectList(objectList, sceneId, roomId, result); return(GetSublistCount(objectList)); }
private static string ReadHeader(SceneHeader Header) { StringBuilder result = new StringBuilder(); result.AppendLine("Setup 0: 00000000"); result.AppendLine(Header.Read()); if (Header.HasAlternateHeaders()) { var Alternate = Header.Alternate; for (int i = 0; i < Alternate.Headers.Count; i++) { if (Alternate.Headers[i] == null) { continue; } if (i < 3) { result.Append($"Setup {(i + 1)}: "); } else { result.Append($"Cutscene {(i - 3)}: "); } result.AppendLine(Alternate.Offsets[i].Offset.ToString("X8")); result.AppendLine(Alternate.Headers[i].Read()); } } return(result.ToString()); }
private static List <ItemLocation <T> > CreateList <T>(int id, SceneHeader header, int scene, int room, CreateListThings <T> del) { List <ItemLocation <T> > result = new List <ItemLocation <T> >(); List <List <T> > test = del(id); for (int i = 0; i < test.Count; i++) { SceneRoomSetup srs = new SceneRoomSetup(scene, room, i); foreach (var item in test[i]) { result.Add(new ItemLocation <T>(item, srs)); } } return(result); }
public Scene(Game game, int id, FileAddress address) { Header = new SceneHeader(game); VirtualAddress = address; Id = id; }
public Room(Game game, FileAddress a) { Header = new SceneHeader(game); VirtualAddress = a; }