Atwell, По-пробуй это:
diff -r 21846bb597361ce8334ddadc638194cd4dd94893 -r 5d0d3001583f0e42e0c1e9007d17a4646caeae68 sql/f-core updates/world/2012_08_16_00_spell_linked_spell.sql --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sql/f-core updates/world/2012_08_16_00_spell_linked_spell.sql Thu Aug 16 15:59:57 2012 +1000 @@ -0,0 +1,2 @@ +UPDATE `spell_linked_spell` SET `spell_effect` = 65551 WHERE `spell_trigger` IN (66549, 66548); +UPDATE `spell_linked_spell` SET `spell_trigger` = 65551 WHERE `spell_effect` IN (-66548, -66549); \ No newline at end of file diff -r 21846bb597361ce8334ddadc638194cd4dd94893 -r 5d0d3001583f0e42e0c1e9007d17a4646caeae68 src/server/game/Battlegrounds/Zones/BattlegroundIC.h --- a/src/server/game/Battlegrounds/Zones/BattlegroundIC.h Wed Aug 15 15:54:18 2012 +1000 +++ b/src/server/game/Battlegrounds/Zones/BattlegroundIC.h Thu Aug 16 15:59:57 2012 +1000 @@ -41,7 +41,9 @@ NPC_GLAIVE_THROWER_H = 35273, NPC_CATAPULT = 34793, NPC_HORDE_GUNSHIP_CANNON = 34935, - NPC_ALLIANCE_GUNSHIP_CANNON = 34929 + NPC_ALLIANCE_GUNSHIP_CANNON = 34929, + NPC_TRIGGER_TELEPORT_OUT = 22515, + NPC_TRIGGER_TELEPORT_IN = 23472 }; enum gameobjectsIC @@ -376,6 +378,18 @@ BG_IC_NPC_KEEP_CANNON_23, BG_IC_NPC_KEEP_CANNON_24, BG_IC_NPC_KEEP_CANNON_25, + BG_IC_NPC_TRIGGER_TELEPORT_HORDE_OUT_1, + BG_IC_NPC_TRIGGER_TELEPORT_HORDE_OUT_2, + BG_IC_NPC_TRIGGER_TELEPORT_HORDE_OUT_3, + BG_IC_NPC_TRIGGER_TELEPORT_ALLIANCE_OUT_1, + BG_IC_NPC_TRIGGER_TELEPORT_ALLIANCE_OUT_2, + BG_IC_NPC_TRIGGER_TELEPORT_ALLIANCE_OUT_3, + BG_IC_NPC_TRIGGER_TELEPORT_HORDE_IN_1, + BG_IC_NPC_TRIGGER_TELEPORT_HORDE_IN_2, + BG_IC_NPC_TRIGGER_TELEPORT_HORDE_IN_3, + BG_IC_NPC_TRIGGER_TELEPORT_ALLIANCE_IN_1, + BG_IC_NPC_TRIGGER_TELEPORT_ALLIANCE_IN_2, + BG_IC_NPC_TRIGGER_TELEPORT_ALLIANCE_IN_3, BG_IC_NPC_SIEGE_ENGINE_A, BG_IC_NPC_SIEGE_ENGINE_H, @@ -425,7 +439,7 @@ enum BG_IC_MaxSpawns { MAX_NORMAL_GAMEOBJECTS_SPAWNS = BG_IC_GO_DOODAD_ND_WINTERORC_WALL_GATEFX_DOOR01+1, - MAX_NORMAL_NPCS_SPAWNS = BG_IC_NPC_KEEP_CANNON_25+1, + MAX_NORMAL_NPCS_SPAWNS = BG_IC_NPC_KEEP_CANNON_25+13, MAX_WORKSHOP_SPAWNS = 10, MAX_DOCKS_SPAWNS = 12, MAX_SPIRIT_GUIDES_SPAWNS = 7, @@ -483,6 +497,18 @@ {BG_IC_NPC_KEEP_CANNON_23, NPC_KEEP_CANNON, TEAM_HORDE, 1135.29f, -840.878f, 88.0252f, 2.30383f}, // 33 {BG_IC_NPC_KEEP_CANNON_24, NPC_KEEP_CANNON, TEAM_HORDE, 1142.59f, -691.946f, 87.9756f, 3.9619f}, // 34 {BG_IC_NPC_KEEP_CANNON_25, NPC_KEEP_CANNON, TEAM_HORDE, 1166.13f, -858.391f, 87.9653f, 5.63741f}, // 35 + {BG_IC_NPC_TRIGGER_TELEPORT_HORDE_OUT_1, NPC_TRIGGER_TELEPORT_OUT, TEAM_NEUTRAL, 1120.43f, -762.11f, 47.92f, 2.94f}, + {BG_IC_NPC_TRIGGER_TELEPORT_HORDE_OUT_2, NPC_TRIGGER_TELEPORT_OUT, TEAM_NEUTRAL, 1218.82f, -864.58f, 48.85f, 4.93f}, + {BG_IC_NPC_TRIGGER_TELEPORT_HORDE_OUT_3, NPC_TRIGGER_TELEPORT_OUT, TEAM_NEUTRAL, 1218.01f, -658.29f, 47.86f, 1.52f}, + {BG_IC_NPC_TRIGGER_TELEPORT_ALLIANCE_OUT_1, NPC_TRIGGER_TELEPORT_OUT, TEAM_NEUTRAL, 442.24f, -835.25f, 44.30f, 0.06f}, + {BG_IC_NPC_TRIGGER_TELEPORT_ALLIANCE_OUT_2, NPC_TRIGGER_TELEPORT_OUT, TEAM_NEUTRAL, 352.15f, -737.57f, 49.09f, 1.56f}, + {BG_IC_NPC_TRIGGER_TELEPORT_ALLIANCE_OUT_3, NPC_TRIGGER_TELEPORT_OUT, TEAM_NEUTRAL, 349.92f, -926.23f, 48.54f, 4.78f}, + {BG_IC_NPC_TRIGGER_TELEPORT_HORDE_IN_1, NPC_TRIGGER_TELEPORT_IN, TEAM_NEUTRAL, 1174.85f, -763.24f, 48.72f, 6.26f}, + {BG_IC_NPC_TRIGGER_TELEPORT_HORDE_IN_2, NPC_TRIGGER_TELEPORT_IN, TEAM_NEUTRAL, 1217.78f, -827.49f, 48.91f, 1.64f}, + {BG_IC_NPC_TRIGGER_TELEPORT_HORDE_IN_3, NPC_TRIGGER_TELEPORT_IN, TEAM_NEUTRAL, 1218.13f, -698.13f, 48.92f, 4.95f}, + {BG_IC_NPC_TRIGGER_TELEPORT_ALLIANCE_IN_1, NPC_TRIGGER_TELEPORT_IN, TEAM_NEUTRAL, 389.57f, -832.38f, 48.65f, 3.00f}, + {BG_IC_NPC_TRIGGER_TELEPORT_ALLIANCE_IN_2, NPC_TRIGGER_TELEPORT_IN, TEAM_NEUTRAL, 350.55f, -789.15f, 48.91f, 4.72f}, + {BG_IC_NPC_TRIGGER_TELEPORT_ALLIANCE_IN_3, NPC_TRIGGER_TELEPORT_IN, TEAM_NEUTRAL, 351.13f, -876.23f, 48.91f, 1.57f}, }; const Position BG_IC_WorkshopVehicles[5] = diff -r 21846bb597361ce8334ddadc638194cd4dd94893 -r 5d0d3001583f0e42e0c1e9007d17a4646caeae68 src/server/game/Spells/SpellEffects.cpp --- a/src/server/game/Spells/SpellEffects.cpp Wed Aug 15 15:54:18 2012 +1000 +++ b/src/server/game/Spells/SpellEffects.cpp Thu Aug 16 15:59:57 2012 +1000 @@ -1011,6 +1011,34 @@ void Spell::EffectForceCast(SpellEffIndex effIndex) { + switch(m_spellInfo->Id) + { + case 66548://Teleport (IC battleground) + { + if(Creature* TargetTeleport=m_caster->FindNearestCreature(22515,60.0f,true)) + { + float x,y,z,o; + TargetTeleport->GetPosition(x,y,z,o); + if(m_caster->GetTypeId()!=TYPEID_PLAYER) + return; + m_caster->ToPlayer()->TeleportTo(628,x,y,z,o); + } + return; + } + case 66549: + { + if(Creature* TargetTeleport=m_caster->FindNearestCreature(23472,60.0f,true)) + { + float x,y,z,o; + TargetTeleport->GetPosition(x,y,z,o); + if(m_caster->GetTypeId()!=TYPEID_PLAYER) + return; + m_caster->ToPlayer()->TeleportTo(628,x,y,z,o); + } + return; + } + } + if (effectHandleMode != SPELL_EFFECT_HANDLE_HIT_TARGET) return; @@ -1155,7 +1183,7 @@ return; } break; - case 66550: // teleports outside (Isle of Conquest) + /*case 66550: // teleports outside (Isle of Conquest) if (Player* target = unitTarget->ToPlayer()) { if (target->GetTeamId() == TEAM_ALLIANCE) @@ -1163,8 +1191,8 @@ else m_targets.SetDst(1120.43f, -762.11f, 47.92f, 2.94f, 628); } - break; - case 66551: // teleports inside (Isle of Conquest) + break;*/ + /*case 66551: // teleports inside (Isle of Conquest) if (Player* target = unitTarget->ToPlayer()) { if (target->GetTeamId() == TEAM_ALLIANCE) @@ -1172,7 +1200,7 @@ else m_targets.SetDst(1174.85f, -763.24f, 48.72f, 6.26f, 628); } - break; + break;*/ } // If not exist data for dest location - return
Сообщение # 3 написано 03.02.2014 в 23:56
|