void monsterEngine_MonsterMove(object sender, MonsterMoveInfoEventArgs e) { if (MonsterMove != null) { MonsterMove(sender, e); } }
void monsterEngine_MonsterMove(object sender, MonsterMoveInfoEventArgs e) { if (MonsterMove != null) MonsterMove(sender, e); }
void mapEngine_MonsterMove(object sender, MonsterMoveInfoEventArgs e) { MonsterAI monsterAI = sender as MonsterAI; MapEngine mapEngine = GetMapEngine(monsterAI.Monster.MapID); byte[] movementPacket = null; switch (e.Info.Status) { case MonsterMoveStatus.StartMoving: movementPacket = PacketManager.SendMonsterStartMoving(monsterAI.Monster, e.Info); break; case MonsterMoveStatus.KeepMoving: movementPacket = PacketManager.SendMonsterKeepMoving(monsterAI.Monster, e.Info); break; case MonsterMoveStatus.StopMoving: movementPacket = PacketManager.SendMonsterStopMoving(monsterAI.Monster, e.Info); break; } Client[] clients = GetClientsForChars(mapEngine.GetCharactersInRange(monsterAI.Monster.Position, 150).ToArray()); SendToClients(movementPacket, clients); }