public Minion( MinionSpawnType type, MinionSpawnPosition position, uint netId = 0 ) : this(type, position, new List <Vector2>(), netId) { }
public Minion( Game game, MinionSpawnType spawnType, MinionSpawnPosition position, uint netId = 0 ) : this(game, spawnType, position, new List <Vector2>(), netId) { }
public Minion(Game game, uint id, MinionSpawnType type, MinionSpawnPosition position, List <Vector2> mainWaypoints) : base(game, id, "", new MinionStats(), 40, 0, 0, 1100) { this.minionType = type; this.spawnPosition = position; this.mainWaypoints = mainWaypoints; this.curMainWaypoint = 0; var spawnSpecifics = _game.GetMap().GetMinionSpawnPosition(spawnPosition); setTeam(spawnSpecifics.Item1); setPosition(spawnSpecifics.Item2.X, spawnSpecifics.Item2.Y); _game.GetMap().SetMinionStats(this); // Let the map decide how strong this minion has to be. string minionModel = ""; if (spawnSpecifics.Item1 == 0) // If we're the blue side { minionModel += "Blue_Minion_"; // make it a blue minion } else { minionModel += "Red_Minion_"; // otherwise make it a red minion } // Finish model name with type if (type == MinionSpawnType.MINION_TYPE_MELEE) { minionModel += "Basic"; } else if (type == MinionSpawnType.MINION_TYPE_CASTER) { minionModel += "Wizard"; } else { minionModel += "MechCannon"; } // Set model setModel(minionModel); if (mainWaypoints.Count > 0) // If we have lane path instructions from the map { setWaypoints(new List <Vector2> { mainWaypoints[0], mainWaypoints[1] }); // Follow these instructions } else { setWaypoints(new List <Vector2> { new Vector2(x, y), new Vector2(x, y) }); // Otherwise path to own position. (Stand still) } setMoveOrder(MoveOrder.MOVE_ORDER_ATTACKMOVE); }
public void SpawnMinion(List <MinionSpawnType> list, int minionNo, MinionSpawnPosition pos, List <Vector2> waypoints) { if (list.Count <= minionNo) { return; } var m = new Minion(_game, list[minionNo], pos, waypoints); _game.ObjectManager.AddObject(m); }
public override Tuple <TeamId, Vector2> GetMinionSpawnPosition(MinionSpawnPosition spawnPosition) { switch (spawnPosition) { case MinionSpawnPosition.SPAWN_BLUE_MID: return(new Tuple <TeamId, Vector2>(TeamId.TEAM_BLUE, new Vector2(1996, 2324))); case MinionSpawnPosition.SPAWN_RED_MID: return(new Tuple <TeamId, Vector2>(TeamId.TEAM_PURPLE, new Vector2(10835, 10376))); } return(new Tuple <TeamId, Vector2>(0, new Vector2())); }
public Minion( Game game, MinionSpawnType spawnType, MinionSpawnPosition position, List <Vector2> mainWaypoints, uint netId = 0 ) : base(game, "", new Stats.Stats(), 40, 0, 0, 1100, netId) { MinionSpawnType = spawnType; SpawnPosition = position; _mainWaypoints = mainWaypoints; _curMainWaypoint = 0; _aiPaused = false; var spawnSpecifics = _game.Map.MapGameScript.GetMinionSpawnPosition(SpawnPosition); SetTeam(spawnSpecifics.Item1); SetPosition(spawnSpecifics.Item2.X, spawnSpecifics.Item2.Y); _game.Map.MapGameScript.SetMinionStats(this); // Let the map decide how strong this minion has to be. // Set model Model = _game.Map.MapGameScript.GetMinionModel(spawnSpecifics.Item1, spawnType); // Fix issues induced by having an empty model string CollisionRadius = _game.Config.ContentManager.GetCharData(Model).PathfindingCollisionRadius; // If we have lane path instructions from the map if (mainWaypoints.Count > 0) { // Follow these instructions SetWaypoints(new List <Vector2> { mainWaypoints[0], mainWaypoints[1] }); } else { // Otherwise path to own position. (Stand still) SetWaypoints(new List <Vector2> { new Vector2(X, Y), new Vector2(X, Y) }); } MoveOrder = MoveOrder.MOVE_ORDER_ATTACKMOVE; Replication = new ReplicationMinion(this); }
public override Tuple <TeamId, Vector2> GetMinionSpawnPosition(MinionSpawnPosition spawnPosition) { switch (spawnPosition) { case MinionSpawnPosition.SPAWN_BLUE_TOP: return(new Tuple <TeamId, Vector2>(TeamId.TEAM_BLUE, new Vector2(2604, 7930))); case MinionSpawnPosition.SPAWN_BLUE_BOT: return(new Tuple <TeamId, Vector2>(TeamId.TEAM_BLUE, new Vector2(2600, 6633))); case MinionSpawnPosition.SPAWN_RED_TOP: return(new Tuple <TeamId, Vector2>(TeamId.TEAM_PURPLE, new Vector2(12712, 7900))); case MinionSpawnPosition.SPAWN_RED_BOT: return(new Tuple <TeamId, Vector2>(TeamId.TEAM_PURPLE, new Vector2(12721, 6602))); } return(new Tuple <TeamId, Vector2>(0, new Vector2())); }
public override Tuple <TeamId, Vector2> GetMinionSpawnPosition(MinionSpawnPosition spawnPosition) { switch (spawnPosition) { case MinionSpawnPosition.SPAWN_BLUE_TOP: return(new Tuple <TeamId, Vector2>(TeamId.TEAM_BLUE, new Vector2(1960, 6684))); case MinionSpawnPosition.SPAWN_BLUE_BOT: return(new Tuple <TeamId, Vector2>(TeamId.TEAM_BLUE, new Vector2(1960, 5977))); case MinionSpawnPosition.SPAWN_RED_TOP: return(new Tuple <TeamId, Vector2>(TeamId.TEAM_PURPLE, new Vector2(11420, 6617))); case MinionSpawnPosition.SPAWN_RED_BOT: return(new Tuple <TeamId, Vector2>(TeamId.TEAM_PURPLE, new Vector2(11420, 6024))); } return(new Tuple <TeamId, Vector2>(0, new Vector2())); }
public Minion(Map map, int id, MinionSpawnType type, MinionSpawnPosition position, List<Vector2> mainWaypoints) : base(map, id, "", new MinionStats(), 40, 0, 0, 1100) { this.type = type; this.spawnPosition = position; this.mainWaypoints = mainWaypoints; this.curMainWaypoint = 0; var spawnSpecifics = map.getMinionSpawnPosition(spawnPosition); setTeam(Convert.toTeamId(spawnSpecifics.Item1)); setPosition(spawnSpecifics.Item2.X, spawnSpecifics.Item2.Y); map.setMinionStats(this); // Let the map decide how strong this minion has to be. string minionModel = ""; if (spawnSpecifics.Item1 == 0) // If we're the blue side minionModel += "Blue_Minion_"; // make it a blue minion else minionModel += "Red_Minion_"; // otherwise make it a red minion // Finish model name with type if (type == MinionSpawnType.MINION_TYPE_MELEE) minionModel += "Basic"; else if (type == MinionSpawnType.MINION_TYPE_CASTER) minionModel += "Wizard"; else minionModel += "MechCannon"; // Set model setModel(minionModel); if (mainWaypoints.Count > 0) // If we have lane path instructions from the map setWaypoints(new List<Vector2> { mainWaypoints[0], mainWaypoints[1] }); // Follow these instructions else setWaypoints(new List<Vector2> { new Vector2(x, y), new Vector2(x, y) }); // Otherwise path to own position. (Stand still) setMoveOrder(MoveOrder.MOVE_ORDER_ATTACKMOVE); }
public Tuple <TeamId, Vector2> GetMinionSpawnPosition(MinionSpawnPosition spawnPosition) { switch (spawnPosition) { case MinionSpawnPosition.SPAWN_BLUE_TOP: return(new Tuple <TeamId, Vector2>(TeamId.TEAM_BLUE, new Vector2(907, 1715))); case MinionSpawnPosition.SPAWN_BLUE_BOT: return(new Tuple <TeamId, Vector2>(TeamId.TEAM_BLUE, new Vector2(1533, 1321))); case MinionSpawnPosition.SPAWN_BLUE_MID: return(new Tuple <TeamId, Vector2>(TeamId.TEAM_BLUE, new Vector2(1443, 1663))); case MinionSpawnPosition.SPAWN_RED_TOP: return(new Tuple <TeamId, Vector2>(TeamId.TEAM_PURPLE, new Vector2(14455, 13159))); case MinionSpawnPosition.SPAWN_RED_BOT: return(new Tuple <TeamId, Vector2>(TeamId.TEAM_PURPLE, new Vector2(12967, 12695))); case MinionSpawnPosition.SPAWN_RED_MID: return(new Tuple <TeamId, Vector2>(TeamId.TEAM_PURPLE, new Vector2(12433, 12623))); } return(new Tuple <TeamId, Vector2>(0, new Vector2())); }
public override Tuple <int, Vector2> getMinionSpawnPosition(MinionSpawnPosition spawnPosition) { switch (spawnPosition) { case MinionSpawnPosition.SPAWN_BLUE_TOP: return(new Tuple <int, Vector2>(0, new Vector2(907, 1715))); case MinionSpawnPosition.SPAWN_BLUE_BOT: return(new Tuple <int, Vector2>(0, new Vector2(1533, 1321))); case MinionSpawnPosition.SPAWN_BLUE_MID: return(new Tuple <int, Vector2>(0, new Vector2(1443, 1663))); case MinionSpawnPosition.SPAWN_RED_TOP: return(new Tuple <int, Vector2>(1, new Vector2(14455, 13159))); case MinionSpawnPosition.SPAWN_RED_BOT: return(new Tuple <int, Vector2>(1, new Vector2(12967, 12695))); case MinionSpawnPosition.SPAWN_RED_MID: return(new Tuple <int, Vector2>(1, new Vector2(12433, 12623))); } return(new Tuple <int, Vector2>(0, new Vector2())); }
public virtual Tuple<int, Vector2> getMinionSpawnPosition(MinionSpawnPosition spawnPosition) { return null; }
public virtual Tuple <TeamId, Vector2> GetMinionSpawnPosition(MinionSpawnPosition spawnPosition) { return(null); }
public Minion( MinionSpawnType type, MinionSpawnPosition position, List <Vector2> mainWaypoints, uint netId = 0 ) : base("", new MinionStats(), 40, 0, 0, 1100, netId) { minionType = type; SpawnPosition = position; this.mainWaypoints = mainWaypoints; curMainWaypoint = 0; _AIPaused = false; var spawnSpecifics = _game.Map.GetMinionSpawnPosition(SpawnPosition); SetTeam(spawnSpecifics.Item1); setPosition(spawnSpecifics.Item2.X, spawnSpecifics.Item2.Y); _game.Map.SetMinionStats(this); // Let the map decide how strong this minion has to be. var minionModel = ""; if (spawnSpecifics.Item1 == Enet.TeamId.TEAM_BLUE) // If we're the blue side { minionModel += "Blue_Minion_"; // make it a blue minion } else { minionModel += "Red_Minion_"; // otherwise make it a red minion } // Finish model name with type if (type == MinionSpawnType.MINION_TYPE_MELEE) { minionModel += "Basic"; } else if (type == MinionSpawnType.MINION_TYPE_CASTER) { minionModel += "Wizard"; } else if (type == MinionSpawnType.MINION_TYPE_CANNON) { minionModel += "MechCannon"; } else { minionModel += "MechMelee"; } // Set model Model = minionModel; // If we have lane path instructions from the map if (mainWaypoints.Count > 0) { // Follow these instructions SetWaypoints(new List <Vector2> { mainWaypoints[0], mainWaypoints[1] }); } else { // Otherwise path to own position. (Stand still) SetWaypoints(new List <Vector2> { new Vector2(X, Y), new Vector2(X, Y) }); } MoveOrder = MoveOrder.MOVE_ORDER_ATTACKMOVE; }
public Minion(Map map, int id, MinionSpawnType type, MinionSpawnPosition position) : this(map, id, type, position, new List <Vector2>()) { }
public Minion(Game game, uint id, MinionSpawnType type, MinionSpawnPosition position) : this(game, id, type, position, new List <Vector2>()) { }
public Minion(Map map, int id, MinionSpawnType type, MinionSpawnPosition position) : this(map, id, type, position, new List<Vector2>()) { }
public virtual Tuple <int, Vector2> getMinionSpawnPosition(MinionSpawnPosition spawnPosition) { return(null); }
public override Tuple<int, Vector2> getMinionSpawnPosition(MinionSpawnPosition spawnPosition) { switch (spawnPosition) { case MinionSpawnPosition.SPAWN_BLUE_TOP: return new Tuple<int, Vector2>(0, new Vector2(907, 1715)); case MinionSpawnPosition.SPAWN_BLUE_BOT: return new Tuple<int, Vector2>(0, new Vector2(1533, 1321)); case MinionSpawnPosition.SPAWN_BLUE_MID: return new Tuple<int, Vector2>(0, new Vector2(1443, 1663)); case MinionSpawnPosition.SPAWN_RED_TOP: return new Tuple<int, Vector2>(1, new Vector2(14455, 13159)); case MinionSpawnPosition.SPAWN_RED_BOT: return new Tuple<int, Vector2>(1, new Vector2(12967, 12695)); case MinionSpawnPosition.SPAWN_RED_MID: return new Tuple<int, Vector2>(1, new Vector2(12433, 12623)); } return new Tuple<int, Vector2>(0, new Vector2()); }