同步四人,暂未发现优化点

master
罗家炜 2025-04-26 14:19:35 +08:00
parent b1371a6a51
commit 7b0d30649e
5 changed files with 201 additions and 144 deletions

View File

@ -4,196 +4,212 @@ local M = EXGameInfo
function EXGameInfo.new(blur_view)
setmetatable(M, { __index = IGameInfo })
local self = setmetatable({}, { __index = M })
self.class = "EXGameInfo"
UIPackage.AddPackage("extend/majiang/fuzhou/ui/Info_MJ_FuZhou")
return self
setmetatable(M, { __index = IGameInfo })
local self = setmetatable({}, { __index = M })
self.class = "EXGameInfo"
UIPackage.AddPackage("extend/majiang/fuzhou/ui/Info_MJ_FuZhou")
return self
end
function M:FillData()
self._maxPlayer = 4 -- 默认玩家人数
self._roundChoice = 3 -- 回合选项数
self._config = UIPackage.CreateObjectFromURL("ui://Info_MJ_FuZhou/Label_Detail_83")
self._maxPlayer = 4 -- 默认玩家人数
self._roundChoice = 3 -- 回合选项数
self._config = UIPackage.CreateObjectFromURL("ui://Info_MJ_FuZhou/Label_Detail_83")
local jiangmaSlider = self._config:GetChild("n92")
jiangmaSlider.onChanged:Set(function()
self._config:GetChild("n93").text = string.format("奖%s马", Mathf.Round(jiangmaSlider.value) * 2)
end)
local jiangmaSlider = self._config:GetChild("n92")
jiangmaSlider.onChanged:Set(function()
self._config:GetChild("n93").text = string.format("奖%s马", Mathf.Round(jiangmaSlider.value) * 2)
end)
-- if oldGameVersion == 2 then
-- self._config:GetController("xipai").selectedIndex = 0
-- if oldGameVersion == 2 then
-- self._config:GetController("xipai").selectedIndex = 0
-- self.xipaiValueText = self._config:GetChild('xipaifen')
-- self.xipaiValueText.text = 1
-- self.xipaiValue = 1
-- self.xipaiValueText = self._config:GetChild('xipaifen')
-- self.xipaiValueText.text = 1
-- self.xipaiValue = 1
-- self.anchouValueText = self._config:GetChild('anchoufen')
-- self.anchouValueText.text = 1
-- self.anchouValue = 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
-- 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
-- if value < 0 then
-- ViewUtil.ErrorTip(1, "输入数据异常!")
-- end
-- self.xipaiValueText.text = value / 1000
-- self.xipaiValue = value / 1000
-- end, 3, nil)
-- gniv:Show()
-- end
-- )
-- self.xipaiValueText.text = value / 1000
-- self.xipaiValue = value / 1000
-- 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
-- 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
-- if value < 0 then
-- ViewUtil.ErrorTip(1, "输入数据异常!")
-- end
-- self.anchouValueText.text = value / 1000
-- self.anchouValue = value / 1000
-- end, 3, nil)
-- gniv:Show()
-- end
-- )
-- end
-- self.anchouValueText.text = value / 1000
-- self.anchouValue = value / 1000
-- end, 3, nil)
-- gniv:Show()
-- end
-- )
-- end
end
local _help_url = "ui://Info_MJ_FuZhou/Com_help"
function M:GetHelpUrl()
return _help_url
return _help_url
end
local _icon_url = "ui://Info_MJ_FuZhou/icon"
function M:GetIconUrl()
return _icon_url
return _icon_url
end
local _icon_url1 = "ui://Info_MJ_FuZhou/icon1"
function M:GetIconUrl1()
return _icon_url1
return _icon_url1
end
local _play_list = {}
function M:GetPlayList()
return _play_list
return _play_list
end
function M:SelectedConfigData()
local _config = self._config
local round = _config:GetController("round").selectedIndex + 1
local people = _config:GetController("peopleNum").selectedIndex + 2
local _config = self._config
local round = _config:GetController("round").selectedIndex + 1
local people = _config:GetController("peopleNum").selectedIndex + 2
local zimo = _config:GetController("ZiMo").selectedIndex
local shaozhuang = _config:GetController("ShaoZhuang").selectedIndex
local fengding = _config:GetController("FengDing").selectedIndex
local Tiandihu = _config:GetController("TianDiHu").selectedIndex
local zikechengshun = _config:GetController("ZiKeChengShun").selectedIndex
local zimo = _config:GetController("ZiMo").selectedIndex
local shaozhuang = _config:GetController("ShaoZhuang").selectedIndex
local fengding = _config:GetController("FengDing").selectedIndex
local Tiandihu = _config:GetController("TianDiHu").selectedIndex
local zikechengshun = _config:GetController("ZiKeChengShun").selectedIndex
local jiangma = Mathf.Round(_config:GetChild("n92").value)
local jiangma = Mathf.Round(_config:GetChild("n92").value)
local xi_pai = false
local xi_paifen = 0
if _config:GetChild("xipai") then
xi_pai = _config:GetChild("xipai").selected
end
local xi_pai = false
local xi_paifen = 0
if _config:GetChild("xipai") then
xi_pai = _config:GetChild("xipai").selected
end
------
local _data = {}
_data["opt"] = round
_data["maxPlayers"] = people
------
local _data = {}
_data["opt"] = round
_data["maxPlayers"] = people
_data["zimo"] = zimo
_data["shaozhuang"] = shaozhuang
_data["fengding"] = fengding
_data["Tiandihu"] = Tiandihu
_data["zikechengshun"] = zikechengshun
_data["zimo"] = zimo
_data["shaozhuang"] = shaozhuang
_data["fengding"] = fengding
_data["Tiandihu"] = Tiandihu
_data["zikechengshun"] = zikechengshun
_data["jiangma"] = jiangma
_data['xi_pai'] = xi_pai
_data["jiangma"] = jiangma
_data['xi_pai'] = xi_pai
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
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 * 1000
_data['an_chou_score'] = an_chou_score * 1000
_data['xi_pai_score'] = xi_pai_score * 1000
_data['an_chou_score'] = an_chou_score * 1000
return _data
return _data
end
function M:LoadConfigData(data)
--printlog("加载房间配置=========>>>")
--pt(data)
local _config = self._config
_config:GetController("round").selectedIndex = data.opt - 1
_config:GetController("play_list").selectedIndex = data.maxPlayers - 2
--printlog("加载房间配置=========>>>")
--pt(data)
local _config = self._config
_config:GetController("round").selectedIndex = data.opt - 1
_config:GetController("play_list").selectedIndex = data.maxPlayers - 2
_config:GetController("fengding").selectedIndex = data.fengding
_config:GetController("fengding").selectedIndex = data.fengding
_config:GetController("wanfa").selectedIndex = data.wanfa
_config:GetChild("btn_qidui").selected = data.qiduijiafan
_config:GetChild("btn_shoudailong").selected = data.shoudailongjiafan
_config:GetChild("btn_loudilong").selected = data.loudilongjiafan
_config:GetChild("btn_bunengchi").selected = data.bunengchi
_config:GetController("wanfa").selectedIndex = data.wanfa
_config:GetChild("btn_qidui").selected = data.qiduijiafan
_config:GetChild("btn_shoudailong").selected = data.shoudailongjiafan
_config:GetChild("btn_loudilong").selected = data.loudilongjiafan
_config:GetChild("btn_bunengchi").selected = data.bunengchi
_config:GetChild("btn_doudizhu").selected = data.doudizhu
_config:GetChild("btn_doudizhufanbei").selected = data.doudizhufanbei
_config:GetChild("btn_doudizhu").selected = data.doudizhu
_config:GetChild("btn_doudizhufanbei").selected = data.doudizhufanbei
if _config:GetChild("xipai") then
_config:GetChild("xipai").selected = data.xi_pai
end
if _config:GetChild("xipai") then
_config:GetChild("xipai").selected = data.xi_pai
end
if oldGameVersion == 2 then
self.xipaiValueText.text = data.xi_pai_score / 1000
self.xipaiValue = data.xi_pai_score / 1000
if oldGameVersion == 2 then
self.xipaiValueText.text = data.xi_pai_score / 1000
self.xipaiValue = data.xi_pai_score / 1000
self.anchouValueText.text = data.an_chou_score / 1000
self.anchouValue = data.an_chou_score / 1000
end
self.anchouValueText.text = data.an_chou_score / 1000
self.anchouValue = data.an_chou_score / 1000
end
end
function M:LoadConfigToDetail(data)
-- local configData = json.decode(data)
-- local returnString = string.format("人数%s人,%s马%s%s%s%s%s%s,%s", configData.maxPlayers,
-- configData.jiangma and string.format("奖%d", configData.jiangma) or "不奖", configData.shaozhuang and ",有烧庄" or "",
-- configData.zuoma and ",庄家坐马" or "",
-- configData.zimo and ",只能自摸" or ",自摸可点炮",
-- configData.tuoguan and string.format(",%d秒后自动托管", configData.tuoguan_active_time) or "不能托管",
-- configData.jiahu and ",可以假胡" or "", configData.fengding and ",封顶20炮" or "",
-- configData.zhuanwan and "大转弯" or "小转弯")
return data
local configData = json.decode(data)
local returnString = string.format("人数%s人", configData.maxPlayers)
if configData.jiangma then
returnString = string.format("%s,%s马", returnString,
configData.jiangma == 0 and "不奖" or string.format("奖%s", configData.jiangma))
end
if configData.zimo then
returnString = string.format("%s,%s", returnString, configData.zimo == 0 and "可点炮,可自摸" or "必须自摸")
end
if configData.shaozhuang then
returnString = string.format("%s%s", returnString, configData.shaozhuang == 0 and "" or ",有烧庄")
end
if configData.fengding then
local matString = "%s,%s"
if configData.fengding == 0 then
returnString = string.format(matString, returnString, ",封顶20炮")
end
end
if configData.TianDiHu then
returnString = string.format("%s%s", returnString, configData.TianDiHu == 0 and ",有天地胡" or "")
end
if configData.zikechengshun then
returnString = string.format("%s%s", returnString, configData.zikechengshun == 0 and ",有字可成顺" or "")
end
return returnString
end
return M

View File

@ -12,7 +12,7 @@ function EXGameInfo.new(blur_view)
end
function M:FillData()
self._maxPlayer = 4 -- 默认玩家人数
self._maxPlayer = 4 -- 默认玩家人数
self._roundChoice = 3 -- 回合选项数
self._config = UIPackage.CreateObjectFromURL("ui://Info_MJ_JinXi/Label_Detail_83")
@ -186,12 +186,37 @@ end
function M:LoadConfigToDetail(data)
local configData = json.decode(data)
local returnString = string.format("人数%s人,%s马,%s,%s,%s%s,%s", configData.maxPlayers,
configData.jiangma and string.format("奖%d", configData.jiangma) or "不奖",
configData.zimo and "只能自摸" or "自摸可点炮",
configData.tuoguan and string.format("%d秒后自动托管", configData.tuoguan_active_time) or "不能托管",
configData.sanjingjiangma and "三精算奖马" or "三精不算奖马", configData.fengding and ",封顶10炮" or "",
configData.zikechengshun and "字可成顺" or "字不可成顺")
local returnString = string.format("人数%s人", configData.maxPlayers)
if configData.jiangma then
returnString = string.format("%s,%s马", returnString,
configData.jiangma == 0 and "不奖" or string.format("奖%s", configData.jiangma))
end
if configData.zimo then
returnString = string.format("%s,%s", returnString, configData.zimo == 0 and "可点炮,可自摸" or "必须自摸")
end
if configData.shaozhuang then
returnString = string.format("%s%s", returnString, configData.shaozhuang == 0 and "" or ",有烧庄")
end
if configData.fengding then
local matString = "%s,%s"
if configData.fengding == 0 then
returnString = string.format(matString, returnString, "封顶20炮")
elseif configData.fengding == 1 then
returnString = string.format(matString, returnString, "封顶10炮")
end
end
if configData.TianDiHu then
returnString = string.format("%s%s", returnString, configData.TianDiHu == 0 and ",有天地胡" or "")
end
if configData.zikechengshun then
returnString = string.format("%s%s", returnString, configData.zikechengshun == 0 and ",有字可成顺" or "")
end
if configData.gangjiangma then
returnString = string.format("%s%s", returnString, configData.gangjiangma == 0 and ",杠算奖马" or "")
end
if configData.sanjingjiangma then
returnString = string.format("%s%s", returnString, configData.sanjingjiangma == 0 and ",三精算奖马" or "")
end
return returnString
end

View File

@ -222,7 +222,6 @@ function M:UpdateFzList(fz, index, show_card)
show_card = show_card or nil
local outCard = self._view_FZList:AddItemFromPool()
if fz.type == FZType.Chi then
for i = 1, 3 do
local FZCard = outCard:GetChild(string.format("Comp_Card%d", i))
@ -230,6 +229,8 @@ function M:UpdateFzList(fz, index, show_card)
end
else
local ctr_Four = outCard:GetController("isFour")
outCard.data = fz.card
for i = 1, 3 do
local FZCard = outCard:GetChild(string.format("Comp_Card%d", i))
self:fillCard2(FZCard, FZame, fz.card)
@ -243,7 +244,15 @@ function M:UpdateFzList(fz, index, show_card)
if fz.type == FZType.Gang_An then
self:fillCard2(FZCard, FZame, '00')
elseif fz.type == FZType.Gang_Peng then
self._view_FZList:RemoveChildAt(self._view_FZList.numItems - 2)
for i = 1, self._view_FZList.numItems do
print("lingmengpenggang", i, self._view_FZList:GetChildAt(i - 1).data, fz.card)
if self._view_FZList:GetChildAt(i - 1).data and self._view_FZList:GetChildAt(i - 1).data == fz.card then
print("lingmenggang1")
self._view_FZList:RemoveChildrenToPool(i - 1, i - 1)
print("lingmenggang2")
return
end
end
end
end
end

View File

@ -39,9 +39,16 @@ function M:init()
self._view_getCard = self._view:GetChild('Btn_HandCard')
self._view_FZTips = self._view:GetChild('Comp_FZTips')
self._area_allDown = self._view:GetChild('area_allDown')
self._ctr_seletedGet = self._view:GetController('seletedGetCard')
self._ctr_tip = self._view:GetController('tip')
self._area_allDown.onClick:Set(function()
self._view_handCardList.selectedIndex = -1
self._click_index = self._view_handCardList.selectedIndex
self._ctr_seletedGet.selectedIndex = 1
end)
end
function M:ShowHuTip(card_list)
@ -164,7 +171,7 @@ function M:__OnClickHandCard(context)
self._mainView:OutCard(card.card_item)
self._view_handCardList.selectedIndex = -1
self._click_index = self._view_handCardList.selectedIndex
self._ctr_seletedGet.selectedIndex = 0
self._ctr_seletedGet.selectedIndex = 1
end
self._click_index = self._view_handCardList.selectedIndex
end
@ -178,7 +185,7 @@ function M:__OnClickGetCard(context)
self._mainView:OutCard(card.card_item)
self._view_handCardList.selectedIndex = -1
self._click_index = self._view_handCardList.selectedIndex
self._ctr_seletedGet.selectedIndex = 0
self._ctr_seletedGet.selectedIndex = 1
end
end
@ -228,7 +235,7 @@ function M:Clear()
-- self._view_FZTips:RemoveChildren(0, -1, true)
self._ctr_seletedGet.selectedIndex = 0
self._ctr_seletedGet.selectedIndex = 1
end
return M