174 lines
6.9 KiB
Lua
174 lines
6.9 KiB
Lua
require("misc.GSetClass")
|
||
|
||
local HeroData = GSetClass("Person")
|
||
local heroConfig = ConfigManager.GetConfig(ConfigName.HeroConfig)
|
||
HeroData.onCreate = function(self,_msgHeroData, isFindHandBook)
|
||
self._id = _msgHeroData.heroId
|
||
self._lv = _msgHeroData.level
|
||
self._Did = _msgHeroData.id
|
||
self._equipIdList = _msgHeroData.equipIdList
|
||
self._talismanList = self.especialEquipLevel
|
||
self._star = _msgHeroData.star
|
||
self._breakId = _msgHeroData.breakId
|
||
-- self._breakId = _msgHeroData.
|
||
self._warPower = 0
|
||
end
|
||
--等级
|
||
HeroData.__get__.lv = function(self)
|
||
local temp_lv = HarmonyManager.GetSingleAdditions(HarmonyAddType.AddLv)
|
||
local endLv = 0
|
||
-- LogWarn("名字:"..tostring(heroConfig[self._id].ReadingName)..
|
||
-- " temp_lv:"..tostring(temp_lv)..
|
||
-- " Bool:"..tostring(HarmonyManager:HongMengTowerUpLimit() ~= 0)..
|
||
-- " Bool2:"..tostring(HarmonyManager.GetSingleAdditionsData(HarmonyAddType.AddLv))
|
||
-- )
|
||
-- LogWarn(" Bool3:"..tostring(HarmonyManager:IsEnvoy(self.dynamicId)))
|
||
if temp_lv > 0 and HarmonyManager.IsInfo(self.dynamicId) then
|
||
if HeroManager.IsTenTalent(self._id)and HarmonyManager:HongMengTowerUpLimit() ~= 0 then
|
||
endLv = HarmonyManager.GetSingleAdditionsData(HarmonyAddType.AddLv).value
|
||
else
|
||
if HeroManager.IsTenTalent(self._id) then
|
||
endLv = HarmonyManager.GetSingleAdditionsData(HarmonyAddType.AddLv).value
|
||
else
|
||
local curlvEen = HeroManager.heroLvEnd[self._id]
|
||
endLv = temp_lv > curlvEen and curlvEen or temp_lv
|
||
end
|
||
end
|
||
return endLv
|
||
elseif HarmonyManager.GetSingleAdditionsData(HarmonyAddType.AddLv) and HarmonyManager:IsEnvoy(self.dynamicId) then
|
||
local data = HarmonyManager.GetSingleAdditionsData(HarmonyAddType.AddLv)
|
||
if data.heroTid >= 0 and data.value >= 300 then
|
||
local temp_lv = 0
|
||
if HeroManager.IsTenTalent(self._id) then
|
||
temp_lv = data.value
|
||
else
|
||
temp_lv = HeroManager.heroLvEnd[self.id]
|
||
end
|
||
-- LogPink("temp_lv:"..tostring(temp_lv))
|
||
return temp_lv
|
||
else
|
||
return self._lv
|
||
end
|
||
else
|
||
-- LogBlue("self._lv2:"..tostring(self._lv))
|
||
return self._lv
|
||
end
|
||
end
|
||
HeroData.__set__.lv = function(self, value)
|
||
-- print(this._lv, " - 属性访问器:set lv", value)
|
||
-- LogGreen("SetValue: Name:"..tostring(heroConfig[self._id].ReadingName).." Value:"..tostring(self._lv))
|
||
self._lv = value
|
||
end
|
||
--装备
|
||
HeroData.__get__.equipIdList = function(self)
|
||
local equipStar = HarmonyManager.GetSingleAdditions(HarmonyAddType.AddEquip)
|
||
--LogPink("self._equipIdList "..equipStar.." @@@@@@"..#self._equipIdList )
|
||
if #self._equipIdList > 0 then
|
||
self.harmonyGongMing = false
|
||
return self._equipIdList
|
||
elseif equipStar > 0 and HarmonyManager.IsInfo(self.dynamicId) then
|
||
local curEquipIdList = {}
|
||
local curEquipConfigs = ConfigManager.GetAllConfigsDataByKey(ConfigName.EquipConfig,"Star",equipStar)
|
||
for i = 1, #curEquipConfigs do
|
||
table.insert(curEquipIdList,curEquipConfigs[i].Id)
|
||
end
|
||
self.harmonyGongMing = true
|
||
return curEquipIdList
|
||
else
|
||
self.harmonyGongMing = false
|
||
return self._equipIdList
|
||
end
|
||
end
|
||
HeroData.__set__.equipIdList = function(self, value)
|
||
self._equipIdList = value
|
||
end
|
||
--法宝
|
||
HeroData.__get__.talismanList = function(self)
|
||
-- EquipTalismana
|
||
--LogPink("法宝1 `````````` ")
|
||
local heroConfig = ConfigManager.GetConfigData(ConfigName.HeroConfig,self._id)
|
||
|
||
--LogPink("法宝2 `````````` "..self._id)
|
||
if heroConfig and not heroConfig.EquipTalismana then
|
||
self.harmonyFaGongMing = false
|
||
-- LogPink("法宝3 `````````` "..self._talismanList)
|
||
return 0
|
||
end
|
||
local Equip = HarmonyManager.GetSingleAdditions(HarmonyAddType.FaBao)
|
||
if Equip > 0 and HarmonyManager.IsInfo(self.dynamicId) then
|
||
--print(curlvEen," "..self.heroConfig.ReadingName)
|
||
local endLv = Equip > self._talismanList and Equip or self._talismanList
|
||
self.harmonyFaGongMing = true
|
||
--LogPink("法宝4 `````````` "..endLv)
|
||
return endLv
|
||
else
|
||
self.harmonyFaGongMing = false
|
||
--LogPink("法宝5 `````````` "..self._talismanList)
|
||
return self._talismanList
|
||
end
|
||
end
|
||
HeroData.__set__.talismanList = function(self, value)
|
||
self._talismanList = value
|
||
end
|
||
HeroData.__get__.oritalismanList = function (self)
|
||
-- body
|
||
return self._talismanList
|
||
end
|
||
HeroData.__get__.oriLv= function (self)
|
||
-- body
|
||
return self._lv
|
||
end
|
||
--天赋突破变化
|
||
HeroData.__set__.breakId = function (self,value)
|
||
-- body
|
||
self._breakId = value
|
||
--print("self._breakId",self._breakId)
|
||
end
|
||
|
||
HeroData.__get__.breakId = function (self)
|
||
-- body
|
||
local temp_lv = HarmonyManager.GetSingleAdditions(HarmonyAddType.AddLv)
|
||
local endLv = 0
|
||
local endbreakIdLv = 0
|
||
if temp_lv > 0 and HarmonyManager.IsInfo(self.dynamicId) then
|
||
--LogGreen(tostring(HeroManager.IsElevenStar(self.star)))
|
||
--print(self._id.." "..HarmonyManager.hongmengAdditions[1].heroTid..self.heroConfig.ReadingName)
|
||
if HeroManager.IsTenTalent(self._id) and HarmonyManager.GetSingleAdditionsData(HarmonyAddType.AddLv).heroTid == 0 then
|
||
endLv = HarmonyManager.GetSingleAdditionsData(HarmonyAddType.AddLv).value
|
||
--print(endLv," "..self.heroConfig.ReadingName)
|
||
else
|
||
local curlvEen = HeroManager.heroLvEnd[self.id]
|
||
endLv = temp_lv > curlvEen and curlvEen or temp_lv
|
||
end
|
||
endbreakIdLv = HeroManager.GetAllStarBreakIdData(self._id,endLv)
|
||
--print(endbreakIdLv," 111 "..self.heroConfig.ReadingName.."等级"..endLv)
|
||
return endbreakIdLv
|
||
elseif HarmonyManager.GetSingleAdditionsData(HarmonyAddType.AddLv) and HarmonyManager:IsEnvoy(self.dynamicId) then
|
||
local data = HarmonyManager.GetSingleAdditionsData(HarmonyAddType.AddLv)
|
||
--print("self._id @@@"..HarmonyManager.hongmengAdditions[1].heroTid.."#####"..HarmonyManager.hongmengAdditions[1].value )
|
||
if data.heroTid >= 0 and data.value >= 300 then
|
||
local temp_lv = 0
|
||
if HeroManager.IsTenTalent(self._id) then
|
||
temp_lv = data.value
|
||
else
|
||
temp_lv = HeroManager.heroLvEnd[self.id]
|
||
end
|
||
endbreakIdLv = HeroManager.GetAllStarBreakIdData(self._id,temp_lv)
|
||
return endbreakIdLv
|
||
else
|
||
return self._breakId
|
||
end
|
||
else
|
||
return self._breakId
|
||
end
|
||
end
|
||
|
||
--战斗力设置
|
||
HeroData.__get__.warPower= function (self)
|
||
self._warPower = HeroPowerManager.GetHeroPower(self._Did)
|
||
return self._warPower
|
||
end
|
||
HeroData.__set__.warPower = function (self,value)
|
||
self._warPower = value
|
||
end
|
||
return HeroData |