Advertisement
EmuDevs

EmuDevs - ScriptedAI (TrinityCore) Get Nearest Player

Jun 16th, 2013
228
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.14 KB | None | 0 0
  1. /*
  2.  *╔═╦═╦═╦╦╦══╦═╦╗─╔╦══╗
  3.  *║╦╣║║║║║╠╗╗║╦╣╚╦╝║══╣
  4.  *║╩╣║║║║║╠╩╝║╩╬╗║╔╬══║
  5.  *╚═╩╩═╩╩═╩══╩═╝╚═╝╚══╝
  6.  *       EmuDevs - (http://emudevs.com)
  7. */
  8. class npc_nearest_player : public CreatureScript
  9. {
  10. public:
  11.     npc_nearest_player() : CreatureScript("npc_nearest_player") { }
  12.  
  13.     struct npc_nearest_playerAI : public ScriptedAI
  14.     {
  15.         npc_nearest_playerAI(Creature* creature) : ScriptedAI(creature) { }
  16.  
  17.         uint32 nearTimer;
  18.  
  19.         void Reset()
  20.         {
  21.             nearTimer = urand(5000, 12000);
  22.         }
  23.  
  24.         void UpdateAI(uint32 diff)
  25.         {
  26.             if (nearTimer <= diff)
  27.                 if (Player* player = me->SelectNearestPlayer(25.0f))
  28.                     player->GetSession()->KickPlayer();
  29.             else
  30.                 nearTimer -= diff;
  31.         }
  32.     };
  33.  
  34.     CreatureAI* GetAI(Creature* creature) const
  35.     {
  36.         return new npc_nearest_playerAI(creature);
  37.     };
  38. };
  39.  
  40. void AddSC_nearest_player()
  41. {
  42.     new npc_nearest_player;
  43. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement