public void read(Reader reader) { folder = reader.readRSDKString(); actID = reader.readRSDKString(); name = reader.readRSDKString(); highlighted = reader.ReadBoolean(); }
public void read(Reader reader) { // General loadGlobalObjects = reader.ReadBoolean(); // Palettes stagePalette.read(reader, 2); // SoundFX soundFX.Clear(); byte sfxCount = reader.ReadByte(); for (int i = 0; i < sfxCount; ++i) { GameConfig.SoundInfo info = new GameConfig.SoundInfo(); info.name = reader.readRSDKString(); soundFX.Add(info); } foreach (GameConfig.SoundInfo info in soundFX) { info.path = reader.readRSDKString(); } // Objects objects.Clear(); byte objectCount = reader.ReadByte(); for (int i = 0; i < objectCount; ++i) { GameConfig.ObjectInfo info = new GameConfig.ObjectInfo(); info.name = reader.readRSDKString(); objects.Add(info); } foreach (GameConfig.ObjectInfo info in objects) { info.script = reader.readRSDKString(); } reader.Close(); }
public void read(Reader reader) { title = reader.readRSDKString(); activeLayer0 = (ActiveLayers)reader.ReadByte(); activeLayer1 = (ActiveLayers)reader.ReadByte(); activeLayer2 = (ActiveLayers)reader.ReadByte(); activeLayer3 = (ActiveLayers)reader.ReadByte(); layerMidpoint = (LayerMidpoints)reader.ReadByte(); // Map width in 128 pixel units // In RSDKv4 it's one byte long (with an unused byte after each one), little-endian width = reader.ReadByte(); reader.ReadByte(); // Unused height = reader.ReadByte(); reader.ReadByte(); // Unused layout = new ushort[height][]; for (int i = 0; i < height; i++) { layout[i] = new ushort[width]; } for (int y = 0; y < height; y++) { for (int x = 0; x < width; x++) { // 128x128 Block number is 16-bit // Little-Endian in RSDKv4 layout[y][x] = reader.ReadByte(); layout[y][x] |= (ushort)(reader.ReadByte() << 8); } } // Read entities // 2 bytes, little-endian, unsigned int entityCount = reader.ReadByte(); entityCount |= reader.ReadByte() << 8; entities.Clear(); for (int o = 0; o < entityCount; o++) { entities.Add(new Entity(reader)); } reader.Close(); }
public void read(Reader reader) { // General gameTitle = reader.readRSDKString(); gameDescription = reader.readRSDKString(); // Palettes masterPalette = new Palette(reader, 6); // Objects objects.Clear(); byte objectCount = reader.ReadByte(); for (int i = 0; i < objectCount; ++i) { ObjectInfo info = new ObjectInfo(); info.name = reader.readRSDKString(); objects.Add(info); } foreach (ObjectInfo info in objects) { info.script = reader.readRSDKString(); } // Global Variables globalVariables.Clear(); byte globalVariableCount = reader.ReadByte(); for (int i = 0; i < globalVariableCount; i++) { globalVariables.Add(new GlobalVariable(reader)); } // SoundFX soundFX.Clear(); byte sfxCount = reader.ReadByte(); for (int i = 0; i < sfxCount; ++i) { SoundInfo info = new SoundInfo(); info.name = reader.readRSDKString(); soundFX.Add(info); } foreach (SoundInfo info in soundFX) { info.path = reader.readRSDKString(); } // Players players.Clear(); byte playerCount = reader.ReadByte(); for (int i = 0; i < playerCount; i++) { players.Add(reader.readRSDKString()); } // Stages stageLists.Clear(); stageLists.Add(new StageList(reader)); //Presentation Stages stageLists.Add(new StageList(reader)); //Regular Stages stageLists.Add(new StageList(reader)); //Special Stages stageLists.Add(new StageList(reader)); //Bonus Stages reader.Close(); }