aboutsummaryrefslogtreecommitdiff
path: root/src/server/scripts/World
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2019-06-03 20:40:34 +0200
committerShauren <shauren.trinity@gmail.com>2019-06-08 17:06:57 +0200
commit455959c6064af6f7863a6b4b57cb0ef1646bd8ef (patch)
tree7d7a7cdd3a44643ee5fc7d19521ced1c8b815c66 /src/server/scripts/World
parent31fda79556e55375962a3c9e46f6dbdbf6e90d18 (diff)
Core/PacketIO: Rewrite updatefield handling
Diffstat (limited to 'src/server/scripts/World')
-rw-r--r--src/server/scripts/World/boss_emerald_dragons.cpp6
-rw-r--r--src/server/scripts/World/item_scripts.cpp2
-rw-r--r--src/server/scripts/World/npcs_special.cpp52
3 files changed, 30 insertions, 30 deletions
diff --git a/src/server/scripts/World/boss_emerald_dragons.cpp b/src/server/scripts/World/boss_emerald_dragons.cpp
index 43b96548a91..d6c18647828 100644
--- a/src/server/scripts/World/boss_emerald_dragons.cpp
+++ b/src/server/scripts/World/boss_emerald_dragons.cpp
@@ -97,7 +97,7 @@ struct emerald_dragonAI : public WorldBossAI
void Reset() override
{
WorldBossAI::Reset();
- me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE | UNIT_FLAG_NON_ATTACKABLE);
+ me->RemoveUnitFlag(UnitFlags(UNIT_FLAG_NOT_SELECTABLE | UNIT_FLAG_NON_ATTACKABLE));
me->SetReactState(REACT_AGGRESSIVE);
DoCast(me, SPELL_MARK_OF_NATURE_AURA, true);
events.ScheduleEvent(EVENT_TAIL_SWEEP, 4000);
@@ -631,7 +631,7 @@ class boss_taerar : public CreatureScript
_shades += count;
DoCast(SPELL_SHADE);
- me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE | UNIT_FLAG_NON_ATTACKABLE);
+ me->AddUnitFlag(UnitFlags(UNIT_FLAG_NOT_SELECTABLE | UNIT_FLAG_NON_ATTACKABLE));
me->SetReactState(REACT_PASSIVE);
++_stage;
@@ -668,7 +668,7 @@ class boss_taerar : public CreatureScript
{
_banished = false;
- me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE | UNIT_FLAG_NON_ATTACKABLE);
+ me->RemoveUnitFlag(UnitFlags(UNIT_FLAG_NOT_SELECTABLE | UNIT_FLAG_NON_ATTACKABLE));
me->RemoveAurasDueToSpell(SPELL_SHADE);
me->SetReactState(REACT_AGGRESSIVE);
}
diff --git a/src/server/scripts/World/item_scripts.cpp b/src/server/scripts/World/item_scripts.cpp
index 0a92c925c5f..a0649c046d2 100644
--- a/src/server/scripts/World/item_scripts.cpp
+++ b/src/server/scripts/World/item_scripts.cpp
@@ -250,7 +250,7 @@ public:
{
summon->SetVisible(false);
summon->SetReactState(REACT_PASSIVE);
- summon->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_IMMUNE_TO_PC);
+ summon->AddUnitFlag(UNIT_FLAG_IMMUNE_TO_PC);
}
return false;
}
diff --git a/src/server/scripts/World/npcs_special.cpp b/src/server/scripts/World/npcs_special.cpp
index 07fbb60ce36..5c2cc89eea7 100644
--- a/src/server/scripts/World/npcs_special.cpp
+++ b/src/server/scripts/World/npcs_special.cpp
@@ -286,7 +286,7 @@ public:
{
Initialize();
me->setFaction(FACTION_CHICKEN);
- me->RemoveFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_QUESTGIVER);
+ me->RemoveNpcFlag(UNIT_NPC_FLAG_QUESTGIVER);
}
void EnterCombat(Unit* /*who*/) override { }
@@ -294,7 +294,7 @@ public:
void UpdateAI(uint32 diff) override
{
// Reset flags after a certain time has passed so that the next player has to start the 'event' again
- if (me->HasFlag64(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_QUESTGIVER))
+ if (me->HasNpcFlag(UNIT_NPC_FLAG_QUESTGIVER))
{
if (ResetFlagTimer <= diff)
{
@@ -316,7 +316,7 @@ public:
case TEXT_EMOTE_CHICKEN:
if (player->GetQuestStatus(QUEST_CLUCK) == QUEST_STATUS_NONE && rand32() % 30 == 1)
{
- me->SetFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_QUESTGIVER);
+ me->AddNpcFlag(UNIT_NPC_FLAG_QUESTGIVER);
me->setFaction(FACTION_FRIENDLY);
Talk(player->GetTeam() == HORDE ? EMOTE_HELLO_H : EMOTE_HELLO_A);
}
@@ -324,7 +324,7 @@ public:
case TEXT_EMOTE_CHEER:
if (player->GetQuestStatus(QUEST_CLUCK) == QUEST_STATUS_COMPLETE)
{
- me->SetFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_QUESTGIVER);
+ me->AddNpcFlag(UNIT_NPC_FLAG_QUESTGIVER);
me->setFaction(FACTION_FRIENDLY);
Talk(EMOTE_CLUCK_TEXT);
}
@@ -726,7 +726,7 @@ public:
void Reset() override
{
Initialize();
- me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
+ me->RemoveUnitFlag(UNIT_FLAG_NOT_SELECTABLE);
}
void BeginEvent(Player* player)
@@ -751,7 +751,7 @@ public:
}
Event = true;
- me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
+ me->AddUnitFlag(UNIT_FLAG_NOT_SELECTABLE);
}
void PatientDied(Position const* point)
@@ -861,13 +861,13 @@ public:
Initialize();
//no select
- me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
+ me->RemoveUnitFlag(UNIT_FLAG_NOT_SELECTABLE);
//no regen health
- me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_IN_COMBAT);
+ me->AddUnitFlag(UNIT_FLAG_IN_COMBAT);
//to make them lay with face down
- me->SetUInt32Value(UNIT_FIELD_BYTES_1, UNIT_STAND_STATE_DEAD);
+ me->SetStandState(UNIT_STAND_STATE_DEAD);
uint32 mobId = me->GetEntry();
@@ -902,13 +902,13 @@ public:
ENSURE_AI(npc_doctor::npc_doctorAI, doctor->AI())->PatientSaved(me, player, Coord);
//make not selectable
- me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
+ me->AddUnitFlag(UNIT_FLAG_NOT_SELECTABLE);
//regen health
- me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_IN_COMBAT);
+ me->RemoveUnitFlag(UNIT_FLAG_IN_COMBAT);
//stand up
- me->SetUInt32Value(UNIT_FIELD_BYTES_1, UNIT_STAND_STATE_STAND);
+ me->SetStandState(UNIT_STAND_STATE_STAND);
Talk(SAY_DOC);
@@ -938,10 +938,10 @@ public:
if (me->IsAlive() && me->GetHealth() <= 6)
{
- me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_IN_COMBAT);
- me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
+ me->RemoveUnitFlag(UNIT_FLAG_IN_COMBAT);
+ me->AddUnitFlag(UNIT_FLAG_NOT_SELECTABLE);
me->setDeathState(JUST_DIED);
- me->SetFlag(OBJECT_DYNAMIC_FLAGS, 32);
+ me->AddDynamicFlag(UNIT_DYNFLAG_DEAD);
if (!DoctorGUID.IsEmpty())
if (Creature* doctor = ObjectAccessor::GetCreature((*me), DoctorGUID))
@@ -992,7 +992,7 @@ void npc_doctor::npc_doctorAI::UpdateAI(uint32 diff)
if (Creature* Patient = me->SummonCreature(patientEntry, **point, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000))
{
//303, this flag appear to be required for client side item->spell to work (TARGET_SINGLE_FRIEND)
- Patient->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_PVP_ATTACKABLE);
+ Patient->AddUnitFlag(UNIT_FLAG_PVP_ATTACKABLE);
Patients.push_back(Patient->GetGUID());
ENSURE_AI(npc_injured_patient::npc_injured_patientAI, Patient->AI())->DoctorGUID = me->GetGUID();
@@ -1198,7 +1198,7 @@ public:
void Reset() override
{
- me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
+ me->AddUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
}
void EnterCombat(Unit* /*who*/) override
@@ -1753,7 +1753,7 @@ public:
bool OnGossipHello(Player* player, Creature* creature) override
{
- if (player->HasFlag(PLAYER_FLAGS, PLAYER_FLAGS_NO_XP_GAIN)) // not gaining XP
+ if (player->HasPlayerFlag(PLAYER_FLAGS_NO_XP_GAIN)) // not gaining XP
{
AddGossipItemFor(player, MENU_ID_XP_ON_OFF, OPTION_ID_XP_ON, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 1);
SendGossipMenuFor(player, NPC_TEXT_XP_ON_OFF, creature->GetGUID());
@@ -1773,10 +1773,10 @@ public:
switch (action)
{
case GOSSIP_ACTION_INFO_DEF + 1: // XP ON selected
- player->RemoveFlag(PLAYER_FLAGS, PLAYER_FLAGS_NO_XP_GAIN); // turn on XP gain
+ player->RemovePlayerFlag(PLAYER_FLAGS_NO_XP_GAIN); // turn on XP gain
break;
case GOSSIP_ACTION_INFO_DEF + 2: // XP OFF selected
- player->SetFlag(PLAYER_FLAGS, PLAYER_FLAGS_NO_XP_GAIN); // turn off XP gain
+ player->AddPlayerFlag(PLAYER_FLAGS_NO_XP_GAIN); // turn off XP gain
break;
}
CloseGossipMenuFor(player);
@@ -2314,7 +2314,7 @@ class npc_train_wrecker : public CreatureScript
break;
}
me->UpdateEntry(NPC_EXULTING_WIND_UP_TRAIN_WRECKER);
- me->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_ONESHOT_DANCE);
+ me->SetEmoteState(EMOTE_ONESHOT_DANCE);
me->DespawnOrUnsummon(5 * IN_MILLISECONDS);
_nextAction = 0;
break;
@@ -2427,8 +2427,8 @@ public:
})
.Schedule(Seconds(1), [this](TaskContext context)
{
- if ((me->HasAura(SPELL_AURA_TIRED_S) || me->HasAura(SPELL_AURA_TIRED_G)) && me->HasFlag64(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_BANKER | UNIT_NPC_FLAG_MAILBOX | UNIT_NPC_FLAG_VENDOR))
- me->RemoveFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_BANKER | UNIT_NPC_FLAG_MAILBOX | UNIT_NPC_FLAG_VENDOR);
+ if ((me->HasAura(SPELL_AURA_TIRED_S) || me->HasAura(SPELL_AURA_TIRED_G)) && me->HasNpcFlag(NPCFlags(UNIT_NPC_FLAG_BANKER | UNIT_NPC_FLAG_MAILBOX | UNIT_NPC_FLAG_VENDOR)))
+ me->RemoveNpcFlag(NPCFlags(UNIT_NPC_FLAG_BANKER | UNIT_NPC_FLAG_MAILBOX | UNIT_NPC_FLAG_VENDOR));
context.Repeat();
});
}
@@ -2439,7 +2439,7 @@ public:
{
case GOSSIP_OPTION_BANK:
{
- me->SetFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_BANKER);
+ me->AddNpcFlag(UNIT_NPC_FLAG_BANKER);
uint32 _bankAura = IsArgentSquire() ? SPELL_AURA_BANK_S : SPELL_AURA_BANK_G;
if (!me->HasAura(_bankAura))
DoCastSelf(_bankAura);
@@ -2450,7 +2450,7 @@ public:
}
case GOSSIP_OPTION_SHOP:
{
- me->SetFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_VENDOR);
+ me->AddNpcFlag(UNIT_NPC_FLAG_VENDOR);
uint32 _shopAura = IsArgentSquire() ? SPELL_AURA_SHOP_S : SPELL_AURA_SHOP_G;
if (!me->HasAura(_shopAura))
DoCastSelf(_shopAura);
@@ -2461,7 +2461,7 @@ public:
}
case GOSSIP_OPTION_MAIL:
{
- me->SetFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_MAILBOX);
+ me->AddNpcFlag(UNIT_NPC_FLAG_MAILBOX);
player->GetSession()->SendShowMailBox(me->GetGUID());
uint32 _mailAura = IsArgentSquire() ? SPELL_AURA_POSTMAN_S : SPELL_AURA_POSTMAN_G;