-- 狂化界面 狂化百分比 require("LuaUtil") require("Util") EnhanceFrenzyPanel = {} local Combat local newCombat local Arrows function EnhanceFrenzyPanel.Awake( ) Combat = _Combat:GetComponent("Text") newCombat = _newCombat:GetComponent("Text") Arrows = _Arrows:GetComponent("Transform") end function EnhanceFrenzyPanel.OnEnable( ) Combat.gameObject:SetActive(false) newCombat.gameObject:SetActive(true) EnhanceFrenzyPanel.ShowNewAttr(Combat,newCombat) end local _isShowTime = 0 local newStrList = {} function EnhanceFrenzyPanel.Update( ) _isShowTime = _isShowTime + CS.UnityEngine.Time.deltaTime -- 法攻 12249+2153(狂化)+8%(强化) if _isShowTime >= 0.2 then _isShowTime = 0 EnhanceFrenzyPanel.ShowNewAttr(Combat,newCombat) end end function EnhanceFrenzyPanel.ShowNewAttr(_Attrs,_newAttrs) if _Attrs.text ~= '' and _Attrs.text ~= nil and _Attrs ~= nil then _Attrs.gameObject:SetActive(false) local PropertyName = '' local _newStr = '' local shuxingzhi = '' local kuanghuaStr = '' local kuanghuaShu = 0 local kuanghuaBaifenBi = '' local _kongGeSplit = EnhanceFrenzyPanel.split(_Attrs.text," ") for i=1,#_kongGeSplit do PropertyName = _kongGeSplit[1] _newStr = _kongGeSplit[2] -- ELog('属性名字。。'..PropertyName) --ELog('新的字符串。。'.._newStr) local _danShuMingHaoSplit = EnhanceFrenzyPanel.split(_newStr,"<") for ii=1,#_danShuMingHaoSplit do local aaaaa = _danShuMingHaoSplit[1] shuxingzhi = string.gsub(aaaaa, "%%", "") --ELog('属性值。。'..shuxingzhi) end end if shuxingzhi + 0 > 100 then newCombat.text = _Attrs.text return end local _jiaHaoSplit = EnhanceFrenzyPanel.split(_newStr,"+") kuanghuaStr = _jiaHaoSplit[2] -- print("--------22222"..kuanghuaStr) kuanghuaStr = EnhanceFrenzyPanel.TrimKuoHao(kuanghuaStr) kuanghuaShu = EnhanceFrenzyPanel.split(kuanghuaStr,"%(")[1] kuanghuaBaifenBi = kuanghuaShu / 100 .. '%' if #_jiaHaoSplit == 2 then local _newStr1 = PropertyName .._jiaHaoSplit[1] .. '+'.. kuanghuaBaifenBi .. CS.GCGame.Table.StrDictionary.GetClientDictionaryString("#{5808}") .. '' _newStr1 = EnhanceFrenzyPanel.TrimKuoHao(_newStr1) local _newStr2 = string.gsub(_newStr1, "%(", "(") newCombat.text = string.gsub(_newStr2, "%(", ")") end if #_jiaHaoSplit == 3 then local _newStr1 = PropertyName .._jiaHaoSplit[1] .. '+'..kuanghuaBaifenBi .. CS.GCGame.Table.StrDictionary.GetClientDictionaryString("#{5808}") .. ''.. '+' .._jiaHaoSplit[3] _newStr1 = EnhanceFrenzyPanel.TrimKuoHao(_newStr1) local _newStr2 = string.gsub(_newStr1, "%(", "(") newCombat.text = string.gsub(_newStr2, "%)", ")") end --ELog(newCombat.text) end end function EnhanceFrenzyPanel.TrimKuoHao(str) local kuanghuaStr = string.gsub(str, "(", "(") kuanghuaStr = string.gsub(kuanghuaStr, ")", "(") return kuanghuaStr end -- 参数:待分割的字符串,分割字符 -- 返回:子串表.(含有空串) function EnhanceFrenzyPanel.split(str, split_char) local sub_str_tab = {} while true do if split_char ~= nil then local pos = string.find(str, split_char) if not pos then table.insert(sub_str_tab,str) break end local sub_str = string.sub(str, 1, pos - 1) table.insert(sub_str_tab,sub_str) str = string.sub(str, pos + 1, string.len(str)) end end return sub_str_tab end