Core/Battlefield: correct wintergrasp faction for horde (thx kirkita), added grab passenger spell as per sniffs.
This commit is contained in:
@@ -13,10 +13,11 @@ UPDATE `creature_template` SET `ScriptName`= 'npc_wg_quest_giver' WHERE `entry`
|
|||||||
-- Wintergrasp vehicle teleport GO script
|
-- Wintergrasp vehicle teleport GO script
|
||||||
UPDATE `gameobject_template` SET `ScriptName`= 'go_wg_vehicle_teleporter' WHERE `entry`=192951; -- Vehicle Teleporter
|
UPDATE `gameobject_template` SET `ScriptName`= 'go_wg_vehicle_teleporter' WHERE `entry`=192951; -- Vehicle Teleporter
|
||||||
|
|
||||||
DELETE FROM `spell_script_names` WHERE `spell_id` IN (61409, 56662, 56664, 56659, 49899);
|
DELETE FROM `spell_script_names` WHERE `spell_id` IN (61409, 56662, 56664, 56659, 49899, 61178);
|
||||||
INSERT INTO `spell_script_names` (`spell_id`, `ScriptName`) VALUES
|
INSERT INTO `spell_script_names` (`spell_id`, `ScriptName`) VALUES
|
||||||
(61409, 'spell_wintergrasp_force_building'),
|
(61409, 'spell_wintergrasp_force_building'),
|
||||||
(56659, 'spell_wintergrasp_force_building'),
|
(56659, 'spell_wintergrasp_force_building'),
|
||||||
(56662, 'spell_wintergrasp_force_building'),
|
(56662, 'spell_wintergrasp_force_building'),
|
||||||
(56664, 'spell_wintergrasp_force_building'),
|
(56664, 'spell_wintergrasp_force_building'),
|
||||||
(49899, 'spell_wintergrasp_force_building');
|
(49899, 'spell_wintergrasp_force_building');
|
||||||
|
(61178, 'spell_wintergrasp_grab_passenger');
|
||||||
|
|||||||
@@ -563,6 +563,8 @@ void BattlefieldWG::OnCreatureCreate(Creature* creature)
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (creature->GetOwner())
|
||||||
|
creature->CastSpell(creature->GetOwner(),SPELL_GRAB_PASSENGER,true);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -29,7 +29,7 @@
|
|||||||
const uint32 VehNumWorldState[2] = { 3680, 3490 };
|
const uint32 VehNumWorldState[2] = { 3680, 3490 };
|
||||||
const uint32 MaxVehNumWorldState[2] = { 3681, 3491 };
|
const uint32 MaxVehNumWorldState[2] = { 3681, 3491 };
|
||||||
const uint32 ClockWorldState[2] = { 3781, 4354 };
|
const uint32 ClockWorldState[2] = { 3781, 4354 };
|
||||||
const uint32 WintergraspFaction[3] = { 1, 116, 35 };
|
const uint32 WintergraspFaction[3] = { 1, 2, 35 };
|
||||||
const float WintergraspStalkerPos[4] = { 0, 0, 0, 0 };
|
const float WintergraspStalkerPos[4] = { 0, 0, 0, 0 };
|
||||||
|
|
||||||
class BattlefieldWG;
|
class BattlefieldWG;
|
||||||
@@ -59,6 +59,7 @@ enum WintergraspSpells
|
|||||||
SPELL_GREATEST_HONOR = 58557,
|
SPELL_GREATEST_HONOR = 58557,
|
||||||
SPELL_ALLIANCE_FLAG = 14268,
|
SPELL_ALLIANCE_FLAG = 14268,
|
||||||
SPELL_HORDE_FLAG = 14267,
|
SPELL_HORDE_FLAG = 14267,
|
||||||
|
SPELL_GRAB_PASSENGER = 61178,
|
||||||
|
|
||||||
// Reward spells
|
// Reward spells
|
||||||
SPELL_VICTORY_REWARD = 56902,
|
SPELL_VICTORY_REWARD = 56902,
|
||||||
|
|||||||
@@ -492,6 +492,33 @@ class spell_wintergrasp_force_building : public SpellScriptLoader
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
class spell_wintergrasp_grab_passenger : public SpellScriptLoader
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
spell_wintergrasp_grab_passenger() : SpellScriptLoader("spell_wintergrasp_grab_passenger") { }
|
||||||
|
|
||||||
|
class spell_wintergrasp_grab_passenger_SpellScript : public SpellScript
|
||||||
|
{
|
||||||
|
PrepareSpellScript(spell_wintergrasp_grab_passenger_SpellScript);
|
||||||
|
|
||||||
|
void HandleScript(SpellEffIndex effIndex)
|
||||||
|
{
|
||||||
|
if (Player* target = GetHitPlayer())
|
||||||
|
GetCaster()->GetVehicleKit()->AddPassenger(target);
|
||||||
|
}
|
||||||
|
|
||||||
|
void Register()
|
||||||
|
{
|
||||||
|
OnEffectHitTarget += SpellEffectFn(spell_wintergrasp_grab_passenger_SpellScript::HandleScript, EFFECT_0, SPELL_EFFECT_SCRIPT_EFFECT);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
SpellScript* GetSpellScript() const
|
||||||
|
{
|
||||||
|
return new spell_wintergrasp_grab_passenger_SpellScript();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
class achievement_wg_didnt_stand_a_chance : public AchievementCriteriaScript
|
class achievement_wg_didnt_stand_a_chance : public AchievementCriteriaScript
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
@@ -516,6 +543,8 @@ public:
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
void AddSC_wintergrasp()
|
void AddSC_wintergrasp()
|
||||||
{
|
{
|
||||||
new npc_wg_queue();
|
new npc_wg_queue();
|
||||||
@@ -524,6 +553,7 @@ void AddSC_wintergrasp()
|
|||||||
new npc_wg_quest_giver();
|
new npc_wg_quest_giver();
|
||||||
new achievement_wg_didnt_stand_a_chance();
|
new achievement_wg_didnt_stand_a_chance();
|
||||||
new spell_wintergrasp_force_building();
|
new spell_wintergrasp_force_building();
|
||||||
|
new spell_wintergrasp_grab_passenger();
|
||||||
|
|
||||||
new go_wg_vehicle_teleporter();
|
new go_wg_vehicle_teleporter();
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user