Merge, thanks to Aokromes for testing my patches.
Added tag UP30 for e653a5b8d0 --HG-- branch : trunk
This commit is contained in:
@@ -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