*cleaned up SharedDefines
--HG-- branch : trunk
This commit is contained in:
@@ -20,6 +20,7 @@
|
||||
#include "Vehicle.h"
|
||||
#include "ObjectMgr.h"
|
||||
#include "escort_ai.h"
|
||||
#include "SpellId.h"
|
||||
|
||||
/*######
|
||||
##Quest 12848
|
||||
@@ -387,7 +388,7 @@ struct TRINITY_DLL_DECL npc_death_knight_initiateAI : public CombatAI
|
||||
pDoneBy->AttackStop();
|
||||
me->CastSpell(pDoneBy, SPELL_DUEL_VICTORY, true);
|
||||
lose = true;
|
||||
me->CastSpell(me, SPELL_ID_DUEL_BEG, true);
|
||||
me->CastSpell(me, SPELL_GROVEL_7267, true);
|
||||
me->RestoreFaction();
|
||||
}
|
||||
}
|
||||
@@ -417,14 +418,14 @@ struct TRINITY_DLL_DECL npc_death_knight_initiateAI : public CombatAI
|
||||
{
|
||||
if (lose)
|
||||
{
|
||||
if (!me->HasAura(SPELL_ID_DUEL_BEG))
|
||||
if (!me->HasAura(SPELL_GROVEL_7267))
|
||||
EnterEvadeMode();
|
||||
return;
|
||||
}
|
||||
else if (me->getVictim()->GetTypeId() == TYPEID_PLAYER
|
||||
&& me->getVictim()->GetHealth() * 10 < me->getVictim()->GetMaxHealth())
|
||||
{
|
||||
me->getVictim()->CastSpell(me->getVictim(), SPELL_ID_DUEL_BEG, true); // beg
|
||||
me->getVictim()->CastSpell(me->getVictim(), SPELL_GROVEL_7267, true); // beg
|
||||
me->getVictim()->RemoveGameObject(SPELL_DUEL_FLAG, true);
|
||||
EnterEvadeMode();
|
||||
return;
|
||||
|
||||
@@ -43,6 +43,7 @@
|
||||
#include "UpdateMask.h"
|
||||
#include "Util.h"
|
||||
#include "ScriptCalls.h"
|
||||
#include "SpellId.h"
|
||||
|
||||
class LoginQueryHolder : public SqlQueryHolder
|
||||
{
|
||||
@@ -760,8 +761,8 @@ void WorldSession::HandlePlayerLogin(LoginQueryHolder * holder)
|
||||
{
|
||||
// not blizz like, we must correctly save and load player instead...
|
||||
if(pCurrChar->getRace() == RACE_NIGHTELF)
|
||||
pCurrChar->CastSpell(pCurrChar, SPELL_ID_NE_GHOST, true, 0);// auras SPELL_AURA_INCREASE_SPEED(+speed in wisp form), SPELL_AURA_INCREASE_SWIM_SPEED(+swim speed in wisp form), SPELL_AURA_TRANSFORM (to wisp form)
|
||||
pCurrChar->CastSpell(pCurrChar, SPELL_ID_GHOST, true, 0); // auras SPELL_AURA_GHOST, SPELL_AURA_INCREASE_SPEED(why?), SPELL_AURA_INCREASE_SWIM_SPEED(why?)
|
||||
pCurrChar->CastSpell(pCurrChar, SPELL_GHOST_20584, true, 0);// auras SPELL_AURA_INCREASE_SPEED(+speed in wisp form), SPELL_AURA_INCREASE_SWIM_SPEED(+swim speed in wisp form), SPELL_AURA_TRANSFORM (to wisp form)
|
||||
pCurrChar->CastSpell(pCurrChar, SPELL_GHOST_8326, true, 0); // auras SPELL_AURA_GHOST, SPELL_AURA_INCREASE_SPEED(why?), SPELL_AURA_INCREASE_SWIM_SPEED(why?)
|
||||
|
||||
pCurrChar->SetMovement(MOVE_WATER_WALK);
|
||||
}
|
||||
|
||||
@@ -25,6 +25,7 @@
|
||||
#include "Opcodes.h"
|
||||
#include "UpdateData.h"
|
||||
#include "Player.h"
|
||||
#include "SpellId.h"
|
||||
|
||||
void WorldSession::HandleDuelAcceptedOpcode(WorldPacket& recvPacket)
|
||||
{
|
||||
@@ -70,7 +71,7 @@ void WorldSession::HandleDuelCancelledOpcode(WorldPacket& recvPacket)
|
||||
if(GetPlayer()->duel->opponent)
|
||||
GetPlayer()->duel->opponent->CombatStopWithPets(true);
|
||||
|
||||
GetPlayer()->CastSpell(GetPlayer(), SPELL_ID_DUEL_BEG, true); // beg
|
||||
GetPlayer()->CastSpell(GetPlayer(), SPELL_GROVEL_7267, true); // beg
|
||||
GetPlayer()->DuelComplete(DUEL_WON);
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -33,6 +33,7 @@
|
||||
#include "WaypointMovementGenerator.h"
|
||||
#include "InstanceSaveMgr.h"
|
||||
#include "ObjectMgr.h"
|
||||
#include "SpellId.h"
|
||||
|
||||
void WorldSession::HandleMoveWorldportAckOpcode( WorldPacket & /*recv_data*/ )
|
||||
{
|
||||
@@ -170,7 +171,7 @@ void WorldSession::HandleMoveWorldportAckOpcode()
|
||||
|
||||
// honorless target
|
||||
if(GetPlayer()->pvpInfo.inHostileArea)
|
||||
GetPlayer()->CastSpell(GetPlayer(), SPELL_ID_HONORLESS_TARGET, true);
|
||||
GetPlayer()->CastSpell(GetPlayer(), SPELL_HONORLESS_TARGET_2479, true);
|
||||
|
||||
// resummon pet
|
||||
GetPlayer()->ResummonPetTemporaryUnSummonedIfAny();
|
||||
@@ -218,7 +219,7 @@ void WorldSession::HandleMoveTeleportAck(WorldPacket& recv_data)
|
||||
{
|
||||
// honorless target
|
||||
if(plMover->pvpInfo.inHostileArea)
|
||||
plMover->CastSpell(plMover, SPELL_ID_HONORLESS_TARGET, true);
|
||||
plMover->CastSpell(plMover, SPELL_HONORLESS_TARGET_2479, true);
|
||||
}
|
||||
|
||||
// resummon pet
|
||||
|
||||
@@ -46,6 +46,7 @@
|
||||
#include "WaypointManager.h"
|
||||
#include "InstanceData.h" //for condition_instance_data
|
||||
#include "GossipDef.h"
|
||||
#include "SpellId.h"
|
||||
|
||||
INSTANTIATE_SINGLETON_1(ObjectMgr);
|
||||
|
||||
@@ -2154,7 +2155,7 @@ void ObjectMgr::LoadItemPrototypes()
|
||||
}
|
||||
|
||||
// special format
|
||||
if ((proto->Spells[0].SpellId == SPELL_ID_GENERIC_LEARN) || (proto->Spells[0].SpellId == SPELL_ID_GENERIC_LEARN_PET))
|
||||
if ((proto->Spells[0].SpellId == SPELL_LEARNING_483) || (proto->Spells[0].SpellId == SPELL_LEARNING_55884))
|
||||
{
|
||||
// spell_1
|
||||
if (proto->Spells[0].SpellTrigger != ITEM_SPELLTRIGGER_ON_USE)
|
||||
@@ -2191,7 +2192,7 @@ void ObjectMgr::LoadItemPrototypes()
|
||||
const_cast<ItemPrototype*>(proto)->Spells[1].SpellTrigger = ITEM_SPELLTRIGGER_ON_USE;
|
||||
}
|
||||
// allowed only in special format
|
||||
else if ((proto->Spells[1].SpellId==SPELL_ID_GENERIC_LEARN) || (proto->Spells[1].SpellId == SPELL_ID_GENERIC_LEARN_PET))
|
||||
else if ((proto->Spells[1].SpellId==SPELL_LEARNING_483) || (proto->Spells[1].SpellId == SPELL_LEARNING_55884))
|
||||
{
|
||||
sLog.outErrorDb("Item (Entry: %u) has broken spell in spellid_%d (%u)",i,1+1,proto->Spells[1].SpellId);
|
||||
const_cast<ItemPrototype*>(proto)->Spells[0].SpellId = 0;
|
||||
@@ -2237,7 +2238,7 @@ void ObjectMgr::LoadItemPrototypes()
|
||||
const_cast<ItemPrototype*>(proto)->Spells[j].SpellId = 0;
|
||||
}
|
||||
// allowed only in special format
|
||||
else if ((proto->Spells[j].SpellId==SPELL_ID_GENERIC_LEARN) || (proto->Spells[j].SpellId==SPELL_ID_GENERIC_LEARN_PET))
|
||||
else if ((proto->Spells[j].SpellId==SPELL_LEARNING_483) || (proto->Spells[j].SpellId==SPELL_LEARNING_55884))
|
||||
{
|
||||
sLog.outErrorDb("Item (Entry: %u) has broken spell in spellid_%d (%u)",i,j+1,proto->Spells[j].SpellId);
|
||||
const_cast<ItemPrototype*>(proto)->Spells[j].SpellId = 0;
|
||||
|
||||
+19
-18
@@ -66,6 +66,7 @@
|
||||
#include "AchievementMgr.h"
|
||||
#include "SpellAuras.h"
|
||||
#include "SpellAuraEffects.h"
|
||||
#include "SpellId.h"
|
||||
|
||||
#include <cmath>
|
||||
|
||||
@@ -1455,7 +1456,7 @@ void Player::setDeathState(DeathState s)
|
||||
|
||||
// restore default warrior stance
|
||||
if (getClass() == CLASS_WARRIOR)
|
||||
CastSpell(this,SPELL_ID_PASSIVE_BATTLE_STANCE,true);
|
||||
CastSpell(this,SPELL_BATTLE_STANCE_2457,true);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1776,7 +1777,7 @@ bool Player::TeleportTo(uint32 mapid, float x, float y, float z, float orientati
|
||||
else
|
||||
{
|
||||
if (getClass() == CLASS_DEATH_KNIGHT && GetMapId() == 609 && !isGameMaster()
|
||||
&& !HasSpell(SPELL_ID_DEATH_GATE))
|
||||
&& !HasSpell(SPELL_DEATH_GATE_50977))
|
||||
return false;
|
||||
|
||||
// far teleport to another map
|
||||
@@ -1930,7 +1931,7 @@ void Player::ProcessDelayedOperations()
|
||||
SaveToDB();
|
||||
|
||||
if (m_DelayedOperations & DELAYED_SPELL_CAST_DESERTER)
|
||||
CastSpell(this, SPELL_ID_DESERTER, true); // Deserter
|
||||
CastSpell(this, SPELL_DESERTER_26013, true); // Deserter
|
||||
|
||||
if (m_DelayedOperations & DELAYED_BG_MOUNT_RESTORE)
|
||||
{
|
||||
@@ -4345,8 +4346,8 @@ void Player::BuildPlayerRepop()
|
||||
GetSession()->SendPacket(&data);
|
||||
|
||||
if(getRace() == RACE_NIGHTELF)
|
||||
CastSpell(this, SPELL_ID_NE_GHOST, true);
|
||||
CastSpell(this, SPELL_ID_GHOST, true);
|
||||
CastSpell(this, SPELL_GHOST_20584, true);
|
||||
CastSpell(this, SPELL_GHOST_8326, true);
|
||||
|
||||
// there must be SMSG.FORCE_RUN_SPEED_CHANGE, SMSG.FORCE_SWIM_SPEED_CHANGE, SMSG.MOVE_WATER_WALK
|
||||
// there must be SMSG.STOP_MIRROR_TIMER
|
||||
@@ -4415,8 +4416,8 @@ void Player::ResurrectPlayer(float restore_percent, bool applySickness)
|
||||
// remove death flag + set aura
|
||||
SetByteValue(UNIT_FIELD_BYTES_1, 3, 0x00);
|
||||
if(getRace() == RACE_NIGHTELF)
|
||||
RemoveAurasDueToSpell(SPELL_ID_NE_GHOST); // speed bonuses
|
||||
RemoveAurasDueToSpell(SPELL_ID_GHOST); // SPELL_AURA_GHOST
|
||||
RemoveAurasDueToSpell(SPELL_GHOST_20584); // speed bonuses
|
||||
RemoveAurasDueToSpell(SPELL_GHOST_8326); // SPELL_AURA_GHOST
|
||||
|
||||
setDeathState(ALIVE);
|
||||
|
||||
@@ -4456,14 +4457,14 @@ void Player::ResurrectPlayer(float restore_percent, bool applySickness)
|
||||
if(int32(getLevel()) >= startLevel)
|
||||
{
|
||||
// set resurrection sickness
|
||||
CastSpell(this,SPELL_ID_PASSIVE_RESURRECTION_SICKNESS,true);
|
||||
CastSpell(this,SPELL_RESURRECTION_SICKNESS_15007,true);
|
||||
|
||||
// not full duration
|
||||
if(int32(getLevel()) < startLevel+9)
|
||||
{
|
||||
int32 delta = (int32(getLevel()) - startLevel + 1)*MINUTE;
|
||||
|
||||
if(Aura * aur = GetAura(SPELL_ID_PASSIVE_RESURRECTION_SICKNESS, GetGUID()))
|
||||
if(Aura * aur = GetAura(SPELL_RESURRECTION_SICKNESS_15007, GetGUID()))
|
||||
{
|
||||
aur->SetDuration(delta*IN_MILISECONDS);
|
||||
}
|
||||
@@ -7544,7 +7545,7 @@ void Player::CastItemUseSpell(Item *item,SpellCastTargets const& targets,uint8 c
|
||||
{
|
||||
ItemPrototype const* proto = item->GetProto();
|
||||
// special learning case
|
||||
if (proto->Spells[0].SpellId == SPELL_ID_GENERIC_LEARN || proto->Spells[0].SpellId==SPELL_ID_GENERIC_LEARN_PET)
|
||||
if (proto->Spells[0].SpellId == SPELL_LEARNING_483 || proto->Spells[0].SpellId==SPELL_LEARNING_55884)
|
||||
{
|
||||
uint32 learn_spell_id = proto->Spells[0].SpellId;
|
||||
uint32 learning_spell_id = proto->Spells[1].SpellId;
|
||||
@@ -11175,10 +11176,10 @@ Item* Player::EquipItem( uint16 pos, Item *pItem, bool update )
|
||||
|
||||
if(pProto && isInCombat()&& pProto->Class == ITEM_CLASS_WEAPON && m_weaponChangeTimer == 0)
|
||||
{
|
||||
uint32 cooldownSpell = SPELL_ID_WEAPON_SWITCH_COOLDOWN_1_5s;
|
||||
uint32 cooldownSpell = SPELL_COMBAT_SWAP_DND_6119;
|
||||
|
||||
if (getClass() == CLASS_ROGUE)
|
||||
cooldownSpell = SPELL_ID_WEAPON_SWITCH_COOLDOWN_1_0s;
|
||||
cooldownSpell = SPELL_COMBAT_SWAP_DND_6123;
|
||||
|
||||
SpellEntry const* spellProto = sSpellStore.LookupEntry(cooldownSpell);
|
||||
|
||||
@@ -16085,7 +16086,7 @@ void Player::_LoadAuras(QueryResult *result, uint32 timediff)
|
||||
}
|
||||
|
||||
if(getClass() == CLASS_WARRIOR && !HasAuraType(SPELL_AURA_MOD_SHAPESHIFT))
|
||||
CastSpell(this,SPELL_ID_PASSIVE_BATTLE_STANCE,true);
|
||||
CastSpell(this,SPELL_BATTLE_STANCE_2457,true);
|
||||
}
|
||||
|
||||
void Player::_LoadGlyphAuras()
|
||||
@@ -19334,7 +19335,7 @@ void Player::AddSpellAndCategoryCooldowns(SpellEntry const* spellInfo, uint32 it
|
||||
{
|
||||
// shoot spells used equipped item cooldown values already assigned in GetAttackTime(RANGED_ATTACK)
|
||||
// prevent 0 cooldowns set by another way
|
||||
if (rec <= 0 && catrec <= 0 && (cat == 76 || IsAutoRepeatRangedSpell(spellInfo) && spellInfo->Id != SPELL_ID_AUTOSHOT))
|
||||
if (rec <= 0 && catrec <= 0 && (cat == 76 || IsAutoRepeatRangedSpell(spellInfo) && spellInfo->Id != SPELL_AUTO_SHOT_75))
|
||||
rec = GetAttackTime(RANGED_ATTACK);
|
||||
|
||||
// Now we have cooldown data (if found any), time to apply mods
|
||||
@@ -19648,7 +19649,7 @@ void Player::LeaveBattleground(bool teleportToEntryPoint)
|
||||
return;
|
||||
}
|
||||
|
||||
CastSpell(this, SPELL_ID_DESERTER, true); // Deserter
|
||||
CastSpell(this, SPELL_DESERTER_26013, true); // Deserter
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -19657,7 +19658,7 @@ void Player::LeaveBattleground(bool teleportToEntryPoint)
|
||||
bool Player::CanJoinToBattleground() const
|
||||
{
|
||||
// check Deserter debuff
|
||||
if(HasAura(SPELL_ID_DESERTER))
|
||||
if(HasAura(SPELL_DESERTER_26013))
|
||||
return false;
|
||||
|
||||
return true;
|
||||
@@ -19697,7 +19698,7 @@ WorldLocation Player::GetStartPosition() const
|
||||
{
|
||||
PlayerInfo const *info = objmgr.GetPlayerInfo(getRace(), getClass());
|
||||
uint32 mapId = info->mapId;
|
||||
if(getClass() == CLASS_DEATH_KNIGHT && HasSpell(SPELL_ID_DEATH_GATE))
|
||||
if(getClass() == CLASS_DEATH_KNIGHT && HasSpell(SPELL_DEATH_GATE_50977))
|
||||
mapId = 0;
|
||||
return WorldLocation(mapId, info->positionX, info->positionY, info->positionZ, 0);
|
||||
}
|
||||
@@ -20203,7 +20204,7 @@ void Player::SendInitialPacketsAfterAddToMap()
|
||||
data << uint32(0x00000000); // on blizz it increments periodically
|
||||
GetSession()->SendPacket(&data);
|
||||
|
||||
CastSpell(this, SPELL_ID_LOGINEFFECT, true); // LOGINEFFECT
|
||||
CastSpell(this, SPELL_LOGINEFFECT_836, true); // LOGINEFFECT
|
||||
|
||||
// set some aura effects that send packet to player client after add player to map
|
||||
// SendMessageToSet not send it to player not it map, only for aura that not changed anything at re-apply
|
||||
|
||||
@@ -2350,27 +2350,6 @@ enum CorpseDynFlags
|
||||
CORPSE_DYNFLAG_LOOTABLE = 0x0001
|
||||
};
|
||||
|
||||
// Passive Spell codes explicit used in code
|
||||
#define SPELL_ID_GENERIC_LEARN 483
|
||||
#define SPELL_ID_GENERIC_LEARN_PET 55884 // used for learning mounts and companions
|
||||
#define SPELL_ID_PASSIVE_BATTLE_STANCE 2457
|
||||
#define SPELL_ID_PASSIVE_RESURRECTION_SICKNESS 15007
|
||||
#define SPELL_ID_WEAPON_SWITCH_COOLDOWN_1_5s 6119
|
||||
#define SPELL_ID_WEAPON_SWITCH_COOLDOWN_1_0s 6123
|
||||
#define SPELL_ID_AUTOSHOT 75 // used for checks in other spells interruption
|
||||
#define SPELL_ID_SHADOWMELD 58984 // used for check ignore stealth stance state
|
||||
#define SPELL_ID_BLOOD_PRESENCE 48266 // Blood Presence
|
||||
#define SPELL_ID_FROST_PRESENCE 48263 // Frost Presence
|
||||
#define SPELL_ID_UNHOLY_PRESENCE 48265 // Unholy Presence
|
||||
#define SPELL_ID_NE_GHOST 20584 // Night Elf Ghost Aura
|
||||
#define SPELL_ID_GHOST 8326 // Ghost
|
||||
#define SPELL_ID_DESERTER 26013 // Deserter
|
||||
#define SPELL_ID_LOGINEFFECT 836 // LOGINEFFECT
|
||||
#define SPELL_ID_HONORLESS_TARGET 2479 // Honorless target
|
||||
#define SPELL_ID_DUEL_BEG 7267 // Beg
|
||||
#define SPELL_ID_DEATH_GATE 50977 // Death Gate
|
||||
#define SPELL_ID_TAG_MURLOC 30877 // Tag Murloc
|
||||
|
||||
enum WeatherType
|
||||
{
|
||||
WEATHER_TYPE_FINE = 0,
|
||||
|
||||
+3
-2
@@ -51,6 +51,7 @@
|
||||
#include "Vehicle.h"
|
||||
#include "ScriptCalls.h"
|
||||
#include "SpellAuraEffects.h"
|
||||
#include "SpellId.h"
|
||||
|
||||
#define SPELL_CHANNEL_UPDATE_INTERVAL (1 * IN_MILISECONDS)
|
||||
|
||||
@@ -5074,8 +5075,8 @@ SpellCastResult Spell::CheckCast(bool strict)
|
||||
//custom check
|
||||
switch(m_spellInfo->Id)
|
||||
{
|
||||
case SPELL_ID_TAG_MURLOC:
|
||||
if (!m_targets.getUnitTarget() || (m_targets.getUnitTarget() && (m_targets.getUnitTarget()->HasAura(SPELL_ID_TAG_MURLOC) || m_targets.getUnitTarget()->GetTypeId() != TYPEID_UNIT || (m_targets.getUnitTarget()->GetTypeId() == TYPEID_UNIT && ((Creature*)m_targets.getUnitTarget())->GetEntry() != 17326 ))))// Tag Murloc, Blacksilt Scout
|
||||
case SPELL_TAG_MURLOC_30877:
|
||||
if (!m_targets.getUnitTarget() || (m_targets.getUnitTarget() && (m_targets.getUnitTarget()->HasAura(SPELL_TAG_MURLOC_30877) || m_targets.getUnitTarget()->GetTypeId() != TYPEID_UNIT || (m_targets.getUnitTarget()->GetTypeId() == TYPEID_UNIT && ((Creature*)m_targets.getUnitTarget())->GetEntry() != 17326 ))))// Tag Murloc, Blacksilt Scout
|
||||
return SPELL_FAILED_BAD_TARGETS;
|
||||
break;
|
||||
case 61336:
|
||||
|
||||
@@ -1228,7 +1228,7 @@ void Aura::HandleAuraSpecificMods(AuraApplication const * aurApp, Unit * caster,
|
||||
if (apply)
|
||||
{
|
||||
// Blood Presence bonus
|
||||
if (presence == SPELL_ID_BLOOD_PRESENCE)
|
||||
if (presence == SPELL_BLOOD_PRESENCE_48266)
|
||||
target->CastSpell(target,63611,true);
|
||||
else if (bloodPresenceAura)
|
||||
{
|
||||
@@ -1236,7 +1236,7 @@ void Aura::HandleAuraSpecificMods(AuraApplication const * aurApp, Unit * caster,
|
||||
target->CastCustomSpell(target,63611,NULL,&basePoints1,NULL,true,0,bloodPresenceAura);
|
||||
}
|
||||
// Frost Presence bonus
|
||||
if (presence == SPELL_ID_FROST_PRESENCE)
|
||||
if (presence == SPELL_FROST_PRESENCE_48263)
|
||||
target->CastSpell(target,61261,true);
|
||||
else if (frostPresenceAura)
|
||||
{
|
||||
@@ -1244,7 +1244,7 @@ void Aura::HandleAuraSpecificMods(AuraApplication const * aurApp, Unit * caster,
|
||||
target->CastCustomSpell(target,61261,&basePoints0,NULL,NULL,true,0,frostPresenceAura);
|
||||
}
|
||||
// Unholy Presence bonus
|
||||
if (presence == SPELL_ID_UNHOLY_PRESENCE)
|
||||
if (presence == SPELL_UNHOLY_PRESENCE_48265)
|
||||
{
|
||||
if(unholyPresenceAura)
|
||||
{
|
||||
@@ -1264,13 +1264,13 @@ void Aura::HandleAuraSpecificMods(AuraApplication const * aurApp, Unit * caster,
|
||||
else
|
||||
{
|
||||
// Remove passive auras
|
||||
if (presence == SPELL_ID_BLOOD_PRESENCE || bloodPresenceAura)
|
||||
if (presence == SPELL_BLOOD_PRESENCE_48266 || bloodPresenceAura)
|
||||
target->RemoveAurasDueToSpell(63611);
|
||||
if (presence == SPELL_ID_FROST_PRESENCE || frostPresenceAura)
|
||||
if (presence == SPELL_FROST_PRESENCE_48263 || frostPresenceAura)
|
||||
target->RemoveAurasDueToSpell(61261);
|
||||
if (presence == SPELL_ID_UNHOLY_PRESENCE || unholyPresenceAura)
|
||||
if (presence == SPELL_UNHOLY_PRESENCE_48265 || unholyPresenceAura)
|
||||
{
|
||||
if(presence == SPELL_ID_UNHOLY_PRESENCE && unholyPresenceAura)
|
||||
if(presence == SPELL_UNHOLY_PRESENCE_48265 && unholyPresenceAura)
|
||||
{
|
||||
//target->RemoveAurasDueToSpell(63622);
|
||||
target->RemoveAurasDueToSpell(65095);
|
||||
|
||||
@@ -3721,7 +3721,7 @@ void Spell::EffectLearnSpell(uint32 i)
|
||||
|
||||
Player *player = (Player*)unitTarget;
|
||||
|
||||
uint32 spellToLearn = (m_spellInfo->Id == SPELL_ID_GENERIC_LEARN || m_spellInfo->Id == SPELL_ID_GENERIC_LEARN_PET) ? damage : m_spellInfo->EffectTriggerSpell[i];
|
||||
uint32 spellToLearn = (m_spellInfo->Id == SPELL_LEARNING_483 || m_spellInfo->Id == SPELL_LEARNING_55884) ? damage : m_spellInfo->EffectTriggerSpell[i];
|
||||
player->learnSpell(spellToLearn,false);
|
||||
|
||||
sLog.outDebug("Spell: Player %u has learned spell %u from NpcGUID=%u", player->GetGUIDLow(), spellToLearn, m_caster->GetGUIDLow());
|
||||
|
||||
@@ -631,7 +631,7 @@ SpellSpecific GetSpellSpecific(uint32 spellId)
|
||||
return spellmgr.GetSpellElixirSpecific(spellInfo->Id);
|
||||
|
||||
case SPELLFAMILY_DEATHKNIGHT:
|
||||
if (spellInfo->Id == SPELL_ID_BLOOD_PRESENCE || spellInfo->Id == SPELL_ID_FROST_PRESENCE || spellInfo->Id == SPELL_ID_UNHOLY_PRESENCE)
|
||||
if (spellInfo->Id == SPELL_BLOOD_PRESENCE_48266 || spellInfo->Id == SPELL_FROST_PRESENCE_48263 || spellInfo->Id == SPELL_UNHOLY_PRESENCE_48265)
|
||||
//if (spellInfo->Category == 47)
|
||||
return SPELL_SPECIFIC_PRESENCE;
|
||||
break;
|
||||
@@ -767,7 +767,7 @@ bool SpellMgr::_isPositiveEffect(uint32 spellId, uint32 effIndex, bool deep) con
|
||||
case 50524: // Runic Power Feed
|
||||
return false;
|
||||
case 12042: // Arcane Power
|
||||
case SPELL_ID_TAG_MURLOC: // Tag Murloc
|
||||
case SPELL_TAG_MURLOC_30877: // Tag Murloc
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -3807,7 +3807,7 @@ void SpellMgr::LoadSpellCustomAttr()
|
||||
spellInfo->AttributesEx5 |= SPELL_ATTR_EX5_START_PERIODIC_AT_APPLY;
|
||||
count++;
|
||||
break;
|
||||
case SPELL_ID_TAG_MURLOC:
|
||||
case SPELL_TAG_MURLOC_30877:
|
||||
spellInfo->EffectImplicitTargetA[0] = TARGET_UNIT_NEARBY_ENTRY;
|
||||
spellInfo->EffectImplicitTargetB[0] = 0;
|
||||
break;
|
||||
|
||||
+7
-6
@@ -55,6 +55,7 @@
|
||||
#include "Vehicle.h"
|
||||
#include "Transports.h"
|
||||
#include "ScriptCalls.h"
|
||||
#include "SpellId.h"
|
||||
|
||||
#include <math.h>
|
||||
|
||||
@@ -832,7 +833,7 @@ uint32 Unit::DealDamage(Unit *pVictim, uint32 damage, CleanDamage const* cleanDa
|
||||
he->duel->opponent->CombatStopWithPets(true);
|
||||
he->CombatStopWithPets(true);
|
||||
|
||||
he->CastSpell(he, SPELL_ID_DUEL_BEG, true); // beg
|
||||
he->CastSpell(he, SPELL_GROVEL_7267, true); // beg
|
||||
he->DuelComplete(DUEL_WON);
|
||||
}
|
||||
}
|
||||
@@ -3273,10 +3274,10 @@ void Unit::_UpdateSpells( uint32 time )
|
||||
void Unit::_UpdateAutoRepeatSpell()
|
||||
{
|
||||
//check "realtime" interrupts
|
||||
if ( (GetTypeId() == TYPEID_PLAYER && ((Player*)this)->isMoving()) || IsNonMeleeSpellCasted(false,false,true,m_currentSpells[CURRENT_AUTOREPEAT_SPELL]->m_spellInfo->Id == SPELL_ID_AUTOSHOT) )
|
||||
if ( (GetTypeId() == TYPEID_PLAYER && ((Player*)this)->isMoving()) || IsNonMeleeSpellCasted(false,false,true,m_currentSpells[CURRENT_AUTOREPEAT_SPELL]->m_spellInfo->Id == SPELL_AUTO_SHOT_75) )
|
||||
{
|
||||
// cancel wand shoot
|
||||
if(m_currentSpells[CURRENT_AUTOREPEAT_SPELL]->m_spellInfo->Id != SPELL_ID_AUTOSHOT)
|
||||
if(m_currentSpells[CURRENT_AUTOREPEAT_SPELL]->m_spellInfo->Id != SPELL_AUTO_SHOT_75)
|
||||
InterruptSpell(CURRENT_AUTOREPEAT_SPELL);
|
||||
m_AutoRepeatFirstCast = true;
|
||||
return;
|
||||
@@ -3329,7 +3330,7 @@ void Unit::SetCurrentCastedSpell( Spell * pSpell )
|
||||
if ( m_currentSpells[CURRENT_AUTOREPEAT_SPELL] )
|
||||
{
|
||||
// break autorepeat if not Auto Shot
|
||||
if (m_currentSpells[CURRENT_AUTOREPEAT_SPELL]->m_spellInfo->Id != SPELL_ID_AUTOSHOT)
|
||||
if (m_currentSpells[CURRENT_AUTOREPEAT_SPELL]->m_spellInfo->Id != SPELL_AUTO_SHOT_75)
|
||||
InterruptSpell(CURRENT_AUTOREPEAT_SPELL);
|
||||
m_AutoRepeatFirstCast = true;
|
||||
}
|
||||
@@ -3344,7 +3345,7 @@ void Unit::SetCurrentCastedSpell( Spell * pSpell )
|
||||
|
||||
// it also does break autorepeat if not Auto Shot
|
||||
if ( m_currentSpells[CURRENT_AUTOREPEAT_SPELL] &&
|
||||
m_currentSpells[CURRENT_AUTOREPEAT_SPELL]->m_spellInfo->Id != SPELL_ID_AUTOSHOT )
|
||||
m_currentSpells[CURRENT_AUTOREPEAT_SPELL]->m_spellInfo->Id != SPELL_AUTO_SHOT_75 )
|
||||
InterruptSpell(CURRENT_AUTOREPEAT_SPELL);
|
||||
addUnitState(UNIT_STAT_CASTING);
|
||||
} break;
|
||||
@@ -3352,7 +3353,7 @@ void Unit::SetCurrentCastedSpell( Spell * pSpell )
|
||||
case CURRENT_AUTOREPEAT_SPELL:
|
||||
{
|
||||
// only Auto Shoot does not break anything
|
||||
if (pSpell->m_spellInfo->Id != SPELL_ID_AUTOSHOT)
|
||||
if (pSpell->m_spellInfo->Id != SPELL_AUTO_SHOT_75)
|
||||
{
|
||||
// generic autorepeats break generic non-delayed and channeled non-delayed spells
|
||||
InterruptSpell(CURRENT_GENERIC_SPELL,false);
|
||||
|
||||
Reference in New Issue
Block a user