2021-04-20 13:58:00 +08:00
|
|
|
|
require("misc.GSetClass")
|
2020-12-17 10:41:00 +08:00
|
|
|
|
|
|
|
|
|
local HeroData = GSetClass("Person")
|
2021-09-14 17:32:06 +08:00
|
|
|
|
local heroConfig = ConfigManager.GetConfig(ConfigName.HeroConfig)
|
2020-12-17 10:41:00 +08:00
|
|
|
|
HeroData.onCreate = function(self,_msgHeroData, isFindHandBook)
|
2020-12-26 15:58:03 +08:00
|
|
|
|
self._id = _msgHeroData.heroId
|
2020-12-17 10:41:00 +08:00
|
|
|
|
self._lv = _msgHeroData.level
|
2020-12-30 14:50:38 +08:00
|
|
|
|
self._Did = _msgHeroData.id
|
2020-12-17 10:41:00 +08:00
|
|
|
|
self._equipIdList = _msgHeroData.equipIdList
|
2020-12-26 15:58:03 +08:00
|
|
|
|
self._talismanList = self.especialEquipLevel
|
|
|
|
|
self._star = _msgHeroData.star
|
2021-01-09 14:30:35 +08:00
|
|
|
|
self._breakId = _msgHeroData.breakId
|
2020-12-17 10:41:00 +08:00
|
|
|
|
-- self._breakId = _msgHeroData.
|
2021-09-17 15:08:37 +08:00
|
|
|
|
self._warPower = 0
|
2020-12-17 10:41:00 +08:00
|
|
|
|
end
|
|
|
|
|
--等级
|
|
|
|
|
HeroData.__get__.lv = function(self)
|
|
|
|
|
local temp_lv = HarmonyManager.GetSingleAdditions(HarmonyAddType.AddLv)
|
2020-12-18 13:39:35 +08:00
|
|
|
|
local endLv = 0
|
2021-09-14 17:32:06 +08:00
|
|
|
|
-- 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)))
|
2020-12-17 10:41:00 +08:00
|
|
|
|
if temp_lv > 0 and HarmonyManager.IsInfo(self.dynamicId) then
|
2021-01-14 21:11:53 +08:00
|
|
|
|
if HeroManager.IsTenTalent(self._id)and HarmonyManager:HongMengTowerUpLimit() ~= 0 then
|
2021-01-18 17:43:11 +08:00
|
|
|
|
endLv = HarmonyManager.GetSingleAdditionsData(HarmonyAddType.AddLv).value
|
2021-09-14 17:32:06 +08:00
|
|
|
|
else
|
2021-01-14 21:11:53 +08:00
|
|
|
|
if HeroManager.IsTenTalent(self._id) then
|
2021-01-18 17:43:11 +08:00
|
|
|
|
endLv = HarmonyManager.GetSingleAdditionsData(HarmonyAddType.AddLv).value
|
2021-01-14 21:11:53 +08:00
|
|
|
|
else
|
|
|
|
|
local curlvEen = HeroManager.heroLvEnd[self._id]
|
|
|
|
|
endLv = temp_lv > curlvEen and curlvEen or temp_lv
|
|
|
|
|
end
|
2020-12-18 13:39:35 +08:00
|
|
|
|
end
|
2020-12-17 10:41:00 +08:00
|
|
|
|
return endLv
|
2021-01-18 17:43:11 +08:00
|
|
|
|
elseif HarmonyManager.GetSingleAdditionsData(HarmonyAddType.AddLv) and HarmonyManager:IsEnvoy(self.dynamicId) then
|
|
|
|
|
local data = HarmonyManager.GetSingleAdditionsData(HarmonyAddType.AddLv)
|
|
|
|
|
if data.heroTid >= 0 and data.value >= 330 then
|
2021-01-04 16:31:46 +08:00
|
|
|
|
local temp_lv = 0
|
|
|
|
|
if HeroManager.IsTenTalent(self._id) then
|
2021-01-18 17:43:11 +08:00
|
|
|
|
temp_lv = data.value
|
2021-01-04 16:31:46 +08:00
|
|
|
|
else
|
|
|
|
|
temp_lv = HeroManager.heroLvEnd[self.id]
|
|
|
|
|
end
|
2021-09-14 17:32:06 +08:00
|
|
|
|
-- LogPink("temp_lv:"..tostring(temp_lv))
|
2021-01-04 16:31:46 +08:00
|
|
|
|
return temp_lv
|
2020-12-29 20:36:37 +08:00
|
|
|
|
else
|
|
|
|
|
return self._lv
|
|
|
|
|
end
|
2020-12-17 10:41:00 +08:00
|
|
|
|
else
|
2021-09-14 17:32:06 +08:00
|
|
|
|
-- LogBlue("self._lv2:"..tostring(self._lv))
|
2020-12-17 10:41:00 +08:00
|
|
|
|
return self._lv
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
HeroData.__set__.lv = function(self, value)
|
|
|
|
|
-- print(this._lv, " - 属性访问器:set lv", value)
|
2021-09-14 17:32:06 +08:00
|
|
|
|
-- LogGreen("SetValue: Name:"..tostring(heroConfig[self._id].ReadingName).." Value:"..tostring(self._lv))
|
2020-12-17 10:41:00 +08:00
|
|
|
|
self._lv = value
|
|
|
|
|
end
|
|
|
|
|
--装备
|
|
|
|
|
HeroData.__get__.equipIdList = function(self)
|
|
|
|
|
local equipStar = HarmonyManager.GetSingleAdditions(HarmonyAddType.AddEquip)
|
2021-01-08 17:29:54 +08:00
|
|
|
|
--LogPink("self._equipIdList "..equipStar.." @@@@@@"..#self._equipIdList )
|
2020-12-17 10:41:00 +08:00
|
|
|
|
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
|
2021-01-08 17:29:54 +08:00
|
|
|
|
else
|
2020-12-17 10:41:00 +08:00
|
|
|
|
self.harmonyGongMing = false
|
|
|
|
|
return self._equipIdList
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
HeroData.__set__.equipIdList = function(self, value)
|
|
|
|
|
self._equipIdList = value
|
|
|
|
|
end
|
|
|
|
|
--法宝
|
2020-12-26 15:58:03 +08:00
|
|
|
|
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
|
2021-01-08 17:29:54 +08:00
|
|
|
|
self.harmonyFaGongMing = false
|
2020-12-26 15:58:03 +08:00
|
|
|
|
-- LogPink("法宝3 `````````` "..self._talismanList)
|
|
|
|
|
return 0
|
|
|
|
|
end
|
2020-12-17 10:41:00 +08:00
|
|
|
|
local Equip = HarmonyManager.GetSingleAdditions(HarmonyAddType.FaBao)
|
|
|
|
|
if Equip > 0 and HarmonyManager.IsInfo(self.dynamicId) then
|
|
|
|
|
--print(curlvEen," "..self.heroConfig.ReadingName)
|
2020-12-26 15:58:03 +08:00
|
|
|
|
local endLv = Equip > self._talismanList and Equip or self._talismanList
|
2021-01-08 17:29:54 +08:00
|
|
|
|
self.harmonyFaGongMing = true
|
2020-12-26 15:58:03 +08:00
|
|
|
|
--LogPink("法宝4 `````````` "..endLv)
|
2020-12-17 10:41:00 +08:00
|
|
|
|
return endLv
|
|
|
|
|
else
|
2021-01-08 17:29:54 +08:00
|
|
|
|
self.harmonyFaGongMing = false
|
2020-12-26 15:58:03 +08:00
|
|
|
|
--LogPink("法宝5 `````````` "..self._talismanList)
|
|
|
|
|
return self._talismanList
|
2020-12-17 10:41:00 +08:00
|
|
|
|
end
|
|
|
|
|
end
|
2020-12-26 15:58:03 +08:00
|
|
|
|
HeroData.__set__.talismanList = function(self, value)
|
|
|
|
|
self._talismanList = value
|
2020-12-17 10:41:00 +08:00
|
|
|
|
end
|
2021-01-25 15:14:45 +08:00
|
|
|
|
HeroData.__get__.oritalismanList = function (self)
|
|
|
|
|
-- body
|
|
|
|
|
return self._talismanList
|
|
|
|
|
end
|
2020-12-17 10:41:00 +08:00
|
|
|
|
HeroData.__get__.oriLv= function (self)
|
|
|
|
|
-- body
|
|
|
|
|
return self._lv
|
|
|
|
|
end
|
2021-01-09 14:30:35 +08:00
|
|
|
|
--天赋突破变化
|
|
|
|
|
HeroData.__set__.breakId = function (self,value)
|
|
|
|
|
-- body
|
|
|
|
|
self._breakId = value
|
2021-01-14 21:11:53 +08:00
|
|
|
|
--print("self._breakId",self._breakId)
|
2021-01-09 14:30:35 +08:00
|
|
|
|
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)
|
2021-01-18 17:43:11 +08:00
|
|
|
|
if HeroManager.IsTenTalent(self._id) and HarmonyManager.GetSingleAdditionsData(HarmonyAddType.AddLv).heroTid == 0 then
|
|
|
|
|
endLv = HarmonyManager.GetSingleAdditionsData(HarmonyAddType.AddLv).value
|
2021-01-09 14:30:35 +08:00
|
|
|
|
--print(endLv," "..self.heroConfig.ReadingName)
|
2021-09-14 17:32:06 +08:00
|
|
|
|
else
|
2021-01-09 14:30:35 +08:00
|
|
|
|
local curlvEen = HeroManager.heroLvEnd[self.id]
|
|
|
|
|
endLv = temp_lv > curlvEen and curlvEen or temp_lv
|
|
|
|
|
end
|
|
|
|
|
endbreakIdLv = HeroManager.GetAllStarBreakIdData(self._id,endLv)
|
2021-01-14 21:11:53 +08:00
|
|
|
|
--print(endbreakIdLv," 111 "..self.heroConfig.ReadingName.."等级"..endLv)
|
2021-01-09 14:30:35 +08:00
|
|
|
|
return endbreakIdLv
|
2021-01-18 17:43:11 +08:00
|
|
|
|
elseif HarmonyManager.GetSingleAdditionsData(HarmonyAddType.AddLv) and HarmonyManager:IsEnvoy(self.dynamicId) then
|
|
|
|
|
local data = HarmonyManager.GetSingleAdditionsData(HarmonyAddType.AddLv)
|
2021-01-09 14:30:35 +08:00
|
|
|
|
--print("self._id @@@"..HarmonyManager.hongmengAdditions[1].heroTid.."#####"..HarmonyManager.hongmengAdditions[1].value )
|
2021-01-18 17:43:11 +08:00
|
|
|
|
if data.heroTid >= 0 and data.value >= 330 then
|
2021-01-09 14:30:35 +08:00
|
|
|
|
local temp_lv = 0
|
|
|
|
|
if HeroManager.IsTenTalent(self._id) then
|
2021-01-18 17:43:11 +08:00
|
|
|
|
temp_lv = data.value
|
2021-01-09 14:30:35 +08:00
|
|
|
|
else
|
|
|
|
|
temp_lv = HeroManager.heroLvEnd[self.id]
|
|
|
|
|
end
|
2021-01-14 21:11:53 +08:00
|
|
|
|
endbreakIdLv = HeroManager.GetAllStarBreakIdData(self._id,temp_lv)
|
2021-01-09 14:30:35 +08:00
|
|
|
|
return endbreakIdLv
|
|
|
|
|
else
|
|
|
|
|
return self._breakId
|
|
|
|
|
end
|
|
|
|
|
else
|
|
|
|
|
return self._breakId
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
2021-09-17 15:08:37 +08:00
|
|
|
|
--战斗力设置
|
|
|
|
|
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
|
2020-12-17 10:41:00 +08:00
|
|
|
|
return HeroData
|