DB/GameObject: Update Toy Train Set
(cherry picked from commit fd9d04062c129049a134768ec15d09402c3fa95a)
This commit is contained in:
@@ -0,0 +1,10 @@
|
||||
-- Sniff
|
||||
UPDATE `gameobject_template` SET `AIName` = 'SmartGameObjectAI', `ScriptName` = '' WHERE `entry` = 193963;
|
||||
DELETE FROM `smart_scripts` WHERE `entryorguid` = 193963 AND `source_type` = 1;
|
||||
INSERT INTO `smart_scripts` (`entryorguid`,`source_type`,`id`,`link`,`event_type`,`event_phase_mask`,`event_chance`,`event_flags`,`event_param1`,`event_param2`,`event_param3`,`event_param4`,`event_param5`,`action_type`,`action_param1`,`action_param2`,`action_param3`,`action_param4`,`action_param5`,`action_param6`,`target_type`,`target_param1`,`target_param2`,`target_param3`,`target_param4`,`target_x`,`target_y`,`target_z`,`target_o`,`comment`) VALUES
|
||||
(193963,1,0,0,60,0,100,0,2000,2000,8000,8000,0,11,61551,0,0,0,0,0,1,0,0,0,0,0,0,0,0,"Toy Train Set - On Update - Cast 'Toy Train Set'");
|
||||
|
||||
-- 76092 already has condition
|
||||
DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId` = 13 AND `SourceEntry` = 62943;
|
||||
INSERT INTO `conditions` (`SourceTypeOrReferenceId`,`SourceGroup`,`SourceEntry`,`SourceId`,`ElseGroup`,`ConditionTypeOrReference`,`ConditionTarget`,`ConditionValue1`,`ConditionValue2`,`ConditionValue3`,`NegativeCondition`,`ErrorType`,`ErrorTextId`,`ScriptName`,`Comment`) VALUES
|
||||
(13,1,62943,0,0,31,0,5,193963,0,0,0,0,"","Group 0: Spell 'Wind-Up Train Wrecker' (Effect 1) targets object 'Toy Train Set'");
|
||||
@@ -26,7 +26,6 @@ go_tele_to_violet_stand
|
||||
go_soulwell
|
||||
go_amberpine_outhouse
|
||||
go_veil_skith_cage
|
||||
go_toy_train_set
|
||||
go_bells
|
||||
EndContentData */
|
||||
|
||||
@@ -681,47 +680,6 @@ public:
|
||||
}
|
||||
};
|
||||
|
||||
enum ToyTrainSpells
|
||||
{
|
||||
SPELL_TOY_TRAIN_PULSE = 61551,
|
||||
};
|
||||
|
||||
class go_toy_train_set : public GameObjectScript
|
||||
{
|
||||
public:
|
||||
go_toy_train_set() : GameObjectScript("go_toy_train_set") { }
|
||||
|
||||
struct go_toy_train_setAI : public GameObjectAI
|
||||
{
|
||||
go_toy_train_setAI(GameObject* go) : GameObjectAI(go), _pulseTimer(3 * IN_MILLISECONDS) { }
|
||||
|
||||
void UpdateAI(uint32 diff) override
|
||||
{
|
||||
if (diff < _pulseTimer)
|
||||
_pulseTimer -= diff;
|
||||
else
|
||||
{
|
||||
me->CastSpell(nullptr, SPELL_TOY_TRAIN_PULSE, true);
|
||||
_pulseTimer = 6 * IN_MILLISECONDS;
|
||||
}
|
||||
}
|
||||
|
||||
// triggered on wrecker'd
|
||||
void DoAction(int32 /*action*/) override
|
||||
{
|
||||
me->Delete();
|
||||
}
|
||||
|
||||
private:
|
||||
uint32 _pulseTimer;
|
||||
};
|
||||
|
||||
GameObjectAI* GetAI(GameObject* go) const override
|
||||
{
|
||||
return new go_toy_train_setAI(go);
|
||||
}
|
||||
};
|
||||
|
||||
/*####
|
||||
## go_brewfest_music
|
||||
####*/
|
||||
@@ -1240,7 +1198,6 @@ void AddSC_go_scripts()
|
||||
new go_frostblade_shrine();
|
||||
new go_midsummer_bonfire();
|
||||
new go_midsummer_ribbon_pole();
|
||||
new go_toy_train_set();
|
||||
new go_brewfest_music();
|
||||
new go_midsummer_music();
|
||||
new go_darkmoon_faire_music();
|
||||
|
||||
@@ -2113,7 +2113,6 @@ enum TrainWrecker
|
||||
GO_TOY_TRAIN = 193963,
|
||||
SPELL_TOY_TRAIN_PULSE = 61551,
|
||||
SPELL_WRECK_TRAIN = 62943,
|
||||
ACTION_WRECKED = 1,
|
||||
EVENT_DO_JUMP = 1,
|
||||
EVENT_DO_FACING = 2,
|
||||
EVENT_DO_WRECK = 3,
|
||||
@@ -2189,7 +2188,6 @@ class npc_train_wrecker : public CreatureScript
|
||||
if (GameObject* target = VerifyTarget())
|
||||
{
|
||||
me->CastSpell(target, SPELL_WRECK_TRAIN, false);
|
||||
target->AI()->DoAction(ACTION_WRECKED);
|
||||
_timer = 2 * IN_MILLISECONDS;
|
||||
_nextAction = EVENT_DO_DANCE;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user