public void Randomize(Patch p, Random r) { EnemyTypes.Clear(); EnemiesByType.Clear(); RoomGroups.Clear(); EnemyInstances.Clear(); ReadEnemyInstancesFromFile(); ChangeRoomSpriteBankSlots(p); InitializeEnemies(); InitializeRooms(); Execute(p, r); Utilities.MiscHacks.DisableChangkeyMakerPaletteSwap(p); }
public void InitializeEnemies() { EnemyTypes.Add(new EnemyType(EEnemyID.Claw_Activator, new List <byte>() { 0x9D, 0x03 }, new List <int>() { 3 }, true, true)); EnemyTypes.Add(new EnemyType(EEnemyID.Tanishi, new List <byte>() { 0x9B, 0x03, 0x9C, 0x03 }, new List <int>() { 0, 1 }, false)); EnemyTypes.Add(new EnemyType(EEnemyID.Kerog, new List <byte>() { 0x9B, 0x02, 0x9C, 0x02, 0x9D, 0x02 }, new List <int>() { 0, 1, 2 }, false, false, -4)); EnemyTypes.Add(new EnemyType(EEnemyID.Batton, new List <byte>() { 0x94, 0x02, 0x93, 0x02 }, new List <int>() { 3, 4 }, false, true)); EnemyTypes.Add(new EnemyType(EEnemyID.Robbit, new List <byte>() { 0x98, 0x02, 0x99, 0x02, 0x9A, 0x02 }, new List <int>() { 0, 1, 2 }, false)); EnemyTypes.Add(new EnemyType(EEnemyID.Monking, new List <byte>() { 0x98, 0x01, 0x99, 0x01, 0x9A, 0x01, 0x9B, 0x01 }, new List <int>() { 0, 1, 2, 3 }, false)); // TODO EnemyTypes.Add(new EnemyType(EEnemyID.Kukku_Activator, new List <byte>() { 0x90, 0x01, 0x91, 0x01, 0x92, 0x01, 0x93, 0x01 }, new List <int>() { 0, 1, 2, 3 }, true, true)); EnemyTypes.Add(new EnemyType(EEnemyID.Telly, new List <byte>() { 0x93, 0x01 }, new List <int>() { 4 }, false, true)); EnemyTypes.Add(new EnemyType(EEnemyID.ChangkeyMaker, new List <byte>() { 0x90, 0x04, 0x91, 0x04, 0x92, 0x04, 0x93, 0x04 }, new List <int>() { 0, 1, 2, 4 }, false, false, -4)); EnemyTypes.Add(new EnemyType(EEnemyID.Pierrobot, new List <byte>() { 0x96, 0x01, 0x97, 0x01 }, new List <int>() { 0, 1 }, false)); EnemyTypes.Add(new EnemyType(EEnemyID.FlyBoy, new List <byte>() { 0x94, 0x01, 0x95, 0x01 }, new List <int>() { 0, 1 }, false, true)); EnemyTypes.Add(new EnemyType(EEnemyID.Press, new List <byte>() { 0x9E, 0x04 }, new List <int>() { 3 }, false, true)); EnemyTypes.Add(new EnemyType(EEnemyID.Blocky, new List <byte>() { 0x9E, 0x03 }, new List <int>() { 3 }, false, false, -32)); EnemyTypes.Add(new EnemyType(EEnemyID.NeoMetall, new List <byte>() { 0x92, 0x02, 0x9A, 0x03 }, new List <int>() { 2, 3 }, false)); EnemyTypes.Add(new EnemyType(EEnemyID.Matasaburo, new List <byte>() { 0x90, 0x02, 0x91, 0x02, 0x92, 0x02 }, new List <int>() { 0, 1, 2 }, false, false, -4)); EnemyTypes.Add(new EnemyType(EEnemyID.Pipi_Activator, new List <byte>() { 0x9C, 0x01 }, new List <int>() { 4 }, true, true)); EnemyTypes.Add(new EnemyType(EEnemyID.LightningGoro, new List <byte>() { 0x9D, 0x01, 0x9E, 0x01, 0x9F, 0x01 }, new List <int>() { 0, 1, 2 }, false)); EnemyTypes.Add(new EnemyType(EEnemyID.Mole_Activator, new List <byte>() { 0x90, 0x03 }, new List <int>() { 4 }, true, true)); EnemyTypes.Add(new EnemyType(EEnemyID.Shotman_Left, new List <byte>() { 0x98, 0x03, 0x99, 0x03 }, new List <int>() { 0, 1 }, false)); EnemyTypes.Add(new EnemyType(EEnemyID.SniperArmor, new List <byte>() { 0x91, 0x03, 0x92, 0x03, 0x93, 0x03, 0x94, 0x03, 0x95, 0x03 }, new List <int>() { 0, 1, 2, 3, 4 }, false, false, -16)); EnemyTypes.Add(new EnemyType(EEnemyID.SniperJoe, new List <byte>() { 0x94, 0x03, 0x95, 0x03 }, new List <int>() { 3, 4 }, false)); EnemyTypes.Add(new EnemyType(EEnemyID.Scworm, new List <byte>() { 0x9E, 0x04 }, new List <int>() { 3 }, false, false, 8)); EnemyTypes.Add(new EnemyType(EEnemyID.Springer, new List <byte>() { 0x9F, 0x03 }, new List <int>() { 5 }, false, false, 4)); //EnemyTypes.Add(new EnemyType(EEnemyID.PetitGoblin, // new List<byte>() { 0x96, 0x03 }, // new List<int>() { 5 })); EnemyTypes.Add(new EnemyType(EEnemyID.Shrink, new List <byte>() { 0x9E, 0x02, 0x9F, 0x02 }, new List <int>() { 0, 1 }, false)); //EnemyTypes.Add(new EnemyType(EEnemyID.BigFish, // new List<byte>() { 0x94, 0x04, 0x95, 0x04, 0x96, 0x04, 0x97, 0x04 }, // new List<int>() { 0, 1, 2, 3 })); EnemyTypes.Add(new EnemyType(EEnemyID.M445_Activator, new List <byte>() { 0x97, 0x02 }, new List <int>() { 2 }, true, true)); // Copy enemy list to dictionary foreach (EnemyType e in EnemyTypes) { EnemiesByType.Add(e.ID, e); } }