diff --git a/zone/mob.cpp b/zone/mob.cpp index 24c27805b..ac128d2ec 100644 --- a/zone/mob.cpp +++ b/zone/mob.cpp @@ -380,8 +380,8 @@ Mob::Mob( spellbonuses.AssistRange = -1; SetPetID(0); SetOwnerID(0); - typeofpet = petNone; // default to not a pet - petpower = 0; + SetPetType(petNone); // default to not a pet + SetPetPower(0); held = false; gheld = false; nocast = false; diff --git a/zone/npc.cpp b/zone/npc.cpp index 2ebb86482..0eb0a91c9 100644 --- a/zone/npc.cpp +++ b/zone/npc.cpp @@ -162,7 +162,7 @@ NPC::NPC(const NPCType *npc_type_data, Spawn2 *in_respawn, const glm::vec4 &posi size = 15; } - taunting = false; + SetTaunting(false); proximity = nullptr; copper = 0; silver = 0; diff --git a/zone/pets.cpp b/zone/pets.cpp index 2d8dec08d..5a39e6fbe 100644 --- a/zone/pets.cpp +++ b/zone/pets.cpp @@ -441,22 +441,24 @@ Pet::Pet(NPCType *type_data, Mob *owner, PetType type, uint16 spell_id, int16 po : NPC(type_data, 0, owner->GetPosition() + glm::vec4(2.0f, 2.0f, 0.0f, 0.0f), GravityBehavior::Water) { GiveNPCTypeData(type_data); - typeofpet = type; - petpower = power; + SetPetType(type); + SetPetPower(power); SetOwnerID(owner ? owner->GetID() : 0); SetPetSpellID(spell_id); // All pets start at false on newer clients. The client // turns it on and tracks the state. - taunting=false; + SetTaunting(false); // Older clients didn't track state, and default taunting is on (per @mackal) // Familiar and animation pets don't get taunt until an AA. if (owner && owner->IsClient()) { if (!(owner->CastToClient()->ClientVersionBit() & EQ::versions::maskUFAndLater)) { - if ((typeofpet != petFamiliar && typeofpet != petAnimation) || - aabonuses.PetCommands[PET_TAUNT]) { - taunting=true; + if ( + (GetPetType() != petFamiliar && GetPetType() != petAnimation) || + aabonuses.PetCommands[PET_TAUNT] + ) { + SetTaunting(true); } } } diff --git a/zone/special_attacks.cpp b/zone/special_attacks.cpp index e264f1add..44fce7386 100644 --- a/zone/special_attacks.cpp +++ b/zone/special_attacks.cpp @@ -1730,7 +1730,13 @@ void NPC::DoClassAttacks(Mob *target) { //general stuff, for all classes.... //only gets used when their primary ability get used too - if (taunting && HasOwner() && target->IsNPC() && target->GetBodyType() != BT_Undead && taunt_time) { + if ( + IsTaunting() && + HasOwner() && + target->IsNPC() && + target->GetBodyType() != BT_Undead && + taunt_time + ) { GetOwner()->MessageString(Chat::PetResponse, PET_TAUNTING); Taunt(target->CastToNPC(), false); }