Advertisement
daixso

Tele_Trigger

Jan 4th, 2013
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.05 KB | None | 0 0
  1. #define RANGE 9.0f
  2. #define MAPID 0
  3.  
  4. struct Position2d
  5. {
  6.     float x, y, z, o;
  7. };
  8.  
  9. static Position2d m_teleport[1] =
  10. {
  11.     { -10357.900391, -421.581421, 63.617973, 0.49301 }
  12. };
  13.  
  14. class Tele_Trigger : public CreatureScript
  15. {
  16.     public:
  17.         Tele_Trigger() : CreatureScript("Tele_Trigger"){}
  18.         struct Tele_TriggerAI : public ScriptedAI
  19.         {
  20.             Tele_TriggerAI(Creature * pCreature) : ScriptedAI(pCreature)
  21.             {
  22.                 me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
  23.                 me->SetFloatValue(OBJECT_FIELD_SCALE_X, 0);
  24.             }
  25.            
  26.             void MoveInLineOfSight(Unit * who)
  27.             {
  28.                 if(!who || (!who->isAlive()) && who->GetTypeId() != TYPEID_PLAYER)
  29.                     return;
  30.                    
  31.                 if(me->IsWithinDistInMap(who, RANGE) && who->GetTypedId() == TYPEID_PLAYER && me->GetDistance(who) <= RANGE)
  32.                 {
  33.                     who->ToPlayer()->TeleportTo(169,2505.368408,3627.676758,32.686432,6.254278);
  34.                 }
  35.             };
  36.         };
  37.        
  38.         CreatureAI * GetAI(Creature * c) const
  39.         {
  40.                 return new Tele_TriggerAI(c);
  41.         }
  42. };
  43.  
  44. void AddSC_npc_tele_trigger()
  45. {
  46.     new Tele_Trigger();
  47. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement