Advertisement
Guest User

Untitled

a guest
Feb 16th, 2010
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 4.31 KB | None | 0 0
  1. #include "precompiled.h"
  2.  
  3. /*** Define ***/
  4. //Buff - Druid
  5. #define BUFF_MARK_OF_THE_WILD       48469
  6. #define BUFF_THORNS                 53307
  7. //Buff - Mage
  8. #define BUFF_ARCANE_INTELLECT       42995
  9. //Buff - Paladin
  10. #define BUFF_BLESSING_OF_WISDOM     48938
  11. #define BUFF_BLESSING_OF_KINGS      25898
  12. #define BUFF_BLESSING_OF_SANCTUARY  25899
  13. #define BUFF_BLESSING_OF_MIGHT      48932
  14. //Buff - Priest
  15. #define BUFF_DIVINE_SPIRIT          48073
  16. #define BUFF_POWER_WORD_FORTITUDE   48161
  17. #define BUFF_SHADOW_PROTECTION      48169
  18.  
  19. /*** Source ***/
  20.  
  21. bool GossipHello_npc_buffer(Player *player, Creature *_Creature)
  22. {
  23.     player->ADD_GOSSIP_ITEM(8, "Mark of the Wild",      GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 1);
  24.     player->ADD_GOSSIP_ITEM(8, "Thorns",                GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 2);
  25.     player->ADD_GOSSIP_ITEM(2, "Arcane intellect",      GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 3);
  26.     player->ADD_GOSSIP_ITEM(3, "Blessing of Wisdom",    GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 4);
  27.     player->ADD_GOSSIP_ITEM(3, "Blessing of Kings",     GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 5);
  28.     player->ADD_GOSSIP_ITEM(3, "Blessing of Sanctuary", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 6);
  29.     player->ADD_GOSSIP_ITEM(3, "Blessing of Might",     GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 7);
  30.     player->ADD_GOSSIP_ITEM(6, "Divine spirit",         GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 8);
  31.     player->ADD_GOSSIP_ITEM(6, "Power word: Fortitude", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 9);
  32.     player->ADD_GOSSIP_ITEM(6, "Shadow Protection",     GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 10);
  33.     player->ADD_GOSSIP_ITEM(6, "Close",                 GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 0);
  34.     player->SEND_GOSSIP_MENU(1, _Creature->GetGUID());
  35.     return true;
  36. }
  37.  
  38. bool GossipSelect_npc_buffer(Player *player, Creature *_Creature, uint32 sender, uint32 action )
  39. {
  40.     switch(action)
  41.     {
  42.         case GOSSIP_ACTION_INFO_DEF + 1: //Mark of the Wild (Rank 9)
  43.             player->CLOSE_GOSSIP_MENU();
  44.             _Creature->CastSpell(player, BUFF_MARK_OF_THE_WILD, false);
  45.         break;
  46.         case GOSSIP_ACTION_INFO_DEF + 2: //Thorns (Rank 8)
  47.             player->CLOSE_GOSSIP_MENU();
  48.             _Creature->CastSpell(player, BUFF_THORNS, false);
  49.         break;
  50.         case GOSSIP_ACTION_INFO_DEF + 3: //Arcane intellect (Rank 7)
  51.             player->CLOSE_GOSSIP_MENU();
  52.             _Creature->CastSpell(player, BUFF_ARCANE_INTELLECT, false);
  53.         break;
  54.         case GOSSIP_ACTION_INFO_DEF + 4: //Blessing of Wisdom (Rank 5)
  55.             player->CLOSE_GOSSIP_MENU();
  56.             _Creature->CastSpell(player, BUFF_BLESSING_OF_WISDOM, false);
  57.         break;
  58.         case GOSSIP_ACTION_INFO_DEF + 5: //Blessing of Kings
  59.             player->CLOSE_GOSSIP_MENU();
  60.             _Creature->CastSpell(player, BUFF_BLESSING_OF_KINGS, false);
  61.         break;
  62.         case GOSSIP_ACTION_INFO_DEF + 6: //Blessing of Sanctuary
  63.             player->CLOSE_GOSSIP_MENU();
  64.             _Creature->CastSpell(player, BUFF_BLESSING_OF_SANCTUARY, false);
  65.         break;
  66.         case GOSSIP_ACTION_INFO_DEF + 7: //Blessing of Might (Rank 10)
  67.             player->CLOSE_GOSSIP_MENU();
  68.             _Creature->CastSpell(player, BUFF_BLESSING_OF_MIGHT, false);
  69.         break;
  70.         case GOSSIP_ACTION_INFO_DEF + 8: //Divine spirit (Rank 6)
  71.             player->CLOSE_GOSSIP_MENU();
  72.             _Creature->CastSpell(player, BUFF_DIVINE_SPIRIT, false);
  73.         break;
  74.         case GOSSIP_ACTION_INFO_DEF + 9: //Power word: Fortitude (Rank 8)
  75.             player->CLOSE_GOSSIP_MENU();
  76.             _Creature->CastSpell(player, BUFF_POWER_WORD_FORTITUDE, false);
  77.         break;
  78.         case GOSSIP_ACTION_INFO_DEF + 10: //Shadow Protection (Rank 5)
  79.             player->CLOSE_GOSSIP_MENU();
  80.             _Creature->CastSpell(player, BUFF_SHADOW_PROTECTION, false);
  81.         break;
  82.         case GOSSIP_ACTION_INFO_DEF + 0: //Menu close
  83.             player->CLOSE_GOSSIP_MENU();
  84.         break;
  85.     }
  86.     return true;
  87. }
  88.  
  89. void AddSC_npc_buffer()
  90. {
  91.     Script *newscript;
  92.    
  93.     newscript = new Script;
  94.     newscript->Name="npc_buffer";
  95.     newscript->pGossipHello = &GossipHello_npc_buffer;
  96.     newscript->pGossipSelect = &GossipSelect_npc_buffer;
  97.     newscript->RegisterSelf();
  98. }
  99.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement