diff --git a/lua_probject/extend_project/extend/majiang/hechi/EXPlayBackView.lua b/lua_probject/extend_project/extend/majiang/hechi/EXPlayBackView.lua index 861d7d85..e359f59b 100644 --- a/lua_probject/extend_project/extend/majiang/hechi/EXPlayBackView.lua +++ b/lua_probject/extend_project/extend/majiang/hechi/EXPlayBackView.lua @@ -40,8 +40,34 @@ function M:InitView(url) self._cmdmap[Record_Event.Evt_Niao] = self.CmdNiao self._cmdmap[Record_Event.Evt_Piao] = self.CmdPiao self._cmdmap[Record_Event.Evt_Result] = self.CmdResult + self._cmdmap[Record_Event.Evt_FizTip] = self.CmdFizTip + + self._cmdmap[Record_Event.Evt_KaiGang] = self.CmdKaiGang + self._cmdmap[Record_Event.Evt_QiShou] = self.CmdQiShou + self._cmdmap[Record_Event.Evt_GangScore] = self.CmdGangScore +end +-- 处理杠分结算(通常只涉及UI飘字,不改变手牌数据) +function M:CmdGangScore(cmd, index) + local data = self:CopyLastStep(index) + data.cmd = cmd.cmd + -- 保存结算数据,以便在 ShowStep 中显示飘分特效 + data.gang_score_data = cmd.data +end +-- 处理开杠展示(通常不改变手牌数据,只改变UI展示,所以复制状态即可) +function M:CmdKaiGang(cmd, index) + local data = self:CopyLastStep(index) + data.cmd = cmd.cmd + data.left_card = cmd.data.left_count + data.card = cmd.data.info.cardList end +function M:CmdQiShou(cmd, index) + local data = self:CopyLastStep(index) + data.cmd = cmd.cmd + data.qs_seat = cmd.seat + data.qs_data = cmd.data.data + -- data.qs_card = cmd.data.card +end function M:FillRoomData(data) MJPlayBackView.FillRoomData(self) if self._win_pic then self._win_pic:Dispose() end @@ -96,10 +122,17 @@ function M:ShowStep(index) p.piao_niao = step.player_card_data[i].piao_niao local head_info = self._player_info[self:GetPos(i)] if p.piao_niao and p.piao_niao > 0 then - head_info._view:GetChild("mask_piao").title = "飘分 " .. p.piao_niao - head_info._view:GetController("piao_niao").selectedIndex = 1 + if head_info._view:GetChild("mask_piao") then + head_info._view:GetChild("mask_piao").title = "飘分 " .. p.piao_niao + end + if head_info._view:GetController("piao_niao") then + head_info._view:GetController("piao_niao").selectedIndex = 1 + end + else - head_info._view:GetController("piao_niao").selectedIndex = 0 + if head_info._view:GetController("piao_niao") then + head_info._view:GetController("piao_niao").selectedIndex = 0 + end end if step.cmd == Record_Event.Evt_OutCard and i == step.last_out_seat then local card = p.outcard_list[#p.outcard_list] @@ -151,13 +184,13 @@ function M:ShowStep(index) self.result._view.width = GRoot.inst.width self.result._view.height = GRoot.inst.height self.result._view:GetChild("btn_confirm").visible = false + self._anchor:AddChild(self.result._view) self.result._view.x = self._anchor.x * -1 self.result._view.y = self._anchor.y * -1 else self.result._view.visible = true end - -- self.result._view:Center() else if self.result then self.result._view.visible = false @@ -193,6 +226,7 @@ function M:GenerateAllStepData(data) for i = 1, #cmdList do local tem = cmdList[i] + printlog("ss--ss",tem.cmd, i) self._cmdmap[tem.cmd](self, tem, i) end end @@ -221,14 +255,33 @@ function M:CmdAction(cmd, index) data.cmd = cmd.cmd data.last_out_seat = 0 data.current_out_seat = cmd.seat - local u = data.player_card_data[cmd.seat] - for i = 1, #cmd.data.opcard do - list_remove(u.card_list, cmd.data.opcard[i]) - end local fz = {} fz.type = cmd.data.type fz.card = cmd.data.card fz.opcard = cmd.data.opcard + fz.kaigang = cmd.data.opengang + + local u = data.player_card_data[cmd.seat] + + for i = 1, #fz.opcard do + list_remove(u.card_list, fz.opcard[i]) + end + + if fz.type == 1 then + fz.type = FZType.Chi + fz.opcard[#fz.opcard + 1] = fz.card + elseif fz.type ==2 then + fz.type = FZType.Peng + elseif fz.type == 3 or fz.type == 4 then + if #fz.opcard == 1 then + fz.type = FZType.Gang_Peng + elseif #fz.opcard == 3 then + fz.type = FZType.Gang + elseif #fz.opcard == 4 then + fz.type = FZType.Gang_An + end + end + local uf = data.player_card_data[cmd.data.from_seat] if fz.type ~= FZType.Gang_An and fz.type ~= FZType.Gang_Peng then table.remove(uf.outcard_list, #uf.outcard_list) @@ -267,6 +320,11 @@ function M:CmdResult(cmd, index) data.cmd = cmd.cmd data.result_data = cmd.data end +-- 处理提示类命令,复制上一步状态 +function M:CmdFizTip(cmd, index) + local data = self:CopyLastStep(index) + data.cmd = cmd.cmd +end function M:CopyLastStep(index) local step = {} diff --git a/lua_probject/extend_project/extend/majiang/hechi/RecordEvent.lua b/lua_probject/extend_project/extend/majiang/hechi/RecordEvent.lua index 09748550..94c8ca0d 100644 --- a/lua_probject/extend_project/extend/majiang/hechi/RecordEvent.lua +++ b/lua_probject/extend_project/extend/majiang/hechi/RecordEvent.lua @@ -6,6 +6,10 @@ local Record_Event = { Evt_Niao = "Niao", Evt_Piao = "PiaoNiao", Evt_Result = "Result", + Evt_FizTip = "FizTip", + Evt_KaiGang = "KaiGang", + Evt_QiShou = "QiShou", + Evt_GangScore = "GangScore", } return Record_Event \ No newline at end of file diff --git a/lua_probject/extend_project/extend/zipai/hechi/EXPlayBackView.lua b/lua_probject/extend_project/extend/zipai/hechi/EXPlayBackView.lua index 8453ce98..95953174 100644 --- a/lua_probject/extend_project/extend/zipai/hechi/EXPlayBackView.lua +++ b/lua_probject/extend_project/extend/zipai/hechi/EXPlayBackView.lua @@ -98,8 +98,60 @@ function M:InitView(url) self._cmdmap[Record_Event.Evt_Win] = self.CmdWin self._cmdmap[Record_Event.Evt_ChangePaiXing] = self.CmdChangePaiXing self._cmdmap[Record_Event.Evt_result] = self.onResult + + local btn_safe = self._view:GetChild('btn_safe') + self.safe_arrow1 = btn_safe:GetChild("arrow1") + self.safe_arrow2 = btn_safe:GetChild("arrow2") + btn_safe.onClick:Set( + function() + self:BtnsSafe() + end + ) + local safe_close = self._view:GetChild('safe_close') + safe_close.onClick:Set( + function() + self:BtnsSafe() + end + ) + self:BtnsSafe() + end +function M:BtnsSafe() + local btn_temp1 = self._view:GetChild("btn_back_lobby") + local btn_temp2 = self._view:GetChild("Btn_jiesan_lobby") + local btn_temp3 = self._view:GetChild("btn_leave_lobby") + local btn_temp4 = self._view:GetChild("btn_setting") + local safe_close = self._view:GetChild('safe_close') + local btn_rule = self._view:GetChild('btn_rule') + local gcm_chat = self._view:GetChild('gcm_chat') + + btn_temp1.visible = not btn_temp1.visible + btn_temp2.visible = not btn_temp2.visible + btn_temp3.visible = not btn_temp3.visible + btn_temp4.visible = not btn_temp4.visible + safe_close.visible = not safe_close.visible + btn_rule.visible = not btn_rule.visible + gcm_chat.visible = not gcm_chat.visible + + local safe = self._view:GetChild("safe_bg") + safe.visible = not safe.visible + + if safe.visible then + self.safe_arrow1.visible = false + self.safe_arrow2.visible = true + else + self.safe_arrow1.visible = true + self.safe_arrow2.visible = false + end + local text_playName = self._view:GetChild('text_playName') + if text_playName then + text_playName.text = "放炮罚" + end +end + + + function M:NewPlayerPokerInfoView(view, index) if index == 1 then return PlayerSelfCardInfoView.new(view, self) diff --git a/lua_probject/extend_project/extend/zipai/hechi/PlayerCardInfoView.lua b/lua_probject/extend_project/extend/zipai/hechi/PlayerCardInfoView.lua index 93083b03..a32c8ba8 100644 --- a/lua_probject/extend_project/extend/zipai/hechi/PlayerCardInfoView.lua +++ b/lua_probject/extend_project/extend/zipai/hechi/PlayerCardInfoView.lua @@ -12,7 +12,16 @@ function M.new(view,mainView) return self end - +--牌位置 +function M:GetHandCardPos(cards_view, cards) + local x, y = 0, 0 + local card_width = 75 -- 改小间距,让牌更紧凑 + local middle_x = self._area_handcard_list.width / 2 + local start_x = middle_x - (cards / 2 * card_width) + x = start_x + (card_width) * (cards_view.index_X - 1) + y = 0 - (75 * cards_view.index_Y) + return Vector2.New(x, y) +end function M:UpdateFzList( fz_list ,ispaly,seat) self._area_fz_list:RemoveChildren(0,-1,true) diff --git a/lua_probject/extend_project/extend/zipai/hechi/RunBeard_ResultView.lua b/lua_probject/extend_project/extend/zipai/hechi/RunBeard_ResultView.lua index 4319b34e..ebeebaff 100644 --- a/lua_probject/extend_project/extend/zipai/hechi/RunBeard_ResultView.lua +++ b/lua_probject/extend_project/extend/zipai/hechi/RunBeard_ResultView.lua @@ -346,11 +346,11 @@ function M:FillItemData(room, data, item) local dipais = UIPackage.CreateObjectFromURL('ui://Extend_Poker_HeChi/FullName') dipais:GetChild('n0').icon = 'ui://Extend_Poker_HeChi/hu_' .. win_data.mingtang[i].mingtang if win_data.mingtang[i].type == 1 and win_data.mingtang[i].score ~= 0 then - dipais:GetChild('n2').text = win_data.mingtang[i].score .. ' 番' + dipais:GetChild('n2').text = ' x2' elseif win_data.mingtang[i].type == 2 and win_data.mingtang[i].score ~= 0 then - dipais:GetChild('n2').text = win_data.mingtang[i].score .. ' 囤' + dipais:GetChild('n2').text = ' x2' elseif win_data.mingtang[i].type == 3 and win_data.mingtang[i].score ~= 0 then - dipais:GetChild('n2').text = win_data.mingtang[i].score .. ' 倍' + dipais:GetChild('n2').text = ' x2' end fullname_list:AddChild(dipais) end diff --git a/lua_probject/extend_project/extend/zipai/hechi/main/ZPPlayerCardInfoView.lua b/lua_probject/extend_project/extend/zipai/hechi/main/ZPPlayerCardInfoView.lua index dfab2634..a3c17b17 100644 --- a/lua_probject/extend_project/extend/zipai/hechi/main/ZPPlayerCardInfoView.lua +++ b/lua_probject/extend_project/extend/zipai/hechi/main/ZPPlayerCardInfoView.lua @@ -35,11 +35,11 @@ function M.new(view,mainView) self._view = view self._mainView = mainView self:init() + return self end function M:init() - local view = self._view self._room = DataManager.CurrenRoom self._area_outcard_list = view:GetChild("area_outcard_list") @@ -227,14 +227,14 @@ function M:UpdateHandCards( list ) end --牌位置 -function M:GetHandCardPos(cards_view,cards) - local x,y = 0,0 - local card_width = 42 -- 牌的宽度 +function M:GetHandCardPos(cards_view, cards) + local x, y = 0, 0 + local card_width = 60 -- 改小间距,让牌更紧凑 local middle_x = self._area_handcard_list.width / 2 - local start_x = middle_x - (cards / 2 * (card_width)) - x = start_x + (card_width) * (cards_view.index_X - 1) - y = 0 - (42*cards_view.index_Y) - return Vector2.New(x,y) + local start_x = middle_x - (cards / 2 * card_width) + x = start_x + (card_width) * (cards_view.index_X - 1) + y = 150 - (60 * cards_view.index_Y) + return Vector2.New(x, y) end diff --git a/wb_new_ui/.objs/metas/lkq9ne9s/peuq8b.info b/wb_new_ui/.objs/metas/lkq9ne9s/peuq8b.info index 74948d59..0c21f596 100644 --- a/wb_new_ui/.objs/metas/lkq9ne9s/peuq8b.info +++ b/wb_new_ui/.objs/metas/lkq9ne9s/peuq8b.info @@ -25,9 +25,6 @@ "n170_o49p": { "hidden": true }, - "n183_yfzf": { - "collapsed": true - }, "n35_k3io": { "hidden": true } diff --git a/wb_new_ui/.objs/workspace.json b/wb_new_ui/.objs/workspace.json index 9535f7d9..5ca01aef 100644 --- a/wb_new_ui/.objs/workspace.json +++ b/wb_new_ui/.objs/workspace.json @@ -6,6 +6,12 @@ "ui://hrxsdiixla4e2c", "ui://8wph7p8nyffnhr", "ui://mzvoz9udm1i335", + "ui://8wph7p8nyffnmy", + "ui://8wph7p8nyffn8s", + "ui://v0j9abjygq7med", + "ui://27vd145b7jqkcdl", + "ui://v0j9abjygq7m8f", + "ui://lkq9ne9ssyh3rk", "ui://mzvoz9udm1i33c", "ui://1utjt0r2ufu92i", "ui://1utjt0r2ufu92t", @@ -15,6 +21,8 @@ "ui://v0j9abjygq7mgp", "ui://lkq9ne9speuqc6", "ui://lkq9ne9speuq8b", + "ui://lkq9ne9speuq5a", + "ui://lkq9ne9speuq6p", "ui://lkq9ne9speuq8r", "ui://lkq9ne9speuq8w", "ui://lkq9ne9ssyh3rj", @@ -34,9 +42,21 @@ "test.device": "1080p Phone", "canvasColor": 10066329, "auxline2": true, - "doc.activeDoc": "ui://mzvoz9udm1i335", + "doc.activeDoc": "ui://8wph7p8nyffnmy", "libview.twoColumn": false, "libview.expandedNodes": [ + "27vd145b", + "/", + "27vd145b", + "/images/", + "egnzysm7", + "/", + "egnzysm7", + "/component/", + "egnzysm7", + "/component/clearing/", + "egnzysm7", + "/component/clearing/image/", "1utjt0r2", "/", "1utjt0r2", @@ -50,9 +70,17 @@ "mzvoz9ud", "/component/", "mzvoz9ud", + "/component/EPCDWHZMui/", + "mzvoz9ud", "/component/clearing/", "mzvoz9ud", "/component/clearing/image/", + "mzvoz9ud", + "/component/clearing/images/", + "8wph7p8n", + "/", + "8wph7p8n", + "/image/", "lkq9ne9s", "/", "lkq9ne9s", @@ -62,6 +90,8 @@ "lkq9ne9s", "/component/Main/", "lkq9ne9s", + "/component/cards/", + "lkq9ne9s", "/image/", "lkq9ne9s", "/image/MRBMui/", diff --git a/wb_new_ui/assets/Common/images/Frame 1347.png b/wb_new_ui/assets/Common/images/Frame 1347.png new file mode 100644 index 00000000..6b43a4d1 Binary files /dev/null and b/wb_new_ui/assets/Common/images/Frame 1347.png differ diff --git a/wb_new_ui/assets/Common/images/Frame 1348.png b/wb_new_ui/assets/Common/images/Frame 1348.png new file mode 100644 index 00000000..d92314d1 Binary files /dev/null and b/wb_new_ui/assets/Common/images/Frame 1348.png differ diff --git a/wb_new_ui/assets/Common/package.xml b/wb_new_ui/assets/Common/package.xml index bb16e86c..ae838649 100644 --- a/wb_new_ui/assets/Common/package.xml +++ b/wb_new_ui/assets/Common/package.xml @@ -1642,6 +1642,8 @@ + + diff --git a/wb_new_ui/assets/Extend_Poker_HeChi/component/EPCDWHZMui/Frame 12731.png b/wb_new_ui/assets/Extend_Poker_HeChi/component/EPCDWHZMui/Frame 12731.png new file mode 100644 index 00000000..141f4961 Binary files /dev/null and b/wb_new_ui/assets/Extend_Poker_HeChi/component/EPCDWHZMui/Frame 12731.png differ diff --git a/wb_new_ui/assets/Extend_Poker_HeChi/component/clearing/clearing.xml b/wb_new_ui/assets/Extend_Poker_HeChi/component/clearing/clearing.xml index 69608ab8..d66d760e 100644 --- a/wb_new_ui/assets/Extend_Poker_HeChi/component/clearing/clearing.xml +++ b/wb_new_ui/assets/Extend_Poker_HeChi/component/clearing/clearing.xml @@ -191,7 +191,7 @@ -