源战役客户端
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

63 lines
2.2 KiB

--[[
服务器下发的Npc信息结构体
]]
NpcVo = NpcVo or BaseClass(BaseVo)
function NpcVo:__init()
self.instance_id = 0 --唯一标识(int32)
self.type_id = 0 --类型ID(int32)
self.name = "" --名称(string)
self.pos_x = 0 --X坐标(int16)
self.pos_y = 0 --Y坐标(int16)
self.logic_x = 0
self.logic_y = 0
self.model = 0 --资源ID(int32)
self.func_flag = 0 --功能(int8)
self.realm = 0 --国家(int8)
self.icon = 0 --Npc形象
self.head_icon = 0 --Npc头像(int32)
self.prePoseState = PoseState.STAND
self.poseState = PoseState.STAND
-- self.task_icon = 0 --任务状态:1什么都没有,2可接任务,3有未完成任务,4可提交任务,5有任务相关
self.task_icon = 0 --任务状态:0什么都没有,1可接任务,2有未完成任务,3可提交任务,4有任务相关
self.talk = 0 --默认对话内容
self.dynamic_action_str = "" --动态npc的动作和角度字符串
self.assign_angle = -1 -- 初始化的角度
self.weapon_id = 0 --武器id
self.wing_id = 0
end
function NpcVo:CreateNpcInfo(baseInfo)
if baseInfo == nil then
return
end
local npc_id = baseInfo.npc_id or baseInfo.id or baseInfo.instance_id
local npc_config = ConfigItemMgr.Instance:GetNpcItem(npc_id)
if npc_config == nil then
return
end
self.instance_id = npc_id --唯一标识(int32)
self.type_id = npc_id --类型ID(int32)
self.name = Trim(npc_config.name) --名称(string)
self.pos_x = baseInfo.x or baseInfo.pos_x --X坐标(int16)
self.pos_y = baseInfo.y or baseInfo.pos_y --Y坐标(int16)
self.logic_x = self.pos_x / SceneObj.LogicRealRatio.x
self.logic_y = self.pos_y / SceneObj.LogicRealRatio.y
self.model = npc_config.icon --资源ID(int32)
self.func_flag = npc_config.func --功能(int8)
self.realm = npc_config.realm --国家(int8)
self.icon = npc_config.icon
self.head_icon = npc_config.image --Npc头像(int32)
self.talk = npc_config.talk --默认对话内容
self.anima = npc_config.anima
self.dynamic_action_str = baseInfo.args or ""
self.assign_angle = baseInfo.assign_angle or -1
self.weapon_id = npc_config.arm_id
self.texture_id = npc_config.texture_id or 0
if GodClothesResId[self.model] then
self.weapon_id = self.model
self.wing_id = self.model
end
end