protected override void OnTick() { if (m_Item.Deleted) { return; } Mobile spawn; switch (Utility.Random(1)) { default: case 0: spawn = new Harpy(); break; } spawn.Map = m_Item.Map; spawn.Location = m_Item.Location; m_Item.Delete(); }
/// <summary>Makes the unit from server data.</summary> /// <param name="unitType">Type of the unit.</param> /// <param name="size">The size.</param> /// <param name="unitID">The unit identifier.</param> /// <param name="context">The context.</param> /// <returns>A <see cref="EditUnitViewModel"/></returns> public ViewArmyManagerViewModel.UnitViewModel MakeUnitFromServerData(int unitType, int size, int unitID, ArmyDataContext context) { Unit newUnit; switch (unitType) { case 1: newUnit = new Termagant(); break; case 2: newUnit = new HiveTyrant(); break; case 3: newUnit = new HiveGuard(); break; case 4: newUnit = new Lictor(); break; case 5: newUnit = new Zoanthrope(); break; case 6: newUnit = new Venomthrope(); break; case 7: newUnit = new Haruspex(); break; case 8: newUnit = new Pyrovore(); break; case 9: newUnit = new Gargoyle(); break; case 10: newUnit = new Harpy(); break; case 11: newUnit = new HiveCrone(); break; case 12: newUnit = new SporeMine(); break; case 13: newUnit = new Biovore(); break; case 14: newUnit = new Tyrannofex(); break; case 15: newUnit = new Deathleaper(); break; case 16: newUnit = new OldOneEye(); break; case 17: newUnit = new Hormagaunt(); break; case 18: newUnit = new RipperSwarm(); break; default: newUnit = new Termagant(); break; } newUnit.CurrentSize = size; newUnit.UnitID = unitID; var listWargear = (from wargear in context.Engage_Unit_Wargears join names in context.Engage_WargearUpgrades on wargear.WargearID equals names.WargearID where wargear.UnitID == unitID select new { wargear.Amount, names.Wargear }) .ToDictionary(a => a.Wargear, a => a.Amount); foreach (var wargear in listWargear) { newUnit.SetWargear(wargear.Key, wargear.Value); } var listRules = from rules in context.Engage_Unit_Rules join names in context.Engage_RulesUpgrades on rules.RuleID equals names.RuleID where rules.UnitID == unitID select names.RuleName; foreach (var rule in listRules) { newUnit.SetUpgrade(rule); } var editUrl = this.ModuleContext.EditUrl( "UnitId", unitID.ToString(CultureInfo.InvariantCulture), "EditUnit"); var newUnitModel = new ViewArmyManagerViewModel.UnitViewModel(newUnit, editUrl); return(newUnitModel); }
/// <summary>Makes the unit from string.</summary> /// <param name="name">The name.</param> /// <returns><see cref="Unit"/></returns> public static Unit MakeUnitFromString(string name) { Unit newUnit; switch (name) { case "Termagant Brood": newUnit = new Termagant(); break; case "Hive Tyrant": newUnit = new HiveTyrant(); break; case "Hive Guard": newUnit = new HiveGuard(); break; case "Lictor Brood": newUnit = new Lictor(); break; case "Zoanthrope Brood": newUnit = new Zoanthrope(); break; case "Venomthrope Brood": newUnit = new Venomthrope(); break; case "Haruspex": newUnit = new Haruspex(); break; case "Pyrovore Brood": newUnit = new Pyrovore(); break; case "Gargoyle Brood": newUnit = new Gargoyle(); break; case "Harpy": newUnit = new Harpy(); break; case "Hive Crone": newUnit = new HiveCrone(); break; case "Spore Mine Cluster": newUnit = new SporeMine(); break; case "Biovore Brood": newUnit = new Biovore(); break; case "Tyrannofex": newUnit = new Tyrannofex(); break; case "Deathleaper": newUnit = new Deathleaper(); break; case "Old One Eye": newUnit = new OldOneEye(); break; case "Hormagaunt Brood": newUnit = new Hormagaunt(); break; case "Ripper Swarm Brood": newUnit = new RipperSwarm(); break; default: // TODO: make better default newUnit = new Termagant(); break; } return(newUnit); }
public Character GetEnemy(int id) { Character nextChar; switch (id) { //Low level case 100: nextChar = new Bat(); return(nextChar); case 101: nextChar = new Rat(); return(nextChar); case 102: nextChar = new Kobold(); return(nextChar); case 103: nextChar = new Slime(); return(nextChar); case 104: nextChar = new Farmer(); return(nextChar); case 105: nextChar = new Imp(); return(nextChar); case 106: nextChar = new Zombie(); return(nextChar); case 107: nextChar = new Phantom(); return(nextChar); case 108: nextChar = new Goblin(); return(nextChar); case 109: nextChar = new Witch(); return(nextChar); //Mid level case 110: nextChar = new Harpy(); return(nextChar); case 111: nextChar = new Elemental(); return(nextChar); case 112: nextChar = new Nymph(); return(nextChar); case 113: nextChar = new Vampire(); return(nextChar); case 114: nextChar = new Lamia(); return(nextChar); case 115: nextChar = new Qilin(); return(nextChar); case 116: nextChar = new Unicorn(); return(nextChar); case 117: nextChar = new Jinn(); return(nextChar); case 118: nextChar = new Xorn(); return(nextChar); case 119: nextChar = new Antlion(); return(nextChar); //High level case 120: nextChar = new Yeti(); return(nextChar); case 121: nextChar = new Orc(); return(nextChar); case 122: nextChar = new Minotaur(); return(nextChar); case 123: nextChar = new Troll(); return(nextChar); case 124: nextChar = new Cyclop(); return(nextChar); case 125: nextChar = new Drake(); return(nextChar); default: nextChar = new Slime(); return(nextChar); } }