local WeaponSoulComponent = class("WeaponSoulComponent") local Const_CallInvokeFrame = DataSheetManager.ConstData:GetDataByID("WeaponForgeSoulSkillCD").IntValue / LuaConst.TimeSpanMs -- 15秒一次间隔 function WeaponSoulComponent:initialize(entity) self.entity = entity self.callList = {} --要发射的子弹列表(callId) self.callInvokeFrame = Const_CallInvokeFrame --子弹发射的最低间隔帧数 local weaponSoulInfo = entity._logicInitData.WeaponSoulInfo local skillSceneInfo = weaponSoulInfo.skillSceneInfo for _, info in ipairs(skillSceneInfo) do if info.level > 0 then local data = DataSheetManager.MagicWeaponForgeSoulSkill:GetDataByForgeSoulSkillID_ForgeSoulSkillLevel(info.skillId, info.level) table.insert(self.callList, data.CallID) end end self.totalNum = #self.callList --region 缓存数据 self.showEffectFrame = 0 -- 显示出特效的帧数 self.nextReadyFrame = 0 -- 下次最短释放子弹的帧数 self.cdIsReady = true --endregion 缓存数据 end return WeaponSoulComponent