aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Instances
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2011-01-23 21:42:32 +0100
committerShauren <shauren.trinity@gmail.com>2011-01-23 21:42:32 +0100
commite5b4f8e84d1230419e19d55f23b4fa754db4b5db (patch)
tree259fa8eeb0ee72b55c147dd86f09de7121e40b25 /src/server/game/Instances
parentac689f456dc2d08cff6bcc4cbba94c135570a56a (diff)
Scripts/Icecrown Citadel: Implemented boss raid frames for Blood Prince Council
Diffstat (limited to 'src/server/game/Instances')
-rwxr-xr-xsrc/server/game/Instances/InstanceScript.cpp9
-rwxr-xr-xsrc/server/game/Instances/InstanceScript.h8
2 files changed, 12 insertions, 5 deletions
diff --git a/src/server/game/Instances/InstanceScript.cpp b/src/server/game/Instances/InstanceScript.cpp
index e6a13d0ab85..348ff7a766c 100755
--- a/src/server/game/Instances/InstanceScript.cpp
+++ b/src/server/game/Instances/InstanceScript.cpp
@@ -397,15 +397,16 @@ bool InstanceScript::CheckAchievementCriteriaMeet(uint32 criteria_id, Player con
return false;
}
-void InstanceScript::SendEncounterUnit(uint32 type, Unit* unit, uint8 param1 /*= 0*/, uint8 param2 /*= 0*/)
+void InstanceScript::SendEncounterUnit(uint32 type, Unit* unit /*= NULL*/, uint8 param1 /*= 0*/, uint8 param2 /*= 0*/)
{
- WorldPacket data(SMSG_UPDATE_INSTANCE_ENCOUNTER_UNIT, 1);
+ // size of this packet is at most 15 (usually less)
+ WorldPacket data(SMSG_UPDATE_INSTANCE_ENCOUNTER_UNIT, 15);
data << uint32(type);
switch (type)
{
- case 0:
- case 1:
+ case ENCOUNTER_FRAME_ADD:
+ case ENCOUNTER_FRAME_REMOVE:
case 2:
data.append(unit->GetPackGUID());
data << uint8(param1);
diff --git a/src/server/game/Instances/InstanceScript.h b/src/server/game/Instances/InstanceScript.h
index 0034b031574..652c29fbf2f 100755
--- a/src/server/game/Instances/InstanceScript.h
+++ b/src/server/game/Instances/InstanceScript.h
@@ -39,6 +39,12 @@ class Creature;
typedef std::set<GameObject*> DoorSet;
typedef std::set<Creature*> MinionSet;
+enum EncounterFrameType
+{
+ ENCOUNTER_FRAME_ADD = 0,
+ ENCOUNTER_FRAME_REMOVE = 1,
+};
+
enum EncounterState
{
NOT_STARTED = 0,
@@ -190,7 +196,7 @@ class InstanceScript : public ZoneScript
// Checks boss requirements (one boss required to kill other)
virtual bool CheckRequiredBosses(uint32 /*bossId*/, Player const* /*player*/ = NULL) const { return true; }
- void SendEncounterUnit(uint32 type, Unit* unit, uint8 param1 = 0, uint8 param2 = 0);
+ void SendEncounterUnit(uint32 type, Unit* unit = NULL, uint8 param1 = 0, uint8 param2 = 0);
protected:
void SetBossNumber(uint32 number) { bosses.resize(number); }