Advertisement
Guest User

Untitled

a guest
May 1st, 2010
205
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 6.76 KB | None | 0 0
  1.  
  2.  
  3.       /* Copyright (C) 2008-09 TrinityCore & John Diver <http://www.trinitycore.org/>
  4.        * This program is free software; you can redistribute it and/or modify
  5.        * it under the terms of the GNU General Public License as published by
  6.        * the Free Software Foundation; either version 2 of the License, or
  7.        * (at your option) any later version.
  8.        *
  9.        * This program is distributed in the hope that it will be useful,
  10.        * but WITHOUT ANY WARRANTY; without even the implied warranty of
  11.        * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  12.        * GNU General Public License for more details.
  13.        *
  14.        * You should have received a copy of the GNU General Public License
  15.        * along with this program; if not, write to the Free Software
  16.        * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  17.        */
  18.       /* ScriptData
  19.       ScriptName: Npc_buffer
  20.       ScriptComment: BC Buffer -Fixed at Trinity
  21.       */
  22.        
  23.       #include "ScriptedPch.h"
  24.  
  25.  
  26.        
  27.       /*** Define ***/
  28.       //Buff - Misc
  29.       #define HEAL           26565
  30.       //Buff - Druid
  31.       #define BUFF_MARK_OF_THE_WILD           17055
  32.       #define BUFF_THORNS                     26992
  33.       //Buff - Mage
  34.       #define BUFF_ARCANE_INTELLECT           10157
  35.       //Buff - Paladin
  36.       #define BUFF_BLESSING_OF_WISDOM         27143
  37.       #define BUFF_BLESSING_OF_KINGS          25898
  38.       #define BUFF_BLESSING_OF_SANCTUARY      25899
  39.       #define BUFF_BLESSING_OF_MIGHT          27141
  40.       //Buff - Priest
  41.       #define BUFF_DIVINE_SPIRIT              33182
  42.       #define BUFF_POWER_WORD_FORTITUDE       25389
  43.       #define BUFF_SHADOW_PROTECTION          25433
  44.        
  45.       /*** Source ***/
  46.  
  47.  
  48.       bool GossipHello_npc_buffer(Player *player, Creature *_Creature)
  49.       {
  50.  
  51.                 if(player->isInCombat())
  52.                 {
  53.                 _Creature->MonsterWhisper('Harc közben nem lehet!', player->GetGUID());
  54.                 return 0;
  55.                 }
  56.               player->ADD_GOSSIP_ITEM(0, "Heal",          GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 1);
  57.               player->ADD_GOSSIP_ITEM(0, "Mark of the Wild",          GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 2);
  58.               player->ADD_GOSSIP_ITEM(0, "Thorns",                            GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 3);
  59.               player->ADD_GOSSIP_ITEM(0, "Arcane intellect",          GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 4);
  60.               player->ADD_GOSSIP_ITEM(0, "Blessing of Might",         GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 5);
  61.               player->ADD_GOSSIP_ITEM(0, "Blessing of Kings",         GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 6);
  62.               player->ADD_GOSSIP_ITEM(0, "Blessing of Wisdom",        GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 7);
  63.               player->ADD_GOSSIP_ITEM(0, "Blessing of Sanctuary",     GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 8);
  64.               player->ADD_GOSSIP_ITEM(0, "Divine spirit",                     GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 9);
  65.               player->ADD_GOSSIP_ITEM(0, "Power word: Fortitude",     GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 10);
  66.               player->ADD_GOSSIP_ITEM(0, "Shadow Protection",         GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 11);
  67.               player->ADD_GOSSIP_ITEM(0, "Close",                                     GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 0);
  68.               player->SEND_GOSSIP_MENU(1, _Creature->GetGUID());
  69.               return true;
  70.  
  71.       }
  72.      
  73.       bool GossipSelect_npc_buffer(Player *player, Creature *_Creature, uint32 sender, uint32 action )
  74.       {
  75.         if(player->isInCombat())
  76.         {
  77.         _Creature->MonsterWhisper('Harc közben nem lehet!', player->GetGUID());
  78.         return 0;
  79.         }
  80.  
  81.               switch(action)
  82.               {
  83.                       case GOSSIP_ACTION_INFO_DEF +1:
  84.                               player->CLOSE_GOSSIP_MENU();
  85.                               _Creature->CastSpell(player, HEAL, false);
  86.                       break;
  87.                       case GOSSIP_ACTION_INFO_DEF + 2:
  88.                               player->CLOSE_GOSSIP_MENU();
  89.                               _Creature->CastSpell(player, BUFF_MARK_OF_THE_WILD, false);
  90.                       break;
  91.                       case GOSSIP_ACTION_INFO_DEF + 3:
  92.                               player->CLOSE_GOSSIP_MENU();
  93.                               _Creature->CastSpell(player, BUFF_THORNS, false);
  94.                       break;
  95.                       case GOSSIP_ACTION_INFO_DEF + 4:
  96.                               player->CLOSE_GOSSIP_MENU();
  97.                               _Creature->CastSpell(player, BUFF_ARCANE_INTELLECT, false);
  98.                       break;
  99.                       case GOSSIP_ACTION_INFO_DEF + 5:
  100.                               player->CLOSE_GOSSIP_MENU();
  101.                               _Creature->CastSpell(player, BUFF_BLESSING_OF_MIGHT, false);
  102.                       break;
  103.                       case GOSSIP_ACTION_INFO_DEF + 6:
  104.                               player->CLOSE_GOSSIP_MENU();
  105.                               _Creature->CastSpell(player, BUFF_BLESSING_OF_KINGS, false);
  106.                       break;
  107.                       case GOSSIP_ACTION_INFO_DEF + 7:
  108.                               player->CLOSE_GOSSIP_MENU();
  109.                               _Creature->CastSpell(player, BUFF_BLESSING_OF_WISDOM, false);
  110.                       break;
  111.                       case GOSSIP_ACTION_INFO_DEF + 8:
  112.                               player->CLOSE_GOSSIP_MENU();
  113.                               _Creature->CastSpell(player, BUFF_BLESSING_OF_SANCTUARY, false);
  114.                       break;
  115.                       case GOSSIP_ACTION_INFO_DEF + 9:
  116.                               player->CLOSE_GOSSIP_MENU();
  117.                               _Creature->CastSpell(player, BUFF_DIVINE_SPIRIT, false);
  118.                       break;
  119.                       case GOSSIP_ACTION_INFO_DEF + 10:
  120.                               player->CLOSE_GOSSIP_MENU();
  121.                               _Creature->CastSpell(player, BUFF_POWER_WORD_FORTITUDE, false);
  122.                       break;
  123.                       case GOSSIP_ACTION_INFO_DEF + 11:
  124.                               player->CLOSE_GOSSIP_MENU();
  125.                               _Creature->CastSpell(player, BUFF_SHADOW_PROTECTION, false);
  126.                       break;
  127.                       case GOSSIP_ACTION_INFO_DEF + 0:
  128.                               player->CLOSE_GOSSIP_MENU();
  129.                       break;
  130.               }
  131.               return true;
  132.       }
  133.        
  134.       void AddSC_npc_buffer()
  135.       {
  136.               Script *newscript;
  137.               newscript = new Script;
  138.               newscript->Name="npc_buffer";
  139.               newscript->pGossipHello = &GossipHello_npc_buffer;
  140.               newscript->pGossipSelect = &GossipSelect_npc_buffer;
  141.               newscript->RegisterSelf();
  142.       }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement