From 38701d647cd44eb95376413ef3e43a327eda4b04 Mon Sep 17 00:00:00 2001 From: Mordred Date: Fri, 29 Mar 2019 17:12:22 +0100 Subject: [PATCH] Claimed mobs will now display in the correct color. Red if owned by self, purple if owned by others --- src/world/Actor/BNpc.cpp | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/world/Actor/BNpc.cpp b/src/world/Actor/BNpc.cpp index 292c9067..acf6b512 100644 --- a/src/world/Actor/BNpc.cpp +++ b/src/world/Actor/BNpc.cpp @@ -392,12 +392,15 @@ void Sapphire::Entity::BNpc::aggro( Sapphire::Entity::CharaPtr pChara ) setStance( Stance::Active ); m_state = BNpcState::Combat; + sendToInRangeSet( makeActorControl142( getId(), ActorControlType::ToggleWeapon, 1, 1, 0 ) ); + if( pChara->isPlayer() ) { PlayerPtr tmpPlayer = pChara->getAsPlayer(); - tmpPlayer->queuePacket( makeActorControl142( getId(), ActorControlType::ToggleWeapon, 1, 1, 1 ) ); + sendToInRangeSet( makeActorControl142( getId(), ActorControlType::ToggleAggro, 1, 0, 0 ) ); tmpPlayer->onMobAggro( getAsBNpc() ); } + } void Sapphire::Entity::BNpc::deaggro( Sapphire::Entity::CharaPtr pChara ) @@ -676,14 +679,14 @@ void Sapphire::Entity::BNpc::setOwner( Sapphire::Entity::CharaPtr m_pChara ) { auto setOwnerPacket = makeZonePacket< FFXIVIpcActorOwner >( m_pChara->getId() ); setOwnerPacket->data().type = 0x01; - setOwnerPacket->data().actorId2 = m_pChara->getId(); + setOwnerPacket->data().actorId = m_pChara->getId(); sendToInRangeSet( setOwnerPacket ); } else { - auto setOwnerPacket = makeZonePacket< FFXIVIpcActorOwner >( m_pChara->getId() ); + auto setOwnerPacket = makeZonePacket< FFXIVIpcActorOwner >( getId() ); setOwnerPacket->data().type = 0x01; - setOwnerPacket->data().actorId2 = INVALID_GAME_OBJECT_ID; + setOwnerPacket->data().actorId = 0; sendToInRangeSet( setOwnerPacket ); } }