Scripts/Icecrown Citadel: Added hacky workaround for teleporting spells because their default target is not supported by current grid system
Scripts/Icecrown Citadel: Mark Gunship event as complete on Lady Deathwhisper's death (temporary, until transport system will fully allow scripting the event) --HG-- branch : trunk
This commit is contained in:
@@ -2221,7 +2221,7 @@ void Spell::SelectEffectTargets(uint32 i, uint32 cur)
|
|||||||
Unit *target = m_targets.getUnitTarget();
|
Unit *target = m_targets.getUnitTarget();
|
||||||
if (!target)
|
if (!target)
|
||||||
{
|
{
|
||||||
sLog.outError("SPELL: no unit target for spell ID %u\n", m_spellInfo->Id);
|
sLog.outError("SPELL: no unit target for spell ID %u", m_spellInfo->Id);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -2264,7 +2264,7 @@ void Spell::SelectEffectTargets(uint32 i, uint32 cur)
|
|||||||
{
|
{
|
||||||
if (!m_targets.HasDst())
|
if (!m_targets.HasDst())
|
||||||
{
|
{
|
||||||
sLog.outError("SPELL: no destination for spell ID %u\n", m_spellInfo->Id);
|
sLog.outError("SPELL: no destination for spell ID %u", m_spellInfo->Id);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -3862,6 +3862,19 @@ void SpellMgr::LoadSpellCustomAttr()
|
|||||||
mSpellCustomAttr[i] |= SPELL_ATTR_CU_IGNORE_ARMOR;
|
mSpellCustomAttr[i] |= SPELL_ATTR_CU_IGNORE_ARMOR;
|
||||||
count++;
|
count++;
|
||||||
break;
|
break;
|
||||||
|
// THESE SPELLS ARE WORKING CORRECTLY EVEN WITHOUT THIS HACK
|
||||||
|
// THE ONLY REASON ITS HERE IS THAT CURRENT GRID SYSTEM
|
||||||
|
// DOES NOT ALLOW FAR OBJECT SELECTION (dist > 333)
|
||||||
|
case 70781: // Light's Hammer Teleport
|
||||||
|
case 70856: // Oratory of the Damned Teleport
|
||||||
|
case 70857: // Rampart of Skulls Teleport
|
||||||
|
case 70858: // Deathbringer's Rise Teleport
|
||||||
|
case 70859: // Upper Spire Teleport
|
||||||
|
case 70860: // Frozen Throne Teleport
|
||||||
|
case 70861: // Sindragosa's Lair Teleport
|
||||||
|
spellInfo->EffectImplicitTargetA[0] = TARGET_DST_DB;
|
||||||
|
count++;
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1449,15 +1449,15 @@ void World::SetInitialWorldSettings()
|
|||||||
sLog.outString("Loading Graveyard-zone links...");
|
sLog.outString("Loading Graveyard-zone links...");
|
||||||
sObjectMgr.LoadGraveyardZones();
|
sObjectMgr.LoadGraveyardZones();
|
||||||
|
|
||||||
sLog.outString("Loading Spell target coordinates...");
|
|
||||||
sSpellMgr.LoadSpellTargetPositions();
|
|
||||||
|
|
||||||
sLog.outString("Loading spell pet auras...");
|
sLog.outString("Loading spell pet auras...");
|
||||||
sSpellMgr.LoadSpellPetAuras();
|
sSpellMgr.LoadSpellPetAuras();
|
||||||
|
|
||||||
sLog.outString("Loading spell extra attributes...");
|
sLog.outString("Loading spell extra attributes...");
|
||||||
sSpellMgr.LoadSpellCustomAttr();
|
sSpellMgr.LoadSpellCustomAttr();
|
||||||
|
|
||||||
|
sLog.outString("Loading Spell target coordinates...");
|
||||||
|
sSpellMgr.LoadSpellTargetPositions();
|
||||||
|
|
||||||
sLog.outString("Loading enchant custom attributes...");
|
sLog.outString("Loading enchant custom attributes...");
|
||||||
sSpellMgr.LoadEnchantCustomAttr();
|
sSpellMgr.LoadEnchantCustomAttr();
|
||||||
|
|
||||||
|
|||||||
@@ -63,6 +63,7 @@ class icecrown_citadel_teleport : public GameObjectScript
|
|||||||
|
|
||||||
bool OnGossipSelect(Player* player, GameObject* go, uint32 sender, uint32 action)
|
bool OnGossipSelect(Player* player, GameObject* go, uint32 sender, uint32 action)
|
||||||
{
|
{
|
||||||
|
player->CLOSE_GOSSIP_MENU();
|
||||||
SpellEntry const* spell = sSpellStore.LookupEntry(action);
|
SpellEntry const* spell = sSpellStore.LookupEntry(action);
|
||||||
if (!spell)
|
if (!spell)
|
||||||
return false;
|
return false;
|
||||||
|
|||||||
@@ -207,8 +207,8 @@ class instance_icecrown_citadel : public InstanceMapScript
|
|||||||
switch (data)
|
switch (data)
|
||||||
{
|
{
|
||||||
case DONE:
|
case DONE:
|
||||||
// TEMPORARY, UNCOMMMENT IF YOU WANT TO DO SAURFANG AND SKIP GUNSHIP
|
// TEMPORARY, SKIP GUNSHIP
|
||||||
//uiEncounterState[DATA_GUNSHIP_EVENT] = DONE;
|
uiEncounterState[DATA_GUNSHIP_EVENT] = DONE;
|
||||||
HandleGameObject(uiOratoryDoor, true);
|
HandleGameObject(uiOratoryDoor, true);
|
||||||
if (GameObject* elevator = instance->GetGameObject(uiLadyDeathwisperElevator))
|
if (GameObject* elevator = instance->GetGameObject(uiLadyDeathwisperElevator))
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user