mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-16 07:30:42 +01:00
Merge pull request #11164 from untaught/master
Fix quest Redeeming the Dead (9685) and remove the core script
This commit is contained in:
12
sql/updates/world/2013_11_03_30_world_misc.sql
Normal file
12
sql/updates/world/2013_11_03_30_world_misc.sql
Normal file
@@ -0,0 +1,12 @@
|
||||
UPDATE `creature_template` SET `ainame`='SmartAI',`scriptname`='' WHERE `entry`=17768;
|
||||
DELETE FROM `smart_scripts` WHERE `entryorguid`=17768 AND `source_type`=0;
|
||||
DELETE FROM `smart_scripts` WHERE `entryorguid`=1776800 AND `source_type`=9;
|
||||
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
|
||||
(17768,0,0,0,8,0,100,0,31225,0,0,0,80,1776800,0,0,0,0,0,1,0,0,0,0,0,0,0,'Blood Knight Stillblade - On Spell Hit - Call Timed Action List'),
|
||||
(1776800,9,0,0,0,0,100,0,0,0,0,0,33,17768,0,0,0,0,0,7,0,0,0,0,0,0,0,'Action 0 - Give Quest Credit'),
|
||||
(1776800,9,1,0,0,0,100,0,0,0,0,0,11,32343,0,0,0,0,0,1,0,0,0,0,0,0,0,'Action 1 - Cast Revive Self'),
|
||||
(1776800,9,2,0,0,0,100,0,0,0,0,0,91,7,0,0,0,0,0,1,0,0,0,0,0,0,0,'Action 2 - Remove Unit Field Bytes 1'),
|
||||
(1776800,9,3,0,0,0,100,0,0,0,0,0,96,40,0,0,0,0,0,1,0,0,0,0,0,0,0,'Action 3 - Remove Dynamic Flags'),
|
||||
(1776800,9,4,0,0,0,100,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,'Action 4 - Talk'),
|
||||
(1776800,9,5,0,0,0,100,0,120000,120000,0,0,94,40,0,0,0,0,0,1,0,0,0,0,0,0,0,'Action 5 - Restore Dynamic Flags'),
|
||||
(1776800,9,6,0,0,0,100,0,0,0,0,0,90,7,0,0,0,0,0,1,0,0,0,0,0,0,0,'Action 6 - Restore Unit Field Bytes 1');
|
||||
@@ -272,7 +272,6 @@ void AddSC_ironforge();
|
||||
void AddSC_isle_of_queldanas();
|
||||
void AddSC_loch_modan();
|
||||
void AddSC_redridge_mountains();
|
||||
void AddSC_silvermoon_city();
|
||||
void AddSC_silverpine_forest();
|
||||
void AddSC_stormwind_city();
|
||||
void AddSC_stranglethorn_vale();
|
||||
|
||||
@@ -172,7 +172,6 @@ set(scripts_STAT_SRCS
|
||||
EasternKingdoms/ScarletMonastery/boss_herod.cpp
|
||||
EasternKingdoms/ScarletMonastery/boss_scorn.cpp
|
||||
EasternKingdoms/zone_undercity.cpp
|
||||
EasternKingdoms/zone_silvermoon_city.cpp
|
||||
EasternKingdoms/zone_loch_modan.cpp
|
||||
EasternKingdoms/ShadowfangKeep/shadowfang_keep.cpp
|
||||
EasternKingdoms/ShadowfangKeep/instance_shadowfang_keep.cpp
|
||||
|
||||
@@ -1,115 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2008-2013 TrinityCore <http://www.trinitycore.org/>
|
||||
* Copyright (C) 2006-2009 ScriptDev2 <https://scriptdev2.svn.sourceforge.net/>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License as published by the
|
||||
* Free Software Foundation; either version 2 of the License, or (at your
|
||||
* option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
||||
* more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License along
|
||||
* with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/* ScriptData
|
||||
SDName: Silvermoon_City
|
||||
SD%Complete: 100
|
||||
SDComment: Quest support: 9685
|
||||
SDCategory: Silvermoon City
|
||||
EndScriptData */
|
||||
|
||||
/* ContentData
|
||||
npc_blood_knight_stillblade
|
||||
EndContentData */
|
||||
|
||||
#include "ScriptMgr.h"
|
||||
#include "ScriptedCreature.h"
|
||||
#include "Player.h"
|
||||
#include "SpellInfo.h"
|
||||
|
||||
/*#######
|
||||
# npc_blood_knight_stillblade
|
||||
#######*/
|
||||
enum StillbladeData
|
||||
{
|
||||
SAY_HEAL = 0,
|
||||
|
||||
QUEST_REDEEMING_THE_DEAD = 9685,
|
||||
SPELL_SHIMMERING_VESSEL = 31225,
|
||||
SPELL_REVIVE_SELF = 32343,
|
||||
};
|
||||
|
||||
class npc_blood_knight_stillblade : public CreatureScript
|
||||
{
|
||||
public:
|
||||
npc_blood_knight_stillblade() : CreatureScript("npc_blood_knight_stillblade") { }
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const OVERRIDE
|
||||
{
|
||||
return new npc_blood_knight_stillbladeAI(creature);
|
||||
}
|
||||
|
||||
struct npc_blood_knight_stillbladeAI : public ScriptedAI
|
||||
{
|
||||
npc_blood_knight_stillbladeAI(Creature* creature) : ScriptedAI(creature) { }
|
||||
|
||||
uint32 lifeTimer;
|
||||
bool spellHit;
|
||||
|
||||
void Reset() OVERRIDE
|
||||
{
|
||||
lifeTimer = 120000;
|
||||
me->SetStandState(UNIT_STAND_STATE_DEAD);
|
||||
me->SetUInt32Value(UNIT_FIELD_BYTES_1, 7); // lay down
|
||||
spellHit = false;
|
||||
}
|
||||
|
||||
void EnterCombat(Unit* /*who*/) OVERRIDE
|
||||
{
|
||||
}
|
||||
|
||||
void MoveInLineOfSight(Unit* /*who*/) OVERRIDE
|
||||
|
||||
{
|
||||
}
|
||||
|
||||
void UpdateAI(uint32 diff) OVERRIDE
|
||||
{
|
||||
if (me->IsStandState())
|
||||
{
|
||||
if (lifeTimer <= diff)
|
||||
me->AI()->EnterEvadeMode();
|
||||
else
|
||||
lifeTimer -= diff;
|
||||
}
|
||||
}
|
||||
|
||||
void SpellHit(Unit* caster, const SpellInfo* Spellkind) OVERRIDE
|
||||
{
|
||||
if (Spellkind->Id != SPELL_SHIMMERING_VESSEL || spellHit)
|
||||
return;
|
||||
|
||||
Player* player = caster->ToPlayer();
|
||||
if (!player || !player->IsActiveQuest(QUEST_REDEEMING_THE_DEAD))
|
||||
return;
|
||||
|
||||
player->AreaExploredOrEventHappens(QUEST_REDEEMING_THE_DEAD);
|
||||
DoCast(me, SPELL_REVIVE_SELF);
|
||||
me->SetStandState(UNIT_STAND_STATE_STAND);
|
||||
me->SetUInt32Value(UNIT_DYNAMIC_FLAGS, 0);
|
||||
//me->RemoveAllAuras();
|
||||
Talk(SAY_HEAL);
|
||||
spellHit = true;
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
void AddSC_silvermoon_city()
|
||||
{
|
||||
new npc_blood_knight_stillblade();
|
||||
}
|
||||
Reference in New Issue
Block a user