void MulAdRandMisOperation(TargetType curType, int targetid) { switch (curType) { case TargetType.TargetType_KillMonster: { //if (!m_Player.m_bHadInitMission) // m_Player.RPCServer(EPacketType.PT_InGame_InitMission, targetid); } break; case TargetType.TargetType_Follow: { TypeFollowData data = MissionManager.GetTypeFollowData(targetid); if (data == null) { return; } data.m_DistRadius = data.m_AdDistPos.radius2; if (PeCreature.Instance.mainPlayer.ExtGetName() != m_FollowPlayerName && m_FollowPlayerName != null) { break; } for (int i = 0; i < data.m_iNpcList.Count; i++) { PeEntity npc = EntityMgr.Instance.Get(data.m_iNpcList[i]); if (npc == null) { continue; } } } break; case TargetType.TargetType_UseItem: { TypeUseItemData data = MissionManager.GetTypeUseItemData(targetid); if (data == null) { return; } // int iMin = data.m_AdDistPos.dist - data.m_AdDistPos.radius; // int iMax = data.m_AdDistPos.dist + data.m_AdDistPos.radius; data.m_Radius = data.m_AdDistPos.radius2; } break; } }
void RPC_S2C_SyncUseItemPos(uLink.BitStream stream, uLink.NetworkMessageInfo info) { int targetid = stream.Read <int>(); Vector3 pos = stream.Read <Vector3>(); int missionId = stream.Read <int>(); TypeUseItemData data = MissionManager.GetTypeUseItemData(targetid); if (data == null) { return; } data.m_Pos = pos; data.m_Radius = data.m_AdDistPos.radius2; UpdateMissionMapLabelPos(missionId, targetid, pos); }