110 lines
4.0 KiB
Plaintext
110 lines
4.0 KiB
Plaintext
-- 狂化界面 狂化百分比
|
||
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<color=#f2341b>+2153(狂化)</color><color=#128D09>+8%(强化)</color>
|
||
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}") .. '</color>'
|
||
_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}") .. '</color><color=#128D09>'.. '+' .._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 |