Scripts/World: move Leviroth's item_script to SAI

(cherry picked from commit 17143938d7)
This commit is contained in:
Wyreth
2017-10-21 11:54:12 +02:00
committed by funjoker
parent 3b36278d02
commit 7204bb35e3
2 changed files with 12 additions and 28 deletions

View File

@@ -0,0 +1,12 @@
DELETE FROM `smart_scripts` WHERE `entryorguid`=26452 AND `id` IN (3, 4) AND `source_type`=0;
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`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(26452, 0, 3, 0, 25, 0, 100, 512, 0, 0, 0, 0, 18, 768, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, "Leviroth - On Reset - Add Unit flags (Immune to NPC and PC)"),
(26452, 0, 4, 0, 0, 0, 100, 0, 5000, 10000, 7000, 9000, 11, 19643, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, "Leviroth - In Combat - Cast 'Mortal Strike'");
-- UPDATE `item_template` SET `ScriptName`="" WHERE `entry`=35850;
DELETE FROM `item_script_names` WHERE `Id`=35850;
UPDATE `creature_template` SET `InhabitType`=2 WHERE `entry`=26452;
DELETE FROM `conditions` WHERE `SourceEntry`=47170 AND `SourceTypeOrReferenceId`=17;
INSERT INTO `conditions` (`SourceTypeOrReferenceId`, `SourceGroup`, `SourceEntry`, `SourceId`, `ElseGroup`, `ConditionTypeOrReference`, `ConditionTarget`, `ConditionValue1`, `ConditionValue2`, `ConditionValue3`, `NegativeCondition`, `ErrorType`, `ErrorTextId`, `ScriptName`, `comment`) VALUES
(17, 0, 47170, 0, 0, 29, 0, 26452, 8, 0, 0, 0, 0, "", "Spell Impale Leviroth can only be used within 8 yards of NPC Leviroth");

View File

@@ -361,33 +361,6 @@ public:
}
};
enum TheEmissary
{
QUEST_THE_EMISSARY = 11626,
NPC_LEVIROTH = 26452
};
class item_trident_of_nazjan : public ItemScript
{
public:
item_trident_of_nazjan() : ItemScript("item_Trident_of_Nazjan") { }
bool OnUse(Player* player, Item* item, SpellCastTargets const& /*targets*/, ObjectGuid /*castId*/) override
{
if (player->GetQuestStatus(QUEST_THE_EMISSARY) == QUEST_STATUS_INCOMPLETE)
{
if (Creature* pLeviroth = player->FindNearestCreature(NPC_LEVIROTH, 10.0f)) // spell range
{
pLeviroth->AI()->AttackStart(player);
return false;
} else
player->SendEquipError(EQUIP_ERR_OUT_OF_RANGE, item, nullptr);
} else
player->SendEquipError(EQUIP_ERR_CLIENT_LOCKED_OUT, item, nullptr);
return true;
}
};
enum CapturedFrog
{
QUEST_THE_PERFECT_SPIES = 25444,
@@ -449,7 +422,6 @@ void AddSC_item_scripts()
new item_pile_fake_furs();
new item_petrov_cluster_bombs();
new item_dehta_trap_smasher();
new item_trident_of_nazjan();
new item_captured_frog();
new item_generic_limit_chance_above_60();
}