aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/server/scripts/Outland/HellfireCitadel/BloodFurnace/blood_furnace.h3
-rw-r--r--src/server/scripts/Outland/HellfireCitadel/BloodFurnace/instance_blood_furnace.cpp18
2 files changed, 12 insertions, 9 deletions
diff --git a/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/blood_furnace.h b/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/blood_furnace.h
index 63c4bef65f2..217bd48d806 100644
--- a/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/blood_furnace.h
+++ b/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/blood_furnace.h
@@ -50,7 +50,8 @@ enum BFCreatureIds
NPC_THE_MAKER = 17381,
NPC_BROGGOK = 17380,
NPC_KELIDAN_THE_BREAKER = 17377,
- NPC_PRISONER = 17398,
+ NPC_PRISONER1 = 17398,
+ NPC_PRISONER2 = 17429,
NPC_BROGGOK_POISON_CLOUD = 17662
};
diff --git a/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/instance_blood_furnace.cpp b/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/instance_blood_furnace.cpp
index 45d4350720b..c2cd3431344 100644
--- a/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/instance_blood_furnace.cpp
+++ b/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/instance_blood_furnace.cpp
@@ -65,7 +65,8 @@ class instance_blood_furnace : public InstanceMapScript
case NPC_KELIDAN_THE_BREAKER:
KelidanTheBreakerGUID = creature->GetGUID();
break;
- case NPC_PRISONER:
+ case NPC_PRISONER1:
+ case NPC_PRISONER2:
StorePrisoner(creature);
break;
default:
@@ -75,7 +76,7 @@ class instance_blood_furnace : public InstanceMapScript
void OnUnitDeath(Unit* unit) override
{
- if (unit->GetTypeId() == TYPEID_UNIT && unit->GetEntry() == NPC_PRISONER)
+ if (unit->GetTypeId() == TYPEID_UNIT && (unit->GetEntry() == NPC_PRISONER1 || unit->GetEntry() == NPC_PRISONER2))
PrisonerDied(unit->GetGUID());
}
@@ -211,29 +212,30 @@ class instance_blood_furnace : public InstanceMapScript
{
float posX = creature->GetPositionX();
float posY = creature->GetPositionY();
+ float posZ = creature->GetPositionZ();
- if (posX >= 405.0f && posX <= 423.0f)
+ if (posX >= 405.0f && posX <= 423.0f && posZ <= 17)
{
- if (posY >= 106.0f && posY <= 123.0f)
+ if (posY >= 106.0f && posY <= 123.0f && posZ <= 17)
{
PrisonersCell5.insert(creature->GetGUID());
++PrisonerCounter5;
}
- else if (posY >= 76.0f && posY <= 91.0f)
+ else if (posY >= 76.0f && posY <= 91.0f && posZ <= 17)
{
PrisonersCell6.insert(creature->GetGUID());
++PrisonerCounter6;
}
else return;
}
- else if (posX >= 490.0f && posX <= 506.0f)
+ else if (posX >= 490.0f && posX <= 506.0f && posZ <= 17)
{
- if (posY >= 106.0f && posY <= 123.0f)
+ if (posY >= 106.0f && posY <= 123.0f && posZ <= 17)
{
PrisonersCell7.insert(creature->GetGUID());
++PrisonerCounter7;
}
- else if (posY >= 76.0f && posY <= 91.0f)
+ else if (posY >= 76.0f && posY <= 91.0f && posZ <= 17)
{
PrisonersCell8.insert(creature->GetGUID());
++PrisonerCounter8;