mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-16 07:30:42 +01:00
Scripts/Borean Tundra: Iruk (#24117)
* Scripts/Borean Tundra: Iruk
* Apply suggestions from code review
Co-Authored-By: Trond B. Krokli <38162891+illfated@users.noreply.github.com>
* Update 9999_99_99_99_world.sql
* Rename 9999_99_99_99_world.sql to 2020_02_01_01_world.sql
Co-authored-by: Trond B. Krokli <38162891+illfated@users.noreply.github.com>
Co-authored-by: Giacomo Pozzoni <giacomopoz@gmail.com>
(cherry picked from commit 8c443ae39f)
This commit is contained in:
@@ -0,0 +1,20 @@
|
||||
-- Iruk
|
||||
UPDATE `creature_template` SET `AIName`= 'SmartAI',`ScriptName`="" WHERE `entry`=26219;
|
||||
DELETE FROM `smart_scripts` WHERE `entryorguid`=26219 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
|
||||
(26219,0,0,1,62,0,100,0,9280,0,0,0,11,46816,1,0,0,0,0,7,0,0,0,0,0,0,0,"Iruk - On gossip select - Cast spell 'Create Totem of Issliruk'"),
|
||||
(26219,0,1,0,61,0,100,0,0,0,0,0,72,0,0,0,0,0,0,7,0,0,0,0,0,0,0,'Iruk - Linked event - Close gossip');
|
||||
|
||||
DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId`=15 AND `SourceGroup`=9280;
|
||||
INSERT INTO `conditions` (`SourceTypeOrReferenceId`,`SourceGroup`,`SourceEntry`,`ElseGroup`,`ConditionTypeOrReference`,`ConditionValue1`,`ConditionValue2`,`ConditionValue3`,`NegativeCondition`,`ErrorTextId`,`ScriptName`,`Comment`) VALUES
|
||||
(15,9280,0,0,9,11961,0,0,0,0,'','Show gossip option 0 only if player has quest 11961 active');
|
||||
|
||||
-- Elder Muahit
|
||||
DELETE FROM `creature_text` WHERE `CreatureID`=26218;
|
||||
INSERT INTO `creature_text` (`CreatureID`, `GroupID`, `ID`, `Text`, `Type`, `Language`, `Probability`, `Emote`, `Duration`, `Sound`, `BroadcastTextId`, `TextRange`, `comment`) VALUES
|
||||
(26218,0,0,'The spirits have listened! Can you feel it, $n?',12,0,100,0,0,0,25615,0,'Elder Muahit');
|
||||
|
||||
UPDATE `creature_template` SET `AIName`= 'SmartAI',`ScriptName`="" WHERE `entry`=26218;
|
||||
DELETE FROM `smart_scripts` WHERE `entryorguid`=26218 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
|
||||
(26218,0,0,0,20,0,100,0,11961,0,0,0,1,0,0,0,0,0,0,7,0,0,0,0,0,0,0,'Elder Muahit - On quest reward - Say line 0');
|
||||
@@ -152,59 +152,6 @@ public:
|
||||
}
|
||||
};
|
||||
|
||||
/*######
|
||||
## npc_iruk
|
||||
######*/
|
||||
|
||||
enum Iruk
|
||||
{
|
||||
GOSSIP_MENU_ID_NPC_IRUK = 9280,
|
||||
GOSSIP_OPTION_SEARCH_CORPSE = 0,
|
||||
NPC_TEXT_THIS_YOUNG_TUSKARR = 12585,
|
||||
|
||||
QUEST_SPIRITS_WATCH_OVER_US = 11961,
|
||||
|
||||
SPELL_CREATE_TOTEM_OF_ISSLIRUK = 46816
|
||||
};
|
||||
|
||||
class npc_iruk : public CreatureScript
|
||||
{
|
||||
public:
|
||||
npc_iruk() : CreatureScript("npc_iruk") { }
|
||||
|
||||
struct npc_irukAI : public ScriptedAI
|
||||
{
|
||||
npc_irukAI(Creature* creature) : ScriptedAI(creature) { }
|
||||
|
||||
bool GossipHello(Player* player) override
|
||||
{
|
||||
if (player->GetQuestStatus(QUEST_SPIRITS_WATCH_OVER_US) == QUEST_STATUS_INCOMPLETE)
|
||||
AddGossipItemFor(player, GOSSIP_MENU_ID_NPC_IRUK, GOSSIP_OPTION_SEARCH_CORPSE, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 1);
|
||||
|
||||
SendGossipMenuFor(player, NPC_TEXT_THIS_YOUNG_TUSKARR, me->GetGUID());
|
||||
return true;
|
||||
}
|
||||
|
||||
bool GossipSelect(Player* player, uint32 /*menuId*/, uint32 gossipListId) override
|
||||
{
|
||||
uint32 const action = player->PlayerTalkClass->GetGossipOptionAction(gossipListId);
|
||||
ClearGossipMenuFor(player);
|
||||
|
||||
if (action == GOSSIP_ACTION_INFO_DEF + 1)
|
||||
{
|
||||
player->CastSpell(player, SPELL_CREATE_TOTEM_OF_ISSLIRUK, true);
|
||||
CloseGossipMenuFor(player);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
};
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return new npc_irukAI(creature);
|
||||
}
|
||||
};
|
||||
|
||||
/*######
|
||||
## npc_nerubar_victim
|
||||
######*/
|
||||
@@ -2342,7 +2289,6 @@ void AddSC_borean_tundra()
|
||||
{
|
||||
new npc_khunok_the_behemoth();
|
||||
new npc_corastrasza();
|
||||
new npc_iruk();
|
||||
new npc_nerubar_victim();
|
||||
RegisterSpellScript(spell_q11865_place_fake_fur);
|
||||
new npc_nesingwary_trapper();
|
||||
|
||||
Reference in New Issue
Block a user