master
FPGA 2025-06-05 13:39:22 +08:00
parent 21a84b1165
commit cccad8b51c
76 changed files with 1708 additions and 521 deletions

View File

@ -270,7 +270,8 @@ function M:InitBigResult(room, fontsize)
local isWin = false
for i = 1, #self._resultInfo.player_list do
local player_info = self._resultInfo.player_list[i]
printlog("player_info:")
pt(player_info)
local total_score = room:GetTotalScore(player_info.score)
local hp_nonnegative = room:checkHpNonnegative()
player_info.total_score = 0

View File

@ -584,6 +584,7 @@ function M:OneventResult1(evt_data)
DataManager.CurrenRoom.Over = true
ControllerManager.SetGameNetClient(nil,true)
local total_result = evt_data.total_result
local result = evt_data.result
self._cacheEvent:Enqueue(function()
DispatchEvent(self._dispatcher,FanPaoFa_GameEvent.ZPResult2, result, total_result, over);

View File

@ -35,7 +35,7 @@ function M:getCardItem(card_1, card_2)
if self._room.change_card_display ~= nil then
return card_1 .. self._room.change_card_display .. card_2
else
return card_1 .. '2_' .. card_2
return card_1 .. '6_' .. card_2
end
end
function M:InitView(url)
@ -213,18 +213,6 @@ function M:EventInit()
info:MarkBank(p.seat == _room.banker_seat)
info:Ready(false)
--info:UpdatePiao(-1)
info._view:GetController('huxi').selectedIndex = 1
info._view:GetChild('huxi').text = p.hu_xi
info._view:GetController('zhanji').selectedIndex = 0
if _room.hpOnOff == 1 or _room:checkHpNonnegative() then
if p.total_hp == nil then
p.total_hp = 0
end
info._view:GetController('zhanji').selectedIndex = 1
info._view:GetChild('tex_jifen').text = d2ad(p.total_hp)
info._view:GetChild('tex_jifen_text').text = "总胡息"
end
end
end
@ -270,16 +258,17 @@ function M:EventInit()
info:Ready(false)
info._view:GetController('huxi').selectedIndex = 1
info._view:GetChild('huxi').text = p.hu_xi
info._view:GetController('zhanji').selectedIndex = 0
if _room.hpOnOff == 1 or _room:checkHpNonnegative() then
info._view:GetController('zhanji').selectedIndex = 1
info._view:GetChild('tex_jifen').text = p.total_score --d2ad(p.total_hp)
info._view:GetChild('tex_jifen_text').text = "总胡息"
--[[if _room.hpOnOff == 1 or _room:checkHpNonnegative() then
if p.total_hp == nil then
p.total_hp = 0
end
info._view:GetController('zhanji').selectedIndex = 1
info._view:GetChild('tex_jifen').text = d2ad(p.total_hp)
info._view:GetChild('tex_jifen_text').text = "总胡息"
end
end]]
end
local card_info = self._player_card_info[1]
card_info:UpdateIsOnClick(false)
@ -538,6 +527,7 @@ function M:EventInit()
function()
coroutine.wait(0.5)
-- if self._clearingView._is_destroy then return end
self._clearingView:Show()
if _room.curren_round ~= _room.room_config.round then
for i = 1, #data do
@ -545,18 +535,11 @@ function M:EventInit()
local card_info = self._player_card_info[self:GetPos(p.seat)]
local info = self._player_info[self:GetPos(p.seat)]
p.total_score = data[i].total_score
p.cur_hp = data[i]['cur_hp'] or 0
p.total_hp = data[i]['total_hp'] or 0
if data[i]['hp_info'] then
p.cur_hp = data[i].hp_info.cur_hp
p.total_hp = data[i].hp_info.total_hp == nil and 0 or data[i].hp_info.total_hp
info._view:GetController('zhanji').selectedIndex = 0
if _room.hpOnOff == 1 or _room:checkHpNonnegative() then
info._view:GetController('zhanji').selectedIndex = 1
info._view:GetChild('tex_jifen').text = d2ad(p.total_hp)
info._view:GetChild('tex_jifen_text').text = "总胡息"
end
end
info._view:GetController('zhanji').selectedIndex = 1
info._view:GetChild('tex_jifen').text =p.total_score
info._view:GetChild('tex_jifen_text').text = "总胡息"
card_info:Clear()
info:UpdateScore()
@ -604,6 +587,7 @@ function M:EventInit()
local total_result = arg[2]
local result = arg[1]
local over = arg[3]
local data = result.info_list
local x = {}
self._hu_tip:FillData(x)
self:__CloseTip()
@ -669,13 +653,18 @@ function M:__FangziTip(tip, _uid,fptype)
local count = #_tlist
for k = 1, #_tlist do
local td = tip.tip_map_type[_tlist[k]][1]
if td.type == 8 then
tip_hu = true
tip_id = td.id
--自动放炮
--[[ if td.weight==7 then
_gamectr:SendAction(tip_id)
_chipeng_tip:Dispose()
self._chipeng_tip = nil
return
end]]
end
end
for k = 1, #_tlist do
@ -1099,15 +1088,12 @@ function M:ReloadRoom()
local info = self._player_info[self:GetPos(p.seat)]
info._view:GetController('huxi').selectedIndex = 1
info._view:GetChild('huxi').text = p.hu_xi
info._view:GetController('zhanji').selectedIndex = 0
if room.hpOnOff == 1 or room:checkHpNonnegative() then
if p.total_hp == nil then
p.total_hp = 0
end
info._view:GetController('zhanji').selectedIndex = 1
info._view:GetChild('tex_jifen').text = d2ad(p.total_hp)
info._view:GetChild('tex_jifen').text = p.total_score -- d2ad(p.total_hp)
info._view:GetChild('tex_jifen_text').text = "总胡息"
end
end
local card_info = self._player_card_info[self:GetPos(p.seat)]

View File

@ -188,8 +188,9 @@ function M:AddClearItem(room, data, total_data, over)
local list_view2 = self._view:GetChild('player_list_2')
printlog("result32")
if data ~= nil and data.liuju == true then
self:FillLiuJuItemData(room, data)
self:FillLiuJuItemData(room, data,list_view1)
if over == 1 then
printlog("result32222222ss")
self:FillItemData2(room, total_data, list_view2)
end
else
@ -209,10 +210,16 @@ end
function M:GetPos(room, seat)
return ViewUtil.GetPos(room.self_player.seat, seat, room.room_config.people_num)
end
function M:FillLiuJuItemData(room, data)
function M:FillLiuJuItemData(room, data,item)
printlog("FillLiuJuItemData")
local qipai_list = self._view:GetChild('qipai_listl')
local _dipaiC = self._view:GetController('qipai')
pt(data)
qipai_list:RemoveChildrenToPool()
printlog("FillLiuJuItemData1")
if data.throw_card ~= nil and #data.throw_card > 0 then
_dipaiC.selectedIndex = 1
local hand_card = PendulumRule.GetHandCard(data.throw_card, 3)
@ -225,10 +232,21 @@ function M:FillLiuJuItemData(room, data)
else
_dipaiC.selectedIndex = 0
end
printlog("FillLiuJuItemData2")
for i = 1, #data.info_list do
if data.info_list[i].seat == room.banker_seat then
local p = room:GetPlayerBySeat(data.info_list[i].seat)
self._view:GetChild('WinerName').text = p.self_user.nick_name
self._view:GetChild("WinerID").text = "ID:"..p.self_user.account_id
local btn_head = self._view:GetChild('btn_head')
ImageLoad.Load(p.self_user.head_url, btn_head._iconObject)
end
if data.info_list[i].seat ~= room.self_player.seat and #data.info_list[i].hand_card > 0 then
local card_list
if #data.info_list == 2 then
--[[if #data.info_list == 2 then
card_list = self._view:GetChild('card_list_2')
else
if self:GetPos(room, data.info_list[i].seat) == 2 then
@ -236,19 +254,22 @@ function M:FillLiuJuItemData(room, data)
else
card_list = self._view:GetChild('card_list_3')
end
end
end]]
card_list = self._view:GetChild('card_list_2')
printlog("FillLiuJuItemData3")
card_list:RemoveChildrenToPool()
pt(data.info_list[i].opCardList)
for k = 1, #data.info_list[i].opCardList do
local fztype = data.info_list[i].opCardList[k].type
if fztype == RB_FZType.Kan then
local cards = card_list:AddItemFromPool()
for j = 1, 3 do
cards:GetChild('card_' .. j).icon =
self:getCardItem('ui://Main_RunBeard/202_', data.info_list[i].opCardList[k].card1)
cards:GetChild('card_' .. j).icon = self:getCardItem('ui://Main_RunBeard/202_', data.info_list[i].opCardList[k].card1)
end
end
end
printlog("FillLiuJuItemData4")
local hand_card = PendulumRule.GetHandCard(data.info_list[i].hand_card, 3)
for k = 1, #hand_card do
local item = card_list:AddItemFromPool()
@ -256,6 +277,97 @@ function M:FillLiuJuItemData(room, data)
item:GetChild('card_' .. (j)).icon = self:getCardItem('ui://Main_RunBeard/202_', hand_card[k][j])
end
end
printlog("FillLiuJuItemData5")
end
end
item:RemoveChildrenToPool()
local info_list = data.info_list
for i = 1, #info_list do
if info_list[i].is_win == false then
local player = item:AddItemFromPool()
local p = room:GetPlayerBySeat(info_list[i].seat)
if p.self_user.account_id == room.owner_id then
player:GetController('owner').selectedIndex = 1
end
if p.seat == room.banker_seat then
player:GetController('bank').selectedIndex = 1
end
local btn_head = player:GetChild('btn_head')
ImageLoad.Load(p.self_user.head_url, btn_head._iconObject)
player:GetChild('playerName').text = p.self_user.nick_name
if info_list[i].round_score >= 0 then
player:GetChild('score').text = '+' .. info_list[i].round_score
player:GetChild('score').grayed = false
else
player:GetChild('score').text = info_list[i].round_score
player:GetChild('score').grayed = true
end
local hp_info = info_list[i].hp_info
player:GetChild("txt_userid").text = p.self_user.account_id
if (hp_info ~= nil and room.hpOnOff == 1 or room:checkHpNonnegative()) then
local isupper_limit = hp_info.upper_limit -- // 输赢是否已达上限
if (isupper_limit) then
player:GetChild('yidashangxian').text = '已达上限'
else
player:GetChild('yidashangxian').text = ''
end
end
local card_list = player:GetChild('card_list')
card_list:RemoveChildrenToPool()
for k = 1, #info_list[i].opCardList do
local fztype = info_list[i].opCardList[k].type
if fztype == RB_FZType.Chi then
local cards = card_list:AddItemFromPool()
cards:GetChild('card_1').icon =
self:getCardItem('ui://Main_RunBeard/202_', info_list[i].opCardList[k].card1)
cards:GetChild('card_2').icon =
self:getCardItem('ui://Main_RunBeard/202_', info_list[i].opCardList[k].card2)
cards:GetChild('card_3').icon =
self:getCardItem('ui://Main_RunBeard/202_', info_list[i].opCardList[k].card3)
elseif fztype == RB_FZType.Peng then
local cards = card_list:AddItemFromPool()
for j = 1, 3 do
cards:GetChild('card_' .. j).icon =
self:getCardItem('ui://Main_RunBeard/202_', info_list[i].opCardList[k].card1)
end
elseif fztype == RB_FZType.Kan then
local cards = card_list:AddItemFromPool()
for j = 1, 3 do
cards:GetChild('card_' .. j).icon =
self:getCardItem('ui://Main_RunBeard/202_', info_list[i].opCardList[k].card1)
end
elseif fztype == RB_FZType.Wei or fztype == RB_FZType.ChouWei then
local cards = card_list:AddItemFromPool()
for j = 1, 3 do
cards:GetChild('card_' .. j).icon =
self:getCardItem('ui://Main_RunBeard/202_', info_list[i].opCardList[k].card1)
end
elseif fztype == RB_FZType.Pao then
local cards = card_list:AddItemFromPool()
for j = 1, 4 do
cards:GetChild('card_' .. j).icon =
self:getCardItem('ui://Main_RunBeard/202_', info_list[i].opCardList[k].card1)
end
elseif fztype == RB_FZType.Ti then
local cards = card_list:AddItemFromPool()
for j = 1, 4 do
cards:GetChild('card_' .. j).icon =
self:getCardItem('ui://Main_RunBeard/202_', info_list[i].opCardList[k].card1)
end
end
end
if #info_list[i].hand_card > 0 then
local hand_card = PendulumRule.GetHandCard(info_list[i].hand_card, 3)
for k = 1, #hand_card do
local cards = card_list:AddItemFromPool()
for j = 1, #hand_card[k] do
cards:GetChild('card_' .. (j)).icon =
self:getCardItem('ui://Main_RunBeard/202_', hand_card[k][j])
end
end
end
end
end
end
@ -318,17 +430,19 @@ function M:FillItemData(room, data, item)
self._view:GetChild('huxi').text = '胡 息:+' .. win_data.hu_xi
-- self._view:GetChild('tunshu').text = '基础囤数:' .. win_data.tun
-- self._view:GetChild('zongtunshu').text = '总囤数:' .. win_data.total_tun
if win_data.round_score >= 0 then
self._view:GetChild('score').text = '总胡息:+' .. win_data.round_score
if win_data.total_score >= 0 then
self._view:GetChild('score').text = '总胡息:+' .. win_data.total_score
self._view:GetChild('score').grayed = false
else
self._view:GetChild('score').text = '总胡息:+' .. win_data.round_score
self._view:GetChild('score').text = '总胡息:' .. win_data.total_score
self._view:GetChild('score').grayed = true
end
local hp_info = win_data.hp_info
self._view:GetController("hudianpao").selectedIndex = win_data.hu_type
self._view:GetChild("fangpaoscore").text = "放炮扣息:-"..win_data.fangpaoscore
if (hp_info ~= nil and room.hpOnOff == 1 or room:checkHpNonnegative()) then
local isupper_limit = hp_info.upper_limit -- // 输赢是否已达上限
if (isupper_limit) then
@ -673,7 +787,7 @@ function M:FillItemData2(room, data, list)
player_list[i].param[4].value = tostring(ppcount)
player_list[i].param[5] = {}
player_list[i].param[5].key = '鸟分:'
player_list[i].param[5].key = '分:'
player_list[i].param[5].value = tostring(dncount)
end
@ -682,9 +796,11 @@ function M:FillItemData2(room, data, list)
self:GenerateRoomResultInfo(round, room.room_config:GetGameName(), room.room_id, room.create_time, player_list)
self:SetGSListlineGap(5)
-- room.room_config.isNonnegative = 0
self:InitBigResult(room, 26)
DataManager.CurrenRoom = nil
-- list:RemoveChildrenToPool()
-- for i =1, #data do
@ -783,7 +899,7 @@ function M:getCardItem(card_1, card_2)
if _room ~= nil and _room.change_card_display ~= nil then
return card_1 .. _room.change_card_display .. card_2
else
return card_1 .. '2_' .. card_2
return card_1 .. '6_' .. card_2
end
end

View File

@ -451,7 +451,6 @@ end
local card = DataManager.CurrenRoom.self_player.handcard_list[i]
list_remove(player.handcard_list, card)
local _player = membe_deep_clone(player)
local tingList = CardCheck.tingPai(_player,DataManager.CurrenRoom)
local isKan = false
for j=1,#player.fz_list do

View File

@ -0,0 +1,695 @@
-- 检测牌是否存在
local function checkCard(eventCard, cardList, num)
if num == nil then
num = 1
end
local result = 0
for i = 1, #cardList do
if (cardList[i] == eventCard) then
result = result + 1
if (result == num) then
return true
end
end
end
return false
end
-- 移除指定数量的牌
local function removeCard(cardList, card, count)
for i = 1, count do
list_remove(cardList, card)
end
end
local function checkCardAndRomve(eventCard, cardList, num)
if (checkCard(eventCard, cardList, num)) then
removeCard(cardList, eventCard, num)
return true
end
return false
end
-- 获取列表中牌数量
local function cardNum(eventCard, cardList)
local result = 0
for i = 1, #cardList do
local card = cardList[i]
if (card == eventCard) then
result = result + 1
end
end
return result
end
local M = {
pair_count = 0,
cardList = nil,
stack = nil,
stackHuxi = nil
}
function M:push(cardGroup)
self.stack[#self.stack + 1] = cardGroup
end
function M:pushhuxi(cardGroup)
self.stackHuxi[#self.stackHuxi + 1] = cardGroup
end
function M:rollBack()
local cardGroup = self.stack[#self.stack]
table.remove(self.stack, #self.stack)
for _, card in ipairs(cardGroup) do
self.cardList[#self.cardList + 1] = card
end
table.sort(self.cardList)
end
-- 顺子
function M:tryShunzi1(card, player)
printlog("tryShunzi1")
if card < 300 and card % 100 > 8 then
return false
end
if (checkCard(card + 1, self.cardList) and checkCard(card + 2, self.cardList)) then
removeCard(self.cardList, card + 1, 1)
removeCard(self.cardList, card + 2, 1)
removeCard(self.cardList, card, 1)
local cardGroup = {card, card + 1, card + 2}
self:push(cardGroup)
local _huxi = 0
self:pushhuxi(_huxi)
return true
end
return false
end
-- 2 7 10
function M:tryShunzi3(card, player)
printlog("tryShunzi3")
if card % 100 == 2 then
if (checkCard(card + 5, self.cardList, 1)) and (checkCard(card + 8, self.cardList, 1)) then
removeCard(self.cardList, card, 1)
removeCard(self.cardList, card + 5, 1)
removeCard(self.cardList, card + 8, 1)
local cardGroup = {card, card + 5, card + 8}
self:push(cardGroup)
local _huxi = 1
self:pushhuxi(_huxi)
return true
end
end
return false
end
-- 坎
function M:tryKezi(card, player)
printlog("tryKezi")
if (checkCard(card, self.cardList, 3)) then
removeCard(self.cardList, card, 3)
local cardGroup = {card, card, card}
self:push(cardGroup)
local _huxi = 1
if self.drawCard~=card then
_huxi = 3
end
self:pushhuxi(_huxi)
return true
end
return false
end
function M:tryPair(card)
printlog("tryPair")
if (self.pair_count > 0) then
return false
end
printlog(card)
pt(self.cardList)
if (checkCard(card, self.cardList, 2)) then
printlog("checkCard 2")
removeCard(self.cardList, card, 2)
local cardGroup = {card, card}
self:push(cardGroup)
local _huxi = 0
self:pushhuxi(_huxi)
self.pair_count = 1
return true
elseif (checkCard(card, self.cardList, 1)) then
printlog("checkCard 1")
if card % 100 <=9 then
if (checkCard(card+1, self.cardList, 1)) then
printlog("checkCard 12")
removeCard(self.cardList, card, 1)
removeCard(self.cardList, card+1, 1)
local cardGroup = {card, card+1}
self:push(cardGroup)
local _huxi = 0
self:pushhuxi(_huxi)
self.pair_count = 1
return true
end
end
if card % 100 <=8 then
if (checkCard(card+2, self.cardList, 1)) then
removeCard(self.cardList, card, 1)
removeCard(self.cardList, card+2, 1)
local cardGroup = {card, card+2}
self:push(cardGroup)
local _huxi = 0
self:pushhuxi(_huxi)
self.pair_count = 1
return true
end
end
if card % 100 >=2 then
if (checkCard(card-1, self.cardList, 1)) then
removeCard(self.cardList, card, 1)
removeCard(self.cardList, card-1, 1)
local cardGroup = {card, card-1}
self:push(cardGroup)
local _huxi = 0
self:pushhuxi(_huxi)
self.pair_count = 1
return true
end
end
if card % 100 >=3 then
if (checkCard(card-2, self.cardList, 1)) then
removeCard(self.cardList, card, 1)
removeCard(self.cardList, card-2, 1)
local cardGroup = {card, card-2}
self:push(cardGroup)
local _huxi = 0
self:pushhuxi(_huxi)
self.pair_count = 1
return true
end
end
if card % 100 ==2 then
if (checkCard(card+5, self.cardList, 1)) then
removeCard(self.cardList, card, 1)
removeCard(self.cardList, card+5, 1)
local cardGroup = {card, card+5}
self:push(cardGroup)
local _huxi = 1
self:pushhuxi(_huxi)
self.pair_count = 1
return true
end
if (checkCard(card+8, self.cardList, 1)) then
removeCard(self.cardList, card, 1)
removeCard(self.cardList, card+8, 1)
local cardGroup = {card, card+8}
self:push(cardGroup)
local _huxi = 1
self:pushhuxi(_huxi)
self.pair_count = 1
return true
end
end
if card % 100 ==7 then
if (checkCard(card-5, self.cardList, 1)) then
removeCard(self.cardList, card, 1)
removeCard(self.cardList, card-5, 1)
local cardGroup = {card, card-5}
self:push(cardGroup)
local _huxi = 1
self:pushhuxi(_huxi)
self.pair_count = 1
return true
end
if (checkCard(card+3, self.cardList, 1)) then
removeCard(self.cardList, card, 1)
removeCard(self.cardList, card+3, 1)
local cardGroup = {card, card+3}
self:push(cardGroup)
local _huxi = 1
self:pushhuxi(_huxi)
self.pair_count = 1
return true
end
end
if card % 100 ==10 then
if (checkCard(card-8, self.cardList, 1)) then
removeCard(self.cardList, card, 1)
removeCard(self.cardList, card-8, 1)
local cardGroup = {card, card-8}
self:push(cardGroup)
local _huxi = 1
self:pushhuxi(_huxi)
self.pair_count = 1
return true
end
if (checkCard(card-3, self.cardList, 1)) then
removeCard(self.cardList, card, 1)
removeCard(self.cardList, card-3, 1)
local cardGroup = {card, card-3}
self:push(cardGroup)
local _huxi = 1
self:pushhuxi(_huxi)
self.pair_count = 1
return true
end
end
end
return false
end
function M:tryPair2(card)
printlog("tryPair2")
if (self.pair_count > 0) then
return false
end
if (checkCard(card, self.cardList, 1)) then
if card % 100 ==2 then
if (checkCard(card+5, self.cardList, 1)) then
removeCard(self.cardList, card, 1)
removeCard(self.cardList, card+5, 1)
local cardGroup = {card, card+5}
self:push(cardGroup)
local _huxi = 1
self:pushhuxi(_huxi)
self.pair_count = 1
return true
end
if (checkCard(card+8, self.cardList, 1)) then
removeCard(self.cardList, card, 1)
removeCard(self.cardList, card+8, 1)
local cardGroup = {card, card+8}
self:push(cardGroup)
local _huxi = 1
self:pushhuxi(_huxi)
self.pair_count = 1
return true
end
end
if card % 100 ==7 then
if (checkCard(card-5, self.cardList, 1)) then
removeCard(self.cardList, card, 1)
removeCard(self.cardList, card-5, 1)
local cardGroup = {card, card-5}
self:push(cardGroup)
local _huxi = 1
self:pushhuxi(_huxi)
self.pair_count = 1
return true
end
if (checkCard(card+3, self.cardList, 1)) then
removeCard(self.cardList, card, 1)
removeCard(self.cardList, card+3, 1)
local cardGroup = {card, card+3}
self:push(cardGroup)
local _huxi = 1
self:pushhuxi(_huxi)
self.pair_count = 1
return true
end
end
if card % 100 ==10 then
if (checkCard(card-8, self.cardList, 1)) then
removeCard(self.cardList, card, 1)
removeCard(self.cardList, card-8, 1)
local cardGroup = {card, card-8}
self:push(cardGroup)
local _huxi = 1
self:pushhuxi(_huxi)
self.pair_count = 1
return true
end
if (checkCard(card-3, self.cardList, 1)) then
removeCard(self.cardList, card, 1)
removeCard(self.cardList, card-3, 1)
local cardGroup = {card, card-3}
self:push(cardGroup)
local _huxi = 1
self:pushhuxi(_huxi)
self.pair_count = 1
return true
end
end
end
return false
end
function M:tryWin(player)
if #self.cardList == 0 then
if (self.pair_count == 1) then
return true
elseif self.pair_count == 2 and #self.stack==2 then
local tempPList={}
for i=1,#self.stack do
local card1=self.stack[i][1]
local card2=self.stack[i][2]
table.insert(tempPList,card1)
table.insert(tempPList,card2)
end
if #tempPList~=4 then return false end
table.sort(tempPList)
if tempPList[1]==tempPList[2]+1 and tempPList[2]==tempPList[3]+1 and tempPList[3]==tempPList[4]+1 then
return true
end
end
return false
end
local activeCard = 0
for i = 1, #self.cardList do
if (self.cardList[i] == 201 or self.cardList[i] == 202) then
activeCard = self.cardList[i]
break
end
end
if (activeCard == 0) then
activeCard = self.cardList[1]
end
print("check win:")
-- pt(self.cardList)
print("activeCard:"..activeCard)
if (activeCard % 100 == 1) then
if self:tryShunzi1(activeCard, player) then
if self:tryWin(player) then
return true
end
self:rollBack()
table.remove(self.stackHuxi, #self.stackHuxi)
end
if self:tryKezi(activeCard, player) then
if self:tryWin(player) then
return true
end
self:rollBack()
table.remove(self.stackHuxi, #self.stackHuxi)
end
if self:tryPair(activeCard) then
if self:tryWin(player) then
return true
end
self.pair_count = 0
self:rollBack()
table.remove(self.stackHuxi, #self.stackHuxi)
end
if self:tryPair2(activeCard) then
if self:tryWin(player) then
return true
end
self.pair_count = 0
self:rollBack()
table.remove(self.stackHuxi, #self.stackHuxi)
end
elseif activeCard % 100 == 2 then
if self:tryShunzi3(activeCard, player) then
if self:tryWin(player) then
return true
end
self:rollBack()
table.remove(self.stackHuxi, #self.stackHuxi)
end
if self:tryKezi(activeCard, player) then
if self:tryWin(player) then
return true
end
self:rollBack()
table.remove(self.stackHuxi, #self.stackHuxi)
end
if self:tryPair(activeCard) then
if self:tryWin(player) then
return true
end
self.pair_count = 0
self:rollBack()
table.remove(self.stackHuxi, #self.stackHuxi)
end
if self:tryPair2(activeCard) then
if self:tryWin(player) then
return true
end
self.pair_count = 0
self:rollBack()
table.remove(self.stackHuxi, #self.stackHuxi)
end
if self:tryShunzi1(activeCard, player) then
if self:tryWin(player) then
return true
end
self:rollBack()
table.remove(self.stackHuxi, #self.stackHuxi)
end
else
if self:tryShunzi3(activeCard, player) then
if self:tryWin(player) then
return true
end
self:rollBack()
table.remove(self.stackHuxi, #self.stackHuxi)
end
if self:tryKezi(activeCard, player) then
if self:tryWin(player) then
return true
end
self:rollBack()
table.remove(self.stackHuxi, #self.stackHuxi)
end
if self:tryPair(activeCard) then
if self:tryWin(player) then
return true
end
self.pair_count = 0
self:rollBack()
table.remove(self.stackHuxi, #self.stackHuxi)
end
if self:tryPair2(activeCard) then
if self:tryWin(player) then
return true
end
self.pair_count = 0
self:rollBack()
table.remove(self.stackHuxi, #self.stackHuxi)
end
if self:tryShunzi1(activeCard, player) then
if self:tryWin(player) then
return true
end
self:rollBack()
table.remove(self.stackHuxi, #self.stackHuxi)
end
-- end
return false
end
local function init(self, player, cardInhand, addCard)
self.stack = {}
self.stackHuxi = {}
self.pair_count = 0
self.kong_count = 0
self.drawCard=0
print("+++++++++++++++++++++++++++++++++++++++++++++++++")
self.cardList = membe_clone(cardInhand)
--[[
if addCard == nil then
self.kong_count = 1
else
self.kong_count = 0
self.cardList[#self.cardList + 1] = addCard
self.drawCard=addCard
end
]]
table.sort(self.cardList)
self.cardList = {106,107,108,109}
local eventCard = 108
--local cardList ={108,109}
local res = self:tryPair(eventCard)
--local res = self:tryWin(player)
print("jefe check res")
print(res)
return false -- res
end
function M.tingPai(player, room)
local self = setmetatable({}, {__index = M})
local tingList = {}
local cardInhand = player.handcard_list
if not cardInhand or #cardInhand == 0 then
return tingList
end
local kan_huxi = 0
local kan_cards = {}
for j = 1, #player.fz_list do
for i = 1, #cardInhand do
if cardInhand[i] == player.fz_list[j].active_card and player.fz_list[j].type == 3 then
kan_cards[#kan_cards + 1] = cardInhand[i]
break
end
end
end
if #kan_cards > 0 then
for i = 1, #kan_cards do
kan_huxi = kan_huxi + 3
removeCard(cardInhand, kan_cards[i], 3)
end
end
player.tiCount = 0
player.paoCount = 0
-- for k = 100, 200, 100 do
-- for i = 1, 10 do
local tem =106 -- k + i
local result = init(self, player, cardInhand, tem)
local num = 0
for k = 1, #self.stackHuxi do
num = num + self.stackHuxi[k]
end
if result then
local num1 = 0
--pt(self.stackHuxi)
for k = 1, #self.stackHuxi do
num1 = num1 + self.stackHuxi[k]
--printlog(self.stackHuxi[k])
end
if (player.hu_xi + num1 + kan_huxi) >= (self:getHuxi(room)-1) then
tingList[#tingList + 1] = tem
end
end
print("==============================================================")
--return
--end
-- end
return tingList
end
function M:getHuxi(room)
if room.game_id == 301 then
return 8
end
if room.room_config.config.hunum==0 then
return 15
end
if room.game_id == 13 or room.game_id == 14 or room.game_id == 23 then
return 15
elseif room.game_id == 26 then
return 10
elseif room.game_id == 29 then
if room.room_config.maxPlayers == 3 then
return 15
else
return 9
end
end
end
function M:GetFzData(tem, ctype)
local huxi
if ctype == 1 then
huxi=1
elseif ctype == 2 then
huxi=1
elseif ctype == 3 then
huxi = 3
elseif ctype == 4 then
huxi = 3
elseif ctype == 5 then
huxi = 3
elseif ctype == 7 then
huxi = 5
end
return huxi
end
return M

View File

@ -12,9 +12,15 @@ local function checkCard(eventCard, cardList, num)
end
end
end
return false
end
local function cardType(card)
return card/100
end
-- 移除指定数量的牌
local function removeCard(cardList, card, count)
for i = 1, count do
@ -64,46 +70,11 @@ function M:rollBack()
end
table.sort(self.cardList)
end
-- 顺子
function M:tryShunzi1(card, player)
if card < 300 and card % 100 > 8 then
return false
end
if (checkCard(card + 1, self.cardList) and checkCard(card + 2, self.cardList)) then
removeCard(self.cardList, card + 1, 1)
removeCard(self.cardList, card + 2, 1)
removeCard(self.cardList, card, 1)
local cardGroup = {card, card + 1, card + 2}
self:push(cardGroup)
local _huxi = 0
self:pushhuxi(_huxi)
return true
end
return false
end
-- 2 7 10
function M:tryShunzi3(card, player)
if card % 100 == 2 then
if (checkCard(card + 5, self.cardList, 1)) and (checkCard(card + 8, self.cardList, 1)) then
removeCard(self.cardList, card, 1)
removeCard(self.cardList, card + 5, 1)
removeCard(self.cardList, card + 8, 1)
local cardGroup = {card, card + 5, card + 8}
self:push(cardGroup)
local _huxi = 1
self:pushhuxi(_huxi)
return true
end
end
return false
end
-- 坎
--坎
function M:tryKezi(card, player)
if (checkCard(card, self.cardList, 3)) then
if cardNum(card, self.cardList)>=3 then
removeCard(self.cardList, card, 3)
local cardGroup = {card, card, card}
self:push(cardGroup)
@ -117,258 +88,128 @@ function M:tryKezi(card, player)
return false
end
--顺子1
function M:tryShunzi1(card, player)
if card < 200 and card % 100 > 8 then
return false
end
if (cardNum(card + 1, self.cardList)> 0 and cardNum(card + 2, self.cardList) > 0 ) then
removeCard(self.cardList, card, 1)
removeCard(self.cardList, card + 1, 1)
removeCard(self.cardList, card + 2, 1)
local cardGroup = {card, card + 1, card + 2}
self:push(cardGroup)
local _huxi = 0
if card%100==1 then
if card>200 then
_huxi = 6
else
_huxi = 3
end
end
self:pushhuxi(_huxi)
return true
end
return false
end
--顺子2
function M:tryShunzi2(card, player)
if cardType(card) == 1 then
if cardNum(card+100,self.cardList) >= 1 and cardNum(card,self.cardList)>=2 then
removeCard(self.cardList, card, 2)
removeCard(self.cardList, card + 100, 1)
local cardGroup = {card, card, card+100}
self:push(cardGroup)
local _huxi = 0
self:pushhuxi(_huxi)
return true
end
if cardNum(card+100,self.cardList)>=2 then
removeCard(self.cardList, card, 1)
removeCard(self.cardList, card+100, 2)
local cardGroup = {card, card+100, card+100}
self:push(cardGroup)
local _huxi = 0
self:pushhuxi(_huxi)
return true
end
else
if cardNum(card-100,self.cardList) >= 1 and cardNum(card,self.cardList)>=2 then
removeCard(self.cardList, card, 2)
removeCard(self.cardList, card - 100, 1)
local cardGroup = {card, card, card-100}
self:push(cardGroup)
local _huxi = 0
self:pushhuxi(_huxi)
return true
end
if cardNum(card-100,self.cardList)>=2 then
removeCard(self.cardList, card, 1)
removeCard(self.cardList, card-100, 2)
local cardGroup = {card, card-100, card-100}
self:push(cardGroup)
local _huxi = 0
self:pushhuxi(_huxi)
return true
end
end
return false
end
function M:tryShunzi3(card, player)
if card % 100 == 2 then
if cardNum(card + 5, self.cardList)>0 and cardNum(card + 8, self.cardList)>0 then
removeCard(self.cardList, card, 1)
removeCard(self.cardList, card + 5, 1)
removeCard(self.cardList, card + 8, 1)
local cardGroup = {card, card + 5, card + 8}
self:push(cardGroup)
local _huxi = 1
self:pushhuxi(_huxi)
return true
end
end
return false
end
function M:tryHuazi(card)
end
function M:tryPair(card)
if (self.pair_count > 0) then
if (self.pair_count > 0) then
return false
end
if (checkCard(card, self.cardList, 2)) then
if cardNum(card, self.cardList)>=2 then
removeCard(self.cardList, card, 2)
local cardGroup = {card, card}
local cardGroup = {card, card , card}
self:push(cardGroup)
local _huxi = 0
self:pushhuxi(_huxi)
self.pair_count = 1
self.pair_count = 1;
local _huxi = 0
self:pushhuxi(_huxi)
return true
elseif (checkCard(card, self.cardList, 1)) then
if card % 100 <=9 then
if (checkCard(card+1, self.cardList, 1)) then
removeCard(self.cardList, card, 1)
removeCard(self.cardList, card+1, 1)
local cardGroup = {card, card+1}
self:push(cardGroup)
local _huxi = 0
self:pushhuxi(_huxi)
self.pair_count = 1
return true
end
end
if card % 100 <=8 then
if (checkCard(card+2, self.cardList, 1)) then
removeCard(self.cardList, card, 1)
removeCard(self.cardList, card+2, 1)
local cardGroup = {card, card+2}
self:push(cardGroup)
local _huxi = 0
self:pushhuxi(_huxi)
self.pair_count = 1
return true
end
end
if card % 100 >=2 then
if (checkCard(card-1, self.cardList, 1)) then
removeCard(self.cardList, card, 1)
removeCard(self.cardList, card-1, 1)
local cardGroup = {card, card-1}
self:push(cardGroup)
local _huxi = 0
self:pushhuxi(_huxi)
self.pair_count = 1
return true
end
end
if card % 100 >=3 then
if (checkCard(card-2, self.cardList, 1)) then
removeCard(self.cardList, card, 1)
removeCard(self.cardList, card-2, 1)
local cardGroup = {card, card-2}
self:push(cardGroup)
local _huxi = 0
self:pushhuxi(_huxi)
self.pair_count = 1
return true
end
end
if card % 100 ==2 then
if (checkCard(card+5, self.cardList, 1)) then
removeCard(self.cardList, card, 1)
removeCard(self.cardList, card+5, 1)
local cardGroup = {card, card+5}
self:push(cardGroup)
local _huxi = 1
self:pushhuxi(_huxi)
self.pair_count = 1
return true
end
if (checkCard(card+8, self.cardList, 1)) then
removeCard(self.cardList, card, 1)
removeCard(self.cardList, card+8, 1)
local cardGroup = {card, card+8}
self:push(cardGroup)
local _huxi = 1
self:pushhuxi(_huxi)
self.pair_count = 1
return true
end
end
if card % 100 ==7 then
if (checkCard(card-5, self.cardList, 1)) then
removeCard(self.cardList, card, 1)
removeCard(self.cardList, card-5, 1)
local cardGroup = {card, card-5}
self:push(cardGroup)
local _huxi = 1
self:pushhuxi(_huxi)
self.pair_count = 1
return true
end
if (checkCard(card+3, self.cardList, 1)) then
removeCard(self.cardList, card, 1)
removeCard(self.cardList, card+3, 1)
local cardGroup = {card, card+3}
self:push(cardGroup)
local _huxi = 1
self:pushhuxi(_huxi)
self.pair_count = 1
return true
end
end
if card % 100 ==10 then
if (checkCard(card-8, self.cardList, 1)) then
removeCard(self.cardList, card, 1)
removeCard(self.cardList, card-8, 1)
local cardGroup = {card, card-8}
self:push(cardGroup)
local _huxi = 1
self:pushhuxi(_huxi)
self.pair_count = 1
return true
end
if (checkCard(card-3, self.cardList, 1)) then
removeCard(self.cardList, card, 1)
removeCard(self.cardList, card-3, 1)
local cardGroup = {card, card-3}
self:push(cardGroup)
local _huxi = 1
self:pushhuxi(_huxi)
self.pair_count = 1
return true
end
end
end
return false
end
function M:tryPair2(card)
if (self.pair_count > 0) then
return false
end
if (checkCard(card, self.cardList, 1)) then
if card % 100 ==2 then
if (checkCard(card+5, self.cardList, 1)) then
removeCard(self.cardList, card, 1)
removeCard(self.cardList, card+5, 1)
local cardGroup = {card, card+5}
self:push(cardGroup)
local _huxi = 1
self:pushhuxi(_huxi)
self.pair_count = 1
return true
end
if (checkCard(card+8, self.cardList, 1)) then
removeCard(self.cardList, card, 1)
removeCard(self.cardList, card+8, 1)
local cardGroup = {card, card+8}
self:push(cardGroup)
local _huxi = 1
self:pushhuxi(_huxi)
self.pair_count = 1
return true
end
end
if card % 100 ==7 then
if (checkCard(card-5, self.cardList, 1)) then
removeCard(self.cardList, card, 1)
removeCard(self.cardList, card-5, 1)
local cardGroup = {card, card-5}
self:push(cardGroup)
local _huxi = 1
self:pushhuxi(_huxi)
self.pair_count = 1
return true
end
if (checkCard(card+3, self.cardList, 1)) then
removeCard(self.cardList, card, 1)
removeCard(self.cardList, card+3, 1)
local cardGroup = {card, card+3}
self:push(cardGroup)
local _huxi = 1
self:pushhuxi(_huxi)
self.pair_count = 1
return true
end
end
if card % 100 ==10 then
if (checkCard(card-8, self.cardList, 1)) then
removeCard(self.cardList, card, 1)
removeCard(self.cardList, card-8, 1)
local cardGroup = {card, card-8}
self:push(cardGroup)
local _huxi = 1
self:pushhuxi(_huxi)
self.pair_count = 1
return true
end
if (checkCard(card-3, self.cardList, 1)) then
removeCard(self.cardList, card, 1)
removeCard(self.cardList, card-3, 1)
local cardGroup = {card, card-3}
self:push(cardGroup)
local _huxi = 1
self:pushhuxi(_huxi)
self.pair_count = 1
return true
end
end
end
return false
end
function M:tryWin(player)
if #self.cardList == 0 then
--[[ if #self.cardList == 0 then
if (self.pair_count == 1) then
return true
elseif self.pair_count == 2 and #self.stack==2 then
elseif #self.stack>=2 then
local tempPList={}
for i=1,#self.stack do
local card1=self.stack[i][1]
@ -389,27 +230,44 @@ function M:tryWin(player)
return false
end
]]
if #self.cardList == 0 then
if (player.tiCount+player.paoCount)>0 then
if self.pair_count ==1 then
return true
end
return false
else
if self.pair_count >0 then
return false
end
return true
end
end
local activeCard = 0
for i = 1, #self.cardList do
if (self.cardList[i] == 201 or self.cardList[i] == 202) then
activeCard = self.cardList[i]
break
end
end
if (activeCard == 0) then
activeCard = self.cardList[1]
end
if (activeCard % 100 == 1) then
if self:tryShunzi1(activeCard, player) then
if self:tryShunzi1(activeCard, player) then
if self:tryWin(player) then
return true
end
self:rollBack()
table.remove(self.stackHuxi, #self.stackHuxi)
end
if self:tryKezi(activeCard, player) then
if self:tryWin(player) then
return true
@ -417,26 +275,28 @@ function M:tryWin(player)
self:rollBack()
table.remove(self.stackHuxi, #self.stackHuxi)
end
if self:tryPair(activeCard) then
if (player.tiCount + player.paoCount)>0 then
if self:tryPair(activeCard) then
if self:tryWin(player) then
return true
end
self.pair_count = 0
self:rollBack()
table.remove(self.stackHuxi, #self.stackHuxi)
end
end
if self:tryShunzi2(activeCard, player) then
if self:tryWin(player) then
return true
end
self.pair_count = 0
self:rollBack()
table.remove(self.stackHuxi, #self.stackHuxi)
table.remove(self.stackHuxi, #self.stackHuxi)
end
if self:tryPair2(activeCard) then
if self:tryWin(player) then
return true
end
self.pair_count = 0
self:rollBack()
table.remove(self.stackHuxi, #self.stackHuxi)
end
elseif activeCard % 100 == 2 then
if self:tryShunzi3(activeCard, player) then
if self:tryWin(player) then
return true
@ -444,6 +304,7 @@ function M:tryWin(player)
self:rollBack()
table.remove(self.stackHuxi, #self.stackHuxi)
end
if self:tryKezi(activeCard, player) then
if self:tryWin(player) then
return true
@ -451,33 +312,34 @@ function M:tryWin(player)
self:rollBack()
table.remove(self.stackHuxi, #self.stackHuxi)
end
if self:tryPair(activeCard) then
if self:tryWin(player) then
return true
if (player.tiCount + player.paoCount)>0 then
if self:tryPair(activeCard) then
if self:tryWin(player) then
return true
end
self.pair_count = 0
self:rollBack()
table.remove(self.stackHuxi, #self.stackHuxi)
end
self.pair_count = 0
self:rollBack()
table.remove(self.stackHuxi, #self.stackHuxi)
end
if self:tryPair2(activeCard) then
if self:tryWin(player) then
return true
end
self.pair_count = 0
self:rollBack()
table.remove(self.stackHuxi, #self.stackHuxi)
end
if self:tryShunzi1(activeCard, player) then
if self:tryShunzi1(activeCard, player) then
if self:tryWin(player) then
return true
end
self:rollBack()
table.remove(self.stackHuxi, #self.stackHuxi)
end
if self:tryShunzi2(activeCard, player) then
if self:tryWin(player) then
return true
end
self:rollBack()
table.remove(self.stackHuxi, #self.stackHuxi)
end
else
if self:tryKezi(activeCard, player) then
if self:tryWin(player) then
@ -486,37 +348,41 @@ function M:tryWin(player)
self:rollBack()
table.remove(self.stackHuxi, #self.stackHuxi)
end
if self:tryPair(activeCard) then
if self:tryWin(player) then
return true
if (player.tiCount + player.paoCount)>0 then
if self:tryPair(activeCard) then
if self:tryWin(player) then
return true
end
self.pair_count = 0
self:rollBack()
table.remove(self.stackHuxi, #self.stackHuxi)
end
self.pair_count = 0
self:rollBack()
table.remove(self.stackHuxi, #self.stackHuxi)
end
if self:tryPair2(activeCard) then
if self:tryWin(player) then
return true
end
self.pair_count = 0
self:rollBack()
table.remove(self.stackHuxi, #self.stackHuxi)
end
if self:tryShunzi1(activeCard, player) then
if self:tryShunzi1(activeCard, player) then
if self:tryWin(player) then
return true
end
self:rollBack()
table.remove(self.stackHuxi, #self.stackHuxi)
end
if self:tryShunzi2(activeCard, player) then
if self:tryWin(player) then
return true
end
self:rollBack()
table.remove(self.stackHuxi, #self.stackHuxi)
end
end
return false
end
local function init(self, player, cardInhand, addCard)
self.stack = {}
self.stackHuxi = {}
@ -531,44 +397,82 @@ local function init(self, player, cardInhand, addCard)
self.cardList[#self.cardList + 1] = addCard
self.drawCard=addCard
end
table.sort(self.cardList)
return self:tryWin(player)
table.sort(self.cardList)
local res = self:tryWin(player)
return res
end
function M.tingPai(player, room)
local self = setmetatable({}, {__index = M})
local tingList = {}
local cardInhand = player.handcard_list
if not cardInhand or #cardInhand == 0 then
return tingList
end
local kan_huxi = 0
local kan_cards = {}
if player.tiCount==nil then
player.tiCount = 0
end
if player.paoCount==nil then
player.paoCount = 0
end
for j = 1, #player.fz_list do
for i = 1, #cardInhand do
if cardInhand[i] == player.fz_list[j].active_card and player.fz_list[j].type == 3 then
kan_cards[#kan_cards + 1] = cardInhand[i]
break
end
if player.fz_list[j].type==6 then
player.paoCount = 1
if cardType(player.fz_list[j].active_card) ==2 then
kan_huxi = kan_huxi + 9
else
kan_huxi = kan_huxi + 6
end
end
if player.fz_list[j].type==7 then
player.tiCount = 1
if cardType(player.fz_list[j].active_card) ==2 then
kan_huxi = kan_huxi + 12
else
kan_huxi = kan_huxi + 9
end
end
if player.fz_list[j].type==2 then
if cardType(player.fz_list[j].active_card) ==2 then
kan_huxi = kan_huxi + 3
else
kan_huxi = kan_huxi + 1
end
end
end
end
if #kan_cards > 0 then
for i = 1, #kan_cards do
kan_huxi = kan_huxi + 3
if cardType(kan_cards[i])==2 then
kan_huxi = kan_huxi + 6
else
kan_huxi = kan_huxi + 3
end
removeCard(cardInhand, kan_cards[i], 3)
end
end
player.tiCount = 0
player.paoCount = 0
for k = 100, 200, 100 do
for i = 1, 10 do
local tem = k + i
local result = init(self, player, cardInhand, tem)
if result then
--printlog("是否胡牌===>>>",tem)
end
local num = 0
for k = 1, #self.stackHuxi do
@ -577,18 +481,13 @@ function M.tingPai(player, room)
if result then
local num1 = 0
--pt(self.stackHuxi)
for k = 1, #self.stackHuxi do
num1 = num1 + self.stackHuxi[k]
--printlog(self.stackHuxi[k])
end
if (player.hu_xi + num1 + kan_huxi) >= (self:getHuxi(room)-1) then
tingList[#tingList + 1] = tem
end
end
end
end
return tingList

View File

@ -56,7 +56,7 @@ function M:GetCardItem(card_1, card_2)
if room.change_card_display ~= nil then
return card_1 .. room.change_card_display .. card_2
else
return card_1 .. "2_" .. card_2
return card_1 .. "6_" .. card_2
end
end

View File

@ -174,8 +174,9 @@ function M:InitHandCard(handcard)
for i =1,#pokerList do
for j =1,#pokerList[i] do
local card_code = pokerList[i][j]
local btn_card =UIPackage.CreateObjectFromURL("ui://Main_RunBeard/Qipai")
local btn_card =UIPackage.CreateObjectFromURL("ui://Main_RunBeard/Qipais")
btn_card:GetChild("icon").icon = self:getCardItem("ui://Main_RunBeard/202_",card_code)
self._area_handcard_list:AddChild(btn_card)
self._area_handcard_list:SetChildIndex(btn_card,5-j)
local card_view = NewCardView(btn_card,card_code,i,j)
@ -468,7 +469,7 @@ function M:getCardItem( card_1,card_2 )
if self._room.change_card_display ~=nil then
return card_1..self._room.change_card_display..card_2
else
return card_1.."2_"..card_2
return card_1.."6_"..card_2
end
end

View File

@ -160,10 +160,14 @@ function M:ShowHuTip(card)
selfplayeTable.paoCount = _aplayer.paoCount
selfplayeTable.hu_xi = _aplayer.hu_xi
local player = membe_deep_clone(selfplayeTable)
player.tiCount = _aplayer.tiCount
player.paoCount = _aplayer.paoCount
if card ~= nil then
list_remove(player.handcard_list, card)
end
printlog("jefe ting pai")
local tingList = CardCheck.tingPai(player, DataManager.CurrenRoom)
pt(tingList)
if self._mainView._hu_tip ~= nil then
self._mainView._hu_tip:FillData(tingList)
end

View File

@ -0,0 +1,304 @@
local setmetatable = setmetatable
function class(classname, super)
local superType = type(super)
local cls
if superType ~= "function" and superType ~= "table" then
superType = nil
super = nil
end
if superType == "function" or (super and super.__ctype == 1) then
-- inherited from native C++ Object
cls = {}
if superType == "table" then
-- copy fields from super
for k,v in pairs(super) do cls[k] = v end
cls.__create = super.__create
cls.super = super
else
cls.__create = super
cls.ctor = function() end
end
cls.__cname = classname
cls.__ctype = 1
function cls.new(...)
local instance = cls.__create(...)
-- copy fields from class to native object
for k,v in pairs(cls) do instance[k] = v end
instance.class = cls
instance:ctor(...)
return instance
end
else
-- inherited from Lua Object
if super then
cls = {}
setmetatable(cls, {__index = super})
cls.super = super
else
cls = {ctor = function() end}
end
cls.__cname = classname
cls.__ctype = 2 -- lua
cls.__index = cls
function cls.new(...)
local instance = setmetatable({}, cls)
instance.class = cls
instance:ctor(...)
return instance
end
end
return cls
end
-- 刘海偏移
function get_offset(full_offset)
if full_offset then
local r = GRoot.inst.width / GRoot.inst.height
if r >= 2 then
local d = (Screen.dpi /160)
return d * 20
end
end
return 0
end
---lua table 浅拷贝
function membe_clone(orig)
local copy
if type(orig) == "table" then
copy = {}
for orig_key, orig_value in pairs(orig) do
copy[orig_key] = orig_value
end
else -- number, string, boolean, etc
copy = orig
end
return copy
end
-- lua table 深拷贝
function membe_deep_clone(orig)
local copy
if type(orig) == "table" then
copy = {}
for orig_key, orig_value in pairs(orig) do
copy[membe_deep_clone(orig_key)] = membe_deep_clone(orig_value)
end
else
copy = orig
end
return copy
end
---字符串分割函数
function split(str, delimiter)
if str==nil or str=='' or delimiter==nil then
return nil
end
local result = {}
for match in (str..delimiter):gmatch("(.-)"..delimiter) do
table.insert(result, match)
end
return result
end
function handler( obj,func)
return function(...)
return func(obj, ...)
end
end
--重新require一个lua文件替代系统文件。
function unimport(moduleName,currentModuleName)
local package = package
local currentModuleNameParts
local moduleFullName = moduleName
local offset = 1
while true do
if string.byte(moduleName, offset) ~= 46 then -- .
moduleFullName = string.sub(moduleName, offset)
if currentModuleNameParts and #currentModuleNameParts > 0 then
moduleFullName = table.concat(currentModuleNameParts, ".") .. "." .. moduleFullName
end
break
end
offset = offset + 1
if not currentModuleNameParts then
if not currentModuleName then
local n,v = debug.getlocal(3, 1)
currentModuleName = v
end
currentModuleNameParts = string.split(currentModuleName, ".")
end
table.remove(currentModuleNameParts, #currentModuleNameParts)
end
package.loaded[moduleFullName] = nil
package.preload[moduleFullName] = nil
end
function table.nums(t)
local count = 0
for k, v in pairs(t) do
count = count + 1
end
return count
end
-- @param t 要检查的表格(t表示是table)
-- @param table 返回指定表格的所有键key,它是一个键集合的表格
--]]
function table.keys( t )
local keys = {}
for k, _ in pairs( t ) do
keys[#keys + 1] = k
end
return keys
end
function list_remove(t,item)
for i,v in ipairs(t) do
if v == item then
table.remove(t,i)
break
end
end
end
function list_check(t,item)
for i,v in ipairs(t) do
if v == item then
return true
end
end
return false
end
function list_index(t,item)
for i,v in ipairs(t) do
if v == item then
return i
end
end
return 0
end
function list_concat(des,tag)
for i = 1, #tag do
table.insert(des, tag[i])
end
return des
end
function vardump(object, label)
local lookupTable = {}
local result = {}
local function _v(v)
if type(v) == "string" then
v = "\"" .. v .. "\""
end
return tostring(v)
end
local function _vardump(object, label, indent, nest)
label = label or "<var>"
local postfix = ""
if nest > 1 then postfix = "," end
if type(object) ~= "table" then
-- if type(label) == "string" then
result[#result +1] = string.format("%s%s = %s%s", indent, label, _v(object), postfix)
-- else
-- result[#result +1] = string.format("%s%s%s", indent, _v(object), postfix)
-- end
elseif not lookupTable[object] then
lookupTable[object] = true
-- if type(label) == "string" then
result[#result +1 ] = string.format("%s%s = {", indent, label)
-- else
-- result[#result +1 ] = string.format("%s{", indent)
-- end
local indent2 = indent .. " "
local keys = {}
local values = {}
for k, v in pairs(object) do
keys[#keys + 1] = k
values[k] = v
end
table.sort(keys, function(a, b)
if type(a) == "number" and type(b) == "number" then
return a < b
else
return tostring(a) < tostring(b)
end
end)
for i, k in ipairs(keys) do
_vardump(values[k], k, indent2, nest + 1)
end
result[#result +1] = string.format("%s}%s", indent, postfix)
end
end
_vardump(object, label, "", 1)
return table.concat(result, "\n")
end
function sysrandom(min,max)
local num = math.random(min,max)
return num
end
function IsHasDictionary(currentTarget,list)
if list and #list>0 then
for k,v in ipairs(list) do
if v==currentTarget then
return true
end
end
return false
else
return false
end
end
function CheckDictionaryFromContent(target,list)
if list and #list>0 then
for k,v in pairs(list) do
if v.card==target then
return true,k
end
end
else
return false
end
end
function CombineDictionaryAndRemoveSomeItem(list1,list2)
local tempList=membe_clone(list2)
for i=1,#list1 do
if IsHasDictionary(list1[i],list2)==false then
table.insert(tempList,list1[i])
end
end
return tempList
end

View File

@ -0,0 +1,148 @@
local funcs = require("functions")
local CardCheck = require("CardCheck")
function LuaPrint(lua_table, limit, indent, step)
step = step or 0
indent = indent or 0
local content = ""
if limit ~= nil then
if step > limit then
return "..."
end
end
if step > 10 then
return content .. "..."
end
if lua_table == nil then
return "nil"
end
if type(lua_table) == "userdata" or type(lua_table) == "lightuserdata" or type(lua_table) == "thread" then
return tostring(lua_table)
end
if type(lua_table) == "string" or type(lua_table) == "number" then
return "[No-Table]:" .. lua_table
end
for k, v in pairs(lua_table) do
if k ~= "_class_type" then
local szBuffer = ""
Typev = type(v)
if Typev == "table" then
szBuffer = "{"
end
local szPrefix = string.rep(" ", indent)
if Typev == "table" and v._fields then
local kk, vv = next(v._fields)
if type(vv) == "table" then
content = content .. "\n\t" .. kk.name .. "={" .. LuaPrint(vv._fields, 5, indent + 1, step + 1) ..
"}"
else
content = content .. "\n\t" .. kk.name .. "=" .. vv
end
else
if type(k) == "table" then
if k.name then
if type(v) ~= "table" then
content = content .. "\n" .. k.name .. "=" .. v
else
content = content .. "\n" .. k.name .. " = list:"
local tmp = "\n"
for ka, va in ipairs(v) do
tmp = tmp .. "#" .. ka .. "_" .. tostring(va)
end
content = content .. tmp
end
end
elseif type(k) == "function" then
content = content .. "\n fun=function"
else
formatting = szPrefix .. tostring(k) .. " = " .. szBuffer
if Typev == "table" then
content = content .. "\n" .. formatting
content = content .. LuaPrint(v, limit, indent + 1, step + 1)
content = content .. "\n" .. szPrefix .. "},"
else
local szValue = ""
if Typev == "string" then
szValue = string.format("%q", v)
else
szValue = tostring(v)
end
content = content .. "\n" .. formatting .. (szValue or "nil") .. ","
end
end
end
end
end
return content
end
function printlog(...)
if true then
print(...)
end
end
function pt(...)
if true then
local arg = { ... }
local has = false
for _, v in pairs(arg) do
if v and type(v) == "table" then
has = true
break
end
end
if not has then
print(...)
end
local content = ""
for _, v in pairs(arg) do
if v == "table" then
content = content .. tostring(v) .. "\n"
else
content = content .. "==>[T]:" .. LuaPrint(v, limit), debug.traceback() .. "\n"
end
print(content)
end
end
end
local player = {}
local room = {}
room.game_id = 17
room.room_config = {
config = {
hunum = 0
}
}
player.hu_xi = 0
player.handcard_list ={106,107,105,109,109,205,205,205,204,204,204,108,108,108,201,201,202,207,210,209}
player.fz_list = {
--[[
{
type = 2,
active_card = 208,
opcard = {208,208},
card = 208,
},
{
type = 1,
card = 204,
opcard = {
203,
202,
},
active_card = 204,
}]]
}
CardCheck.tingPai(player,room)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 MiB

After

Width:  |  Height:  |  Size: 1.4 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 MiB

After

Width:  |  Height:  |  Size: 969 KiB

View File

@ -1,5 +1,14 @@
{
"objectStatus": {
"n51_fmkv": {
"collapsed": true
},
"n58_fnpw": {
"collapsed": true
},
"n19_pt1r": {
"collapsed": true
},
"n33_n1ry": {
"hidden": true
}

View File

@ -0,0 +1,7 @@
{
"objectStatus": {
"n27_rbpg": {
"hidden": true
}
}
}

View File

@ -10,8 +10,15 @@
"doc.openedDocs": [
"ui://ppu1wv76j4mf9d",
"ui://27vd145bko559b",
"ui://v6yvqp7wf55qwa",
"ui://niy3ldiwl9mny",
"ui://ppu1wv76j4mf9j",
"ui://v6yvqp7wlyf1qx",
"ui://v6yvqp7wwyal80",
"ui://v6yvqp7wvt8rz0",
"ui://v6yvqp7wyfzf1h4",
"ui://ppu1wv76j4mf9k",
"ui://ppu1wv76j4mf9n",
"ui://v0j9abjygq7m7w",
"ui://vplxondscioehnd",
"ui://ppu1wv76j4mf9e",
@ -25,13 +32,21 @@
"test.device": "720p Phone",
"canvasColor": 10066329,
"auxline2": true,
"doc.activeDoc": "ui://27vd145bko559b",
"doc.activeDoc": "ui://v6yvqp7wwyal80",
"libview.twoColumn": false,
"libview.expandedNodes": [
"vplxonds",
"27vd145b",
"/",
"vplxonds",
"/invite/"
"ppu1wv76",
"/",
"ppu1wv76",
"/component/",
"yzaioi79",
"/",
"yzaioi79",
"/component/",
"yzaioi79",
"/component/tips/"
],
"auxline1": true,
"snapToGrid": true,

View File

@ -1,9 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<component size="140,36">
<displayList>
<loader id="n0_n1ry" name="n0" xy="0,0" size="77,35" aspect="true" url="ui://ppu1wv76j4mf8g" fill="scale" clearOnPublish="true">
<loader id="n0_n1ry" name="n0" xy="0,4" size="77,35" aspect="true" url="ui://ppu1wv76j4mf8g" fill="scale" clearOnPublish="true">
<relation target="" sidePair=""/>
</loader>
<text id="n2_ey1o" name="n2" xy="79,0" size="59,36" fontSize="26" color="#b25116" vAlign="middle" autoSize="shrink" text="100胡息"/>
<text id="n2_ey1o" name="n2" xy="80,-1" size="90,42" font="Microsoft YaHei" fontSize="28" color="#b25116" vAlign="middle" autoSize="shrink" text="100胡息"/>
</displayList>
</component>

View File

@ -9,13 +9,13 @@
<loader id="n3_n1ry" name="card_3" xy="0,124" pivot="0.5,0.5" size="55,67" group="n4_n1ry" aspect="true" rotation="180" fill="scale">
<gearDisplay controller="c1" pages="1,2"/>
</loader>
<loader id="n2_n1ry" name="card_2" xy="-2,76" pivot="0.5,0.5" size="59,73" group="n4_n1ry" aspect="true" rotation="180" fill="scale"/>
<loader id="n2_n1ry" name="card_2" xy="0,79" pivot="0.5,0.5" size="55,67" group="n4_n1ry" rotation="180" fill="scale"/>
<loader id="n0_n1ry" name="card_1" xy="0,34" pivot="0.5,0.5" size="55,67" group="n4_n1ry" aspect="true" rotation="180" fill="scale"/>
<group id="n4_n1ry" name="n4" xy="-2,34" size="59,202" group="n13_n1ry"/>
<group id="n4_n1ry" name="n4" xy="0,34" size="55,202" group="n13_n1ry"/>
<text id="n9_n1ry" name="card_type" xy="-2,227" pivot="0.5,0.5" size="57,41" group="n13_n1ry" rotation="180" fontSize="28" color="#b25116" align="center" vAlign="bottom" leading="0" autoSize="shrink" text="&#xA;"/>
<text id="n10_n1ry" name="card_huxi" xy="-3,-19" pivot="0.5,0.5" size="64,52" group="n13_n1ry" rotation="180" fontSize="32" color="#b25116" align="center" vAlign="middle" leading="0" autoSize="shrink" text=""/>
<group id="n13_n1ry" name="n13" xy="-3,-19" size="64,287"/>
<image id="n14_c4y2" name="n14" src="j4mf8f" fileName="component/clearing/image/hu_icon.png" xy="35,36" size="18,18" aspect="true">
<image id="n14_c4y2" name="n14" src="j4mf8f" fileName="component/clearing/image/hu_icon.png" xy="35,36" pivot="0.5,0.5" size="18,18" aspect="true" rotation="180">
<gearDisplay controller="hu" pages="1,2,3,4"/>
<gearXY controller="hu" pages="0,1,2,3,4" values="35,36|35,36|35,81|35,126|35,171"/>
</image>

View File

@ -1,20 +1,20 @@
<?xml version="1.0" encoding="utf-8"?>
<component size="1334,750">
<controller name="over" pages="0,,1,,2,,3," selected="0"/>
<controller name="over" pages="0,,1,,2,,3," selected="3"/>
<controller name="button" pages="0,,1," selected="0"/>
<controller name="sdk" pages="0,,1," selected="0"/>
<controller name="owner" pages="0,,1," selected="0"/>
<controller name="bank" pages="0,,1," selected="0"/>
<controller name="qipai" pages="0,,1," selected="0"/>
<controller name="xipai" pages="0,,1," selected="0"/>
<controller name="hudianpao" pages="0,,1,,2," selected="2"/>
<controller name="hudianpao" pages="0,,1,,2," selected="0"/>
<displayList>
<component id="n20_pt1r" name="win_base" pkg="27vd145b" src="e6awcd0" fileName="Win_Frame_Old.xml" xy="-5,860" size="1334,750" group="n70_dunj"/>
<image id="n72_p9qe" name="n72" src="o49p1d3" fileName="component/Main/component/new_ui/di_kuang.png" pkg="v6yvqp7w" xy="23,55" size="1296,687" group="n70_dunj">
<relation target="" sidePair="width-width"/>
</image>
<list id="n7_jt1k" name="player_list_2" xy="17,126" size="1300,428" group="n70_dunj" layout="row" colGap="51" defaultItem="ui://ppu1wv76j4mf9f" align="center" vAlign="middle">
<gearDisplay controller="over" pages="1"/>
<gearDisplay controller="over" pages="1,2"/>
<item/>
<item/>
<item/>
@ -49,49 +49,6 @@
<group id="n51_fmkv" name="n51" xy="348,617" size="620,90" group="n70_dunj" advanced="true">
<gearDisplay controller="over" pages="1"/>
</group>
<list id="n52_rx2e" name="card_list_3" xy="137,179" size="261,177" group="n55_rx2e" layout="row" colGap="1" defaultItem="ui://ppu1wv76j4mf9l" vAlign="middle">
<item/>
<item/>
<item/>
<item/>
<item/>
<item/>
<item/>
</list>
<list id="n53_rx2e" name="card_list_2" xy="537,179" size="261,177" group="n55_rx2e" layout="row" colGap="1" defaultItem="ui://ppu1wv76j4mf9l" vAlign="middle">
<item/>
<item/>
<item/>
<item/>
<item/>
<item/>
<item/>
</list>
<list id="n54_rx2e" name="card_list_1" xy="936,179" size="261,177" group="n55_rx2e" layout="row" colGap="1" vAlign="middle">
<item url="ui://ppu1wv76j4mf9l"/>
<item url="ui://ppu1wv76j4mf9l"/>
<item url="ui://ppu1wv76j4mf9l"/>
<item url="ui://ppu1wv76j4mf9l"/>
<item url="ui://ppu1wv76j4mf9l"/>
<item url="ui://ppu1wv76j4mf9l"/>
<item url="ui://ppu1wv76j4mf9l"/>
</list>
<text id="n59_fnpw" name="222ll" xy="113,139" size="103,33" group="n61_fnpw" fontSize="26" color="#b25116" vAlign="middle" autoSize="none" text="弃牌:"/>
<list id="n63_fnpw" name="qipai_listl" xy="138,181" size="298,157" group="n61_fnpw" layout="row" colGap="1" defaultItem="ui://ppu1wv76j4mf9e" vAlign="middle">
<item/>
<item/>
<item/>
<item/>
<item/>
<item/>
<item/>
</list>
<group id="n61_fnpw" name="n61" xy="113,139" size="323,199" group="n55_rx2e" advanced="true">
<gearDisplay controller="qipai" pages="1"/>
</group>
<group id="n55_rx2e" name="n55" xy="113,139" size="1084,217" group="n70_dunj" advanced="true">
<gearDisplay controller="over" pages="2"/>
</group>
<component id="n66_pwj4" name="btn_close" src="vg2c4" fileName="buttons/Btn_close.xml" pkg="27vd145b" xy="1219,13" group="n70_dunj" controller="style,0">
<gearDisplay controller="over" pages="1"/>
</component>
@ -113,7 +70,10 @@
<gearDisplay controller="button" pages="1"/>
<Button icon="ui://27vd145baen8chr"/>
</component>
<image id="n33_n1ry" name="n33" src="j4mf9m" fileName="component/clearing/di.png" xy="93,447" size="1173,289" group="n45_n1ry" visible="false"/>
<list id="n30_n1ry" name="player_list" xy="60,455" size="810,205" group="n70_dunj" layout="row" selectionMode="none" colGap="221" defaultItem="ui://ppu1wv76j4mf9d" autoClearItems="true">
<item/>
<item/>
</list>
<image id="n43_n1ry" name="n43" src="lwcl2m" fileName="font/images/head/index_bg_01.png" pkg="27vd145b" xy="90,206" size="90,88" group="n44_n1ry" aspect="true" visible="false"/>
<image id="n77_p9qe" name="n77" src="aen8chq" fileName="component/head/image/touxiang_di_img.png" pkg="27vd145b" xy="98,211" size="78,78" group="n44_n1ry"/>
<component id="n78_p9qe" name="btn_head" src="do2f1z" fileName="component/head/Head2.xml" pkg="27vd145b" xy="96,210" size="84,84" group="n44_n1ry"/>
@ -125,14 +85,11 @@
<gearDisplay controller="owner" pages="1"/>
</image>
<text id="n88_rbpg" name="WinerID" xy="57,357" size="151,39" group="n44_n1ry" fontSize="28" color="#b25116" align="center" vAlign="middle" autoSize="none" singleLine="true" text="id"/>
<group id="n44_n1ry" name="n44" xy="57,178" size="153,218" group="n45_n1ry"/>
<text id="n31_n1ry" name="111" xy="49,69" size="115,53" group="n45_n1ry" font="Microsoft YaHei" fontSize="32" color="#ffffcc" vAlign="middle" autoSize="none" text="底牌:"/>
<list id="n30_n1ry" name="player_list" xy="60,455" size="946,205" group="n45_n1ry" layout="row" selectionMode="none" colGap="221" defaultItem="ui://ppu1wv76j4mf9d" autoClearItems="true">
<item/>
<item/>
</list>
<list id="n32_n1ry" name="dipai_list" xy="167,61" size="1101,64" group="n45_n1ry" layout="row" selectionMode="none" overflow="scroll" scroll="horizontal" colGap="5" defaultItem="ui://v6yvqp7wyfzf1h4" vAlign="middle"/>
<text id="n39_n1ry" name="huxi" xy="989,331" size="257,41" group="n45_n1ry" fontSize="28" color="#924e00" vAlign="middle" autoSize="none" bold="true" singleLine="true" text="胡息:+133&#xA;"/>
<group id="n44_n1ry" name="n44" xy="57,178" size="153,218" group="n70_dunj"/>
<image id="n33_n1ry" name="n33" src="j4mf9m" fileName="component/clearing/di.png" xy="93,447" size="1173,289" group="n45_n1ry" visible="false"/>
<text id="n31_n1ry" name="111" xy="45,66" size="115,53" group="n45_n1ry" font="Microsoft YaHei" fontSize="32" color="#ffffcc" vAlign="middle" autoSize="none" text="底牌:"/>
<list id="n32_n1ry" name="dipai_list" xy="171,66" size="1101,64" group="n45_n1ry" layout="row" selectionMode="none" overflow="scroll" scroll="horizontal" colGap="5" defaultItem="ui://v6yvqp7wyfzf1h4" vAlign="middle"/>
<text id="n39_n1ry" name="huxi" xy="989,331" size="257,41" group="n45_n1ry" fontSize="28" color="#924e00" vAlign="middle" autoSize="none" bold="true" singleLine="true" text=""/>
<list id="n46_n1ry" name="fullname_list" xy="224,136" size="143,279" group="n45_n1ry" selectionMode="none" lineGap="5" colGap="-10" defaultItem="ui://ppu1wv76j4mf9n" autoClearItems="true">
<item/>
<item/>
@ -141,11 +98,11 @@
<item/>
<item/>
</list>
<list id="n41_n1ry" name="card_list" xy="374,139" pivot="0.5,0.5" size="605,276" group="n45_n1ry" rotation="180" layout="row" selectionMode="none" colGap="5" defaultItem="ui://ppu1wv76j4mf9k" align="center" vAlign="bottom" autoClearItems="true">
<list id="n41_n1ry" name="card_list" xy="374,138" pivot="0.5,0.5" size="605,276" group="n45_n1ry" rotation="180" layout="row" selectionMode="none" colGap="5" defaultItem="ui://ppu1wv76j4mf9k" align="center" vAlign="bottom" autoClearItems="true">
<item/>
<item/>
</list>
<text id="n42_n1ry" name="score" xy="986,376" size="256,41" group="n45_n1ry" fontSize="30" color="#924e00" vAlign="middle" autoSize="none" bold="true" singleLine="true" text="总分:+2333&#xA;"/>
<text id="n42_n1ry" name="score" xy="986,376" size="256,42" group="n45_n1ry" fontSize="30" color="#924e00" vAlign="middle" autoSize="none" bold="true" singleLine="true" text=""/>
<text id="n56_fnpw" name="222" xy="767,567" size="82,37" group="n58_fnpw" fontSize="26" color="#b25116" vAlign="middle" text="弃牌:"/>
<list id="n62_fnpw" name="qipai_list" xy="955,479" size="298,157" group="n58_fnpw" layout="row" colGap="1" defaultItem="ui://ppu1wv76j4mf9e" vAlign="middle">
<item/>
@ -159,12 +116,12 @@
<group id="n58_fnpw" name="n58" xy="767,479" size="486,157" group="n45_n1ry" advanced="true">
<gearDisplay controller="qipai" pages="1"/>
</group>
<text id="n67_w06x" name="tili_score" xy="983,262" size="253,49" group="n45_n1ry" visible="false" fontSize="36" color="#f6ff00" vAlign="middle" autoSize="none" bold="true" singleLine="true" text="+2333&#xA;"/>
<text id="n67_w06x" name="tili_score" xy="983,262" size="253,49" group="n45_n1ry" visible="false" fontSize="36" color="#f6ff00" vAlign="middle" autoSize="none" bold="true" singleLine="true" text=""/>
<text id="n68_w06x" name="tili_title" xy="986,350" size="75,41" group="n45_n1ry" visible="false" fontSize="28" color="#b25116" vAlign="middle" autoSize="none" bold="true" text=""/>
<text id="n69_w06x" name="yidashangxian" xy="987,395" size="164,30" group="n45_n1ry" fontSize="28" color="#893119" vAlign="middle" autoSize="none" text=""/>
<image id="n73_p9qe" name="n73" src="j4mf9c" fileName="component/clearing/images/fengexian_js.png" xy="66,432" size="1231,4" group="n45_n1ry"/>
<text id="n89_rbpg" name="tili_fan" xy="983,219" size="253,44" group="n45_n1ry" visible="false" fontSize="28" color="#924e00" vAlign="middle" autoSize="none" bold="true" singleLine="true" text="+2333&#xA;"/>
<group id="n45_n1ry" name="n45" xy="49,61" size="1248,675" group="n70_dunj" advanced="true">
<text id="n89_rbpg" name="tili_fan" xy="983,219" size="253,44" group="n45_n1ry" visible="false" fontSize="28" color="#924e00" vAlign="middle" autoSize="none" bold="true" singleLine="true" text=""/>
<group id="n45_n1ry" name="n45" xy="45,66" size="1252,670" group="n70_dunj" advanced="true">
<gearDisplay controller="over" pages="0"/>
</group>
<component id="n83_gzvy" name="btn_xipai" src="gzvy9r" fileName="component/clearing/btn_xp.xml" xy="955,660" group="n64_pwj4"/>
@ -179,13 +136,58 @@
<image id="n86_rbpg" name="n86" src="rbpg9w" fileName="component/clearing/images/hu.png" xy="1022,131" size="221,194" group="n70_dunj">
<gearDisplay controller="hudianpao" pages="1,2"/>
</image>
<image id="n87_rbpg" name="n87" src="rbpga3" fileName="component/clearing/images/dianpao.png" xy="1057,508" size="157,97" group="n70_dunj">
<image id="n87_rbpg" name="n87" src="rbpga3" fileName="component/clearing/images/dianpao.png" xy="1057,464" size="157,97" group="n70_dunj">
<gearDisplay controller="hudianpao" pages="2"/>
</image>
<text id="n90_dbve" name="fangpaoscore" xy="973,577" size="310,72" group="n70_dunj" font="Microsoft YaHei" fontSize="36" color="#ffffff" align="center" vAlign="middle" autoSize="none" text="放炮扣息:-30">
<gearDisplay controller="hudianpao" pages="2"/>
</text>
<list id="n52_rx2e" name="card_list_3" xy="137,179" size="261,177" group="n55_rx2e" layout="row" colGap="1" defaultItem="ui://ppu1wv76j4mf9e" vAlign="middle">
<item/>
<item/>
<item/>
</list>
<list id="n53_rx2e" name="card_list_2" xy="537,179" pivot="0.5,0.5" size="261,177" group="n55_rx2e" rotation="180" layout="row" colGap="1" defaultItem="ui://ppu1wv76j4mf9e" vAlign="middle">
<item/>
<item/>
<item/>
<item/>
<item/>
<item/>
<item/>
</list>
<list id="n54_rx2e" name="card_list_1" xy="936,179" size="261,177" group="n55_rx2e" layout="row" colGap="1" defaultItem="ui://ppu1wv76j4mf9e" vAlign="middle">
<item/>
<item/>
<item/>
<item url="ui://ppu1wv76j4mf9l"/>
<item url="ui://ppu1wv76j4mf9l"/>
<item url="ui://ppu1wv76j4mf9l"/>
<item url="ui://ppu1wv76j4mf9l"/>
</list>
<text id="n59_fnpw" name="222ll" xy="113,139" size="103,33" group="n61_fnpw" fontSize="26" color="#b25116" vAlign="middle" autoSize="none" text="弃牌:"/>
<list id="n63_fnpw" name="qipai_listl" xy="138,181" size="298,157" group="n61_fnpw" layout="row" colGap="1" defaultItem="ui://ppu1wv76j4mf9e" vAlign="middle">
<item/>
<item/>
<item/>
<item/>
<item/>
<item/>
<item/>
</list>
<group id="n61_fnpw" name="n61" xy="113,139" size="323,199" group="n55_rx2e" advanced="true">
<gearDisplay controller="qipai" pages="1"/>
</group>
<group id="n55_rx2e" name="n55" xy="113,139" size="1084,217" group="n70_dunj" advanced="true">
<gearDisplay controller="over" pages="2"/>
</group>
<text id="n91_n7o4" name="n91" xy="915,291" size="345,91" group="n70_dunj" font="Microsoft YaHei" fontSize="40" color="#000066" align="center" vAlign="middle" autoSize="none" bold="true" text="荒庄 : -10 胡息">
<gearDisplay controller="over" pages="2"/>
</text>
<group id="n70_dunj" name="n70" xy="-5,0" size="1334,1610" advanced="true">
<gearDisplay controller="over" pages="0,1,2"/>
</group>
<component id="n71_dunj" name="big_result" src="aen81b0" fileName="component/clearing/result_zipai_main.xml" pkg="v6yvqp7w" xy="0,0">
<component id="n71_dunj" name="big_result" src="aen81b0" fileName="component/clearing/result_zipai_main.xml" pkg="v6yvqp7w" xy="-10,4">
<gearDisplay controller="over" pages="3"/>
</component>
</displayList>

View File

@ -6,7 +6,7 @@
<image id="n21_n1ry" name="n21" src="lwcl2m" fileName="font/images/head/index_bg_01.png" pkg="27vd145b" xy="27,28" size="89,87" group="n20_n1ry" aspect="true" visible="false"/>
<image id="n27_p9qe" name="n27" src="aen8chq" fileName="component/head/image/touxiang_di_img.png" pkg="27vd145b" xy="34,32" size="78,78" group="n20_n1ry"/>
<component id="n28_p9qe" name="btn_head" src="do2f1z" fileName="component/head/Head2.xml" pkg="27vd145b" xy="30,30" size="84,84" group="n20_n1ry"/>
<text id="n6_fux2" name="score" xy="142,49" size="125,50" group="n20_n1ry" fontSize="28" color="#b25116" vAlign="middle" autoSize="none" text="-66"/>
<text id="n6_fux2" name="score" xy="142,49" size="125,50" group="n20_n1ry" visible="false" fontSize="28" color="#b25116" vAlign="middle" autoSize="none" text="-66"/>
<image id="n18_jqcw" name="n18" pkg="27vd145b" src="e54q3w" fileName="images/head/bank.png" xy="0,0" size="100,100" group="n20_n1ry" scale="0.8,0.8" visible="false">
<gearDisplay controller="bank" pages="1"/>
</image>
@ -20,7 +20,7 @@
<text id="n30_rbpg" name="txt_userid" xy="55,144" size="125,39" group="n20_n1ry" fontSize="28" color="#b25116" vAlign="middle" autoSize="none" text="1235656"/>
<text id="n31_rbpg" name="tili_id" xy="1,143" size="56,37" group="n20_n1ry" fontSize="26" color="#b25116" text="ID"/>
<group id="n20_n1ry" name="n20" xy="0,0" size="267,220"/>
<list id="n22_ey1o" name="card_list" xy="332,1" pivot="0.5,0.5" size="261,177" rotation="180" layout="row" colGap="1" defaultItem="ui://ppu1wv76j4mf9e" align="right">
<list id="n22_ey1o" name="card_list" xy="316,1" pivot="0.5,0.5" size="261,177" rotation="180" layout="row" colGap="1" defaultItem="ui://ppu1wv76j4mf9e" align="right">
<item/>
<item/>
<item/>

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<component size="1334,750" designImage="ui://3vytbifonu0l2f" designImageOffsetX="-200" designImageOffsetY="-100">
<controller name="state" pages="0,准备状态,1,游戏状态,2,回合间状态,3,回放状态" selected="0"/>
<controller name="state" pages="0,准备状态,1,游戏状态,2,回合间状态,3,回放状态" selected="3"/>
<controller name="sdk" pages="0,,1," selected="0"/>
<controller name="action" pages="2,空,0,准备,1,开始" selected="0"/>
<controller name="jushu" pages="0,,1," selected="0"/>
@ -11,12 +11,12 @@
<gearColor controller="bg_state" pages="0,1" values="#330000,#296137|#655c6a,#322e34" default="#367c7d,#235557"/>
<relation target="" sidePair="center-center"/>
</text>
<image id="n177_cbxl" name="n177" src="60xf1g2" fileName="component/Main/images/zipai3.png" xy="574,84">
<image id="n177_cbxl" name="n177" src="60xf1g2" fileName="component/Main/images/zipai3.png" xy="616,84">
<gearDisplay controller="state" pages="1,3"/>
<relation target="" sidePair="center-center"/>
</image>
<loader id="n156_mk2u" name="jiang" xy="456,85" size="65,75" fill="scaleFree"/>
<component id="n151_8th3" name="player_card_info2" src="f55qw5" fileName="component/Main/component/Player_card_info_2.xml" xy="149,52" size="447,369">
<component id="n151_8th3" name="player_card_info2" src="f55qw5" fileName="component/Main/component/Player_card_info_2.xml" xy="143,52" size="447,369">
<gearDisplay controller="state" pages="1,3"/>
<relation target="n147_nu0l" sidePair="left-left"/>
</component>
@ -24,10 +24,10 @@
<gearDisplay controller="state" pages="1,3"/>
<relation target="" sidePair="width-width,bottom-bottom"/>
</component>
<component id="n147_nu0l" name="player_info2" src="f55qw7" fileName="component/Main/component/PlayerHead_2.xml" xy="17,82">
<component id="n147_nu0l" name="player_info2" src="f55qw7" fileName="component/Main/component/PlayerHead_2.xml" xy="11,71">
<relation target="" sidePair="left-left,leftext-left"/>
</component>
<component id="n7" name="player_info1" src="f55qw4" fileName="component/Main/component/PlayerHead_1.xml" xy="20,524" size="189,67">
<component id="n7" name="player_info1" src="f55qw4" fileName="component/Main/component/PlayerHead_1.xml" xy="8,570" size="189,67">
<gearXY controller="state" pages="0,1,2,3" values="20,524|22,548|8,570|8,570"/>
<relation target="" sidePair="left-left,leftext-left"/>
</component>
@ -97,10 +97,10 @@
<gearDisplay controller="state" pages="3"/>
<relation target="" sidePair="center-center"/>
</component>
<image id="n174_fgao" name="zipai1" src="fgao1db" fileName="component/images/zipaic2.png" xy="573,114" visible="false">
<image id="n174_fgao" name="zipai1" src="fgao1db" fileName="component/images/zipaic2.png" xy="621,114" visible="false">
<relation target="" sidePair="center-center"/>
</image>
<image id="n175_fgao" name="zipai2" src="fgao1db" fileName="component/images/zipaic2.png" xy="572,111" visible="false">
<image id="n175_fgao" name="zipai2" src="fgao1db" fileName="component/images/zipaic2.png" xy="617,111" visible="false">
<relation target="" sidePair="center-center"/>
</image>
<component id="n162_o49p" name="btn_getRoomNum" src="f7zu1aw" fileName="component/room/btn_invite.xml" xy="524,286" group="n163_o49p" visible="false" touchable="false">
@ -116,7 +116,7 @@
<component id="n179_kxwj" name="btn_distance" src="kxwjhyc" fileName="component/gps/btn_distance_new.xml" pkg="27vd145b" xy="1248,262" visible="false" touchable="false">
<gearDisplay controller="state" pages="0,1,2"/>
</component>
<text id="n27" name="remaining_card" xy="575,90" size="165,45" fontSize="32" color="#ffffff" align="center" autoSize="none" text="剩余20张">
<text id="n27" name="remaining_card" xy="625,93" size="165,45" fontSize="32" color="#ffffff" align="center" autoSize="none" text="剩余20张">
<gearDisplay controller="state" pages="1,3"/>
<relation target="" sidePair="center-center"/>
</text>

View File

@ -1,11 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<component size="200,750" opaque="false" initName="player_card_info">
<displayList>
<component id="n52_oske" name="area_handcard_list" src="djzo18" fileName="component/Component1.xml" pkg="27vd145b" xy="-186,384" size="300,175" touchable="false"/>
<list id="n47_lr5d" name="area_fz_list" xy="16,2" pivot="0.5,0.5" size="315,173" rotation="180" layout="row" scroll="horizontal" colGap="5" defaultItem="ui://v6yvqp7wlr5d30" align="right" vAlign="bottom"/>
<list id="n48_lr5d" name="windcard_list" xy="16,196" size="280,78" layout="flow_hz" selectionMode="none" scroll="horizontal" lineGap="1" colGap="1" defaultItem="ui://v6yvqp7wf55qvw" vAlign="bottom"/>
<component id="n50_n1ry" name="mask_liangpai" src="djzo18" fileName="component/Component1.xml" pkg="27vd145b" xy="200,150" size="5,5"/>
<component id="n25" name="area_outcard_list" src="djzo18" fileName="component/Component1.xml" pkg="27vd145b" xy="322,19" size="67,182" touchable="false"/>
<component id="n51_n7o4" name="area_handcard_list" src="djzo18" fileName="component/Component1.xml" pkg="27vd145b" xy="176,86" size="300,175" touchable="false"/>
</displayList>
<transition name="t0">
<item time="0" type="XY" target="n25" tween="true" startValue="-63,105" endValue="121.45,295" duration="4"/>

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 30 KiB

After

Width:  |  Height:  |  Size: 14 KiB

View File

@ -21,8 +21,8 @@
<gearXY controller="have_flag" pages="0,1" values="42,114|42,147"/>
</image>
<image id="n8_tjnv" name="n8" src="aen81bl" fileName="component/clearing/image/fgx.png" xy="41,354" visible="false"/>
<list id="n9_tjnv" name="list_param" xy="42,103" size="209,192" overflow="scroll" lineGap="3" defaultItem="ui://v6yvqp7waen81bo" align="center">
<gearXY controller="have_flag" pages="0,1" values="42,103|50,138"/>
<list id="n9_tjnv" name="list_param" xy="39,103" size="212,248" overflow="scroll" lineGap="-4" defaultItem="ui://v6yvqp7waen81bo" align="center">
<gearXY controller="have_flag" pages="0,1" values="39,103|50,138"/>
<item/>
<item/>
<item/>
@ -33,9 +33,6 @@
<text id="n11_tjnv" name="txt_positive" xy="143,349" size="135,49" fontSize="40" color="#fff5b2" align="center" vAlign="middle" autoSize="none" strokeColor="#d84f19" text="+200">
<gearDisplay controller="pn" pages="1"/>
</text>
<text id="n12_tjnv" name="txt_navigate" xy="143,349" size="136,49" fontSize="40" color="#cccccc" align="center" vAlign="middle" autoSize="none" strokeColor="#663300" text="-1000">
<gearDisplay controller="pn" pages="0"/>
</text>
<list id="n18_n12b" name="flag" xy="40,-26" size="231,25" visible="false" layout="row" overflow="scroll" colGap="10" defaultItem="ui://v6yvqp7waen81bc" align="center" vAlign="middle"/>
<component id="n20_aen8" name="head" src="aen81bp" fileName="component/clearing/result_zipai_head.xml" xy="30,11"/>
<image id="n22_aen8" name="n22" src="aen81bu" fileName="component/clearing/image/大赢家.png" xy="143,-14" visible="false">
@ -48,12 +45,15 @@
<gearDisplay controller="entrust" pages="1"/>
</image>
<image id="n23_jvdt" name="n23" src="jvdt1g5" fileName="component/clearing/image/战绩.png" xy="45,345"/>
<text id="n25_rbpg" name="txt_userid" xy="17,65" size="101,36" fontSize="22" color="#333333" vAlign="middle" autoSize="none" text="123456"/>
<text id="n27_rbpg" name="txt_niaofen" xy="61,299" size="175,36" fontSize="26" color="#651d07" align="center" vAlign="middle" autoSize="none" text="鸟分:"/>
<text id="n25_rbpg" name="txt_userid" xy="17,65" size="101,36" fontSize="22" color="#333333" vAlign="middle" autoSize="none" text=""/>
<text id="n27_rbpg" name="txt_niaofen" xy="61,299" size="175,36" visible="false" fontSize="26" color="#651d07" align="center" vAlign="middle" autoSize="none" text="鸟分:"/>
<image id="n28_rbpg" name="n28" src="aen81bd" fileName="component/clearing/image/标签.png" xy="13,1" size="58,28" group="n30_rbpg"/>
<text id="n29_rbpg" name="n29" xy="17,-1" size="50,29" group="n30_rbpg" fontSize="20" color="#ffffff" align="center" vAlign="middle" autoSize="none" text="打鸟"/>
<group id="n30_rbpg" name="niaodis" xy="13,-1" size="58,30" advanced="true">
<gearDisplay controller="niao" pages="1"/>
</group>
<text id="n12_tjnv" name="txt_navigate" xy="143,355" size="136,49" fontSize="40" color="#cccccc" align="center" vAlign="middle" autoSize="none" strokeColor="#663300" text="-1000">
<gearDisplay controller="pn" pages="0"/>
</text>
</displayList>
</component>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<component size="220,45">
<displayList>
<text id="n1_tjnv" name="txt_value" xy="217,23" pivot="1,0.5" anchor="true" size="79,33" fontSize="26" color="#a02808" align="center" vAlign="middle" leading="1" autoSize="none" text="100"/>
<text id="n0_tjnv" name="txt_key" xy="-1,22" pivot="0,0.5" anchor="true" size="129,33" fontSize="26" color="#a02808" vAlign="middle" leading="1" autoSize="none" text="胡牌次数"/>
<text id="n1_tjnv" name="txt_value" xy="217,23" pivot="1,0.5" anchor="true" size="79,48" fontSize="30" color="#a02808" align="center" vAlign="middle" leading="1" autoSize="none" text="100"/>
<text id="n0_tjnv" name="txt_key" xy="-3,22" pivot="0,0.5" anchor="true" size="141,46" fontSize="30" color="#a02808" vAlign="middle" leading="1" autoSize="none" text="胡牌次数"/>
</displayList>
</component>

View File

@ -858,6 +858,8 @@
<image id="rbpg1h6" name="eff_hu.png" path="/component/chi_peng_effect/" exported="true"/>
<image id="rbpg1h7" name="eff_peng.png" path="/component/chi_peng_effect/" exported="true"/>
<image id="dbve1h8" name="newop_11.png" path="/component/chi_peng_effect/" exported="true" smoothing="false"/>
<image id="dbve1h9" name="eff_pao.png" path="/component/chi_peng_effect/" exported="true"/>
<image id="dbve1ha" name="newop_3.png" path="/component/chi_peng_effect/" exported="true"/>
</resources>
<publish name="Main_RunBeard" path="..\wb_unity_pro\Assets\ART\base\main_zipai\ui" packageCount="2"/>
</packageDescription>

Binary file not shown.

View File

@ -14,14 +14,14 @@ MonoBehaviour:
m_EditorClassIdentifier:
m_PixelRect:
serializedVersion: 2
x: -8.666667
y: 54.666668
width: 875.3334
x: 12
y: 66.66667
width: 876.6667
height: 854.6667
m_ShowMode: 4
m_Title:
m_RootView: {fileID: 4}
m_MinSize: {x: 875, y: 542}
m_MinSize: {x: 875, y: 300}
m_MaxSize: {x: 10000, y: 10000}
m_Maximized: 0
--- !u!114 &2
@ -41,7 +41,7 @@ MonoBehaviour:
serializedVersion: 2
x: 0
y: 384
width: 876
width: 877
height: 421
m_MinSize: {x: 101, y: 121}
m_MaxSize: {x: 4001, y: 4021}
@ -71,7 +71,7 @@ MonoBehaviour:
serializedVersion: 2
x: 0
y: 0
width: 876
width: 877
height: 805
m_MinSize: {x: 201, y: 342}
m_MaxSize: {x: 4001, y: 8042}
@ -97,9 +97,9 @@ MonoBehaviour:
serializedVersion: 2
x: 0
y: 0
width: 876
width: 877
height: 855
m_MinSize: {x: 875, y: 542}
m_MinSize: {x: 875, y: 300}
m_MaxSize: {x: 10000, y: 10000}
--- !u!114 &5
MonoBehaviour:
@ -118,7 +118,7 @@ MonoBehaviour:
serializedVersion: 2
x: 0
y: 0
width: 876
width: 877
height: 30
m_MinSize: {x: 0, y: 0}
m_MaxSize: {x: 0, y: 0}
@ -141,7 +141,7 @@ MonoBehaviour:
serializedVersion: 2
x: 0
y: 30
width: 876
width: 877
height: 805
m_MinSize: {x: 201, y: 342}
m_MaxSize: {x: 4001, y: 8042}
@ -164,7 +164,7 @@ MonoBehaviour:
serializedVersion: 2
x: 0
y: 835
width: 876
width: 877
height: 20
m_MinSize: {x: 0, y: 0}
m_MaxSize: {x: 0, y: 0}
@ -185,7 +185,7 @@ MonoBehaviour:
serializedVersion: 2
x: 0
y: 0
width: 876
width: 877
height: 384
m_MinSize: {x: 201, y: 221}
m_MaxSize: {x: 4001, y: 4021}
@ -216,9 +216,9 @@ MonoBehaviour:
m_Tooltip:
m_Pos:
serializedVersion: 2
x: -8.666667
y: 468.6667
width: 875
x: 12
y: 480.6667
width: 876
height: 400
m_ViewDataDictionary: {fileID: 0}
--- !u!114 &10
@ -354,7 +354,7 @@ MonoBehaviour:
scrollPos: {x: 0, y: 1380}
m_SelectedIDs:
m_LastClickedID: 0
m_ExpandedIDs: ffffffff00000000e82c0000ac360000f03b0000f23b0000f43b0000f63b0000f83b0000fa3b0000fc3b0000fe3b0000003c0000023c0000043c0000063c0000083c00000a3c00000c3c00000e3c0000103c0000123c0000143c0000163c0000183c00001a3c00001c3c00001e3c0000203c0000223c0000243c0000263c0000283c00002a3c00002c3c00002e3c0000303c0000323c0000343c0000363c0000383c00003a3c00003c3c00003e3c0000403c0000423c0000443c0000463c0000483c00004a3c00004c3c00004e3c0000503c0000523c0000543c0000
m_ExpandedIDs: 00000000e82c0000ac360000f03b0000f23b0000f43b0000f63b0000f83b0000fa3b0000fc3b0000fe3b0000003c0000023c0000043c0000063c0000083c00000a3c00000c3c00000e3c0000103c0000123c0000143c0000163c0000183c00001a3c00001c3c00001e3c0000203c0000223c0000243c0000263c0000283c00002a3c00002c3c00002e3c0000303c0000323c0000343c0000363c0000383c00003a3c00003c3c00003e3c0000403c0000423c0000443c0000463c0000483c00004a3c00004c3c00004e3c0000503c0000523c0000543c0000
m_RenameOverlay:
m_UserAcceptedRename: 0
m_Name:
@ -431,9 +431,9 @@ MonoBehaviour:
m_Tooltip:
m_Pos:
serializedVersion: 2
x: -8.666667
y: 84.66667
width: 875
x: 12
y: 96.66667
width: 876
height: 363
m_ViewDataDictionary: {fileID: 0}
m_SerializedViewNames: []
@ -480,23 +480,23 @@ MonoBehaviour:
serializedVersion: 2
x: 0
y: 21
width: 875
width: 876
height: 342
m_Scale: {x: 0.47499996, y: 0.475}
m_Translation: {x: 437.5, y: 171}
m_Scale: {x: 0.475, y: 0.475}
m_Translation: {x: 438, y: 171}
m_MarginLeft: 0
m_MarginRight: 0
m_MarginTop: 0
m_MarginBottom: 0
m_LastShownAreaInsideMargins:
serializedVersion: 2
x: -921.0527
x: -922.1053
y: -360
width: 1842.1053
width: 1844.2106
height: 720
m_MinimalGUI: 1
m_defaultScale: 0.475
m_LastWindowPixelSize: {x: 1312.5, y: 544.5}
m_LastWindowPixelSize: {x: 1314, y: 544.5}
m_ClearInEditMode: 1
m_NoCameraWarning: 1
m_LowResolutionForAspectRatios: 00000001000000000000

Binary file not shown.

View File

@ -1,2 +0,0 @@
Base path: 'C:/Program Files/Unity/Hub/Editor/2019.4.10f1/Editor/Data', plugins path 'C:/Program Files/Unity/Hub/Editor/2019.4.10f1/Editor/Data/PlaybackEngines'
Cmd: initializeCompiler