yunque9/lua_probject/extend_project/extend/majiang/hongzhong/EXGameInfo.lua

301 lines
8.5 KiB
Lua

local EXGameInfo = {}
local M = EXGameInfo
function EXGameInfo.new(blur_view)
setmetatable(M, { __index = IGameInfo })
local self = setmetatable({}, { __index = M })
self.class = "EXGameInfo"
UIPackage.AddPackage("extend/majiang/hongzhong/ui/Info_MJ_HongZhong")
return self
end
function M:FillData()
self._maxPlayer = 4 -- 默认玩家人数
self._roundChoice = 4 -- 回合选项数
if oldGameVersion == 1 then
self._config = UIPackage.CreateObjectFromURL("ui://Info_MJ_HongZhong/Cgm_create_room")
else
self._config = UIPackage.CreateObjectFromURL("ui://Info_MJ_HongZhong/Cgm_create_room_yueyang")
end
if oldGameVersion == 2 then
self._config:GetController("xipai").selectedIndex = 0
self.xipaiValueText = self._config:GetChild('xipaifen')
self.xipaiValue = 1
self.anchouValueText = self._config:GetChild('anchoufen')
self.anchouValueText.text = 1
self.anchouValue = 1
local btn_cr = self._config:GetChild('sdsrbtn')
btn_cr.onClick:Set(
function()
local gniv = GroupNumberInputView_Game.new(nil, function(num)
local value = limit
if otype == 1 then
value = value + ad2d(num)
elseif otype == -1 then
value = value - ad2d(num)
else
value = ad2d(num)
end
if value < 0 then
ViewUtil.ErrorTip(1, "输入数据异常!")
end
self.xipaiValueText.text = value / 100
self.xipaiValue = value / 100
end, 3, nil)
gniv:Show()
end
)
local btn_cr2 = self._config:GetChild('anchoubtn')
btn_cr2.onClick:Set(
function()
local gniv = GroupNumberInputView_Game.new(nil, function(num)
local value = limit
if otype == 1 then
value = value + ad2d(num)
elseif otype == -1 then
value = value - ad2d(num)
else
value = ad2d(num)
end
if value < 0 then
ViewUtil.ErrorTip(1, "输入数据异常!")
end
self.anchouValueText.text = value / 100
self.anchouValue = value / 100
end, 3, nil)
gniv:Show()
end
)
end
end
local _help_url = "ui://Info_MJ_HongZhong/Com_help"
function M:GetHelpUrl()
return _help_url
end
local _icon_url = "ui://Info_MJ_HongZhong/icon"
function M:GetIconUrl()
return _icon_url
end
local _icon_url1 = "ui://Info_MJ_HongZhong/icon1"
function M:GetIconUrl1()
return _icon_url1
end
local _play_list = {} --{"红中麻将","三人红中","二人红中"}
function M:GetPlayList()
return _play_list
end
function M:SelectedConfigData()
local _config = self._config
local round = _config:GetController("round").selectedIndex + 1
local people = _config:GetController("play_list").selectedIndex + 2
local qiangkong = _config:GetChild("btn_qgh").selected and true or false
local qiangkong_niao = _config:GetChild("btn_qghjm").selected and true or false
local seven_pair = _config:GetChild("btn_qidui").selected and true or false
local niao_type = _config:GetController("NiaoType").selectedIndex + 1
local zha_ma = _config:GetController("zha").selectedIndex + 1
local wo_niao = _config:GetController("wowoniao").selectedIndex + 1
local laizi = _config:GetChild("btn_laizi").selected and true or false
local aa = _config:GetController("Cost").selectedIndex
-- local zhuangxian = _config:GetChild("btn_zhuangxian").selected and true or false
local piao_niao = _config:GetChild("btn_piao_niao").selected
local jiangma = _config:GetController("jiangma").selectedIndex
local wuguizhuopaojiabei = _config:GetChild("btn_wuhongzhongzuobaofanbei").selected
----------
local piao_niao1 = 0
if _config:GetController('piao') then
piao_niao1 = _config:GetController('piao').selectedIndex
end
local piao1 = false
local piao2 = false
local piao3 = false
local piao_niao_opt = 0
if piao_niao1 == 2 then
piao_niao_opt = _config:GetController("piaofen").selectedIndex
end
local laizi4_hu = false
if _config:GetChild("btn_sihongzhong") then
laizi4_hu = _config:GetChild("btn_sihongzhong").selected
end
local hz_hu = false
if _config:GetChild("btn_wuhongzhong") then
hz_hu = _config:GetChild("btn_wuhongzhong").selected
end
local wuguijiabei = false
if _config:GetChild("btn_wuhongzhongzimo") then
wuguijiabei = _config:GetChild("btn_wuhongzhongzimo").selected
end
local dianpaohu = false
if _config:GetChild("btn_dianpaohu") then
dianpaohu = _config:GetChild("btn_dianpaohu").selected
end
local di_fen = false
if _config:GetController('difen') then
di_fen = _config:GetController('difen').selectedIndex
end
local xi_pai = false
if _config:GetChild("xipai") then
xi_pai = _config:GetChild("xipai").selected
end
local fengding_score = 0
if _config:GetController("fengding") then
fengding_score = _config:GetController("fengding").selectedIndex
end
----------
local _data = {}
_data["opt"] = round
_data["maxPlayers"] = people
-- _data["maxPlayers"] = 2
-- _data["zhuangxian"] = zhuangxian
_data["qidui"] = seven_pair
_data["qiangkong"] = qiangkong
_data["qiangkong_niao"] = not qiangkong and false or qiangkong_niao
_data["niao"] = niao_type
if oldGameVersion == 1 then
_data["niao_opt"] = niao_type == 2 and 1 or (niao_type == 3 and wo_niao or zha_ma)
else
_data["niao_opt"] = niao_type == 2 and 1 or (niao_type == 3 and wo_niao or zha_ma)
end
_data["niao_opt_score"] = wo_niao
_data["laizi8"] = laizi
_data["AA"] = aa
if oldGameVersion == 1 then
_data["piao_niao"] = piao_niao
else
_data["piao_niao"] = piao_niao1
end
_data["jiangma"] = jiangma
_data['piao1'] = piao1
_data['piao2'] = piao2
_data['piao3'] = piao3
_data['laizi4_hu'] = laizi4_hu
_data['hz_hu'] = hz_hu
_data['wuguijiabei'] = wuguijiabei
_data['di_fen'] = di_fen
_data['xi_pai'] = xi_pai
auto_piao = false
if piao_niao == 2 then
if piao1 or piao2 or piao3 then
auto_piao = true
end
end
_data['auto_piao'] = auto_piao
_data['piao_niao_opt'] = piao_niao_opt
local xi_pai_score = 0
local an_chou_score = 0
if oldGameVersion == 2 then
xi_pai_score = self.xipaiValue
an_chou_score = self.anchouValue
end
_data['xi_pai_score'] = xi_pai_score * 100
_data['an_chou_score'] = an_chou_score * 100
_data["fengding_score"] = fengding_score
_data["wuguizhuopaojiabei"] = wuguizhuopaojiabei
_data["dianpaohu"] = dianpaohu
return _data
end
function M:LoadConfigData(data)
local _config = self._config
_config:GetController("round").selectedIndex = data.opt - 1
_config:GetController("play_list").selectedIndex = data.maxPlayers - 2
_config:GetChild("btn_qgh").selected = data.qiangkong
_config:GetChild("btn_qghjm").selected = data.qiangkong_niao
_config:GetChild("btn_qidui").selected = data.qidui
-- _config:GetChild("btn_zhuangxian").selected = data.zhuangxian
_config:GetController("NiaoType").selectedIndex = data.niao - 1
if data.niao == 1 then
_config:GetController("zha").selectedIndex = data.niao_opt - 1
elseif data.niao == 3 then
_config:GetController("wowoniao").selectedIndex = data.niao_opt - 1
end
_config:GetController("wowoniao").selectedIndex = data.niao_opt_score - 1
_config:GetChild("btn_laizi").selected = data.laizi8
_config:GetController("Cost").selectedIndex = data.AA or 0
if oldGameVersion == 1 then
_config:GetChild("btn_piao_niao").selected = data.piao_niao
end
_config:GetController("jiangma").selectedIndex = data.jiangma
_config:GetChild("btn_dianpaohu").selected = data.dianpaohu
if _config:GetController("piao") then
_config:GetController("piao").selectedIndex = data.piao_niao
_config:GetChild('pf1').selected = data.piao1
_config:GetChild('pf2').selected = data.piao2
_config:GetChild('pf3').selected = data.piao3
end
if _config:GetChild("btn_sihongzhong") then
_config:GetChild("btn_sihongzhong").selected = data.laizi4_hu
_config:GetChild("btn_wuhongzhong").selected = data.hz_hu
_config:GetChild("btn_wuhongzhongzimo").selected = data.wuguijiabei
end
if _config:GetController("difen") then
_config:GetController("difen").selectedIndex = data.di_fen
end
if _config:GetChild("xipai") then
_config:GetChild("xipai").selected = data.xi_pai
end
if _config:GetController("piaofen") then
_config:GetController("piaofen").selectedIndex = data.piao_niao_opt
end
if oldGameVersion == 2 then
self.xipaiValueText.text = data.xi_pai_score / 100
self.xipaiValue = data.xi_pai_score / 100
self.anchouValueText.text = data.an_chou_score / 100
self.anchouValue = data.an_chou_score / 100
end
if _config:GetController("fengding") then
_config:GetController("fengding").selectedIndex = data.fengding_score
end
_config:GetChild("btn_wuhongzhongzuobaofanbei").selected = data.wuguizhuopaojiabei
end
return M