*Headless horseman
-only summon once / instance -fix fly movement -proper invis modelids for dummies --HG-- branch : trunk
This commit is contained in:
@@ -0,0 +1,6 @@
|
||||
UPDATE `creature_template` SET `modelid_A`='11686',`modelid_H`='11686' WHERE `entry`=23537;
|
||||
UPDATE `creature_template` SET `modelid_A`='11686',`modelid_H`='11686' WHERE `entry`=23686;
|
||||
UPDATE `creature_template` SET `modelid_A`='11686',`modelid_H`='11686' WHERE `entry`=23758;
|
||||
UPDATE `creature_template` SET `modelid_A`='11686',`modelid_H`='11686' WHERE `entry`=24034;
|
||||
UPDATE `creature_template` SET `modelid_A`='11686',`modelid_H`='11686' WHERE `entry`=23775;
|
||||
|
||||
+12
-5
@@ -129,7 +129,7 @@ static Summon Text[]=
|
||||
{"Now, know demise!"}
|
||||
};
|
||||
|
||||
#define EMOTE_LAUGHS "laughs"
|
||||
#define EMOTE_LAUGHS "Headless Horseman laughs"
|
||||
|
||||
struct TRINITY_DLL_DECL mob_wisp_invisAI : public ScriptedAI
|
||||
{
|
||||
@@ -406,15 +406,15 @@ struct TRINITY_DLL_DECL boss_headless_horsemanAI : public ScriptedAI
|
||||
headGUID = 0;
|
||||
}
|
||||
|
||||
if (pInstance)
|
||||
pInstance->SetData(DATA_HORSEMAN_EVENT, NOT_STARTED);
|
||||
//if (pInstance)
|
||||
// pInstance->SetData(DATA_HORSEMAN_EVENT, NOT_STARTED);
|
||||
}
|
||||
|
||||
void FlyMode()
|
||||
{
|
||||
m_creature->SetVisibility(VISIBILITY_OFF);
|
||||
m_creature->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
m_creature->AddUnitMovementFlag(MOVEMENTFLAG_HOVER);
|
||||
m_creature->AddUnitMovementFlag(MOVEMENTFLAG_ONTRANSPORT + MOVEMENTFLAG_LEVITATING);
|
||||
m_creature->SetSpeed(MOVE_WALK,5.0f,true);
|
||||
wp_reached = false;
|
||||
count = 0;
|
||||
@@ -447,7 +447,7 @@ struct TRINITY_DLL_DECL boss_headless_horsemanAI : public ScriptedAI
|
||||
pInstance->SetData(GAMEOBJECT_PUMPKIN_SHRINE, 0); //hide gameobject
|
||||
break;
|
||||
case 19:
|
||||
m_creature->RemoveUnitMovementFlag(MOVEMENTFLAG_HOVER);
|
||||
m_creature->RemoveUnitMovementFlag(MOVEMENTFLAG_ONTRANSPORT + MOVEMENTFLAG_LEVITATING);
|
||||
break;
|
||||
case 20:
|
||||
{
|
||||
@@ -821,6 +821,13 @@ struct TRINITY_DLL_DECL mob_pulsing_pumpkinAI : public ScriptedAI
|
||||
|
||||
bool GOHello_go_loosely_turned_soil(Player* pPlayer, GameObject* soil)
|
||||
{
|
||||
ScriptedInstance* pInstance = pPlayer->GetInstanceData();
|
||||
if (pInstance)
|
||||
{
|
||||
if(pInstance->GetData(DATA_HORSEMAN_EVENT) != NOT_STARTED)
|
||||
return true;
|
||||
pInstance->SetData(DATA_HORSEMAN_EVENT, IN_PROGRESS);
|
||||
}
|
||||
/* if (soil->GetGoType() == GAMEOBJECT_TYPE_QUESTGIVER && plr->getLevel() > 64)
|
||||
{
|
||||
plr->PrepareQuestMenu(soil->GetGUID());
|
||||
|
||||
+4
-2
@@ -30,7 +30,7 @@ EndScriptData */
|
||||
#define ENTRY_HEAD 23775
|
||||
#define ENTRY_PUMPKIN 23694
|
||||
|
||||
#define MAX_ENCOUNTER 1
|
||||
#define MAX_ENCOUNTER 2
|
||||
|
||||
struct TRINITY_DLL_DECL instance_scarlet_monastery : public ScriptedInstance
|
||||
{
|
||||
@@ -101,6 +101,7 @@ struct TRINITY_DLL_DECL instance_scarlet_monastery : public ScriptedInstance
|
||||
HandleGameObject(PumpkinShrineGUID, false);
|
||||
break;
|
||||
case DATA_HORSEMAN_EVENT:
|
||||
m_auiEncounter[1] = data;
|
||||
if (data == DONE)
|
||||
{
|
||||
for (std::set<uint64>::iterator itr = HorsemanAdds.begin(); itr != HorsemanAdds.end(); ++itr)
|
||||
@@ -135,7 +136,8 @@ struct TRINITY_DLL_DECL instance_scarlet_monastery : public ScriptedInstance
|
||||
{
|
||||
if (type == TYPE_MOGRAINE_AND_WHITE_EVENT)
|
||||
return m_auiEncounter[0];
|
||||
|
||||
if (type == DATA_HORSEMAN_EVENT)
|
||||
return m_auiEncounter[1];
|
||||
return 0;
|
||||
}
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user