Advertisement
Sleinzel

Untitled

Apr 8th, 2011
237
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.54 KB | None | 0 0
  1. #include "Setup.h"
  2.  
  3. #ifdef WIN32
  4. #pragma warning(disable:4305)// warning C4305:'argument' :truncation from 'double' to 'float'
  5. #pragma warning(disable:4244)
  6. #endif
  7.  
  8. class PortStone :public GossipScript
  9. {
  10. public:
  11.  
  12.  
  13. void GossipHello(Object* pObject, Player * Plr, bool AutoSend){
  14. GossipMenu *Menu;
  15. //First Menu
  16. objmgr.CreateGossipMenuForPlayer(&Menu,pObject->GetGUID() , 2593, Plr);
  17. Menu->AddItem(0, "|c464600Playertreff|r", 1);
  18. Menu->AddItem(0, "|c464600Levelarena|r", 2);
  19. Menu->AddItem(0, "|c464600Chillzone|r", 3);
  20. Menu->AddItem(0, "|c464600Staedte|r", 4);
  21. Menu->AddItem(0, "|c464600Gurubashi Arena|r", 5);
  22. Menu->AddItem(0, "|c464600Custom Arena|r", 6);
  23. Menu->AddItem(0, "|c464600Wiederbelebungsnachwirkungen entfernen|r", 7);
  24. Menu->AddItem(0, "|c464600Heilen|r", 8);
  25. Menu->AddItem(0, "|c464600Buffen|r", 9);
  26. Menu->SendTo(Plr);
  27. }
  28.  
  29. void GossipSelectOption(Object* pObject, Player* Plr, uint32 Id, uint32 IntId, const char * Code)
  30. {
  31. GossipMenu *Menu;
  32. if (IntId == 1){
  33.  
  34. Plr->SafeTeleport( 1, 0, -11821.4f, -4760.38f, 7.011f, 2.3f);
  35.  
  36. }
  37. if (IntId == 2){
  38.  
  39.  
  40. Plr->SafeTeleport(530, 0, -1844.81f, 8481.88f, -20.7f, 4.7f);
  41.  
  42. }
  43. if (IntId == 3){
  44. Plr->SafeTeleport(1,0, -4474.75f, -778.4f, -41.5f, 1.88f);
  45.  
  46. }
  47. if (IntId == 4){
  48.  
  49.  
  50. objmgr.CreateGossipMenuForPlayer(&Menu,pObject->GetGUID() , 2593, Plr);
  51. if (Plr->getRace() == 1 || Plr->getRace() == 3 || Plr->getRace() == 4 || Plr->getRace() == 7 || Plr->getRace() == 11)
  52.  
  53.  
  54.  
  55. Menu->AddItem(0, "Sturmwind", 50);
  56. Menu->AddItem(0, "Eisenschmiede", 51);
  57. Menu->AddItem(0, "Darnassus", 52);
  58. Menu->AddItem(0, "Exodar", 53);
  59. Menu->AddItem(0, "Shattrath", 54);
  60. Menu->AddItem(0, "Dalaran", 55);
  61. Menu->SendTo(Plr);
  62.  
  63. if (Plr->getRace() == 2 || Plr->getRace() == 5 || Plr->getRace() == 6 || Plr->getRace() == 8 || Plr->getRace() == 10)
  64.  
  65. Menu->AddItem(0, "Orgrimmar", 56);
  66. Menu->AddItem(0, "Donnerfels", 57);
  67. Menu->AddItem(0, "Unterstadt", 58);
  68. Menu->AddItem(0, "Silbermond", 59);
  69. Menu->AddItem(0, "Shattrath", 54);
  70. Menu->AddItem(0, "Dalaran", 55);
  71. Menu->SendTo(Plr);
  72. }
  73.  
  74. if (IntId == 5){
  75.  
  76. Plr->SafeTeleport(0, 0, -13255.29f, 171.114f, 34.001f, 1.1f);
  77.  
  78. }
  79.  
  80. if (IntId == 6){
  81.  
  82. objmgr.CreateGossipMenuForPlayer(&Menu,pObject->GetGUID() , 2593, Plr);
  83. Menu->AddItem(0, "T11 Instanz", 10);
  84. Menu->AddItem(0, "T11.5 Instanz", 11);
  85. Menu->AddItem(0, "Worldboss 1", 12);
  86. Menu->AddItem(0, "Worldboss 2", 13);
  87. Menu->SendTo(Plr);
  88. }
  89.  
  90. if (IntId == 7){
  91.  
  92. Plr->addSpell(15007);
  93. Plr->removeSpell(15007, false, false, 0);
  94.  
  95. }
  96. if (IntId == 8){
  97.  
  98. Plr->SetHealthPct(100);
  99.  
  100. }
  101. if (IntId == 9){
  102. Plr->CastSpell(Plr, 56520, false);
  103. Plr->CastSpell(Plr, 58054, false);
  104. Plr->CastSpell(Plr, 56521, false);
  105. Plr->CastSpell(Plr, 48469, false);
  106. Plr->CastSpell(Plr, 42995, false);
  107. Plr->CastSpell(Plr, 48161, false);
  108. }
  109.  
  110. if (IntId == 10){
  111. Plr->SafeTeleport(0, 0, -7525.8f, -1226.01f, 286.001f, 1.1f);
  112.  
  113. }
  114. if (IntId == 11){
  115. Plr->SafeTeleport(571,0, 3897.2f, 6985.001f, 70.001f, 0);
  116.  
  117. }
  118. if (IntId == 12){
  119. if (Plr->HasFinishedQuest(80515) == true){
  120. Plr->SafeTeleport(571,0, 3860, 6989, 153, 0);
  121. }
  122. }
  123. if (IntId == 13){
  124. if (Plr->HasFinishedQuest(80515) == true){
  125. Plr->SafeTeleport(0, 0, -10705.509766f, -419.256134f, 126.1f, 0);
  126. }
  127. }
  128.  
  129.  
  130.  
  131. if (IntId == 50){
  132. Plr->SafeTeleport(0,0, -8913.23f, 554.63f, 93.79f, 1);
  133.  
  134. }
  135.  
  136. if (IntId == 51){
  137. Plr->SafeTeleport(0,0, -4982.16f, -880.75f, 501.65f, 1);
  138.  
  139. }
  140. if (IntId == 52){
  141. Plr->SafeTeleport(1,0, 9945.49f, 2609.89f, 1316.26f, 1);
  142.  
  143. }
  144. if (IntId == 53){
  145. Plr->SafeTeleport(530, 0, -4002.67f, -11875.54f, -0.71f, 1);
  146.  
  147. }
  148. if (IntId == 54){
  149. Plr->SafeTeleport(530,0, -1817.82f, 5453.04f, -12.42f, 1);
  150.  
  151. }
  152. if (IntId == 55){
  153. Plr->SafeTeleport(571, 0, 5804.75f, 615, 651.2f, 1);
  154.  
  155. }
  156. if (IntId == 56){
  157. Plr->SafeTeleport(1,0, 1502.71f, -4415.41f, 21.77f, 1);
  158.  
  159. }
  160. if (IntId == 57){
  161. Plr->SafeTeleport(1,0, -1285.23f, 117.86f, 132.99f, 1);
  162.  
  163. }
  164. if (IntId == 58){
  165. Plr->SafeTeleport(0,0, 1831.26f, 238.52f, 60.52f, 1);
  166.  
  167. }
  168. if (IntId == 59){
  169. Plr->SafeTeleport(530,0, 9398.75f, -7277.41f, 14.21f, 1);
  170.  
  171.  
  172. }
  173.  
  174.  
  175. }
  176.  
  177.  
  178.  
  179. void GossipEnd(Object * pObject, Player* Plr){ GossipScript::GossipEnd(pObject, Plr); }
  180. void Destroy(){ delete this; }
  181. };
  182. void SetupPortStone(ScriptMgr * mgr){
  183. mgr->register_gossip_script(85666, new PortStone);
  184. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement