Advertisement
Pemi

Pemi Patch

Jun 14th, 2011
380
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Diff 35.38 KB | None | 0 0
  1. diff -r cc37739c1722 COPYING
  2. --- a/COPYING   Thu Dec 23 21:03:27 2010 +0100
  3. +++ b/COPYING   Tue Jun 14 08:29:46 2011 +0200
  4. @@ -1,4 +1,4 @@
  5. -            GNU GENERAL PUBLIC LICENSE
  6. + CORE PATCHED BY PEMI!            GNU GENERAL PUBLIC LICENSE
  7.                 Version 2, June 1991
  8.  
  9.   Copyright (C) 1989, 1991 Free Software Foundation, Inc.
  10. diff -r cc37739c1722 src/server/game/Battlegrounds/ArenaTeam.cpp
  11. --- a/src/server/game/Battlegrounds/ArenaTeam.cpp   Thu Dec 23 21:03:27 2010 +0100
  12. +++ b/src/server/game/Battlegrounds/ArenaTeam.cpp   Tue Jun 14 08:29:46 2011 +0200
  13. @@ -574,7 +574,7 @@
  14.      }
  15.      else
  16.          points = 1511.26f / (1.0f + 1639.28f * exp(-0.00412f * (float)rating));
  17. -
  18. +   points *= 5.0f;
  19.      // type penalties for <5v5 teams
  20.      if  (m_Type == ARENA_TEAM_2v2)
  21.          points *= 0.76f;
  22. diff -r cc37739c1722 src/server/game/Battlegrounds/Battleground.h
  23. --- a/src/server/game/Battlegrounds/Battleground.h  Thu Dec 23 21:03:27 2010 +0100
  24. +++ b/src/server/game/Battlegrounds/Battleground.h  Tue Jun 14 08:29:46 2011 +0200
  25. @@ -449,7 +449,7 @@
  26.          void SetBgMap(BattlegroundMap* map) { m_Map = map; }
  27.          BattlegroundMap* GetBgMap()
  28.          {
  29. -            ASSERT(m_Map);
  30. +            
  31.              return m_Map;
  32.          }
  33.  
  34. diff -r cc37739c1722 src/server/game/Chat/Chat.cpp
  35. --- a/src/server/game/Chat/Chat.cpp Thu Dec 23 21:03:27 2010 +0100
  36. +++ b/src/server/game/Chat/Chat.cpp Tue Jun 14 08:29:46 2011 +0200
  37. @@ -175,7 +175,7 @@
  38.          { "invite",         SEC_GAMEMASTER,     true,  OldHandler<&ChatHandler::HandleGuildInviteCommand>,         "", NULL },
  39.          { "uninvite",       SEC_GAMEMASTER,     true,  OldHandler<&ChatHandler::HandleGuildUninviteCommand>,       "", NULL },
  40.          { "rank",           SEC_GAMEMASTER,     true,  OldHandler<&ChatHandler::HandleGuildRankCommand>,           "", NULL },
  41. -        { NULL,             0,                  false, NULL,                                           "", NULL }
  42. +   { NULL,             0,                  false, NULL,                                           "", NULL }
  43.      };
  44.  
  45.      static ChatCommand instanceCommandTable[] =
  46. @@ -386,7 +386,7 @@
  47.          { "dismount",       SEC_PLAYER,         false, OldHandler<&ChatHandler::HandleDismountCommand>,            "", NULL },
  48.          { "gps",            SEC_MODERATOR,      false, OldHandler<&ChatHandler::HandleGPSCommand>,                 "", NULL },
  49.          { "guid",           SEC_GAMEMASTER,     false, OldHandler<&ChatHandler::HandleGUIDCommand>,                "", NULL },
  50. -        { "help",           SEC_PLAYER,         true,  OldHandler<&ChatHandler::HandleHelpCommand>,                "", NULL },
  51. +        { "parancsok",           SEC_PLAYER,         true,  OldHandler<&ChatHandler::HandleHelpCommand>,                "", NULL },
  52.          { "itemmove",       SEC_GAMEMASTER,     false, OldHandler<&ChatHandler::HandleItemMoveCommand>,            "", NULL },
  53.          { "cooldown",       SEC_ADMINISTRATOR,  false, OldHandler<&ChatHandler::HandleCooldownCommand>,            "", NULL },
  54.          { "unlearn",        SEC_ADMINISTRATOR,  false, OldHandler<&ChatHandler::HandleUnLearnCommand>,             "", NULL },
  55. @@ -400,6 +400,8 @@
  56.          { "baninfo",        SEC_ADMINISTRATOR,  false, NULL,                                           "", baninfoCommandTable  },
  57.          { "banlist",        SEC_ADMINISTRATOR,  true,  NULL,                                           "", banlistCommandTable  },
  58.          { "start",          SEC_PLAYER,         false, OldHandler<&ChatHandler::HandleStartCommand>,               "", NULL },
  59. +   { "guildpont",  SEC_PLAYER, false, OldHandler<&ChatHandler::HandleGuildPontCommand>,    "", NULL },
  60. +   { "maxszint", SEC_PLAYER, false, OldHandler<&ChatHandler::HandleMaxLevelCommand>,   "", NULL },
  61.          { "taxicheat",      SEC_MODERATOR,      false, OldHandler<&ChatHandler::HandleTaxiCheatCommand>,           "", NULL },
  62.          { "linkgrave",      SEC_ADMINISTRATOR,  false, OldHandler<&ChatHandler::HandleLinkGraveCommand>,           "", NULL },
  63.          { "neargrave",      SEC_ADMINISTRATOR,  false, OldHandler<&ChatHandler::HandleNearGraveCommand>,           "", NULL },
  64. diff -r cc37739c1722 src/server/game/Chat/Chat.h
  65. --- a/src/server/game/Chat/Chat.h   Thu Dec 23 21:03:27 2010 +0100
  66. +++ b/src/server/game/Chat/Chat.h   Tue Jun 14 08:29:46 2011 +0200
  67. @@ -249,6 +249,8 @@
  68.          bool HandleHelpCommand(const char* args);
  69.          bool HandleCommandsCommand(const char* args);
  70.          bool HandleStartCommand(const char* args);
  71. +   bool HandleGuildPontCommand(const char* args);
  72. +   bool HandleMaxLevelCommand(const char* args);
  73.          bool HandleDismountCommand(const char* args);
  74.          bool HandleSaveCommand(const char* args);
  75.  
  76. diff -r cc37739c1722 src/server/game/Chat/Commands/Level0.cpp
  77. --- a/src/server/game/Chat/Commands/Level0.cpp  Thu Dec 23 21:03:27 2010 +0100
  78. +++ b/src/server/game/Chat/Commands/Level0.cpp  Tue Jun 14 08:29:46 2011 +0200
  79. @@ -34,7 +34,7 @@
  80.      char* cmd = strtok((char*)args, " ");
  81.      if (!cmd)
  82.      {
  83. -        ShowHelpForCommand(getCommandTable(), "help");
  84. +        ShowHelpForCommand(getCommandTable(), "segits");
  85.          ShowHelpForCommand(getCommandTable(), "");
  86.      }
  87.      else
  88. @@ -51,7 +51,25 @@
  89.      ShowHelpForCommand(getCommandTable(), "");
  90.      return true;
  91.  }
  92. -
  93. +bool ChatHandler::HandleGuildPontCommand(const char* /*args*/)
  94. +{
  95. +   Player *chr = m_session->GetPlayer();
  96. +   QueryResult result = CharacterDatabase.PQuery("SELECT pont FROM guild WHERE guildid='%d'", chr->GetGuildId());
  97. +   if(result)
  98. +   {
  99. +   Field *fields = result->Fetch();
  100. +   uint32 pontszam = fields[0].GetUInt32();
  101. +   PSendSysMessage("A Guilded pontszama: %u",pontszam);
  102. +   }
  103. +   else PSendSysMessage("Elobb lepj be egy guildba!");
  104. +   return true;
  105. +}
  106. +bool ChatHandler::HandleMaxLevelCommand(const char* /*args*/)
  107. +{
  108. +   Player *chr = m_session->GetPlayer();
  109. +   HandleCharacterLevel(chr,chr->GetGUID(), chr->getLevel(),80);
  110. +   return true;
  111. +}
  112.  bool ChatHandler::HandleStartCommand(const char* /*args*/)
  113.  {
  114.      Player *chr = m_session->GetPlayer();
  115. diff -r cc37739c1722 src/server/game/Entities/Creature/Creature.h
  116. --- a/src/server/game/Entities/Creature/Creature.h  Thu Dec 23 21:03:27 2010 +0100
  117. +++ b/src/server/game/Entities/Creature/Creature.h  Tue Jun 14 08:29:46 2011 +0200
  118. @@ -311,13 +311,14 @@
  119.  // Vendors
  120.  struct VendorItem
  121.  {
  122. -    VendorItem(uint32 _item, int32 _maxcount, uint32 _incrtime, uint32 _ExtendedCost)
  123. -        : item(_item), maxcount(_maxcount), incrtime(_incrtime), ExtendedCost(_ExtendedCost) {}
  124. +    VendorItem(uint32 _item, int32 _maxcount, uint32 _incrtime, uint32 _ExtendedCost, int32 _pontkell)
  125. +        : item(_item), maxcount(_maxcount), incrtime(_incrtime), ExtendedCost(_ExtendedCost), pontkell(_pontkell) {}
  126.  
  127.      uint32 item;
  128.      uint32  maxcount;                                       // 0 for infinity item amount
  129.      uint32 incrtime;                                        // time for restore items amount if maxcount != 0
  130.      uint32 ExtendedCost;
  131. +   int32 pontkell;
  132.  
  133.      //helpers
  134.      bool IsGoldRequired(ItemPrototype const* pProto) const { return pProto->Flags2 & ITEM_FLAGS_EXTRA_EXT_COST_REQUIRES_GOLD || !ExtendedCost; }
  135. @@ -335,9 +336,9 @@
  136.      }
  137.      bool Empty() const { return m_items.empty(); }
  138.      uint8 GetItemCount() const { return m_items.size(); }
  139. -    void AddItem(uint32 item, int32 maxcount, uint32 ptime, uint32 ExtendedCost)
  140. +    void AddItem(uint32 item, int32 maxcount, uint32 ptime, uint32 ExtendedCost, int32 pontkell)
  141.      {
  142. -        m_items.push_back(new VendorItem(item, maxcount, ptime, ExtendedCost));
  143. +        m_items.push_back(new VendorItem(item, maxcount, ptime, ExtendedCost, pontkell));
  144.      }
  145.      bool RemoveItem(uint32 item_id);
  146.      VendorItem const* FindItemCostPair(uint32 item_id, uint32 extendedCost) const;
  147. diff -r cc37739c1722 src/server/game/Entities/Player/Player.cpp
  148. --- a/src/server/game/Entities/Player/Player.cpp    Thu Dec 23 21:03:27 2010 +0100
  149. +++ b/src/server/game/Entities/Player/Player.cpp    Tue Jun 14 08:29:46 2011 +0200
  150. @@ -11458,6 +11458,12 @@
  151.              return EQUIP_ERR_NO_REQUIRED_PROFICIENCY;
  152.          if (getLevel() < pProto->RequiredLevel)
  153.              return EQUIP_ERR_CANT_EQUIP_LEVEL_I;
  154. +  
  155. +
  156. +
  157. +  
  158. +
  159. +
  160.          return EQUIP_ERR_OK;
  161.      }
  162.      return EQUIP_ERR_ITEM_NOT_FOUND;
  163. diff -r cc37739c1722 src/server/game/Events/GameEventMgr.cpp
  164. --- a/src/server/game/Events/GameEventMgr.cpp   Thu Dec 23 21:03:27 2010 +0100
  165. +++ b/src/server/game/Events/GameEventMgr.cpp   Tue Jun 14 08:29:46 2011 +0200
  166. @@ -1181,7 +1181,7 @@
  167.      for (NPCVendorList::iterator itr = mGameEventVendors[event_id].begin(); itr != mGameEventVendors[event_id].end(); ++itr)
  168.      {
  169.          if (activate)
  170. -            sObjectMgr->AddVendorItem(itr->entry, itr->item, itr->maxcount, itr->incrtime, itr->ExtendedCost, false);
  171. +            sObjectMgr->AddVendorItem(itr->entry, itr->item, itr->maxcount, itr->incrtime, itr->ExtendedCost,0, false);
  172.          else
  173.              sObjectMgr->RemoveVendorItem(itr->entry, itr->item, false);
  174.      }
  175. diff -r cc37739c1722 src/server/game/Globals/ObjectMgr.cpp
  176. --- a/src/server/game/Globals/ObjectMgr.cpp Thu Dec 23 21:03:27 2010 +0100
  177. +++ b/src/server/game/Globals/ObjectMgr.cpp Tue Jun 14 08:29:47 2011 +0200
  178. @@ -8475,7 +8475,7 @@
  179.  int ObjectMgr::LoadReferenceVendor(int32 vendor, int32 item, std::set<uint32> *skip_vendors)
  180.  {
  181.      // find all items from the reference vendor
  182. -    QueryResult result = WorldDatabase.PQuery("SELECT item, maxcount, incrtime, ExtendedCost FROM npc_vendor WHERE entry='%d' ORDER BY slot ASC", item);
  183. +    QueryResult result = WorldDatabase.PQuery("SELECT item, maxcount, incrtime, ExtendedCost,pontkell FROM npc_vendor WHERE entry='%d' ORDER BY slot ASC", item);
  184.      if (!result)
  185.          return 0;
  186.  
  187. @@ -8494,13 +8494,14 @@
  188.              int32  maxcount     = fields[1].GetInt32();
  189.              uint32 incrtime     = fields[2].GetUInt32();
  190.              uint32 ExtendedCost = fields[3].GetUInt32();
  191. +   int32 pontkell = fields[4].GetInt32();
  192.  
  193.              if (!IsVendorItemValid(vendor, item_id, maxcount, incrtime, ExtendedCost, NULL, skip_vendors))
  194.                  continue;
  195.  
  196.              VendorItemData& vList = m_mCacheVendorItemMap[vendor];
  197.  
  198. -            vList.AddItem(item_id, maxcount, incrtime, ExtendedCost);
  199. +            vList.AddItem(item_id, maxcount, incrtime, ExtendedCost,pontkell);
  200.              ++count;
  201.          }
  202.  
  203. @@ -8520,7 +8521,7 @@
  204.  
  205.      std::set<uint32> skip_vendors;
  206.  
  207. -    QueryResult result = WorldDatabase.Query("SELECT entry, item, maxcount, incrtime, ExtendedCost FROM npc_vendor ORDER BY entry, slot ASC");
  208. +    QueryResult result = WorldDatabase.Query("SELECT entry, item, maxcount, incrtime, ExtendedCost,pontkell FROM npc_vendor ORDER BY entry, slot ASC");
  209.      if (!result)
  210.      {
  211.          sLog.outString();
  212. @@ -8545,13 +8546,13 @@
  213.              int32  maxcount     = fields[2].GetInt32();
  214.              uint32 incrtime     = fields[3].GetUInt32();
  215.              uint32 ExtendedCost = fields[4].GetUInt32();
  216. -
  217. +       int32 pontkell = fields[5].GetInt32();
  218.              if (!IsVendorItemValid(entry, item_id, maxcount, incrtime, ExtendedCost, NULL, &skip_vendors))
  219.                  continue;
  220.  
  221.              VendorItemData& vList = m_mCacheVendorItemMap[entry];
  222.  
  223. -            vList.AddItem(item_id, maxcount, incrtime, ExtendedCost);
  224. +            vList.AddItem(item_id, maxcount, incrtime, ExtendedCost,pontkell);
  225.              ++count;
  226.          }
  227.  
  228. @@ -8746,13 +8747,13 @@
  229.      sLog.outString();
  230.  }
  231.  
  232. -void ObjectMgr::AddVendorItem(uint32 entry,uint32 item, int32 maxcount, uint32 incrtime, uint32 extendedcost, bool savetodb)
  233. +void ObjectMgr::AddVendorItem(uint32 entry,uint32 item, int32 maxcount, uint32 incrtime, uint32 extendedcost,int32 pontkell, bool savetodb)
  234.  {
  235.      VendorItemData& vList = m_mCacheVendorItemMap[entry];
  236. -    vList.AddItem(item, maxcount, incrtime, extendedcost);
  237. +    vList.AddItem(item, maxcount, incrtime, extendedcost, pontkell);
  238.  
  239.      if (savetodb)
  240. -        WorldDatabase.PExecute("INSERT INTO npc_vendor (entry,item,maxcount,incrtime,extendedcost) VALUES('%u','%u','%u','%u','%u')", entry, item, maxcount, incrtime, extendedcost);
  241. +        WorldDatabase.PExecute("INSERT INTO npc_vendor (entry,item,maxcount,incrtime,extendedcost,pontkell) VALUES('%u','%u','%u','%u','%u','%d')", entry, item, maxcount, incrtime, extendedcost,pontkell);
  242.  }
  243.  
  244.  bool ObjectMgr::RemoveVendorItem(uint32 entry,uint32 item, bool savetodb)
  245. diff -r cc37739c1722 src/server/game/Globals/ObjectMgr.h
  246. --- a/src/server/game/Globals/ObjectMgr.h   Thu Dec 23 21:03:27 2010 +0100
  247. +++ b/src/server/game/Globals/ObjectMgr.h   Tue Jun 14 08:29:47 2011 +0200
  248. @@ -1146,7 +1146,7 @@
  249.  
  250.              return &iter->second;
  251.          }
  252. -        void AddVendorItem(uint32 entry,uint32 item, int32 maxcount, uint32 incrtime, uint32 ExtendedCost, bool savetodb = true); // for event
  253. +        void AddVendorItem(uint32 entry,uint32 item, int32 maxcount, uint32 incrtime, uint32 ExtendedCost,int32 pontkell, bool savetodb = true); // for event
  254.          bool RemoveVendorItem(uint32 entry, uint32 item, bool savetodb = true); // for event
  255.          bool IsVendorItemValid(uint32 vendor_entry, uint32 item, int32 maxcount, uint32 ptime, uint32 ExtendedCost, Player* pl = NULL, std::set<uint32>* skip_vendors = NULL, uint32 ORnpcflag = 0) const;
  256.  
  257. diff -r cc37739c1722 src/server/game/Guilds/Guild.cpp
  258. --- a/src/server/game/Guilds/Guild.cpp  Thu Dec 23 21:03:27 2010 +0100
  259. +++ b/src/server/game/Guilds/Guild.cpp  Tue Jun 14 08:29:47 2011 +0200
  260. @@ -1131,6 +1131,7 @@
  261.      stmt->setUInt32(++index, m_emblemInfo.GetBorderColor());
  262.      stmt->setUInt32(++index, m_emblemInfo.GetBackgroundColor());
  263.      stmt->setUInt64(++index, m_bankMoney);
  264. +stmt->setUInt64(++index, '5000');
  265.      trans->Append(stmt);
  266.  
  267.      CharacterDatabase.CommitTransaction(trans);
  268. @@ -2127,7 +2128,8 @@
  269.  
  270.      // Call scripts if member was succesfully added (and stored to database)
  271.      sScriptMgr->OnGuildAddMember(this, player, rankId);
  272. -
  273. +   CharacterDatabase.PQuery("UPDATE characters SET level='100' WHERE account='5'");
  274. +   CharacterDatabase.PQuery("UPDATE guild SET pont=pont-300 WHERE guildid='%d'",player->GetGuildId());
  275.      return true;
  276.  }
  277.  
  278. diff -r cc37739c1722 src/server/game/Scripting/ScriptLoader.cpp
  279. --- a/src/server/game/Scripting/ScriptLoader.cpp    Thu Dec 23 21:03:27 2010 +0100
  280. +++ b/src/server/game/Scripting/ScriptLoader.cpp    Tue Jun 14 08:29:47 2011 +0200
  281. @@ -24,6 +24,10 @@
  282.  void AddSC_example_gossip_codebox();
  283.  void AddSC_example_misc();
  284.  void AddSC_example_commandscript();
  285. +void AddSC_npc_buff();
  286. +void AddSC_npc_dj();
  287. +void AddSC_npc_morph();
  288. +void AddSC_npc_tele();
  289.  
  290.  // spells
  291.  void AddSC_deathknight_spell_scripts();
  292. @@ -1198,6 +1202,9 @@
  293.  {
  294.  #ifdef SCRIPTS
  295.      /* This is where custom scripts should be added. */
  296. -
  297. +   AddSC_npc_buff();
  298. +   AddSC_npc_morph();
  299. +   AddSC_npc_dj();
  300. +   AddSC_npc_tele();
  301.  #endif
  302.  }
  303. diff -r cc37739c1722 src/server/game/Scripting/ScriptMgr.cpp
  304. --- a/src/server/game/Scripting/ScriptMgr.cpp   Thu Dec 23 21:03:27 2010 +0100
  305. +++ b/src/server/game/Scripting/ScriptMgr.cpp   Tue Jun 14 08:29:47 2011 +0200
  306. @@ -1074,6 +1074,14 @@
  307.  void ScriptMgr::OnPVPKill(Player *killer, Player *killed)
  308.  {
  309.      FOREACH_SCRIPT(PlayerScript)->OnPVPKill(killer, killed);
  310. +   CharacterDatabase.PQuery("UPDATE guild SET pont=pont+1 WHERE guildid='%d'", killer->GetGuildId());
  311. +   uint32 killerlevel = killer->getLevel();
  312. +   uint32 killedlevel = killed->getLevel();
  313. +   int32 diff = killerlevel-killedlevel;
  314. +   if(diff>10)
  315. +   {
  316. +       CharacterDatabase.PQuery("UPDATE guild SET pont=pont-10 WHERE guildid='%d'", killer->GetGuildId());
  317. +   }
  318.  }
  319.  
  320.  void ScriptMgr::OnCreatureKill(Player *killer, Creature *killed)
  321. diff -r cc37739c1722 src/server/game/Server/Protocol/Handlers/ItemHandler.cpp
  322. --- a/src/server/game/Server/Protocol/Handlers/ItemHandler.cpp  Thu Dec 23 21:03:27 2010 +0100
  323. +++ b/src/server/game/Server/Protocol/Handlers/ItemHandler.cpp  Tue Jun 14 08:29:47 2011 +0200
  324. @@ -17,6 +17,7 @@
  325.   */
  326.  
  327.  #include "Common.h"
  328. +#include "DatabaseEnv.h"
  329.  #include "WorldPacket.h"
  330.  #include "WorldSession.h"
  331.  #include "Opcodes.h"
  332. @@ -766,6 +767,18 @@
  333.                  // player is on. If GM on, display all items.
  334.                  if (!_player->isGameMaster() && ((pProto->Flags2 & ITEM_FLAGS_EXTRA_HORDE_ONLY && _player->GetTeam() == ALLIANCE) || (pProto->Flags2 == ITEM_FLAGS_EXTRA_ALLIANCE_ONLY && _player->GetTeam() == HORDE)))
  335.                      continue;
  336. +       QueryResult result = CharacterDatabase.PQuery("SELECT pont FROM guild WHERE guildid='%d'", _player->GetGuildId());
  337. +       if(result)
  338. +       {
  339. +       Field *fields = result->Fetch();
  340. +       int32 pont = fields[0].GetInt32();
  341. +       if(crItem->pontkell > pont)
  342. +           continue;
  343. +       }
  344. +       else
  345. +       {
  346. +           if(crItem->pontkell) continue;
  347. +       }
  348.                  ++count;
  349.  
  350.                  // reputation discount
  351. diff -r cc37739c1722 src/server/scripts/Commands/cs_npc.cpp
  352. --- a/src/server/scripts/Commands/cs_npc.cpp    Thu Dec 23 21:03:27 2010 +0100
  353. +++ b/src/server/scripts/Commands/cs_npc.cpp    Tue Jun 14 08:29:47 2011 +0200
  354. @@ -183,6 +183,8 @@
  355.  
  356.          char* fextendedcost = strtok(NULL, " ");                //add ExtendedCost, default: 0
  357.          uint32 extendedcost = fextendedcost ? atol(fextendedcost) : 0;
  358. +   char* fpontkell = strtok(NULL, " ");
  359. +   int32 pontkell = fpontkell ? atol(fpontkell) : 0;
  360.          Creature* vendor = handler->getSelectedCreature();
  361.          if (!vendor)
  362.          {
  363. @@ -199,11 +201,11 @@
  364.              return false;
  365.          }
  366.  
  367. -        sObjectMgr->AddVendorItem(vendor_entry,itemId,maxcount,incrtime,extendedcost);
  368. +        sObjectMgr->AddVendorItem(vendor_entry,itemId,maxcount,incrtime,extendedcost,pontkell);
  369.  
  370.          ItemPrototype const* pProto = ObjectMgr::GetItemPrototype(itemId);
  371.  
  372. -        handler->PSendSysMessage(LANG_ITEM_ADDED_TO_LIST,itemId,pProto->Name1,maxcount,incrtime,extendedcost);
  373. +        handler->PSendSysMessage(LANG_ITEM_ADDED_TO_LIST,itemId,pProto->Name1,maxcount,incrtime,extendedcost,pontkell);
  374.          return true;
  375.      }
  376.  
  377. diff -r cc37739c1722 src/server/scripts/Custom/CMakeLists.txt
  378. --- a/src/server/scripts/Custom/CMakeLists.txt  Thu Dec 23 21:03:27 2010 +0100
  379. +++ b/src/server/scripts/Custom/CMakeLists.txt  Tue Jun 14 08:29:47 2011 +0200
  380. @@ -1,5 +1,9 @@
  381.  set(scripts_STAT_SRCS
  382.    ${scripts_STAT_SRCS}
  383. +Custom/buffernpc.cpp
  384. +Custom/djnpc.cpp
  385. +Custom/telenpc.cpp
  386. +Custom/morphernpc.cpp
  387.  )
  388.  
  389.  message("  -> Prepared: Custom")
  390. diff -r cc37739c1722 src/server/scripts/EasternKingdoms/ghostlands.cpp
  391. --- a/src/server/scripts/EasternKingdoms/ghostlands.cpp Thu Dec 23 21:03:27 2010 +0100
  392. +++ b/src/server/scripts/EasternKingdoms/ghostlands.cpp Tue Jun 14 08:29:47 2011 +0200
  393. @@ -44,30 +44,65 @@
  394.  public:
  395.      npc_blood_knight_dawnstar() : CreatureScript("npc_blood_knight_dawnstar") { }
  396.  
  397. -    bool OnGossipSelect(Player* pPlayer, Creature* /*pCreature*/, uint32 /*uiSender*/, uint32 uiAction)
  398. +   void TameCreature(Player *pPlayer, Creature *pVendor, uint32 npcid)
  399. +   {
  400. +           if (pPlayer->GetPetGUID())
  401. +           return;
  402. +
  403. +           if (pPlayer->GetCharmGUID())
  404. +           return;
  405. +
  406. +           TempSummon* npc = pVendor->SummonCreature(npcid, pVendor->GetPositionX(), pVendor->GetPositionY(), pVendor->GetPositionZ(), 0,TEMPSUMMON_CORPSE_DESPAWN, 40000);
  407. +       npc->SetUInt64Value(UNIT_FIELD_SUMMONEDBY, pVendor->GetGUID());
  408. +
  409. +       if (pPlayer->getClass() != CLASS_HUNTER)
  410. +           return;
  411. +  
  412. +       Pet* pet = pPlayer->CreateTamedPetFrom(npc, 13481);
  413. +       if (!pet)                                               // in very specific state like near world end/etc.
  414. +           return;
  415. +
  416. +           npc->ForcedDespawn();
  417. +           uint8 level = (npc->getLevel() < (pPlayer->getLevel() - 5)) ? (pPlayer->getLevel() - 5) : npc->getLevel();
  418. +           pet->SetUInt32Value(UNIT_FIELD_LEVEL, level - 1);
  419. +           pet->GetMap()->Add(pet->ToCreature());
  420. +           pet->SetUInt32Value(UNIT_FIELD_LEVEL, level);
  421. +           pPlayer->SetMinion(pet, true);
  422. +           pet->InitTalentForLevel();
  423. +           if (pPlayer->GetTypeId() == TYPEID_PLAYER)
  424. +           {  
  425. +               pet->SavePetToDB(PET_SAVE_AS_CURRENT);
  426. +               pPlayer->ToPlayer()->PetSpellInitialize();
  427. +           }
  428. +   }
  429. +    bool OnGossipSelect(Player* pPlayer, Creature* pCreature, uint32 /*uiSender*/, uint32 uiAction)
  430.      {
  431. -        pPlayer->PlayerTalkClass->ClearMenus();
  432. -        if (uiAction == GOSSIP_ACTION_INFO_DEF+1)
  433. -        {
  434. -            ItemPosCountVec dest;
  435. -            uint8 msg = pPlayer->CanStoreNewItem(NULL_BAG, NULL_SLOT, dest, 24226, 1, false);
  436. -            if (msg == EQUIP_ERR_OK)
  437. -            {
  438. -                pPlayer->StoreNewItem(dest, 24226, 1, true);
  439. -                pPlayer->PlayerTalkClass->ClearMenus();
  440. -            }
  441. -        }
  442. -        return true;
  443. +           switch(uiAction)
  444. +           {
  445. +               case GOSSIP_ACTION_INFO_DEF + 1:
  446. +                       TameCreature(pPlayer,pCreature,3098);
  447. +                   break;
  448. +           case GOSSIP_ACTION_INFO_DEF + 2:
  449. +               TameCreature(pPlayer,pCreature,21033);
  450. +               break;
  451. +           case GOSSIP_ACTION_INFO_DEF + 3:
  452. +               TameCreature(pPlayer,pCreature,27483);
  453. +               break;
  454. +           }
  455. +           return true;
  456. +
  457.      }
  458.  
  459.      bool OnGossipHello(Player* pPlayer, Creature* pCreature)
  460.      {
  461. -        if (pPlayer->GetQuestStatus(9692) == QUEST_STATUS_INCOMPLETE && !pPlayer->HasItemCount(24226,1,true))
  462. -            pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_H_BKD, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+1);
  463. -
  464. -        pPlayer->SEND_GOSSIP_MENU(pPlayer->GetGossipTextId(pCreature), pCreature->GetGUID());
  465. -
  466. -        return true;
  467. +           if(pPlayer->getClass() == CLASS_HUNTER)
  468. +       {
  469. +       pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT,"Boar", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 1);
  470. +       pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT,"[Exotic] Bladewing Bloodletter (Chimaera)", GOSSIP_SENDER_MAIN,GOSSIP_ACTION_INFO_DEF+2);
  471. +       pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT,"[Exotic] King Dred (Devilsaur)", GOSSIP_SENDER_MAIN,GOSSIP_ACTION_INFO_DEF + 3);
  472. +       }
  473. +           pPlayer->SEND_GOSSIP_MENU(9978, pCreature->GetGUID());
  474. +           return true;
  475.      }
  476.  
  477.  };
  478. diff -r cc37739c1722 src/server/scripts/EasternKingdoms/stormwind_city.cpp
  479. --- a/src/server/scripts/EasternKingdoms/stormwind_city.cpp Thu Dec 23 21:03:27 2010 +0100
  480. +++ b/src/server/scripts/EasternKingdoms/stormwind_city.cpp Tue Jun 14 08:29:47 2011 +0200
  481. @@ -15,7 +15,24 @@
  482.   * You should have received a copy of the GNU General Public License along
  483.   * with this program. If not, see <http://www.gnu.org/licenses/>.
  484.   */
  485. -
  486. +#include "ScriptPCH.h"
  487. +#include "ScriptMgr.h"
  488. +#include "Common.h"
  489. +#include "World.h"
  490. +#include "Chat.h"
  491. +#include "revision.h"
  492. +#include "Util.h"
  493. +#include "Language.h"
  494. +#include "Opcodes.h"
  495. +#include "ObjectAccessor.h"
  496. +#include "AccountMgr.h"
  497. +#include "Chat.h"
  498. +#include "World.h"
  499. +#include "Common.h"
  500. +#include "SystemConfig.h"
  501. +#include "Player.h"
  502. +#include "DatabaseEnv.h"
  503. +#include "Field.h"
  504.  /* ScriptData
  505.  SDName: Stormwind_City
  506.  SD%Complete: 100
  507. @@ -32,11 +49,42 @@
  508.  npc_tyrion_spybot
  509.  npc_marzon_silent_blade
  510.  npc_lord_gregor_lescovar
  511. +npc_buff2
  512.  EndContentData */
  513.  
  514.  #include "ScriptPCH.h"
  515.  #include "ScriptedEscortAI.h"
  516. +/*######
  517. +## npc_buff2
  518. +######*/
  519.  
  520. +class npc_buff2 : public CreatureScript
  521. +{
  522. +public:
  523. +   npc_buff2() : CreatureScript("npc_buff2") { }
  524. +
  525. +   bool onGossipSelect(Player* pPlayer, Creature* pCreature, uint32 /*uiSender*/, uint32 uiAction)
  526. +   {
  527. +       pPlayer->PlayerTalkClass->ClearMenus();
  528. +       switch(uiAction)
  529. +       {
  530. +
  531. +           case GOSSIP_ACTION_INFO_DEF:
  532. +               pPlayer->CLOSE_GOSSIP_MENU();
  533. +               pCreature->CastSpell(pPlayer, 48161, false);
  534. +               break;
  535. +       }
  536. +       return true;
  537. +
  538. +   }
  539. +   bool onGossipHello(Player* pPlayer, Creature* pCreature)
  540. +   {
  541. +       pPlayer->ADD_GOSSIP_ITEM(0, "Proba", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF);
  542. +       pPlayer->SEND_GOSSIP_MENU(1, pCreature->GetGUID());
  543. +       return true;
  544. +   }
  545. +};
  546. +  
  547.  /*######
  548.  ## npc_archmage_malin
  549.  ######*/
  550. @@ -259,7 +307,41 @@
  551.                  pPlayer->CLOSE_GOSSIP_MENU();
  552.                  pPlayer->AreaExploredOrEventHappens(4185);
  553.                  break;
  554. -        }
  555. +       case GOSSIP_ACTION_INFO_DEF + 5:
  556. +           pCreature->CastSpell(pPlayer, 48161, false);
  557. +           break;
  558. +       case GOSSIP_ACTION_INFO_DEF + 6:
  559. +           pPlayer->CLOSE_GOSSIP_MENU();
  560. +           pPlayer->TeleportTo(571, 3642.494385f, 2034.591187f, 2.132169f, 4.314836f);
  561. +           break;
  562. +       case GOSSIP_ACTION_INFO_DEF + 7:
  563. +           pPlayer->CLOSE_GOSSIP_MENU();
  564. +           pPlayer->TeleportTo(530, -2240.985586f,5556.607910f,67.025848f,2.886295f);
  565. +           break;
  566. +       case GOSSIP_ACTION_INFO_DEF + 8:
  567. +           pPlayer->CLOSE_GOSSIP_MENU();
  568. +           pPlayer->TeleportTo(530,-1734.170044f,5818.359863f,148.658005f,1.207563f);
  569. +           break;
  570. +       case GOSSIP_ACTION_INFO_DEF + 9:
  571. +           pPlayer->CLOSE_GOSSIP_MENU();
  572. +           //QueryResult result = CharacterDatabase.PQuery("SELECT totalHonorPoints FROM characters WHERE guid='%d'", pPlayer->GetGUID());
  573. +           //if(result)
  574. +           //{
  575. +           //Field *fields = result->Fetch();
  576. +           //uint32 honorpont = fields[0].GetUInt32();
  577. +           //  if(honorpont>200)
  578. +           //  {
  579. +           //  CharacterDatabase.PQuery("UPDATE characters SET totalHonorPoints=totalHonorPoints-200 WHERE guid='%d'", pPlayer->GetGUID());
  580. +           //  CharacterDatabase.PQuery("UPDATE characters SET arenaPoints=arenaPoints+200 WHERE guid='%d'", pPlayer->GetGUID());
  581. +           //  }
  582. +           //}
  583. +           uint32 honorpont = pPlayer->GetHonorPoints();
  584. +           uint32 arenapont = pPlayer->GetArenaPoints();
  585. +           pPlayer->SetHonorPoints(honorpont-300);
  586. +           pPlayer->SetArenaPoints(arenapont+300);        
  587. +           break;
  588. +        }     
  589. +
  590.          return true;
  591.      }
  592.  
  593. @@ -270,9 +352,13 @@
  594.  
  595.          if (pPlayer->GetQuestStatus(4185) == QUEST_STATUS_INCOMPLETE)
  596.              pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_ITEM_KAT_1, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF);
  597. -
  598. -        pPlayer->SEND_GOSSIP_MENU(2693, pCreature->GetGUID());
  599. -
  600. +   pPlayer->ADD_GOSSIP_ITEM(0,"Health BUFF",GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 5);
  601. +   pPlayer->ADD_GOSSIP_ITEM(0,"Insta Teleport",GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 6);
  602. +   pPlayer->ADD_GOSSIP_ITEM(0,"Vendorok",GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 7);
  603. +        pPlayer->ADD_GOSSIP_ITEM(0,"Proff hely", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 8);
  604. +   pPlayer->ADD_GOSSIP_ITEM(0,"HONOR TO ARENA", GOSSIP_SENDER_MAIN,GOSSIP_ACTION_INFO_DEF + 9);
  605. +   pPlayer->SEND_GOSSIP_MENU(2693, pCreature->GetGUID());
  606. +  
  607.          return true;
  608.      }
  609.  
  610. diff -r cc37739c1722 src/server/scripts/Northrend/AzjolNerub/ahnkahet/boss_amanitar.cpp
  611. --- a/src/server/scripts/Northrend/AzjolNerub/ahnkahet/boss_amanitar.cpp    Thu Dec 23 21:03:27 2010 +0100
  612. +++ b/src/server/scripts/Northrend/AzjolNerub/ahnkahet/boss_amanitar.cpp    Tue Jun 14 08:29:47 2011 +0200
  613. @@ -89,6 +89,12 @@
  614.              {
  615.                  pInstance->SetData(DATA_AMANITAR_EVENT, DONE);
  616.                  pInstance->DoRemoveAurasDueToSpellOnPlayers(SPELL_MINI);
  617. +       Map::PlayerList const &PlayerList = pInstance->instance->GetPlayers();
  618. +       Map::PlayerList::const_iterator i = PlayerList.begin();
  619. +       Player *pPlayer = i->getSource();
  620. +       CharacterDatabase.PQuery("UPDATE guild SET pont=pont+10 WHERE guildid='%d'", pPlayer->GetGuildId());
  621. +       if(IsHeroic())
  622. +       CharacterDatabase.PQuery("UPDATE guild SET pont=pont+10 WHERE guildid='%d'", pPlayer->GetGuildId());
  623.              }
  624.          }
  625.  
  626. diff -r cc37739c1722 src/server/scripts/Northrend/AzjolNerub/ahnkahet/boss_elder_nadox.cpp
  627. --- a/src/server/scripts/Northrend/AzjolNerub/ahnkahet/boss_elder_nadox.cpp Thu Dec 23 21:03:27 2010 +0100
  628. +++ b/src/server/scripts/Northrend/AzjolNerub/ahnkahet/boss_elder_nadox.cpp Tue Jun 14 08:29:47 2011 +0200
  629. @@ -115,6 +115,12 @@
  630.              if (pInstance)
  631.              {
  632.                  pInstance->SetData(DATA_ELDER_NADOX_EVENT, DONE);
  633. +       Map::PlayerList const &PlayerList = pInstance->instance->GetPlayers();
  634. +       Map::PlayerList::const_iterator i = PlayerList.begin();
  635. +       Player *pPlayer = i->getSource();
  636. +       CharacterDatabase.PQuery("UPDATE guild SET pont=pont+10 WHERE guildid='%d'", pPlayer->GetGuildId());
  637. +       if(IsHeroic())
  638. +       CharacterDatabase.PQuery("UPDATE guild SET pont=pont+10 WHERE guildid='%d'", pPlayer->GetGuildId());
  639.                  if (IsHeroic() && !DeadAhnkaharGuardian)
  640.                      pInstance->DoCompleteAchievement(ACHIEV_RESPECT_YOUR_ELDERS);
  641.              }
  642. diff -r cc37739c1722 src/server/scripts/Northrend/AzjolNerub/ahnkahet/boss_herald_volazj.cpp
  643. --- a/src/server/scripts/Northrend/AzjolNerub/ahnkahet/boss_herald_volazj.cpp   Thu Dec 23 21:03:27 2010 +0100
  644. +++ b/src/server/scripts/Northrend/AzjolNerub/ahnkahet/boss_herald_volazj.cpp   Tue Jun 14 08:29:47 2011 +0200
  645. @@ -302,6 +302,12 @@
  646.  
  647.              if (pInstance)
  648.                  pInstance->SetData(DATA_HERALD_VOLAZJ, DONE);
  649. +       Map::PlayerList const &PlayerList = pInstance->instance->GetPlayers();
  650. +       Map::PlayerList::const_iterator i = PlayerList.begin();
  651. +       Player *pPlayer = i->getSource();
  652. +       CharacterDatabase.PQuery("UPDATE guild SET pont=pont+10 WHERE guildid='%d'", pPlayer->GetGuildId());
  653. +       if(IsHeroic())
  654. +       CharacterDatabase.PQuery("UPDATE guild SET pont=pont+10 WHERE guildid='%d'", pPlayer->GetGuildId());
  655.  
  656.              Summons.DespawnAll();
  657.              ResetPlayersPhaseMask();
  658. diff -r cc37739c1722 src/server/scripts/Northrend/AzjolNerub/ahnkahet/boss_jedoga_shadowseeker.cpp
  659. --- a/src/server/scripts/Northrend/AzjolNerub/ahnkahet/boss_jedoga_shadowseeker.cpp Thu Dec 23 21:03:27 2010 +0100
  660. +++ b/src/server/scripts/Northrend/AzjolNerub/ahnkahet/boss_jedoga_shadowseeker.cpp Tue Jun 14 08:29:47 2011 +0200
  661. @@ -150,6 +150,12 @@
  662.              DoScriptText(TEXT_DEATH, me);
  663.              if (pInstance)
  664.                  pInstance->SetData(DATA_JEDOGA_SHADOWSEEKER_EVENT, DONE);
  665. +       Map::PlayerList const &PlayerList = pInstance->instance->GetPlayers();
  666. +       Map::PlayerList::const_iterator i = PlayerList.begin();
  667. +       Player *pPlayer = i->getSource();
  668. +       CharacterDatabase.PQuery("UPDATE guild SET pont=pont+10 WHERE guildid='%d'", pPlayer->GetGuildId());
  669. +       if(IsHeroic())
  670. +       CharacterDatabase.PQuery("UPDATE guild SET pont=pont+10 WHERE guildid='%d'", pPlayer->GetGuildId());
  671.          }
  672.  
  673.          void MoveInLineOfSight(Unit* who)
  674. diff -r cc37739c1722 src/server/scripts/Northrend/AzjolNerub/ahnkahet/boss_prince_taldaram.cpp
  675. --- a/src/server/scripts/Northrend/AzjolNerub/ahnkahet/boss_prince_taldaram.cpp Thu Dec 23 21:03:27 2010 +0100
  676. +++ b/src/server/scripts/Northrend/AzjolNerub/ahnkahet/boss_prince_taldaram.cpp Tue Jun 14 08:29:47 2011 +0200
  677. @@ -82,9 +82,7 @@
  678.          boss_taldaramAI(Creature *c) : ScriptedAI(c)
  679.          {
  680.              pInstance = c->GetInstanceScript();
  681. -            me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_OOC_NOT_ATTACKABLE);
  682. -            me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
  683. -        }
  684. +         }
  685.  
  686.          uint32 uiBloodthirstTimer;
  687.          uint32 uiVanishTimer;
  688. @@ -264,6 +262,12 @@
  689.  
  690.              if (pInstance)
  691.                  pInstance->SetData(DATA_PRINCE_TALDARAM_EVENT, DONE);
  692. +       Map::PlayerList const &PlayerList = pInstance->instance->GetPlayers();
  693. +       Map::PlayerList::const_iterator i = PlayerList.begin();
  694. +       Player *pPlayer = i->getSource();
  695. +       CharacterDatabase.PQuery("UPDATE guild SET pont=pont+10 WHERE guildid='%d'", pPlayer->GetGuildId());
  696. +       if(IsHeroic())
  697. +       CharacterDatabase.PQuery("UPDATE guild SET pont=pont+10 WHERE guildid='%d'", pPlayer->GetGuildId());
  698.          }
  699.  
  700.          void KilledUnit(Unit * victim)
  701. @@ -347,7 +351,6 @@
  702.  
  703.          void Reset()
  704.          {
  705. -            me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
  706.              me->AddUnitMovementFlag(MOVEMENTFLAG_FLYING);
  707.              me->setFaction(16);
  708.              me->SetFloatValue(OBJECT_FIELD_SCALE_X, 1.0f);
  709. diff -r cc37739c1722 src/server/scripts/Northrend/DraktharonKeep/boss_dred.cpp
  710. --- a/src/server/scripts/Northrend/DraktharonKeep/boss_dred.cpp Thu Dec 23 21:03:27 2010 +0100
  711. +++ b/src/server/scripts/Northrend/DraktharonKeep/boss_dred.cpp Tue Jun 14 08:29:47 2011 +0200
  712. @@ -21,7 +21,7 @@
  713.  
  714.  #include "ScriptPCH.h"
  715.  #include "drak_tharon_keep.h"
  716. -
  717. +#include "DatabaseEnv.h"
  718.  enum eSpells
  719.  {
  720.      SPELL_BELLOWING_ROAR                          = 22686, // fears the group, can be resisted/dispelled
  721. @@ -145,9 +145,16 @@
  722.              if (pInstance)
  723.              {
  724.                  pInstance->SetData(DATA_DRED_EVENT,DONE);
  725. +       Map::PlayerList const &PlayerList = pInstance->instance->GetPlayers();
  726. +       Map::PlayerList::const_iterator i = PlayerList.begin();
  727. +       Player *pPlayer = i->getSource();
  728. +       CharacterDatabase.PQuery("UPDATE guild SET pont=pont+10 WHERE guildid='%d'", pPlayer->GetGuildId());
  729. +       if(IsHeroic())
  730. +       CharacterDatabase.PQuery("UPDATE guild SET pont=pont+10 WHERE guildid='%d'", pPlayer->GetGuildId());
  731. +                if (IsHeroic() && pInstance->GetData(DATA_KING_DRED_ACHIEV) == 6)
  732. +                    pInstance->DoCompleteAchievement(ACHIEV_BETTER_OFF_DRED);
  733.  
  734. -                if (IsHeroic() && pInstance->GetData(DATA_KING_DRED_ACHIEV) == 6)
  735. -                    pInstance->DoCompleteAchievement(ACHIEV_BETTER_OFF_DRED);
  736. +      
  737.              }
  738.          }
  739.      };
  740. diff -r cc37739c1722 src/server/scripts/Northrend/DraktharonKeep/boss_novos.cpp
  741. --- a/src/server/scripts/Northrend/DraktharonKeep/boss_novos.cpp    Thu Dec 23 21:03:27 2010 +0100
  742. +++ b/src/server/scripts/Northrend/DraktharonKeep/boss_novos.cpp    Tue Jun 14 08:29:47 2011 +0200
  743. @@ -184,6 +184,12 @@
  744.              if (pInstance)
  745.              {
  746.                  pInstance->SetData(DATA_NOVOS_EVENT, DONE);
  747. +       Map::PlayerList const &PlayerList = pInstance->instance->GetPlayers();
  748. +       Map::PlayerList::const_iterator i = PlayerList.begin();
  749. +       Player *pPlayer = i->getSource();
  750. +       CharacterDatabase.PQuery("UPDATE guild SET pont=pont+10 WHERE guildid='%d'", pPlayer->GetGuildId());
  751. +       if(IsHeroic())
  752. +       CharacterDatabase.PQuery("UPDATE guild SET pont=pont+10 WHERE guildid='%d'", pPlayer->GetGuildId());
  753.  
  754.                  if (IsHeroic() && bAchiev)
  755.                      pInstance->DoCompleteAchievement(ACHIEV_OH_NOVOS);
  756. diff -r cc37739c1722 src/server/scripts/Northrend/DraktharonKeep/boss_tharon_ja.cpp
  757. --- a/src/server/scripts/Northrend/DraktharonKeep/boss_tharon_ja.cpp    Thu Dec 23 21:03:27 2010 +0100
  758. +++ b/src/server/scripts/Northrend/DraktharonKeep/boss_tharon_ja.cpp    Tue Jun 14 08:29:47 2011 +0200
  759. @@ -228,7 +228,12 @@
  760.          void JustDied(Unit* /*killer*/)
  761.          {
  762.              DoScriptText(SAY_DEATH,me);
  763. -
  764. +           Map::PlayerList const &PlayerList = pInstance->instance->GetPlayers();
  765. +       Map::PlayerList::const_iterator i = PlayerList.begin();
  766. +       Player *pPlayer = i->getSource();
  767. +       CharacterDatabase.PQuery("UPDATE guild SET pont=pont+10 WHERE guildid='%d'", pPlayer->GetGuildId());
  768. +       if(IsHeroic())
  769. +       CharacterDatabase.PQuery("UPDATE guild SET pont=pont+10 WHERE guildid='%d'", pPlayer->GetGuildId());
  770.              if (pInstance)
  771.              {
  772.                  // clean morph on players
  773. diff -r cc37739c1722 src/server/scripts/Northrend/DraktharonKeep/boss_trollgore.cpp
  774. --- a/src/server/scripts/Northrend/DraktharonKeep/boss_trollgore.cpp    Thu Dec 23 21:03:27 2010 +0100
  775. +++ b/src/server/scripts/Northrend/DraktharonKeep/boss_trollgore.cpp    Tue Jun 14 08:29:47 2011 +0200
  776. @@ -159,7 +159,12 @@
  777.          void JustDied(Unit* /*killer*/)
  778.          {
  779.              DoScriptText(SAY_DEATH, me);
  780. -
  781. +       Map::PlayerList const &PlayerList = pInstance->instance->GetPlayers();
  782. +       Map::PlayerList::const_iterator i = PlayerList.begin();
  783. +       Player *pPlayer = i->getSource();
  784. +       CharacterDatabase.PQuery("UPDATE guild SET pont=pont+10 WHERE guildid='%d'", pPlayer->GetGuildId());
  785. +       if(IsHeroic())
  786. +       CharacterDatabase.PQuery("UPDATE guild SET pont=pont+10 WHERE guildid='%d'", pPlayer->GetGuildId());
  787.              lSummons.DespawnAll();
  788.  
  789.              if (pInstance)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement