Merge, thanks to Aokromes for testing my patches.
Added tag UP30 for e653a5b8d0 --HG-- branch : trunk
This commit is contained in:
commit
e33e700a78
92 files changed
+63
-4082
No files matched your search
@@ -24,3 +24,4 @@ eed51550303dd1ca6c8617711265ec573c085263 3.2.2a-last
|
||||
b048ef8c4b39afb28c66f5c16a2d2cc5eb8d12d2 3.2.2a-really-last
|
||||
433ffdb940c1589af6b0243fb40f74cbc12e6a18 3.3.2-last
|
||||
50ede8e9dc8a83776fb6a0bfe17af9391c17b625 Teacher's & SoulForge's birthday
|
||||
e653a5b8d0100c99337e012e4b66848efd028cfb UP30
|
||||
@@ -86,25 +86,9 @@ UPDATE `gameobject_template` SET `ScriptName`='go_dragonflayer_cage' WHERE entry
|
||||
UPDATE `gameobject_template` SET `ScriptName`='go_black_cage' WHERE `entry`=195310;
|
||||
|
||||
/* GUARD */
|
||||
UPDATE `creature_template` SET `ScriptName`='guard_azuremyst' WHERE `entry`=18038;
|
||||
UPDATE `creature_template` SET `ScriptName`='guard_generic' WHERE `entry` IN (727,1423,1735,1738,1742,1743,1744,1745,1746,2209,2210,3084,3212,3215,3217,3218,3219,3220,3221,3222,3223,3224,3502,3571,4262,4264,5595,5624,5725,5953,9460,11190,13076,15184,16221,16222,16733,18038,19687);
|
||||
UPDATE `creature_template` SET `ScriptName`='guard_orgrimmar' WHERE `entry`=3296;
|
||||
UPDATE `creature_template` SET `ScriptName`='guard_stormwind' WHERE `entry` IN (68,1976);
|
||||
UPDATE `creature_template` SET `ScriptName`='guard_contested' WHERE `entry` IN (9460,4624,3502,11190,15184);
|
||||
UPDATE `creature_template` SET `ScriptName`='guard_elwynnforest' WHERE `entry`=1423;
|
||||
UPDATE `creature_template` SET `ScriptName`='guard_eversong' WHERE `entry`=16221;
|
||||
UPDATE `creature_template` SET `ScriptName`='guard_darnassus' WHERE `entry`=4262;
|
||||
UPDATE `creature_template` SET `ScriptName`='guard_teldrassil' WHERE `entry`=3571;
|
||||
UPDATE `creature_template` SET `ScriptName`='guard_ironforge' WHERE `entry`=5595;
|
||||
UPDATE `creature_template` SET `ScriptName`='guard_dunmorogh' WHERE `entry` IN (727,13076);
|
||||
UPDATE `creature_template` SET `ScriptName`='guard_undercity' WHERE `entry`=5624;
|
||||
UPDATE `creature_template` SET `ScriptName`='guard_bluffwatcher' WHERE `entry`=3084;
|
||||
UPDATE `creature_template` SET `ScriptName`='guard_durotar' WHERE `entry`=5953;
|
||||
UPDATE `creature_template` SET `ScriptName`='guard_mulgore' WHERE `entry` IN (3212,3215,3217,3218,3219,3220,3221,3222,3223,3224);
|
||||
UPDATE `creature_template` SET `ScriptName`='guard_dunmorogh' WHERE `entry` IN (727,13076);
|
||||
UPDATE `creature_template` SET `ScriptName`='guard_tirisfal' WHERE `entry` IN (1735,1738,2210,1744,1745,5725,1743,2209,1746,1742);
|
||||
UPDATE `creature_template` SET `ScriptName`='guard_silvermoon' WHERE `entry`=16222;
|
||||
UPDATE `creature_template` SET `ScriptName`='guard_exodar' WHERE `entry`=16733;
|
||||
UPDATE `creature_template` SET `ScriptName`='guard_shattrath' WHERE `entry`=19687;
|
||||
UPDATE `creature_template` SET `ScriptName`='guard_shattrath_aldor' WHERE `entry`=18549;
|
||||
UPDATE `creature_template` SET `ScriptName`='guard_shattrath_scryer' WHERE `entry`=18568;
|
||||
|
||||
|
||||
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
@@ -0,0 +1,44 @@
|
||||
--
|
||||
-- Update basic NPC guards to use a common AI - gossip now handled in database
|
||||
--
|
||||
-- guard_azuremyst -> guard_generic
|
||||
UPDATE `creature_template` SET `ScriptName` = 'guard_generic' WHERE `entry` IN (18038);
|
||||
-- guard_bluffwatcher -> guard_generic
|
||||
UPDATE `creature_template` SET `ScriptName` = 'guard_generic' WHERE `entry` IN (3084);
|
||||
-- guard_contested -> guard_generic
|
||||
UPDATE `creature_template` SET `ScriptName` = 'guard_generic' WHERE `entry` IN (3502,4624,9460,11190,15184);
|
||||
-- guard_darnassus -> guard_generic
|
||||
UPDATE `creature_template` SET `ScriptName` = 'guard_generic' WHERE `entry` IN (4262);
|
||||
-- guard_dunmorogh -> guard_generic
|
||||
UPDATE `creature_template` SET `ScriptName` = 'guard_generic' WHERE `entry` IN (727,13076);
|
||||
-- guard_durotar -> guard_generic
|
||||
UPDATE `creature_template` SET `ScriptName` = 'guard_generic' WHERE `entry` IN (5953);
|
||||
-- guard_elwynnforest -> guard_generic
|
||||
UPDATE `creature_template` SET `ScriptName` = 'guard_generic' WHERE `entry` IN (1423);
|
||||
-- guard_eversong -> guard_generic
|
||||
UPDATE `creature_template` SET `ScriptName` = 'guard_generic' WHERE `entry` IN (16221);
|
||||
-- guard_exodar -> guard_generic
|
||||
UPDATE `creature_template` SET `ScriptName` = 'guard_generic' WHERE `entry` IN (16733);
|
||||
-- guard_ironforge -> guard_generic
|
||||
UPDATE `creature_template` SET `ScriptName` = 'guard_generic' WHERE `entry` IN (5595);
|
||||
-- guard_mulgore -> guard_generic
|
||||
UPDATE `creature_template` SET `ScriptName` = 'guard_generic' WHERE `entry` IN (3212,3215,3217,3218,3219,3220,3221,3222,3223,3224);
|
||||
-- guard_shattrath -> guard_generic
|
||||
UPDATE `creature_template` SET `ScriptName` = 'guard_generic' WHERE `entry` IN (19687);
|
||||
-- guard_silvermoon -> guard_generic
|
||||
UPDATE `creature_template` SET `ScriptName` = 'guard_generic' WHERE `entry` IN (16222);
|
||||
-- guard_teldrassil -> guard_generic
|
||||
UPDATE `creature_template` SET `ScriptName` = 'guard_generic' WHERE `entry` IN (3571);
|
||||
-- guard_tirisfal -> guard_generic
|
||||
UPDATE `creature_template` SET `ScriptName` = 'guard_generic' WHERE `entry` IN (1735,1738,1742,1743,1744,1745,1746,2209,2210,5725);
|
||||
-- guard_undercity -> guard_generic
|
||||
UPDATE `creature_template` SET `ScriptName` = 'guard_generic' WHERE `entry` IN (5624);
|
||||
--
|
||||
-- Update (remove) scripts from NPCs that had gossip - gossip now handled in database (AI removed)
|
||||
--
|
||||
-- NPC Surristrasz
|
||||
UPDATE `creature_template` SET `ScriptName` = '' WHERE `entry` IN (24795);
|
||||
-- NPC Tiare
|
||||
UPDATE `creature_template` SET `ScriptName` = '' WHERE `entry` IN (30051);
|
||||
-- NPC Fizzcrank Fullthrottle
|
||||
UPDATE `creature_template` SET `ScriptName` = '' WHERE `entry` IN (25590);
|
||||
@@ -1 +0,0 @@
|
||||
UPDATE `battleground_template` SET `MinPlayersPerTeam`='10', `MaxPlayersPerTeam`='10' WHERE `battleground_template`.`id`=32;
|
||||
@@ -135,4 +135,3 @@ void GuardAI::JustDied(Unit *killer)
|
||||
if (Player* pkiller = killer->GetCharmerOrOwnerPlayerOrPlayerItself())
|
||||
me->SendZoneUnderAttackMessage(pkiller);
|
||||
}
|
||||
|
||||
@@ -1630,8 +1630,16 @@ void Spell::EffectDummy(uint32 i)
|
||||
// Life Tap
|
||||
if (m_spellInfo->SpellFamilyFlags[0] & SPELLFAMILYFLAG_WARLOCK_LIFETAP)
|
||||
{
|
||||
int32 damage = m_spellInfo->EffectBasePoints[0] + (6 * m_spellInfo->baseLevel);
|
||||
int32 mana = damage + (m_caster->ToPlayer()->GetUInt32Value(PLAYER_FIELD_MOD_DAMAGE_DONE_POS+SPELL_SCHOOL_SHADOW) / 2);
|
||||
float spFactor = 0;
|
||||
switch (m_spellInfo->Id)
|
||||
{
|
||||
case 11689: spFactor = 0.2; break;
|
||||
case 27222:
|
||||
case 57946: spFactor = 0.5; break;
|
||||
default: spFactor = 0; break;
|
||||
}
|
||||
int32 damage = m_spellInfo->EffectBasePoints[0] + (6.3875 * m_spellInfo->baseLevel);
|
||||
int32 mana = damage + (m_caster->ToPlayer()->GetUInt32Value(PLAYER_FIELD_MOD_DAMAGE_DONE_POS+SPELL_SCHOOL_SHADOW) * spFactor);
|
||||
|
||||
if (unitTarget && (int32(unitTarget->GetHealth()) > damage))
|
||||
{
|
||||
|
||||
@@ -22,9 +22,6 @@ SDCategory: Borean Tundra
|
||||
EndScriptData */
|
||||
|
||||
/* ContentData
|
||||
npc_fizzcrank_fullthrottle
|
||||
npc_surristrasz
|
||||
npc_tiare
|
||||
npc_iruk
|
||||
npc_corastrasza
|
||||
npc_jenny
|
||||
@@ -42,155 +39,6 @@ EndContentData */
|
||||
#include "ScriptedEscortAI.h"
|
||||
#include "ScriptedFollowerAI.h"
|
||||
|
||||
/*######
|
||||
## npc_fizzcrank_fullthrottle
|
||||
######*/
|
||||
|
||||
#define GOSSIP_ITEM_GO_ON "Go on."
|
||||
#define GOSSIP_ITEM_TELL_ME "Tell me what's going on out here, Fizzcrank."
|
||||
|
||||
enum eFizzcrank
|
||||
{
|
||||
GOSSIP_TEXTID_FIZZCRANK1 = 12456,
|
||||
GOSSIP_TEXTID_FIZZCRANK2 = 12457,
|
||||
GOSSIP_TEXTID_FIZZCRANK3 = 12458,
|
||||
GOSSIP_TEXTID_FIZZCRANK4 = 12459,
|
||||
GOSSIP_TEXTID_FIZZCRANK5 = 12460,
|
||||
GOSSIP_TEXTID_FIZZCRANK6 = 12461,
|
||||
GOSSIP_TEXTID_FIZZCRANK7 = 12462,
|
||||
GOSSIP_TEXTID_FIZZCRANK8 = 12463,
|
||||
GOSSIP_TEXTID_FIZZCRANK9 = 12464,
|
||||
|
||||
QUEST_THE_MECHAGNOMES = 11708
|
||||
};
|
||||
|
||||
bool GossipHello_npc_fizzcrank_fullthrottle(Player* pPlayer, Creature* pCreature)
|
||||
{
|
||||
if (pCreature->isQuestGiver())
|
||||
pPlayer->PrepareQuestMenu(pCreature->GetGUID());
|
||||
|
||||
if (pPlayer->GetQuestStatus(QUEST_THE_MECHAGNOMES) == QUEST_STATUS_INCOMPLETE)
|
||||
pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_ITEM_TELL_ME, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+1);
|
||||
|
||||
pPlayer->SEND_GOSSIP_MENU(pPlayer->GetGossipTextId(pCreature), pCreature->GetGUID());
|
||||
return true;
|
||||
}
|
||||
|
||||
bool GossipSelect_npc_fizzcrank_fullthrottle(Player* pPlayer, Creature* pCreature, uint32 /*uiSender*/, uint32 uiAction)
|
||||
{
|
||||
switch(uiAction)
|
||||
{
|
||||
case GOSSIP_ACTION_INFO_DEF+1:
|
||||
pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_ITEM_GO_ON, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 2);
|
||||
pPlayer->SEND_GOSSIP_MENU(GOSSIP_TEXTID_FIZZCRANK1, pCreature->GetGUID());
|
||||
break;
|
||||
case GOSSIP_ACTION_INFO_DEF+2:
|
||||
pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_ITEM_GO_ON, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 3);
|
||||
pPlayer->SEND_GOSSIP_MENU(GOSSIP_TEXTID_FIZZCRANK2, pCreature->GetGUID());
|
||||
break;
|
||||
case GOSSIP_ACTION_INFO_DEF+3:
|
||||
pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_ITEM_GO_ON, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 4);
|
||||
pPlayer->SEND_GOSSIP_MENU(GOSSIP_TEXTID_FIZZCRANK3, pCreature->GetGUID());
|
||||
break;
|
||||
case GOSSIP_ACTION_INFO_DEF+4:
|
||||
pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_ITEM_GO_ON, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 5);
|
||||
pPlayer->SEND_GOSSIP_MENU(GOSSIP_TEXTID_FIZZCRANK4, pCreature->GetGUID());
|
||||
break;
|
||||
case GOSSIP_ACTION_INFO_DEF+5:
|
||||
pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_ITEM_GO_ON, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 6);
|
||||
pPlayer->SEND_GOSSIP_MENU(GOSSIP_TEXTID_FIZZCRANK5, pCreature->GetGUID());
|
||||
break;
|
||||
case GOSSIP_ACTION_INFO_DEF+6:
|
||||
pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_ITEM_GO_ON, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 7);
|
||||
pPlayer->SEND_GOSSIP_MENU(GOSSIP_TEXTID_FIZZCRANK6, pCreature->GetGUID());
|
||||
break;
|
||||
case GOSSIP_ACTION_INFO_DEF+7:
|
||||
pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_ITEM_GO_ON, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 8);
|
||||
pPlayer->SEND_GOSSIP_MENU(GOSSIP_TEXTID_FIZZCRANK7, pCreature->GetGUID());
|
||||
break;
|
||||
case GOSSIP_ACTION_INFO_DEF+8:
|
||||
pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_ITEM_GO_ON, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 9);
|
||||
pPlayer->SEND_GOSSIP_MENU(GOSSIP_TEXTID_FIZZCRANK8, pCreature->GetGUID());
|
||||
break;
|
||||
case GOSSIP_ACTION_INFO_DEF+9:
|
||||
pPlayer->SEND_GOSSIP_MENU(GOSSIP_TEXTID_FIZZCRANK9, pCreature->GetGUID());
|
||||
pPlayer->AreaExploredOrEventHappens(QUEST_THE_MECHAGNOMES);
|
||||
break;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
/*######
|
||||
## npc_surristrasz
|
||||
######*/
|
||||
|
||||
#define GOSSIP_ITEM_FREE_FLIGHT "I'd like passage to the Transitus Shield."
|
||||
#define GOSSIP_ITEM_FLIGHT "May I use a drake to fly elsewhere?"
|
||||
|
||||
enum eSurristrasz
|
||||
{
|
||||
SPELL_ABMER_TO_COLDARRA = 46064
|
||||
};
|
||||
|
||||
bool GossipHello_npc_surristrasz(Player* pPlayer, Creature* pCreature)
|
||||
{
|
||||
if (pCreature->isQuestGiver())
|
||||
pPlayer->PrepareQuestMenu(pCreature->GetGUID());
|
||||
|
||||
if (pCreature->isTaxi())
|
||||
{
|
||||
pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_ITEM_FREE_FLIGHT, GOSSIP_SENDER_MAIN, GOSSIP_OPTION_GOSSIP);
|
||||
pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, GOSSIP_ITEM_FLIGHT, GOSSIP_SENDER_MAIN, GOSSIP_OPTION_TAXIVENDOR);
|
||||
}
|
||||
|
||||
pPlayer->SEND_GOSSIP_MENU(pPlayer->GetGossipTextId(pCreature), pCreature->GetGUID());
|
||||
return true;
|
||||
}
|
||||
|
||||
bool GossipSelect_npc_surristrasz(Player* pPlayer, Creature* pCreature, uint32 /*uiSender*/, uint32 uiAction)
|
||||
{
|
||||
if (uiAction == GOSSIP_OPTION_GOSSIP)
|
||||
{
|
||||
pPlayer->CLOSE_GOSSIP_MENU();
|
||||
|
||||
//TaxiPath 795 (amber to coldarra)
|
||||
pPlayer->CastSpell(pPlayer, SPELL_ABMER_TO_COLDARRA, true);
|
||||
}
|
||||
|
||||
if (uiAction == GOSSIP_OPTION_TAXIVENDOR)
|
||||
pPlayer->GetSession()->SendTaxiMenu(pCreature);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/*######
|
||||
## npc_tiare
|
||||
######*/
|
||||
|
||||
#define GOSSIP_ITEM_TELEPORT "Teleport me to Amber Ledge, please."
|
||||
|
||||
enum eTiare
|
||||
{
|
||||
SPELL_TELEPORT_COLDARRA = 50135
|
||||
};
|
||||
|
||||
bool GossipHello_npc_tiare(Player* pPlayer, Creature* pCreature)
|
||||
{
|
||||
pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_ITEM_TELEPORT, GOSSIP_SENDER_MAIN, GOSSIP_OPTION_GOSSIP);
|
||||
pPlayer->SEND_GOSSIP_MENU(pPlayer->GetGossipTextId(pCreature), pCreature->GetGUID());
|
||||
return true;
|
||||
}
|
||||
|
||||
bool GossipSelect_npc_tiare(Player* pPlayer, Creature* /*pCreature*/, uint32 /*uiSender*/, uint32 uiAction)
|
||||
{
|
||||
if (uiAction == GOSSIP_OPTION_GOSSIP)
|
||||
{
|
||||
pPlayer->CLOSE_GOSSIP_MENU();
|
||||
pPlayer->CastSpell(pPlayer, SPELL_TELEPORT_COLDARRA, true);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
/*######
|
||||
## npc_sinkhole_kill_credit
|
||||
######*/
|
||||
@@ -2335,24 +2183,6 @@ void AddSC_borean_tundra()
|
||||
{
|
||||
Script *newscript;
|
||||
|
||||
newscript = new Script;
|
||||
newscript->Name = "npc_fizzcrank_fullthrottle";
|
||||
newscript->pGossipHello = &GossipHello_npc_fizzcrank_fullthrottle;
|
||||
newscript->pGossipSelect = &GossipSelect_npc_fizzcrank_fullthrottle;
|
||||
newscript->RegisterSelf();
|
||||
|
||||
newscript = new Script;
|
||||
newscript->Name = "npc_surristrasz";
|
||||
newscript->pGossipHello = &GossipHello_npc_surristrasz;
|
||||
newscript->pGossipSelect = &GossipSelect_npc_surristrasz;
|
||||
newscript->RegisterSelf();
|
||||
|
||||
newscript = new Script;
|
||||
newscript->Name = "npc_tiare";
|
||||
newscript->pGossipHello = &GossipHello_npc_tiare;
|
||||
newscript->pGossipSelect = &GossipSelect_npc_tiare;
|
||||
newscript->RegisterSelf();
|
||||
|
||||
newscript = new Script;
|
||||
newscript->Name = "npc_sinkhole_kill_credit";
|
||||
newscript->GetAI = &GetAI_npc_sinkhole_kill_credit;
|
||||
|
||||
+7
-3891
File diff suppressed because it is too large.
Load diff
Reference in new issue
Block a user