fix: update struct a3dvecter.

This commit is contained in:
Tungdv
2025-10-06 17:34:45 +07:00
parent a6778f7ddf
commit 38cb41ec5b
4 changed files with 377 additions and 302 deletions
+9 -8
View File
@@ -4,6 +4,7 @@ using CSNetwork.GPDataType;
using CSNetwork.Protocols;
using CSNetwork.Protocols.RPCData;
using PerfectWorld.Scripts.Managers;
using PerfectWorld.Scripts.Player;
using PerfectWorld.Scripts.Task;
using System;
using System.IO;
@@ -539,7 +540,7 @@ public class CECHostPlayer : EC_Player
// If target is pet, it's attacked possibility depends on it's monster
if (ISNPCID(idTarget))
{
CECNPC* pNPC = (CECNPC*)pObject;
CECNPC pNPC = (CECNPC)pObject;
int idMaster = pNPC.GetMasterID();
if (idMaster)
{
@@ -548,7 +549,7 @@ public class CECHostPlayer : EC_Player
return 0;
// Follow pet cannot be attacked
if (pNPC.IsPetNPC() && ((CECPet*)pNPC).IsFollowPet())
if (pNPC.IsPetNPC() && ((CECPet)pNPC).IsFollowPet())
return 0;
idTarget = idMaster;
@@ -562,14 +563,14 @@ public class CECHostPlayer : EC_Player
if (ISNPCID(idTarget))
{
CECNPC* pNPC = (CECNPC*)pObject;
CECNPC pNPC = (CECNPC)pObject;
// If this npc is host's pet, cannot be attacked
if (pNPC.GetMasterID() == m_PlayerInfo.cid)
return 0;
// If it's a pet and can not be attacked, pet can be attacked only if it's a fighting pet
if (pNPC.IsPetNPC() && !((CECPet*)pNPC).CanBeAttacked())
if (pNPC.IsPetNPC() && !((CECPet)pNPC).CanBeAttacked())
return 0;
if (IsInBattle()) // Host is in battle
@@ -621,10 +622,10 @@ public class CECHostPlayer : EC_Player
if (m_bInSanctuary)
return 0;
ASSERT(pObject.GetClassID() == CECObject::OCID_ELSEPLAYER);
CECElsePlayer* pPlayer = (CECElsePlayer*)pObject;
const ROLEBASICPROP&bp = pPlayer.GetBasicProps();
const EC_GAME_SETTING&gs = g_pGame.GetConfigs().GetGameSettings();
//ASSERT(pObject.GetClassID() == CECObject::OCID_ELSEPLAYER);
EC_ElsePlayer pPlayer = (EC_ElsePlayer)pObject;
ROLEBASICPROP bp = pPlayer.GetBasicProps();
EC_GAME_SETTING gs = g_pGame.GetConfigs().GetGameSettings();
if (m_pvp.bFreePVP)
{