public Miniboss AddMinibossEntity(MinibossData data) { MinibossPrototype proto = MinibossDatabase.GetMinibossPrototype(data.type); Miniboss temp = null; switch (proto.minibossType) { case MinibossType.BogBeast: temp = new BogBeast(proto); temp.Spawn(GetMapTilePosition(data.TilePosition)); break; case MinibossType.Salamander: temp = new Salamander(proto); temp.Spawn(GetMapTilePosition(data.TilePosition)); break; case MinibossType.IceShard: temp = new IceShard(proto); temp.Spawn(GetMapTilePosition(data.TilePosition)); break; case MinibossType.Shroombo: temp = new Shroombo(proto); temp.Spawn(GetMapTilePosition(data.TilePosition)); break; case MinibossType.GiantCrab: temp = new GiantCrab(proto); temp.Spawn(GetMapTilePosition(data.TilePosition)); break; case MinibossType.Voidbeast: temp = new Voidbeast(proto); temp.Spawn(GetMapTilePosition(data.TilePosition)); break; } return(temp); }
protected virtual void FinishEffect(Point3D p, Map map, Mobile from) { from.RevealingAction(); int count = Utility.RandomMinMax(1, 6); int onBoat = 0; string monster = ""; Point3D SpawnAt = p; switch (Utility.Random(12)) { case 0: monster = "AquaticGhoul"; SpawnAt = from.Location; onBoat = 1; break; case 1: monster = "SeaWeeder"; SpawnAt = from.Location; onBoat = 1; break; case 2: monster = "SeaSnake"; break; case 3: monster = "WaterBeetle"; break; case 4: monster = "WaterStrider"; break; case 5: monster = "OilSlick"; break; case 6: monster = "FloatingEye"; break; case 7: monster = "SeaTroll"; SpawnAt = from.Location; onBoat = 1; break; case 8: monster = "WaterElemental"; break; case 9: monster = "GiantCrab"; break; case 10: monster = "GiantLamprey"; break; case 11: monster = "Locathah"; SpawnAt = from.Location; onBoat = 1; break; } for (int i = 0; map != null && i < count; ++i) { BaseCreature spawn = new AquaticGhoul(); if (monster == "AquaticGhoul") { spawn = new AquaticGhoul(); } else if (monster == "SeaWeeder") { spawn = new SeaWeeder(); } else if (monster == "SeaSnake") { spawn = new SeaSnake(); } else if (monster == "WaterBeetle") { spawn = new WaterBeetle(); } else if (monster == "WaterStrider") { spawn = new WaterStrider(); } else if (monster == "OilSlick") { spawn = new OilSlick(); } else if (monster == "FloatingEye") { spawn = new FloatingEye(); } else if (monster == "SeaTroll") { spawn = new SeaTroll(); } else if (monster == "WaterElemental") { spawn = new WaterElemental(); } else if (monster == "GiantCrab") { spawn = new GiantCrab(); } else if (monster == "GiantLamprey") { spawn = new GiantLamprey(); } else if (monster == "Locathah") { spawn = new Locathah(); } Spawn(SpawnAt, map, spawn, onBoat); spawn.WhisperHue = 999; // SO TASK MANAGER DELETES THEM EVENTUALLY spawn.Combatant = from; } Delete(); }