Core/Battleground: removed hardcoded levels of alterac valley npcs

This commit is contained in:
joschiwald
2014-06-28 02:30:02 +02:00
parent 16d66e809c
commit 745833ccbc
4 changed files with 180 additions and 226 deletions

View File

@@ -793,7 +793,7 @@ void Battleground::EndBattleground(uint32 winner)
SetArenaMatchmakerRating(GetOtherTeam(winner), loserMatchmakerRating + loserMatchmakerChange);
uint8 winnerId = GetWinner();
uint8 loserId = winnerId == WINNER_ALLIANCE ? WINNER_HORDE : winnerId;
uint8 loserId = winnerId == WINNER_ALLIANCE ? uint8(WINNER_HORDE) : winnerId;
_arenaTeamScores[winnerId]->Assign(winnerChange, winnerMatchmakerRating + winnerMatchmakerChange, winnerArenaTeam->GetName());
_arenaTeamScores[loserId]->Assign(loserChange, loserMatchmakerRating + loserMatchmakerChange, loserArenaTeam->GetName());

View File

@@ -47,7 +47,6 @@ BattlegroundAV::BattlegroundAV()
}
m_Mine_Timer = 0;
m_MaxLevel = 0;
for (BG_AV_Nodes i = BG_AV_NODES_FIRSTAID_STATION; i < BG_AV_NODES_MAX; ++i)
InitNode(i, 0, false);
@@ -60,11 +59,6 @@ BattlegroundAV::BattlegroundAV()
BattlegroundAV::~BattlegroundAV() { }
uint16 BattlegroundAV::GetBonusHonor(uint8 kills) /// @todo move this function to Battleground.cpp (needs to find a way to get m_MaxLevel)
{
return Trinity::Honor::hk_honor_at_level(m_MaxLevel, kills);
}
void BattlegroundAV::HandleKillPlayer(Player* player, Player* killer)
{
if (GetStatus() != STATUS_IN_PROGRESS)
@@ -95,7 +89,7 @@ void BattlegroundAV::HandleKillUnit(Creature* unit, Player* killer)
{
CastSpellOnTeam(23658, HORDE); //this is a spell which finishes a quest where a player has to kill the boss
RewardReputationToTeam(729, BG_AV_REP_BOSS, HORDE);
RewardHonorToTeam(GetBonusHonor(BG_AV_KILL_BOSS), HORDE);
RewardHonorToTeam(GetBonusHonorFromKill(BG_AV_KILL_BOSS), HORDE);
EndBattleground(HORDE);
DelCreature(AV_CPLACE_TRIGGER17);
}
@@ -103,7 +97,7 @@ void BattlegroundAV::HandleKillUnit(Creature* unit, Player* killer)
{
CastSpellOnTeam(23658, ALLIANCE); //this is a spell which finishes a quest where a player has to kill the boss
RewardReputationToTeam(730, BG_AV_REP_BOSS, ALLIANCE);
RewardHonorToTeam(GetBonusHonor(BG_AV_KILL_BOSS), ALLIANCE);
RewardHonorToTeam(GetBonusHonorFromKill(BG_AV_KILL_BOSS), ALLIANCE);
EndBattleground(ALLIANCE);
DelCreature(AV_CPLACE_TRIGGER19);
}
@@ -116,7 +110,7 @@ void BattlegroundAV::HandleKillUnit(Creature* unit, Player* killer)
}
m_CaptainAlive[0]=false;
RewardReputationToTeam(729, BG_AV_REP_CAPTAIN, HORDE);
RewardHonorToTeam(GetBonusHonor(BG_AV_KILL_CAPTAIN), HORDE);
RewardHonorToTeam(GetBonusHonorFromKill(BG_AV_KILL_CAPTAIN), HORDE);
UpdateScore(ALLIANCE, (-1)*BG_AV_RES_CAPTAIN);
//spawn destroyed aura
for (uint8 i=0; i <= 9; i++)
@@ -135,7 +129,7 @@ void BattlegroundAV::HandleKillUnit(Creature* unit, Player* killer)
}
m_CaptainAlive[1]=false;
RewardReputationToTeam(730, BG_AV_REP_CAPTAIN, ALLIANCE);
RewardHonorToTeam(GetBonusHonor(BG_AV_KILL_CAPTAIN), ALLIANCE);
RewardHonorToTeam(GetBonusHonorFromKill(BG_AV_KILL_CAPTAIN), ALLIANCE);
UpdateScore(HORDE, (-1)*BG_AV_RES_CAPTAIN);
//spawn destroyed aura
for (uint8 i=0; i <= 9; i++)
@@ -279,33 +273,24 @@ void BattlegroundAV::UpdateScore(uint16 team, int16 points)
Creature* BattlegroundAV::AddAVCreature(uint16 cinfoid, uint16 type)
{
uint8 level;
bool isStatic = false;
Creature* creature = NULL;
ASSERT(type <= AV_CPLACE_MAX + AV_STATICCPLACE_MAX);
if (type >= AV_CPLACE_MAX) //static
{
type -= AV_CPLACE_MAX;
cinfoid=uint16(BG_AV_StaticCreaturePos[type][4]);
creature = AddCreature(BG_AV_StaticCreatureInfo[cinfoid][0],
(type+AV_CPLACE_MAX),
cinfoid = uint16(BG_AV_StaticCreaturePos[type][4]);
creature = AddCreature(BG_AV_StaticCreatureInfo[cinfoid],
type + AV_CPLACE_MAX,
BG_AV_StaticCreaturePos[type][0],
BG_AV_StaticCreaturePos[type][1],
BG_AV_StaticCreaturePos[type][2],
BG_AV_StaticCreaturePos[type][3]);
level = (BG_AV_StaticCreatureInfo[cinfoid][2] == BG_AV_StaticCreatureInfo[cinfoid][3])
? BG_AV_StaticCreatureInfo[cinfoid][2]
: urand(BG_AV_StaticCreatureInfo[cinfoid][2], BG_AV_StaticCreatureInfo[cinfoid][3]);
isStatic = true;
}
else
{
creature = AddCreature(BG_AV_CreatureInfo[cinfoid][0],
type,
BG_AV_CreaturePos[type]);
level = (BG_AV_CreatureInfo[cinfoid][2] == BG_AV_CreatureInfo[cinfoid][3])
? BG_AV_CreatureInfo[cinfoid][2]
: urand(BG_AV_CreatureInfo[cinfoid][2], BG_AV_CreatureInfo[cinfoid][3]);
creature = AddCreature(BG_AV_CreatureInfo[cinfoid][0], type, BG_AV_CreaturePos[type]);
}
if (!creature)
return NULL;
@@ -330,10 +315,6 @@ Creature* BattlegroundAV::AddAVCreature(uint16 cinfoid, uint16 type)
//just copied this code from a gm-command
}
if (level != 0)
level += m_MaxLevel - 60; //maybe we can do this more generic for custom level-range.. actually it's blizzlike
creature->SetLevel(level);
uint32 triggerSpawnID = 0;
uint32 newFaction = 0;
if (creature->GetEntry() == BG_AV_CreatureInfo[AV_NPC_A_CAPTAIN][0])
@@ -358,9 +339,7 @@ Creature* BattlegroundAV::AddAVCreature(uint16 cinfoid, uint16 type)
}
if (triggerSpawnID && newFaction)
{
if (Creature* trigger = AddCreature(WORLD_TRIGGER,
triggerSpawnID,
BG_AV_CreaturePos[triggerSpawnID]))
if (Creature* trigger = AddCreature(WORLD_TRIGGER, triggerSpawnID, BG_AV_CreaturePos[triggerSpawnID]))
{
trigger->setFaction(newFaction);
trigger->CastSpell(trigger, SPELL_HONORABLE_DEFENDER_25Y, false);
@@ -460,9 +439,6 @@ void BattlegroundAV::AddPlayer(Player* player)
{
Battleground::AddPlayer(player);
PlayerScores[player->GetGUIDLow()] = new BattlegroundAVScore(player->GetGUID());
if (m_MaxLevel == 0)
m_MaxLevel=(player->getLevel()%10 == 0)? player->getLevel() : (player->getLevel()-(player->getLevel()%10))+10; /// @todo just look at the code \^_^/ --but queue-info should provide this information..
}
void BattlegroundAV::EndBattleground(uint32 winner)
@@ -498,7 +474,7 @@ void BattlegroundAV::EndBattleground(uint32 winner)
if (rep[i] != 0)
RewardReputationToTeam(i == 0 ? 730 : 729, rep[i], i == 0 ? ALLIANCE : HORDE);
if (kills[i] != 0)
RewardHonorToTeam(GetBonusHonor(kills[i]), i == 0 ? ALLIANCE : HORDE);
RewardHonorToTeam(GetBonusHonorFromKill(kills[i]), i == 0 ? ALLIANCE : HORDE);
}
/// @todo add enterevademode for all attacking creatures
@@ -602,7 +578,7 @@ void BattlegroundAV::EventPlayerDestroyedPoint(BG_AV_Nodes node)
UpdateScore((owner == ALLIANCE) ? HORDE : ALLIANCE, -1 * BG_AV_RES_TOWER);
RewardReputationToTeam(owner == ALLIANCE ? 730 : 729, BG_AV_REP_TOWER, owner);
RewardHonorToTeam(GetBonusHonor(BG_AV_KILL_TOWER), owner);
RewardHonorToTeam(GetBonusHonorFromKill(BG_AV_KILL_TOWER), owner);
SpawnBGObject(BG_AV_OBJECT_TAURA_A_DUNBALDAR_SOUTH+GetTeamIndexByTeamId(owner)+(2*tmp), RESPAWN_ONE_DAY);
SpawnBGObject(BG_AV_OBJECT_TFLAG_A_DUNBALDAR_SOUTH+GetTeamIndexByTeamId(owner)+(2*tmp), RESPAWN_ONE_DAY);
@@ -1207,27 +1183,27 @@ bool BattlegroundAV::SetupBattleground()
if (i <= BG_AV_NODES_FROSTWOLF_HUT)
{
if (!AddObject(i, BG_AV_OBJECTID_BANNER_A_B,
BG_AV_ObjectPos[i][0], BG_AV_ObjectPos[i][1], BG_AV_ObjectPos[i][2], BG_AV_ObjectPos[i][3],
0, 0, std::sin(BG_AV_ObjectPos[i][3]/2), std::cos(BG_AV_ObjectPos[i][3]/2), RESPAWN_ONE_DAY)
BG_AV_ObjectPos[i],
0, 0, std::sin(BG_AV_ObjectPos[i].GetOrientation()/2), std::cos(BG_AV_ObjectPos[i].GetOrientation()/2), RESPAWN_ONE_DAY)
|| !AddObject(i+11, BG_AV_OBJECTID_BANNER_CONT_A_B,
BG_AV_ObjectPos[i][0], BG_AV_ObjectPos[i][1], BG_AV_ObjectPos[i][2], BG_AV_ObjectPos[i][3],
0, 0, std::sin(BG_AV_ObjectPos[i][3]/2), std::cos(BG_AV_ObjectPos[i][3]/2), RESPAWN_ONE_DAY)
BG_AV_ObjectPos[i],
0, 0, std::sin(BG_AV_ObjectPos[i].GetOrientation()/2), std::cos(BG_AV_ObjectPos[i].GetOrientation()/2), RESPAWN_ONE_DAY)
|| !AddObject(i+33, BG_AV_OBJECTID_BANNER_H_B,
BG_AV_ObjectPos[i][0], BG_AV_ObjectPos[i][1], BG_AV_ObjectPos[i][2], BG_AV_ObjectPos[i][3],
0, 0, std::sin(BG_AV_ObjectPos[i][3]/2), std::cos(BG_AV_ObjectPos[i][3]/2), RESPAWN_ONE_DAY)
BG_AV_ObjectPos[i],
0, 0, std::sin(BG_AV_ObjectPos[i].GetOrientation()/2), std::cos(BG_AV_ObjectPos[i].GetOrientation()/2), RESPAWN_ONE_DAY)
|| !AddObject(i+22, BG_AV_OBJECTID_BANNER_CONT_H_B,
BG_AV_ObjectPos[i][0], BG_AV_ObjectPos[i][1], BG_AV_ObjectPos[i][2], BG_AV_ObjectPos[i][3],
0, 0, std::sin(BG_AV_ObjectPos[i][3]/2), std::cos(BG_AV_ObjectPos[i][3]/2), RESPAWN_ONE_DAY)
BG_AV_ObjectPos[i],
0, 0, std::sin(BG_AV_ObjectPos[i].GetOrientation()/2), std::cos(BG_AV_ObjectPos[i].GetOrientation()/2), RESPAWN_ONE_DAY)
//aura
|| !AddObject(BG_AV_OBJECT_AURA_N_FIRSTAID_STATION+i*3, BG_AV_OBJECTID_AURA_N,
BG_AV_ObjectPos[i][0], BG_AV_ObjectPos[i][1], BG_AV_ObjectPos[i][2], BG_AV_ObjectPos[i][3],
0, 0, std::sin(BG_AV_ObjectPos[i][3]/2), std::cos(BG_AV_ObjectPos[i][3]/2), RESPAWN_ONE_DAY)
BG_AV_ObjectPos[i],
0, 0, std::sin(BG_AV_ObjectPos[i].GetOrientation()/2), std::cos(BG_AV_ObjectPos[i].GetOrientation()/2), RESPAWN_ONE_DAY)
|| !AddObject(BG_AV_OBJECT_AURA_A_FIRSTAID_STATION+i*3, BG_AV_OBJECTID_AURA_A,
BG_AV_ObjectPos[i][0], BG_AV_ObjectPos[i][1], BG_AV_ObjectPos[i][2], BG_AV_ObjectPos[i][3],
0, 0, std::sin(BG_AV_ObjectPos[i][3]/2), std::cos(BG_AV_ObjectPos[i][3]/2), RESPAWN_ONE_DAY)
BG_AV_ObjectPos[i],
0, 0, std::sin(BG_AV_ObjectPos[i].GetOrientation()/2), std::cos(BG_AV_ObjectPos[i].GetOrientation()/2), RESPAWN_ONE_DAY)
|| !AddObject(BG_AV_OBJECT_AURA_H_FIRSTAID_STATION+i*3, BG_AV_OBJECTID_AURA_H,
BG_AV_ObjectPos[i][0], BG_AV_ObjectPos[i][1], BG_AV_ObjectPos[i][2], BG_AV_ObjectPos[i][3],
0, 0, std::sin(BG_AV_ObjectPos[i][3]/2), std::cos(BG_AV_ObjectPos[i][3]/2), RESPAWN_ONE_DAY))
BG_AV_ObjectPos[i],
0, 0, std::sin(BG_AV_ObjectPos[i].GetOrientation()/2), std::cos(BG_AV_ObjectPos[i].GetOrientation()/2), RESPAWN_ONE_DAY))
{
TC_LOG_ERROR("bg.battleground", "BatteGroundAV: Failed to spawn some object Battleground not created!2");
return false;
@@ -1238,23 +1214,23 @@ bool BattlegroundAV::SetupBattleground()
if (i <= BG_AV_NODES_STONEHEART_BUNKER) //alliance towers
{
if (!AddObject(i, BG_AV_OBJECTID_BANNER_A,
BG_AV_ObjectPos[i][0], BG_AV_ObjectPos[i][1], BG_AV_ObjectPos[i][2], BG_AV_ObjectPos[i][3],
0, 0, std::sin(BG_AV_ObjectPos[i][3]/2), std::cos(BG_AV_ObjectPos[i][3]/2), RESPAWN_ONE_DAY)
BG_AV_ObjectPos[i],
0, 0, std::sin(BG_AV_ObjectPos[i].GetOrientation()/2), std::cos(BG_AV_ObjectPos[i].GetOrientation()/2), RESPAWN_ONE_DAY)
|| !AddObject(i+22, BG_AV_OBJECTID_BANNER_CONT_H,
BG_AV_ObjectPos[i][0], BG_AV_ObjectPos[i][1], BG_AV_ObjectPos[i][2], BG_AV_ObjectPos[i][3],
0, 0, std::sin(BG_AV_ObjectPos[i][3]/2), std::cos(BG_AV_ObjectPos[i][3]/2), RESPAWN_ONE_DAY)
BG_AV_ObjectPos[i],
0, 0, std::sin(BG_AV_ObjectPos[i].GetOrientation()/2), std::cos(BG_AV_ObjectPos[i].GetOrientation()/2), RESPAWN_ONE_DAY)
|| !AddObject(BG_AV_OBJECT_TAURA_A_DUNBALDAR_SOUTH+(2*(i-BG_AV_NODES_DUNBALDAR_SOUTH)), BG_AV_OBJECTID_AURA_A,
BG_AV_ObjectPos[i+8][0], BG_AV_ObjectPos[i+8][1], BG_AV_ObjectPos[i+8][2], BG_AV_ObjectPos[i+8][3],
0, 0, std::sin(BG_AV_ObjectPos[i+8][3]/2), std::cos(BG_AV_ObjectPos[i+8][3]/2), RESPAWN_ONE_DAY)
BG_AV_ObjectPos[i+8],
0, 0, std::sin(BG_AV_ObjectPos[i+8].GetOrientation()/2), std::cos(BG_AV_ObjectPos[i+8].GetOrientation()/2), RESPAWN_ONE_DAY)
|| !AddObject(BG_AV_OBJECT_TAURA_H_DUNBALDAR_SOUTH+(2*(i-BG_AV_NODES_DUNBALDAR_SOUTH)), BG_AV_OBJECTID_AURA_N,
BG_AV_ObjectPos[i+8][0], BG_AV_ObjectPos[i+8][1], BG_AV_ObjectPos[i+8][2], BG_AV_ObjectPos[i+8][3],
0, 0, std::sin(BG_AV_ObjectPos[i+8][3]/2), std::cos(BG_AV_ObjectPos[i+8][3]/2), RESPAWN_ONE_DAY)
BG_AV_ObjectPos[i+8],
0, 0, std::sin(BG_AV_ObjectPos[i+8].GetOrientation()/2), std::cos(BG_AV_ObjectPos[i+8].GetOrientation()/2), RESPAWN_ONE_DAY)
|| !AddObject(BG_AV_OBJECT_TFLAG_A_DUNBALDAR_SOUTH+(2*(i-BG_AV_NODES_DUNBALDAR_SOUTH)), BG_AV_OBJECTID_TOWER_BANNER_A,
BG_AV_ObjectPos[i+8][0], BG_AV_ObjectPos[i+8][1], BG_AV_ObjectPos[i+8][2], BG_AV_ObjectPos[i+8][3],
0, 0, std::sin(BG_AV_ObjectPos[i+8][3]/2), std::cos(BG_AV_ObjectPos[i+8][3]/2), RESPAWN_ONE_DAY)
BG_AV_ObjectPos[i+8],
0, 0, std::sin(BG_AV_ObjectPos[i+8].GetOrientation()/2), std::cos(BG_AV_ObjectPos[i+8].GetOrientation()/2), RESPAWN_ONE_DAY)
|| !AddObject(BG_AV_OBJECT_TFLAG_H_DUNBALDAR_SOUTH+(2*(i-BG_AV_NODES_DUNBALDAR_SOUTH)), BG_AV_OBJECTID_TOWER_BANNER_PH,
BG_AV_ObjectPos[i+8][0], BG_AV_ObjectPos[i+8][1], BG_AV_ObjectPos[i+8][2], BG_AV_ObjectPos[i+8][3],
0, 0, std::sin(BG_AV_ObjectPos[i+8][3]/2), std::cos(BG_AV_ObjectPos[i+8][3]/2), RESPAWN_ONE_DAY))
BG_AV_ObjectPos[i+8],
0, 0, std::sin(BG_AV_ObjectPos[i+8].GetOrientation()/2), std::cos(BG_AV_ObjectPos[i+8].GetOrientation()/2), RESPAWN_ONE_DAY))
{
TC_LOG_ERROR("bg.battleground", "BatteGroundAV: Failed to spawn some object Battleground not created!3");
return false;
@@ -1263,23 +1239,23 @@ bool BattlegroundAV::SetupBattleground()
else //horde towers
{
if (!AddObject(i+7, BG_AV_OBJECTID_BANNER_CONT_A,
BG_AV_ObjectPos[i][0], BG_AV_ObjectPos[i][1], BG_AV_ObjectPos[i][2], BG_AV_ObjectPos[i][3],
0, 0, std::sin(BG_AV_ObjectPos[i][3]/2), std::cos(BG_AV_ObjectPos[i][3]/2), RESPAWN_ONE_DAY)
BG_AV_ObjectPos[i],
0, 0, std::sin(BG_AV_ObjectPos[i].GetOrientation()/2), std::cos(BG_AV_ObjectPos[i].GetOrientation()/2), RESPAWN_ONE_DAY)
|| !AddObject(i+29, BG_AV_OBJECTID_BANNER_H,
BG_AV_ObjectPos[i][0], BG_AV_ObjectPos[i][1], BG_AV_ObjectPos[i][2], BG_AV_ObjectPos[i][3],
0, 0, std::sin(BG_AV_ObjectPos[i][3]/2), std::cos(BG_AV_ObjectPos[i][3]/2), RESPAWN_ONE_DAY)
BG_AV_ObjectPos[i],
0, 0, std::sin(BG_AV_ObjectPos[i].GetOrientation()/2), std::cos(BG_AV_ObjectPos[i].GetOrientation()/2), RESPAWN_ONE_DAY)
|| !AddObject(BG_AV_OBJECT_TAURA_A_DUNBALDAR_SOUTH+(2*(i-BG_AV_NODES_DUNBALDAR_SOUTH)), BG_AV_OBJECTID_AURA_N,
BG_AV_ObjectPos[i+8][0], BG_AV_ObjectPos[i+8][1], BG_AV_ObjectPos[i+8][2], BG_AV_ObjectPos[i+8][3],
0, 0, std::sin(BG_AV_ObjectPos[i+8][3]/2), std::cos(BG_AV_ObjectPos[i+8][3]/2), RESPAWN_ONE_DAY)
BG_AV_ObjectPos[i+8],
0, 0, std::sin(BG_AV_ObjectPos[i+8].GetOrientation()/2), std::cos(BG_AV_ObjectPos[i+8].GetOrientation()/2), RESPAWN_ONE_DAY)
|| !AddObject(BG_AV_OBJECT_TAURA_H_DUNBALDAR_SOUTH+(2*(i-BG_AV_NODES_DUNBALDAR_SOUTH)), BG_AV_OBJECTID_AURA_H,
BG_AV_ObjectPos[i+8][0], BG_AV_ObjectPos[i+8][1], BG_AV_ObjectPos[i+8][2], BG_AV_ObjectPos[i+8][3],
0, 0, std::sin(BG_AV_ObjectPos[i+8][3]/2), std::cos(BG_AV_ObjectPos[i+8][3]/2), RESPAWN_ONE_DAY)
BG_AV_ObjectPos[i+8],
0, 0, std::sin(BG_AV_ObjectPos[i+8].GetOrientation()/2), std::cos(BG_AV_ObjectPos[i+8].GetOrientation()/2), RESPAWN_ONE_DAY)
|| !AddObject(BG_AV_OBJECT_TFLAG_A_DUNBALDAR_SOUTH+(2*(i-BG_AV_NODES_DUNBALDAR_SOUTH)), BG_AV_OBJECTID_TOWER_BANNER_PA,
BG_AV_ObjectPos[i+8][0], BG_AV_ObjectPos[i+8][1], BG_AV_ObjectPos[i+8][2], BG_AV_ObjectPos[i+8][3],
0, 0, std::sin(BG_AV_ObjectPos[i+8][3]/2), std::cos(BG_AV_ObjectPos[i+8][3]/2), RESPAWN_ONE_DAY)
BG_AV_ObjectPos[i+8],
0, 0, std::sin(BG_AV_ObjectPos[i+8].GetOrientation()/2), std::cos(BG_AV_ObjectPos[i+8].GetOrientation()/2), RESPAWN_ONE_DAY)
|| !AddObject(BG_AV_OBJECT_TFLAG_H_DUNBALDAR_SOUTH+(2*(i-BG_AV_NODES_DUNBALDAR_SOUTH)), BG_AV_OBJECTID_TOWER_BANNER_H,
BG_AV_ObjectPos[i+8][0], BG_AV_ObjectPos[i+8][1], BG_AV_ObjectPos[i+8][2], BG_AV_ObjectPos[i+8][3],
0, 0, std::sin(BG_AV_ObjectPos[i+8][3]/2), std::cos(BG_AV_ObjectPos[i+8][3]/2), RESPAWN_ONE_DAY))
BG_AV_ObjectPos[i+8],
0, 0, std::sin(BG_AV_ObjectPos[i+8].GetOrientation()/2), std::cos(BG_AV_ObjectPos[i+8].GetOrientation()/2), RESPAWN_ONE_DAY))
{
TC_LOG_ERROR("bg.battleground", "BatteGroundAV: Failed to spawn some object Battleground not created!4");
return false;
@@ -1289,14 +1265,11 @@ bool BattlegroundAV::SetupBattleground()
{
if (!AddObject(BG_AV_OBJECT_BURN_DUNBALDAR_SOUTH+((i-BG_AV_NODES_DUNBALDAR_SOUTH)*10)+j,
BG_AV_OBJECTID_FIRE,
BG_AV_ObjectPos[AV_OPLACE_BURN_DUNBALDAR_SOUTH+((i-BG_AV_NODES_DUNBALDAR_SOUTH)*10)+j][0],
BG_AV_ObjectPos[AV_OPLACE_BURN_DUNBALDAR_SOUTH+((i-BG_AV_NODES_DUNBALDAR_SOUTH)*10)+j][1],
BG_AV_ObjectPos[AV_OPLACE_BURN_DUNBALDAR_SOUTH+((i-BG_AV_NODES_DUNBALDAR_SOUTH)*10)+j][2],
BG_AV_ObjectPos[AV_OPLACE_BURN_DUNBALDAR_SOUTH+((i-BG_AV_NODES_DUNBALDAR_SOUTH)*10)+j][3],
BG_AV_ObjectPos[AV_OPLACE_BURN_DUNBALDAR_SOUTH+((i-BG_AV_NODES_DUNBALDAR_SOUTH)*10)+j],
0,
0,
std::sin(BG_AV_ObjectPos[AV_OPLACE_BURN_DUNBALDAR_SOUTH+((i-BG_AV_NODES_DUNBALDAR_SOUTH)*10)+j][3]/2),
std::cos(BG_AV_ObjectPos[AV_OPLACE_BURN_DUNBALDAR_SOUTH+((i-BG_AV_NODES_DUNBALDAR_SOUTH)*10)+j][3]/2),
std::sin(BG_AV_ObjectPos[AV_OPLACE_BURN_DUNBALDAR_SOUTH+((i-BG_AV_NODES_DUNBALDAR_SOUTH)*10)+j].GetOrientation()/2),
std::cos(BG_AV_ObjectPos[AV_OPLACE_BURN_DUNBALDAR_SOUTH+((i-BG_AV_NODES_DUNBALDAR_SOUTH)*10)+j].GetOrientation()/2),
RESPAWN_ONE_DAY))
{
TC_LOG_ERROR("bg.battleground", "BatteGroundAV: Failed to spawn some object Battleground not created!5.%i", i);
@@ -1313,14 +1286,11 @@ bool BattlegroundAV::SetupBattleground()
{
if (!AddObject(BG_AV_OBJECT_BURN_BUILDING_ALLIANCE+(i*10)+j,
BG_AV_OBJECTID_SMOKE,
BG_AV_ObjectPos[AV_OPLACE_BURN_BUILDING_A+(i*10)+j][0],
BG_AV_ObjectPos[AV_OPLACE_BURN_BUILDING_A+(i*10)+j][1],
BG_AV_ObjectPos[AV_OPLACE_BURN_BUILDING_A+(i*10)+j][2],
BG_AV_ObjectPos[AV_OPLACE_BURN_BUILDING_A+(i*10)+j][3],
BG_AV_ObjectPos[AV_OPLACE_BURN_BUILDING_A+(i*10)+j],
0,
0,
std::sin(BG_AV_ObjectPos[AV_OPLACE_BURN_BUILDING_A+(i*10)+j][3]/2),
std::cos(BG_AV_ObjectPos[AV_OPLACE_BURN_BUILDING_A+(i*10)+j][3]/2),
std::sin(BG_AV_ObjectPos[AV_OPLACE_BURN_BUILDING_A+(i*10)+j].GetOrientation()/2),
std::cos(BG_AV_ObjectPos[AV_OPLACE_BURN_BUILDING_A+(i*10)+j].GetOrientation()/2),
RESPAWN_ONE_DAY))
{
TC_LOG_ERROR("bg.battleground", "BatteGroundAV: Failed to spawn some object Battleground not created!6.%i", i);
@@ -1331,14 +1301,11 @@ bool BattlegroundAV::SetupBattleground()
{
if (!AddObject(BG_AV_OBJECT_BURN_BUILDING_ALLIANCE+(i*10)+j,
BG_AV_OBJECTID_FIRE,
BG_AV_ObjectPos[AV_OPLACE_BURN_BUILDING_A+(i*10)+j][0],
BG_AV_ObjectPos[AV_OPLACE_BURN_BUILDING_A+(i*10)+j][1],
BG_AV_ObjectPos[AV_OPLACE_BURN_BUILDING_A+(i*10)+j][2],
BG_AV_ObjectPos[AV_OPLACE_BURN_BUILDING_A+(i*10)+j][3],
BG_AV_ObjectPos[AV_OPLACE_BURN_BUILDING_A+(i*10)+j],
0,
0,
std::sin(BG_AV_ObjectPos[AV_OPLACE_BURN_BUILDING_A+(i*10)+j][3]/2),
std::cos(BG_AV_ObjectPos[AV_OPLACE_BURN_BUILDING_A+(i*10)+j][3]/2),
std::sin(BG_AV_ObjectPos[AV_OPLACE_BURN_BUILDING_A+(i*10)+j].GetOrientation()/2),
std::cos(BG_AV_ObjectPos[AV_OPLACE_BURN_BUILDING_A+(i*10)+j].GetOrientation()/2),
RESPAWN_ONE_DAY))
{
TC_LOG_ERROR("bg.battleground", "BatteGroundAV: Failed to spawn some object Battleground not created!7.%i", i);
@@ -1351,14 +1318,11 @@ bool BattlegroundAV::SetupBattleground()
{
if (!AddObject(BG_AV_OBJECT_MINE_SUPPLY_N_MIN+i,
BG_AV_OBJECTID_MINE_N,
BG_AV_ObjectPos[AV_OPLACE_MINE_SUPPLY_N_MIN+i][0],
BG_AV_ObjectPos[AV_OPLACE_MINE_SUPPLY_N_MIN+i][1],
BG_AV_ObjectPos[AV_OPLACE_MINE_SUPPLY_N_MIN+i][2],
BG_AV_ObjectPos[AV_OPLACE_MINE_SUPPLY_N_MIN+i][3],
BG_AV_ObjectPos[AV_OPLACE_MINE_SUPPLY_N_MIN+i],
0,
0,
std::sin(BG_AV_ObjectPos[AV_OPLACE_MINE_SUPPLY_N_MIN+i][3]/2),
std::cos(BG_AV_ObjectPos[AV_OPLACE_MINE_SUPPLY_N_MIN+i][3]/2),
std::sin(BG_AV_ObjectPos[AV_OPLACE_MINE_SUPPLY_N_MIN+i].GetOrientation()/2),
std::cos(BG_AV_ObjectPos[AV_OPLACE_MINE_SUPPLY_N_MIN+i].GetOrientation()/2),
RESPAWN_ONE_DAY))
{
TC_LOG_ERROR("bg.battleground", "BatteGroundAV: Failed to spawn some mine supplies Battleground not created!7.5.%i", i);
@@ -1369,14 +1333,11 @@ bool BattlegroundAV::SetupBattleground()
{
if (!AddObject(BG_AV_OBJECT_MINE_SUPPLY_S_MIN+i,
BG_AV_OBJECTID_MINE_S,
BG_AV_ObjectPos[AV_OPLACE_MINE_SUPPLY_S_MIN+i][0],
BG_AV_ObjectPos[AV_OPLACE_MINE_SUPPLY_S_MIN+i][1],
BG_AV_ObjectPos[AV_OPLACE_MINE_SUPPLY_S_MIN+i][2],
BG_AV_ObjectPos[AV_OPLACE_MINE_SUPPLY_S_MIN+i][3],
BG_AV_ObjectPos[AV_OPLACE_MINE_SUPPLY_S_MIN+i],
0,
0,
std::sin(BG_AV_ObjectPos[AV_OPLACE_MINE_SUPPLY_S_MIN+i][3]/2),
std::cos(BG_AV_ObjectPos[AV_OPLACE_MINE_SUPPLY_S_MIN+i][3]/2),
std::sin(BG_AV_ObjectPos[AV_OPLACE_MINE_SUPPLY_S_MIN+i].GetOrientation()/2),
std::cos(BG_AV_ObjectPos[AV_OPLACE_MINE_SUPPLY_S_MIN+i].GetOrientation()/2),
RESPAWN_ONE_DAY))
{
TC_LOG_ERROR("bg.battleground", "BatteGroundAV: Failed to spawn some mine supplies Battleground not created!7.6.%i", i);
@@ -1386,14 +1347,11 @@ bool BattlegroundAV::SetupBattleground()
if (!AddObject(BG_AV_OBJECT_FLAG_N_SNOWFALL_GRAVE,
BG_AV_OBJECTID_BANNER_SNOWFALL_N,
BG_AV_ObjectPos[BG_AV_NODES_SNOWFALL_GRAVE][0],
BG_AV_ObjectPos[BG_AV_NODES_SNOWFALL_GRAVE][1],
BG_AV_ObjectPos[BG_AV_NODES_SNOWFALL_GRAVE][2],
BG_AV_ObjectPos[BG_AV_NODES_SNOWFALL_GRAVE][3],
BG_AV_ObjectPos[BG_AV_NODES_SNOWFALL_GRAVE],
0,
0,
std::sin(BG_AV_ObjectPos[BG_AV_NODES_SNOWFALL_GRAVE][3]/2),
std::cos(BG_AV_ObjectPos[BG_AV_NODES_SNOWFALL_GRAVE][3]/2),
std::sin(BG_AV_ObjectPos[BG_AV_NODES_SNOWFALL_GRAVE].GetOrientation()/2),
std::cos(BG_AV_ObjectPos[BG_AV_NODES_SNOWFALL_GRAVE].GetOrientation()/2),
RESPAWN_ONE_DAY))
{
TC_LOG_ERROR("bg.battleground", "BatteGroundAV: Failed to spawn some object Battleground not created!8");
@@ -1402,17 +1360,17 @@ bool BattlegroundAV::SetupBattleground()
for (uint8 i = 0; i < 4; i++)
{
if (!AddObject(BG_AV_OBJECT_SNOW_EYECANDY_A+i, BG_AV_OBJECTID_SNOWFALL_CANDY_A,
BG_AV_ObjectPos[AV_OPLACE_SNOW_1+i][0], BG_AV_ObjectPos[AV_OPLACE_SNOW_1+i][1], BG_AV_ObjectPos[AV_OPLACE_SNOW_1+i][2], BG_AV_ObjectPos[AV_OPLACE_SNOW_1+i][3],
0, 0, std::sin(BG_AV_ObjectPos[AV_OPLACE_SNOW_1+i][3]/2), std::cos(BG_AV_ObjectPos[AV_OPLACE_SNOW_1+i][3]/2), RESPAWN_ONE_DAY)
BG_AV_ObjectPos[AV_OPLACE_SNOW_1+i],
0, 0, std::sin(BG_AV_ObjectPos[AV_OPLACE_SNOW_1+i].GetOrientation()/2), std::cos(BG_AV_ObjectPos[AV_OPLACE_SNOW_1+i].GetOrientation()/2), RESPAWN_ONE_DAY)
|| !AddObject(BG_AV_OBJECT_SNOW_EYECANDY_PA+i, BG_AV_OBJECTID_SNOWFALL_CANDY_PA,
BG_AV_ObjectPos[AV_OPLACE_SNOW_1+i][0], BG_AV_ObjectPos[AV_OPLACE_SNOW_1+i][1], BG_AV_ObjectPos[AV_OPLACE_SNOW_1+i][2], BG_AV_ObjectPos[AV_OPLACE_SNOW_1+i][3],
0, 0, std::sin(BG_AV_ObjectPos[AV_OPLACE_SNOW_1+i][3]/2), std::cos(BG_AV_ObjectPos[AV_OPLACE_SNOW_1+i][3]/2), RESPAWN_ONE_DAY)
BG_AV_ObjectPos[AV_OPLACE_SNOW_1+i],
0, 0, std::sin(BG_AV_ObjectPos[AV_OPLACE_SNOW_1+i].GetOrientation()/2), std::cos(BG_AV_ObjectPos[AV_OPLACE_SNOW_1+i].GetOrientation()/2), RESPAWN_ONE_DAY)
|| !AddObject(BG_AV_OBJECT_SNOW_EYECANDY_H+i, BG_AV_OBJECTID_SNOWFALL_CANDY_H,
BG_AV_ObjectPos[AV_OPLACE_SNOW_1+i][0], BG_AV_ObjectPos[AV_OPLACE_SNOW_1+i][1], BG_AV_ObjectPos[AV_OPLACE_SNOW_1+i][2], BG_AV_ObjectPos[AV_OPLACE_SNOW_1+i][3],
0, 0, std::sin(BG_AV_ObjectPos[AV_OPLACE_SNOW_1+i][3]/2), std::cos(BG_AV_ObjectPos[AV_OPLACE_SNOW_1+i][3]/2), RESPAWN_ONE_DAY)
BG_AV_ObjectPos[AV_OPLACE_SNOW_1+i],
0, 0, std::sin(BG_AV_ObjectPos[AV_OPLACE_SNOW_1+i].GetOrientation()/2), std::cos(BG_AV_ObjectPos[AV_OPLACE_SNOW_1+i].GetOrientation()/2), RESPAWN_ONE_DAY)
|| !AddObject(BG_AV_OBJECT_SNOW_EYECANDY_PH+i, BG_AV_OBJECTID_SNOWFALL_CANDY_PH,
BG_AV_ObjectPos[AV_OPLACE_SNOW_1+i][0], BG_AV_ObjectPos[AV_OPLACE_SNOW_1+i][1], BG_AV_ObjectPos[AV_OPLACE_SNOW_1+i][2], BG_AV_ObjectPos[AV_OPLACE_SNOW_1+i][3],
0, 0, std::sin(BG_AV_ObjectPos[AV_OPLACE_SNOW_1+i][3]/2), std::cos(BG_AV_ObjectPos[AV_OPLACE_SNOW_1+i][3]/2), RESPAWN_ONE_DAY))
BG_AV_ObjectPos[AV_OPLACE_SNOW_1+i],
0, 0, std::sin(BG_AV_ObjectPos[AV_OPLACE_SNOW_1+i].GetOrientation()/2), std::cos(BG_AV_ObjectPos[AV_OPLACE_SNOW_1+i].GetOrientation()/2), RESPAWN_ONE_DAY))
{
TC_LOG_ERROR("bg.battleground", "BatteGroundAV: Failed to spawn some object Battleground not created!9.%i", i);
return false;
@@ -1576,8 +1534,6 @@ void BattlegroundAV::DefendNode(BG_AV_Nodes node, uint16 team)
void BattlegroundAV::ResetBGSubclass()
{
m_MaxLevel=0;
for (uint8 i=0; i<2; i++) //forloop for both teams (it just make 0 == alliance and 1 == horde also for both mines 0=north 1=south
{
for (uint8 j=0; j<9; j++)

View File

@@ -132,10 +132,10 @@ enum BG_AV_ObjectIds
BG_AV_OBJECTID_SNOWFALL_CANDY_PH = 179425,
//banners on top of towers:
BG_AV_OBJECTID_TOWER_BANNER_A = 178927, //[PH] Alliance A1 Tower Banner BIG
BG_AV_OBJECTID_TOWER_BANNER_H = 178955, //[PH] Horde H1 Tower Banner BIG
BG_AV_OBJECTID_TOWER_BANNER_PA = 179446, //[PH] Alliance H1 Tower Pre-Banner BIG
BG_AV_OBJECTID_TOWER_BANNER_PH = 179436, //[PH] Horde A1 Tower Pre-Banner BIG
BG_AV_OBJECTID_TOWER_BANNER_A = 178927, //[PH] Alliance A1 Tower Banner BIG
BG_AV_OBJECTID_TOWER_BANNER_H = 178955, //[PH] Horde H1 Tower Banner BIG
BG_AV_OBJECTID_TOWER_BANNER_PA = 179446, //[PH] Alliance H1 Tower Pre-Banner BIG
BG_AV_OBJECTID_TOWER_BANNER_PH = 179436, //[PH] Horde A1 Tower Pre-Banner BIG
//Auras
BG_AV_OBJECTID_AURA_A = 180421,
@@ -149,11 +149,11 @@ enum BG_AV_ObjectIds
BG_AV_OBJECTID_GATE_H = 180424,
//mine supplies
BG_AV_OBJECTID_MINE_N = 178785,
BG_AV_OBJECTID_MINE_S = 178784,
BG_AV_OBJECTID_MINE_N = 178785,
BG_AV_OBJECTID_MINE_S = 178784,
BG_AV_OBJECTID_FIRE = 179065,
BG_AV_OBJECTID_SMOKE = 179066
BG_AV_OBJECTID_SMOKE = 179066
};
enum BG_AV_Nodes
@@ -307,58 +307,58 @@ enum BG_AV_ObjectTypes
BG_AV_OBJECT_MINE_SUPPLY_S_MIN = 225,
BG_AV_OBJECT_MINE_SUPPLY_S_MAX = 236,
BG_AV_OBJECT_MAX = 237
BG_AV_OBJECT_MAX = 237
};
enum BG_AV_OBJECTS
{
AV_OPLACE_FIRSTAID_STATION = 0,
AV_OPLACE_STORMPIKE_GRAVE = 1,
AV_OPLACE_STONEHEART_GRAVE = 2,
AV_OPLACE_SNOWFALL_GRAVE = 3,
AV_OPLACE_ICEBLOOD_GRAVE = 4,
AV_OPLACE_FROSTWOLF_GRAVE = 5,
AV_OPLACE_FROSTWOLF_HUT = 6,
AV_OPLACE_DUNBALDAR_SOUTH = 7,
AV_OPLACE_DUNBALDAR_NORTH = 8,
AV_OPLACE_ICEWING_BUNKER = 9,
AV_OPLACE_STONEHEART_BUNKER = 10,
AV_OPLACE_ICEBLOOD_TOWER = 11,
AV_OPLACE_TOWER_POINT = 12,
AV_OPLACE_FROSTWOLF_ETOWER = 13,
AV_OPLACE_FROSTWOLF_WTOWER = 14,
AV_OPLACE_BIGBANNER_DUNBALDAR_SOUTH = 15,
AV_OPLACE_BIGBANNER_DUNBALDAR_NORTH = 16,
AV_OPLACE_BIGBANNER_ICEWING_BUNKER = 17,
AV_OPLACE_BIGBANNER_STONEHEART_BUNKER = 18,
AV_OPLACE_BIGBANNER_ICEBLOOD_TOWER = 19,
AV_OPLACE_BIGBANNER_TOWER_POINT = 20,
AV_OPLACE_BIGBANNER_FROSTWOLF_ETOWER = 21,
AV_OPLACE_BIGBANNER_FROSTWOLF_WTOWER = 22,
AV_OPLACE_FIRSTAID_STATION = 0,
AV_OPLACE_STORMPIKE_GRAVE = 1,
AV_OPLACE_STONEHEART_GRAVE = 2,
AV_OPLACE_SNOWFALL_GRAVE = 3,
AV_OPLACE_ICEBLOOD_GRAVE = 4,
AV_OPLACE_FROSTWOLF_GRAVE = 5,
AV_OPLACE_FROSTWOLF_HUT = 6,
AV_OPLACE_DUNBALDAR_SOUTH = 7,
AV_OPLACE_DUNBALDAR_NORTH = 8,
AV_OPLACE_ICEWING_BUNKER = 9,
AV_OPLACE_STONEHEART_BUNKER = 10,
AV_OPLACE_ICEBLOOD_TOWER = 11,
AV_OPLACE_TOWER_POINT = 12,
AV_OPLACE_FROSTWOLF_ETOWER = 13,
AV_OPLACE_FROSTWOLF_WTOWER = 14,
AV_OPLACE_BIGBANNER_DUNBALDAR_SOUTH = 15,
AV_OPLACE_BIGBANNER_DUNBALDAR_NORTH = 16,
AV_OPLACE_BIGBANNER_ICEWING_BUNKER = 17,
AV_OPLACE_BIGBANNER_STONEHEART_BUNKER = 18,
AV_OPLACE_BIGBANNER_ICEBLOOD_TOWER = 19,
AV_OPLACE_BIGBANNER_TOWER_POINT = 20,
AV_OPLACE_BIGBANNER_FROSTWOLF_ETOWER = 21,
AV_OPLACE_BIGBANNER_FROSTWOLF_WTOWER = 22,
AV_OPLACE_BURN_DUNBALDAR_SOUTH = 23,
AV_OPLACE_BURN_DUNBALDAR_NORTH = 33,
AV_OPLACE_BURN_ICEWING_BUNKER = 43,
AV_OPLACE_BURN_STONEHEART_BUNKER = 53,
AV_OPLACE_BURN_ICEBLOOD_TOWER = 63,
AV_OPLACE_BURN_TOWER_POINT = 73,
AV_OPLACE_BURN_FROSTWOLF_ETOWER = 83,
AV_OPLACE_BURN_FROSTWOLF_WTOWER = 93,
AV_OPLACE_BURN_BUILDING_A = 103,
AV_OPLACE_BURN_BUILDING_H = 113,
AV_OPLACE_SNOW_1 = 123,
AV_OPLACE_SNOW_2 = 124,
AV_OPLACE_SNOW_3 = 125,
AV_OPLACE_SNOW_4 = 126,
AV_OPLACE_MINE_SUPPLY_N_MIN = 127,
AV_OPLACE_MINE_SUPPLY_N_MAX = 136,
AV_OPLACE_MINE_SUPPLY_S_MIN = 137,
AV_OPLACE_MINE_SUPPLY_S_MAX = 148,
AV_OPLACE_BURN_DUNBALDAR_SOUTH = 23,
AV_OPLACE_BURN_DUNBALDAR_NORTH = 33,
AV_OPLACE_BURN_ICEWING_BUNKER = 43,
AV_OPLACE_BURN_STONEHEART_BUNKER = 53,
AV_OPLACE_BURN_ICEBLOOD_TOWER = 63,
AV_OPLACE_BURN_TOWER_POINT = 73,
AV_OPLACE_BURN_FROSTWOLF_ETOWER = 83,
AV_OPLACE_BURN_FROSTWOLF_WTOWER = 93,
AV_OPLACE_BURN_BUILDING_A = 103,
AV_OPLACE_BURN_BUILDING_H = 113,
AV_OPLACE_SNOW_1 = 123,
AV_OPLACE_SNOW_2 = 124,
AV_OPLACE_SNOW_3 = 125,
AV_OPLACE_SNOW_4 = 126,
AV_OPLACE_MINE_SUPPLY_N_MIN = 127,
AV_OPLACE_MINE_SUPPLY_N_MAX = 136,
AV_OPLACE_MINE_SUPPLY_S_MIN = 137,
AV_OPLACE_MINE_SUPPLY_S_MAX = 148,
AV_OPLACE_MAX = 149
AV_OPLACE_MAX = 149
};
const float BG_AV_ObjectPos[AV_OPLACE_MAX][4] =
Position const BG_AV_ObjectPos[AV_OPLACE_MAX] =
{
{638.592f, -32.422f, 46.0608f, -1.62316f }, //firstaid station
{669.007f, -294.078f, 30.2909f, 2.77507f }, //stormpike
@@ -1229,59 +1229,59 @@ const float BG_AV_StaticCreaturePos[AV_STATICCPLACE_MAX][5] =
{-1370.9f, -219.793f, 98.4258f, 5.04381f, 47}, //drek thar
};
const uint32 BG_AV_StaticCreatureInfo[51][4] =
const uint32 BG_AV_StaticCreatureInfo[51] =
{
{ 2225, 1215, 55, 55 }, //Zora Guthrek
{ 3343, 1215, 55, 55 }, //Grelkor
{ 3625, 1215, 55, 55 }, //Rarck
{ 4255, 1217, 55, 55 }, //Brogus Thunderbrew
{ 4257, 1217, 55, 55 }, //Lana Thunderbrew
{ 5134, 1217, 55, 55 }, //Jonivera Farmountain
{ 5135, 1217, 55, 55 }, //Svalbrad Farmountain
{ 5139, 1217, 55, 55 }, //Kurdrum Barleybeard
{ 10364, 1215, 55, 55 }, //Yaelika Farclaw
{ 10367, 1215, 55, 55 }, //Shrye Ragefist
{ 10981, 38, 50, 51 }, //Frostwolf
{ 10986, 514, 52, 53 }, //Snowblind Harpy
{ 10990, 1274, 50, 51 }, //Alterac Ram
{ 11675, 514, 53, 53 }, //Snowblind Windcaller
{ 11678, 14, 52, 53 }, //Snowblind Ambusher
{ 11839, 39, 56, 56 }, //Wildpaw Brute
{ 11947, 1214, 61, 61 }, // Captain Galvangar /// @todo: Duplicate ? Check and confirm
{ 11948, 1216, 63, 63 }, //Vanndar Stormpike
{ 11949, 1216, 61, 61 }, //Captain Balinda Stonehearth
{ 11997, 1334, 60, 60 }, //Stormpike Herald
{ 12051, 1214, 57, 57 }, //Frostwolf Legionnaire
{ 12096, 1217, 55, 55 }, //Stormpike Quartermaster
{ 12097, 1215, 55, 55 }, //Frostwolf Quartermaster
{ 12127, 1216, 57, 57 }, //Stormpike Guardsman
{ 13176, 1215, 60, 60 }, //Smith Regzar
{ 13179, 1215, 59, 59 }, //Wing Commander Guse
{ 13216, 1217, 58, 58 }, //Gaelden Hammersmith
{ 13218, 1215, 58, 58 }, //Grunnda Wolfheart
{ 13236, 1214, 60, 60 }, //Primalist Thurloga
{ 13257, 1216, 60, 60 }, //Murgot Deepforge
{ 13284, 1214, 58, 58 }, //Frostwolf Shaman
{ 13438, 1217, 58, 58 }, //Wing Commander Slidore
{ 13442, 1216, 60, 60 }, //Arch Druid Renferal
{ 13443, 1216, 60, 60 }, //Druid of the Grove
{ 13447, 1216, 58, 58 }, //Corporal Noreg Stormpike
{ 13577, 1216, 60, 60 }, //Stormpike Ram Rider Commander
{ 13617, 1216, 60, 60 }, //Stormpike Stable Master
{ 13797, 32, 60, 61 }, //Mountaineer Boombellow
{ 13798, 1214, 60, 61 }, //Jotek
{ 13816, 1216, 61, 61 }, //Prospector Stonehewer
{ 14185, 877, 59, 59 }, //Najak Hexxen
{ 14186, 105, 60, 60 }, //Ravak Grimtotem
{ 14187, 1594, 60, 60 }, //Athramanis
{ 14188, 57, 59, 59 }, //Dirk Swindle
{ 14282, 1214, 53, 54 }, //Frostwolf Bloodhound
{ 14283, 1216, 53, 54 }, //Stormpike Owl
{ 14284, 1216, 61, 61 }, //Stormpike Battleguard
{ 11946, 1214, 63, 63 }, //Drek'Thar /// @todo: Correct the level (Level 80 for boss ?)
{ 11948, 1216, 63, 63 }, //Vanndar Stormpike
{ 11947, 1214, 61, 61 }, //Captain Galvangar
{ 11949, 1216, 61, 61 } //Captain Balinda Stonehearth
2225, // Zora Guthrek
3343, // Grelkor
3625, // Rarck
4255, // Brogus Thunderbrew
4257, // Lana Thunderbrew
5134, // Jonivera Farmountain
5135, // Svalbrad Farmountain
5139, // Kurdrum Barleybeard
10364, // Yaelika Farclaw
10367, // Shrye Ragefist
10981, // Frostwolf
10986, // Snowblind Harpy
10990, // Alterac Ram
11675, // Snowblind Windcaller
11678, // Snowblind Ambusher
11839, // Wildpaw Brute
11947, // Captain Galvangar
11948, // Vanndar Stormpike
11949, // Captain Balinda Stonehearth
11997, // Stormpike Herald
12051, // Frostwolf Legionnaire
12096, // Stormpike Quartermaster
12097, // Frostwolf Quartermaster
12127, // Stormpike Guardsman
13176, // Smith Regzar
13179, // Wing Commander Guse
13216, // Gaelden Hammersmith
13218, // Grunnda Wolfheart
13236, // Primalist Thurloga
13257, // Murgot Deepforge
13284, // Frostwolf Shaman
13438, // Wing Commander Slidore
13442, // Arch Druid Renferal
13443, // Druid of the Grove
13447, // Corporal Noreg Stormpike
13577, // Stormpike Ram Rider Commander
13617, // Stormpike Stable Master
13797, // Mountaineer Boombellow
13798, // Jotek
13816, // Prospector Stonehewer
14185, // Najak Hexxen
14186, // Ravak Grimtotem
14187, // Athramanis
14188, // Dirk Swindle
14282, // Frostwolf Bloodhound
14283, // Stormpike Owl
14284, // Stormpike Battleguard
11946, // Drek'Thar
11948, // Vanndar Stormpike
11947, // Captain Galvangar
11949, // Captain Balinda Stonehearth
};
enum BG_AV_Graveyards
@@ -1643,7 +1643,6 @@ class BattlegroundAV : public Battleground
/*general */
Creature* AddAVCreature(uint16 cinfoid, uint16 type);
uint16 GetBonusHonor(uint8 kills); /// @todo: Remove this when the core handles this properly
/*variables */
int32 m_Team_Scores[2];
@@ -1658,7 +1657,6 @@ class BattlegroundAV : public Battleground
uint32 m_CaptainBuffTimer[2];
bool m_CaptainAlive[2];
uint8 m_MaxLevel; /// @todo: Remove this once battleground->getmaxlevel() returns something usefull/is reworked (?)
bool m_IsInformedNearVictory[2];
};

View File

@@ -242,7 +242,7 @@ uint32 const BG_SA_NpcEntries[BG_SA_MAXNPC] =
NPC_KANRETHAD
};
Position const BG_SA_NpcSpawnlocs[BG_SA_MAXNPC + BG_SA_DEMOLISHER_AMOUNT] =
Position const BG_SA_NpcSpawnlocs[BG_SA_MAXNPC] =
{
// Cannons
{ 1436.429f, 110.05f, 41.407f, 5.4f },