| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124 |
- --[[
- 在多人玩家战斗的情况下,把自身封装成和其它玩家一样的结构,和Api,
- 方便统一逻辑处理,省去在取数据或调用Api时的判断
- ]]
- local SelfActorSystem = class("SelfActorSystem", require("CreateActorSystem"))
- -- local LuaToCSData = require('LuaToCSData')
- function SelfActorSystem:ctor()
- local heroActorData = ManagerContainer.LuaActorDataMgr:GetActorData(true,0)
- if heroActorData then
- self.heroActorData = ActorData.CloneActorData(heroActorData)
- local heroData = ManagerContainer.DataMgr.UserData:GetHeroData(1)
- if heroData then
- local skillData = heroData.skillData
- if skillData then
- local skillPrams = skillData:GetUsedSkillParams()
- skillPrams = CommonUtil.ReplaceBattleSkillBySkillEquip(heroData, skillPrams)
- self.heroActorData:RefreshSkills(skillPrams)
- end
- end
- end
- local list = ManagerContainer.DataMgr.PartnerData:GetAllPartnerTeamDatas()
- self.fellewActorDatas = {}
- if list ~= nil then
- for _,v in pairs(list) do
- local actorData = ManagerContainer.LuaActorDataMgr:GetActorData(false,v.id)
- if actorData then
- actorData = ActorData.CloneActorData(actorData)
- local heroData = ManagerContainer.DataMgr.UserData:GetHeroData(v.uid)
- if heroData then
- local skillData = heroData.skillData
- if skillData then
- local skillPrams = skillData:GetUsedSkillParams()
- skillPrams = CommonUtil.ReplaceBattleSkillBySkillEquip(heroData, skillPrams)
- actorData:RefreshSkills(skillData:GetUsedSkillParams())
- end
- end
- table.insert(self.fellewActorDatas, actorData)
- end
- end
- end
- tbChangePetId = {}
- -- local userData = ManagerContainer.DataMgr.UserData
- -- local roleParam = {
- -- uid = userData:GetId(),
- -- id = userData:GetUserRoleId(),
- -- jobId = userData:GetJobCfgId(),
- -- lv = userData:GetRoleLv(),
- -- role = false,
- -- mainRole = true,
- -- skills = userData:GetSkillData(1),
- -- buffs = userData:GetCardBuffs(1),
- -- fashion = userData:GetViewData(),
- -- petId = 1000,
- -- petBaseId = userData:GetId()
- -- }
- -- local heroActorData = ActorData.CreatePlayerActor(roleParam)
- -- local fashionParam = LuaToCSData.CreateFashionParamData(userData:GetUserRoleId(), userData:GetJobCfgId(), userData:GetViewData())
- -- self.userData = userData
- -- self.heroData = clone(userData:GetHeroData(1), true)
- -- self.fashionMap = ManagerContainer.DataMgr.FashionData:GetFashionMap()
- -- self:CalcHeroAttrs()
- end
- function SelfActorSystem:GetUserId()
- return ManagerContainer.DataMgr.UserData:GetUserId()
- end
- function SelfActorSystem:GetUserHeadIcon()
- return ManagerContainer.DataMgr.UserData:GetUserHeadIcon()
- end
- function SelfActorSystem:GetUserNickname()
- return ManagerContainer.DataMgr.UserData:GetUserNickname()
- end
- function SelfActorSystem:GetPlayerActorParam()
- if nil ~= self.PetBossActor then --有变身ID 返回变身ID
- return self.PetBossActor
- end
- return self.heroActorData
- end
- function SelfActorSystem:GetFellowActorParam()
- return self.fellewActorDatas
- end
- function SelfActorSystem:GetHeadFrameId()
- return ManagerContainer.DataMgr.UserData:GetHeadFrameId()
- end
- function SelfActorSystem:CalChangePetActorId()
- local PetBossIdRane = 100000
- return ManagerContainer.DataMgr.UserData:GetUserId()-- + PetBossIdRane
- end
- function SelfActorSystem:CreatePetBossActor(ChangePetId)
- if nil == self.tbChangePetId then
- self.tbChangePetId = {}
- end
- local ChangePetUId = self:CalChangePetActorId()
- self.PetBossActor = ManagerContainer.LuaActorDataMgr:CreatePetBossActor(ChangePetUId, ChangePetId,self.heroActorData.Level)
- self.PetBossActor.Level = self.heroActorData.Level
- self.PetBossActor.HeadIcon = self.heroActorData.HeadIcon
- self.PetBossActor.IsMainRole = true
- table.insert(self.tbChangePetId,self.PetBossActor.ID)
- return self.PetBossActor
- end
- function SelfActorSystem:RemoveAllPetBossActor()
- for k,v in pairs(tbChangePetId) do
- ManagerContainer.LuaActorDataMgr:DeletePetActorData(v)
- end
- end
- function SelfActorSystem:Dispose()
- self.RemoveAllPetBossActor()
- end
- return SelfActorSystem
|