Fixed brann_bronzebeard in halls_of_stone to stop moving near the end door, also does emote at end Waypoint to make it more blizzlike
Closes #361
This commit is contained in:
@@ -13,6 +13,7 @@
|
|||||||
#define GOSSIP_ITEM_1 "Brann, it would be our honor!"
|
#define GOSSIP_ITEM_1 "Brann, it would be our honor!"
|
||||||
#define GOSSIP_ITEM_2 "Let's move Brann, enough of the history lessons!"
|
#define GOSSIP_ITEM_2 "Let's move Brann, enough of the history lessons!"
|
||||||
#define GOSSIP_ITEM_3 "We dont have time for this right now, we have to keep going."
|
#define GOSSIP_ITEM_3 "We dont have time for this right now, we have to keep going."
|
||||||
|
#define GOSSIP_ITEM_4 "We're with you Brann! Open it!"
|
||||||
#define TEXT_ID_START 13100
|
#define TEXT_ID_START 13100
|
||||||
#define YELL_AGGRO "You be dead soon enough!"
|
#define YELL_AGGRO "You be dead soon enough!"
|
||||||
|
|
||||||
@@ -59,6 +60,7 @@ enum Misc
|
|||||||
ACTION_SJONNIR_DEAD = 4,
|
ACTION_SJONNIR_DEAD = 4,
|
||||||
ACTION_ENTEREVADEMODE = 5,
|
ACTION_ENTEREVADEMODE = 5,
|
||||||
ACTION_WIPE_START = 6,
|
ACTION_WIPE_START = 6,
|
||||||
|
ACTION_OPEN_DOOR =7,
|
||||||
|
|
||||||
// QUESTS
|
// QUESTS
|
||||||
QUEST_HALLS_OF_STONE = 13207,
|
QUEST_HALLS_OF_STONE = 13207,
|
||||||
@@ -171,6 +173,9 @@ public:
|
|||||||
case 4:
|
case 4:
|
||||||
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_ITEM_3, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+4);
|
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_ITEM_3, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+4);
|
||||||
break;
|
break;
|
||||||
|
case 5:
|
||||||
|
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_ITEM_4, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 5);
|
||||||
|
break;
|
||||||
default: break;
|
default: break;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -201,6 +206,10 @@ public:
|
|||||||
pCreature->AI()->DoAction(ACTION_WIPE_START);
|
pCreature->AI()->DoAction(ACTION_WIPE_START);
|
||||||
player->CLOSE_GOSSIP_MENU();
|
player->CLOSE_GOSSIP_MENU();
|
||||||
break;
|
break;
|
||||||
|
case GOSSIP_ACTION_INFO_DEF+5:
|
||||||
|
pCreature->AI()->DoAction(ACTION_OPEN_DOOR);
|
||||||
|
player->CLOSE_GOSSIP_MENU();
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
@@ -360,6 +369,12 @@ public:
|
|||||||
ResetEvent();
|
ResetEvent();
|
||||||
me->SetUInt32Value(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_NONE);
|
me->SetUInt32Value(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_NONE);
|
||||||
break;
|
break;
|
||||||
|
case ACTION_OPEN_DOOR:
|
||||||
|
if (GameObject *door = ObjectAccessor::GetGameObject(*me, pInstance->GetData64(GO_SJONNIR_DOOR)))
|
||||||
|
door->SetGoState(GO_STATE_ACTIVE);
|
||||||
|
SetEscortPaused(false);
|
||||||
|
me->RemoveAura(58506);
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -504,6 +519,9 @@ public:
|
|||||||
}
|
}
|
||||||
case EVENT_GO_TO_SJONNIR:
|
case EVENT_GO_TO_SJONNIR:
|
||||||
{
|
{
|
||||||
|
|
||||||
|
if (GameObject *door = ObjectAccessor::GetGameObject(*me, pInstance->GetData64(GO_SJONNIR_DOOR)))
|
||||||
|
door->SetGoState(GO_STATE_ACTIVE);
|
||||||
SetEscortPaused(false);
|
SetEscortPaused(false);
|
||||||
ResetEvent();
|
ResetEvent();
|
||||||
me->SetUInt32Value(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_NONE);
|
me->SetUInt32Value(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_NONE);
|
||||||
@@ -633,12 +651,15 @@ void brann_bronzebeard::brann_bronzebeardAI::WaypointReached(uint32 id)
|
|||||||
break;
|
break;
|
||||||
// Before Sjonnir's door
|
// Before Sjonnir's door
|
||||||
case 27:
|
case 27:
|
||||||
|
SetEscortPaused(true);
|
||||||
if(pInstance)
|
if(pInstance)
|
||||||
{
|
{
|
||||||
if (GameObject *door = ObjectAccessor::GetGameObject(*me, pInstance->GetData64(GO_SJONNIR_DOOR)))
|
pInstance->SetData(BRANN_BRONZEBEARD, 5);
|
||||||
door->SetGoState(GO_STATE_ACTIVE);
|
me->SetUInt32Value(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_GOSSIP | UNIT_NPC_FLAG_QUESTGIVER);
|
||||||
if (Creature *cr = ObjectAccessor::GetCreature(*me, pInstance->GetData64(NPC_SJONNIR)))
|
if (Creature *cr = ObjectAccessor::GetCreature(*me, pInstance->GetData64(NPC_SJONNIR)))
|
||||||
cr->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
|
cr->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
|
||||||
|
me->SetOrientation(3.132660f);
|
||||||
|
DoCast(me, 58506, false);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 28:
|
case 28:
|
||||||
@@ -646,6 +667,7 @@ void brann_bronzebeard::brann_bronzebeardAI::WaypointReached(uint32 id)
|
|||||||
break;
|
break;
|
||||||
case 29:
|
case 29:
|
||||||
SetEscortPaused(true);
|
SetEscortPaused(true);
|
||||||
|
me->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_STATE_USE_STANDING);
|
||||||
if (pInstance)
|
if (pInstance)
|
||||||
if (GameObject *console = ObjectAccessor::GetGameObject(*me, pInstance->GetData64(GO_SJONNIR_CONSOLE)))
|
if (GameObject *console = ObjectAccessor::GetGameObject(*me, pInstance->GetData64(GO_SJONNIR_CONSOLE)))
|
||||||
console->SetGoState(GO_STATE_ACTIVE);
|
console->SetGoState(GO_STATE_ACTIVE);
|
||||||
|
|||||||
@@ -14,7 +14,8 @@ enum Encounter
|
|||||||
BOSS_TRIBUNAL_OF_AGES = 2,
|
BOSS_TRIBUNAL_OF_AGES = 2,
|
||||||
BOSS_SJONNIR = 3,
|
BOSS_SJONNIR = 3,
|
||||||
BRANN_BRONZEBEARD = 4,
|
BRANN_BRONZEBEARD = 4,
|
||||||
MAX_ENCOUNTER = 5,
|
BRANN_DOOR = 5,
|
||||||
|
MAX_ENCOUNTER = 6,
|
||||||
|
|
||||||
DATA_BRANN_ACHIEVEMENT,
|
DATA_BRANN_ACHIEVEMENT,
|
||||||
DATA_SJONNIR_ACHIEVEMENT,
|
DATA_SJONNIR_ACHIEVEMENT,
|
||||||
|
|||||||
Reference in New Issue
Block a user