|
- -- 茶馆桌子界面Layout
- require("luaScript.SubGameFunctions.SubGameFunc_club")
- local ClubTable = class("ClubTable" , cc.UIView);
- local ClubDefine = require("luaScript.Protocol.Club.ClubDefine")
-
- function ClubTable:ctor(clubId)
- ClubTable.super.ctor(self)
-
- self:loadUI()
-
- self.clubId = clubId;
-
- app.club_php.clubID = clubId
-
- --单个茶馆数据
- self.clubInfo = app.club_php.clubList[clubId]
-
- -- 页码
- self.curPage = 1
-
- -- 所有桌子的节点
- self.allTableItem = {}
-
- self.first = true
-
- self.inView = ClubDefine.View.BAOMING
-
- if self.clubInfo.isArena ~= ClubDefine.MATCH_SWITCH.PEOPLE_CEST_OPEN then
- -- 先隐藏CEST相关资源
- self.ui.Items.Layout_Cest:setVisible(false);
- self.ui.Items.Layout_CestInfo:setVisible(false);
- self.ui.Items.Layout_cest_bottom:setVisible(false);
- self.ui.Items.Layout_bisai_status:setVisible(false);
- end
-
- end
-
- function ClubTable:loadUI()
- local ui = loadUI("res/ui/ui_club/ui_club_table.ui")
- self.ui = ui
- self:addChild(ui)
-
- self.srcTableScrollowSize = self.ui.Items.ScrollView:getContentSize()
- end
-
- function ClubTable:onEnter()
- ClubTable.super.onEnter(self)
-
- setInClubRoom(true)
- --适配
- --autoAdaptWidth(self.ui.Items.ScrollView)
-
- autoAdaptWidth(self.ui.Items.ImageView_down_bg)
- autoAdaptHeight(self.ui.Items.Layout_LeftGame)
- autoAdaptHeight(self.ui.Items.ImageView_LeftGame)
- autoAdaptHeight(self.ui.Items.ScrollView_GameList)
-
- --设置默认界面(第一次进入需要请求包间数据,所以类型为新增包间)
- self:setDefault()
-
- --设置自己的游戏状态
- setMyGameStatus(false)
-
- --按钮注册事件
- self:registerButton()
-
- --监听事件
- self:tableBindEvent()
-
- --更新桌子
- self:updateTableList({clubId = self.clubId})
-
- --更换桌布
- if self.clubInfo.club_bgprop and table.nums(self.clubInfo.club_bgprop) > 0 then
- self:setTableImg(self.clubInfo.club_bgprop.prop_id)
- end
-
- self:requestPlayerList()
-
- --请求茶馆桌子数据
- app.club_php:requestClubHome(self.clubInfo.clubId,gameId,ruleId)
-
- self:initBoradcastView()
-
- -- todo lwqcest
- -- self:initClubCest()
- end
-
- function ClubTable:initPlayerInfo()
- --读取配置
- self.clubData = self:loadGameInfoFromFile()
- local gameId = 0
- local ruleId = 0
- if self.clubInfo.mode == ClubDefine.BaoJianType.ManyRooms then
- if self.clubData and self.clubData[tostring(self.clubId)] then
- gameId = self.clubData[tostring(self.clubId)].gameId
- ruleId = self.clubData[tostring(self.clubId)].ruleId
- else
- if self.clubData and not self.clubData[tostring(self.clubId)] then
- self.clubData[tostring(self.clubId)] = {}
- else
- self.clubData = {}
- end
- end
- elseif self.clubInfo.mode == ClubDefine.BaoJianType.Normal then
- self.clubData = {}
- gameId = self.clubInfo.settings.gameId
- ruleId = self.clubInfo.settings.baoJianId
- end
-
- --保存到内存
- app.club_php:setSelectGameId(gameId)
- app.club_php:setSelectBaoJianId(ruleId)
-
- -- 茶馆名
- local nickname = getShortNameByLength(self.clubInfo.clubName,5)
- self.ui.Items.Text_name:setText(nickname)
-
- --club id
- local idStr = string.format("ID:%d",self.clubInfo.clubId)
- self.ui.Items.Text_id:setText(idStr)
- -- 根据条件隐藏茶馆id
- local cliext = self.clubInfo.groupext and self.clubInfo.groupext.cliext
- if not cliext or not cliext.is_hideGid or (cliext and cliext.is_hideGid == 1) then
- if tonumber(self.clubInfo.role) ~= ClubDefine.Job.Manager and tonumber(self.clubInfo.role) ~= ClubDefine.Job.Creator then
- self.ui.Items.Text_id:setVisible(false)
- end
- end
-
- -- 房卡数量
- self.ui.Items.Text_FangKa:bind(app.user.loginInfo, "curCardNum", function()
- self.ui.Items.Text_FangKa:setText(tostring(app.user.loginInfo.curCardNum))
- end)
- end
-
- -- 从本地读取上一次游戏选择的信息(gameId,ruleId)
- function ClubTable:loadGameInfoFromFile()
- local locString = loadStringFromFile("clubData.json")
- if not locString or locString == "" then
- return nil
- end
- local locData = json.decode(locString)
- if locData then
- return locData
- end
- return nil
- end
-
- -- 将游戏选择(gameId,ruleId)信息写入到本地
- function ClubTable:saveGameInfoToFile(gameId,ruleId)
- if not self.clubData then
- self.clubData = {}
- end
- self.clubData[tostring(self.clubId)] = {
- gameId = gameId,
- ruleId = ruleId,
- }
- if self.clubData then
- local locString = json.encode(self.clubData)
- saveStringToFile(locString,"clubData.json")
- end
- end
-
-
- --按钮注册点击事件
- function ClubTable:registerButton()
- --关闭
- self.ui.Items.Button_close:registerClick(handler(self , self.onClose))
-
- --战绩
- self.ui.Items.Button_zhanji:registerClick(handler(self , self.onZhanjiClub))
-
- --申请消息
- self.ui.Items.Button_apply_msg:registerClick(handler(self , self.onApplyMsg))
-
- --设置
- self.ui.Items.Button_set:registerClick(handler(self , self.onSet))
-
- --比赛场设置
- self.ui.Items.Button_match_set:registerClick(handler(self, self.onClickMatchSet))
-
- --成员列表
- self.ui.Items.Button_player_list:registerClick(handler(self , self.onPlayerList))
-
- --合伙人
- self.ui.Items.Button_hehuoren:registerClick(handler(self , self.onBtnHeHuoRenClicked))
-
- --快速加入
- self.ui.Items.Button_quick_start:registerClick(handler(self , self.onQuickStart))
- self.ui.Items.Button_quick:registerClick(handler(self , self.onQuickStart)) --cest
-
- --修改玩法
- self.ui.Items.Button_change_rule:registerClick(handler(self , self.onChangeRule))
-
- --退出茶馆
- self.ui.Items.Button_exit:registerClick(handler(self , self.onExitClub))
-
- --点击层
- self.ui.Items.Layout_touch:registerClick(handler(self , self.onTouch))
- self.ui.Items.Layout_baojian_touch:registerClick(handler(self , self.onTouch))
-
- --进入房间
- self.ui.Items.Button_enter_table:registerClick(handler(self , self.onBackRoom))
- self.ui.Items.Button_enter:registerClick(handler(self , self.onBackRoom))
-
- --刷新
- self.ui.Items.Button_refresh:registerClick(handler(self , self.onRefresh))
-
- -- 比赛开关
- self.ui.Items.Layout_match_set:setEnabled(false)
- -- 比赛信息
- self.ui.Items.Button_match_info:registerClick(handler(self, self.onClickMatchInfo))
-
- --更多游戏
- self.ui.Items.Button_moreGame:registerClick(handler(self, self.onClickMoreGame))
-
- --邀请
- self.ui.Items.Button_invite:registerClick(handler(self, self.onBtnInviteClicked))
- if isReviewVersion() then
- self.ui.Items.Layout_invite:setVisible(false)
- end
-
- -- 活动按钮
- --self.ui.Items.Button_ActivityNew:registerClick(handler(self, self.onBtnActivityClicked))
-
- --榜分说明
- if self.clubInfo.role == ClubDefine.Job.Creator then
- --亲友圈等级
- self.ui.Items.Button_level:registerClick(handler(self, self.onClickClubLevel))
- end
- self.ui.Items.Button_wenhao:registerClick(handler(self, self.onClickWenHao))
- self.ui.Items.ImageView_chognbangfen:registerClick(handler(self, self.onClickWenHao))
-
- self.ui.Items.Layout_right_menu:setTouchEnabled(true);
-
- self.ui.Items.ScrollView:addEventListener(handler(self,self.onScrollViewEvent))
-
- --合盟
- self.ui.Items.Button_Union:registerClick(handler(self,self.onClickUnion))
- self.ui.Items.Button_Union:setTouchEnabled(self.clubInfo.role == ClubDefine.Job.Creator)
-
- --查看牌桌
- self.ui.Items.Button_LookHide:registerClick(handler(self,self.onLookHide))
- end
-
-
- function ClubTable:onLookHide()
- playBtnEffect()
- self._bShowAllRoom = true
- if self.clubInfo.groupext then
- self.clubInfo.groupext.is_playerpri = 0
- end
- local gameId = app.club_php:getSelectGameId()
- self:updateTableView(gameId)
- self.ui.Items.Layout_daojishi:setVisible(true)
- self.ui.Items.Button_LookHide:setVisible(false)
-
- self.ui.Items.HtmlCtrl_time:stopAllActions()
- local limlit = 60
- self.ui.Items.HtmlCtrl_time:runAction(cc.RepeatForever:create(cc.Sequence:create(cc.CallFunc:create(function()
- limlit = limlit - 1
- local str = '<font size="18" color="#fff1cf">剩余时间</font><font size="18" color="#ff9955">'..tostring(limlit)..'</font><font size="18" color="#fff1cf">秒</font>'
- self.ui.Items.HtmlCtrl_time:setText(str)
- if limlit < 0 then
- self.ui.Items.Layout_daojishi:setVisible(false)
- self.ui.Items.Button_LookHide:setVisible(true)
- self.ui.Items.HtmlCtrl_time:stopAllActions()
- if self.clubInfo.groupext then
- self.clubInfo.groupext.is_playerpri = 1
- end
- self._bShowAllRoom = false
- local gameId = app.club_php:getSelectGameId()
- self:updateTableView(gameId)
- else
- self.ui.Items.HtmlCtrl_time:setText(str)
- end
- end),cc.DelayTime:create(1))))
- end
-
- function ClubTable:onClickUnion()
- playBtnEffect()
- if self.clubInfo.groupext.master_union == 2 then
- local view = import("luaScript.Views.Club.ClubUnionMode.ClubUnionMaster"):new(self.clubInfo.clubId)
- view:setAnchorPoint(cc.p(0.5, 0.5))
- app:showWaitDialog(view)
- elseif self.clubInfo.groupext.slave_union == 2 then
- local view = import("luaScript.Views.Club.ClubUnionMode.ClubUnionSlave"):new(self.clubInfo.clubId)
- view:setAnchorPoint(cc.p(0.5, 0.5))
- app:showWaitDialog(view,0)
- else
- showTooltip("盟主标识不存在")
- end
-
- --保存引导一次
- if self.ui.Items.Layout_union_guide:isVisible() then
- --阅读引导
- local privateSet = {}
- --客户端定义字段
- privateSet.readUnionGuide = 1
-
- local parm = {
- cliext = json.encode(privateSet),
- type = 0,
- }
- app.club_php:requestSetClubNew(self.clubInfo.clubId,parm)
- end
-
- self.ui.Items.Layout_union_guide:setVisible(false)
- end
-
- function ClubTable:onClickMoreGame()
- playBtnEffect()
- local view = import("luaScript.Views.Club.ClubMoreGame"):new(self.clubInfo.clubId)
- view:setAnchorPoint(cc.p(0.5, 0.5))
- app:showWaitDialog(view,0)
- end
-
- function ClubTable:onClickWenHao()
- playBtnEffect()
- if self.clubInfo.unionType ~= 2 and app.club_php:getIsSlaveUnion(self.clubInfo.clubId) then
- showTooltip("请先加入一个联盟!")
- return
- end
- local view = import("luaScript.Views.Club.Match.ClubMatchChongBangFen"):new(self.clubInfo.clubId)
- view:setAnchorPoint(cc.p(0.5, 0.5))
- app:showWaitDialog(view,150)
- end
-
- function ClubTable:onClickClubLevel()
- playBtnEffect()
- local view = import("luaScript.Views.Club.Match.ClubMatchLevel"):new(self.clubInfo.clubId)
- view:setAnchorPoint(cc.p(0.5, 0.5))
- app:showWaitDialog(view,150)
- end
-
-
- function ClubTable:onClickMatchSet()
- playBtnEffect()
- local view = import("luaScript.Views.Club.Match.ClubBiSaiSet"):new(self.clubInfo.clubId)
- view:setAnchorPoint(cc.p(0.5, 0.5))
- app:showWaitDialog(view)
- end
-
- function ClubTable:onClickMatchInfo()
- playBtnEffect()
- local player = app.club_php:getPlayer(self.clubInfo.clubId,app.user.loginInfo.uid)
- local memberInfo = self.clubInfo.memberInfo
- if memberInfo and memberInfo.status == 0 then
- showTooltip("黑名单无法查看!")
- return
- end
-
- if self.clubInfo.unionType ~= 2 and app.club_php:getIsSlaveUnion(self.clubInfo.clubId) then
- showTooltip("请先加入一个联盟!")
- return
- end
- local className = ""
- --从普通模式切换到比赛模式,把内存数据清掉,应该是哪里测试出问题,才这么做的。
- if player and player.viewType == ClubDefine.PlayListType.NORMAL_MEMBER then
- self.clubInfo.players = {}
- end
-
- -- todo lwqcest
- -- if self.clubInfo.isArena >= ClubDefine.MATCH_SWITCH.PEOPLE_MATCH_SEVER_CLOSE then
- if self.clubInfo.isArena >= ClubDefine.MATCH_SWITCH.PEOPLE_MATCH_SEVER_CLOSE
- and self.clubInfo.isArena <= ClubDefine.MATCH_SWITCH.PEOPLE_MATCH_OPEN then
- className = "luaScript.Views.Club.Match.ClubMatchMain"
- elseif self.clubInfo.isArena <= ClubDefine.MATCH_SWITCH.PEOPLE_CEST_OPEN then
- className = "luaScript.Views.Club.Cest.ClubCestMain"
- else
- if self.clubInfo.role == ClubDefine.Job.Manager or self.clubInfo.role == ClubDefine.Job.Creator
- or self.clubInfo.role == ClubDefine.Job.LevelOneCopartner or self.clubInfo.role == ClubDefine.Job.LevelTwoCopartner
- or self.clubInfo.role == ClubDefine.Job.LevelThreeCopartner then
- className = "luaScript.Views.Club.ClubPlayerMatch"
- else
- className = "luaScript.Views.Club.ClubPlayerMatchInfo"
- end
- end
-
-
- local view = import(className):new(self.clubInfo.clubId)
- view:setAnchorPoint(cc.p(0.5, 0.5))
- app:showWaitDialog(view)
- end
-
- function ClubTable:onClickButtonAddDiamand()
- playBtnEffect()
- local view = import("luaScript.Views.Main.RechargeView"):new()
- view:setAnchorPoint(cc.p(0.5, 0.5))
- app:showWaitDialog(view)
- end
-
- --监听事件
- function ClubTable:tableBindEvent()
- --桌子数据获取成功
- self:bindEvent(app.club_php , GAME_EVENT.CLUB_TABLE , handler(self , self.updateTableList))
- --房间刷新
- self:bindEvent(app.club_php , GAME_EVENT.CLUB_ROOM_LIST_UPDATE , handler(self , self.updateTableView))
- --解散茶馆
- self:bindEvent(app.club_php , GAME_EVENT.CLUB_JIE_SAN , handler(self , self.onClubJieSanEvent))
-
- self:bindEvent(app.club_php, GAME_EVENT.CLUB_LIST, handler(self, self.updateTableList))
-
- --绑定请求成员列表成功回调事件
- self:bindEvent(app.club_php , GAME_EVENT.CLUB_PLAYER_LIST , handler(self , self.onUpdatePlayerListEvent))
-
- --茶馆数据变更
- self:bindEvent(app.club_php , GAME_EVENT.CLUB_CHANGE_PUSH , handler(self , self.onClubChangeEvent))
-
- self:bindEvent(app.club_php , GAME_EVENT.CLUB_BACK_ROOM , handler(self , self.onBackRoomEvent))
-
- --普通消息获取成功
- self:bindEvent(app.club_php , GAME_EVENT.CLUB_MESSAGE , handler(self , self.onClubHintsUpdateEvent))
-
- --获取官方活动
- self:bindEvent(app.club_php , GAME_EVENT.CLUB_ACTIVITY_LIST , handler(self , self.onGetClubOfficialActivitySucc));
- --收到更换背景消息
- self:bindEvent(app.club_php, GAME_EVENT.CLUB_CHANGE_BG , handler(self , self.onClubTableChangeBg))
- --绑定回调
- self:bindEvent(app.club_php , GAME_EVENT.CLUB_SET , handler(self , self.updateSetting));
- --调整红花
- self:bindEvent(app.club_php , GAME_EVENT.CLUB_UPDATE_RED_FLOWER , handler(self , self.onUpdateHongHua));
- --取消合伙人消息弹窗
- self:bindEvent(app.club_php , GAME_EVENT.CLUB_CANCEL_COPARTNER_NOTICE , handler(self , self.popClubWindow));
- --取消合伙人消息弹窗提示
- self:bindEvent(app.club_php , GAME_EVENT.CLUB_CANCEL_COPARTNER_TIP , handler(self , self.onClubHeHuoRenCancelTip));
- --GPS距离进房间监听
- self:bindEvent(app.club, GAME_EVENT.CLUB_GPS_DISTANCE , handler(self , self.onClubGpsDistanceCheck));
- --切换包间
- self:bindEvent(app.club_php , GAME_EVENT.CLUB_CHANGE_BAO_JIAN , handler(self , self.onClubChangeBaoJianEvent))
- --请求茶馆玩法回调
- self.ui:bindEvent(app.club_php , GAME_EVENT.CLUB_CHANGE_RULE_PUSH , handler(self , self.updateTopBaoJianInfo))
-
- self.ui:bindEvent(app.club_php , GAME_EVENT.CLUB_UPDATE_TABLE , handler(self , self.updateTable))
- --监听从后台进入游戏事件
- self:bindEvent(app, "applicationWillEnterForeground", handler(self, self.onApplicationWillEnterForeground))
- self:bindEvent(app, "applicationDidEnterBackground", handler(self, self.onApplicationDidEnterBackground))
-
- --联盟消息获取成功
- self:bindEvent(app.club_php , GAME_EVENT.CLUB_UNION_HITS , handler(self , self.onClubUnionHintsUpdateEvent))
- end
-
- function ClubTable:onClubTableChangeBg()
- if self.clubInfo.club_bgprop then
- if table.nums(self.clubInfo.club_bgprop) > 0 then
- self:setTableImg(tonumber(self.clubInfo.club_bgprop.prop_id))
- else
- self:setTableImg()
- end
- end
- end
-
- function ClubTable:onClubJieSanEvent(event)
- if event.clubId == self.clubInfo.clubId then
- self:onClose()
- end
- end
-
- function ClubTable:updateLeftGame(scrollState)
- self.ui.Items.ScrollView_GameList:removeAllChildren()
-
- self.radioManager = import("luaScript.Tools.RadioManager"):new()
- self.radioManager:setColorSwitch(true)
- self.radioManager:setSelectColor(cc.c4b(255,255,255,255))
- self.radioManager:setNormalColor(cc.c4b(108,130,196,255))
-
- local function addItem(gameName,key)
- local gameItem = self.ui.Items.CheckBox_Item:getCopied()
- gameItem:setVisible(true)
- gameItem.Items = getUIItems(gameItem)
- gameItem.Items.Text_gameName:setText(tostring(gameName))
- self.radioManager:addItem(gameItem, key)
- self.ui.Items.ScrollView_GameList:addChild(gameItem)
- end
-
- addItem("全部牌桌",0)
-
- --无激活游戏
- if type(self.clubInfo.activeGames) == "table" then
- for k,gameId in ipairs(self.clubInfo.activeGames) do
- local gameRule = 0
- local id = gameId
- local gameConfig = getSubGameConfig(tonumber(id))
- if gameConfig and gameConfig.bSingleGame then
- log("过滤服务器多余的gameID,如黄十八碰胡等")
- else
- if gameId > 10000 then
- gameRule = math.floor(gameId%10000)
- id = math.floor(gameId/10000)
- end
- local gameConfig = getSubGameConfig(tonumber(id))
- if gameConfig then
- if gameConfig.bSingleGame then
- local gameName = getSubGameRuleName(id,gameRule)
- if gameName and gameName~= "" then
- addItem(gameName,gameId)
- end
- else
- addItem(gameConfig.gameName,gameId)
- end
- end
- end
- end
- end
-
- self.radioManager:setCallback(handler(self, self.onClickItem))
- local default = app.club_php:getSelectGameId()
- self.radioManager:setDefault(default)
-
- self.ui.Items.ScrollView_GameList:requestDoLayout()
- self.ui.Items.ScrollView_GameList:doLayout()
- if scrollState == 2 then
- runDelayWithTime(function ()
- if not tolua.isnull(self.ui.Items.ScrollView_GameList) then
- self.ui.Items.ScrollView_GameList:jumpToBottom()
- end
- end,0.05)
- elseif scrollState == 0 then
- logD("do nothing")
- else
- runDelayWithTime(function ()
- if not tolua.isnull(self.ui.Items.ScrollView_GameList) then
- self.ui.Items.ScrollView_GameList:jumpToTop()
- end
- end,0.05)
- end
- end
-
- function ClubTable:onClickItem(value,node)
- self.curSelectBaoJian = nil
- if self.first then
- self.first = false
- return
- end
-
- self.isUpdateAll = true
- if app.club_php:getSelectGameId() ~= value then
- self.ui.Items.ScrollView_BaoJian:jumpToLeft()
- end
- app.club_php:setSelectGameId(value)
- self.ui.Items.Layout_no_set:setVisible(false)
- self.ui.Items.Text_no_table:setVisible(false)
- self.ui.Items.ScrollView:removeAllChildren()
- self.ui.Items.Layout_BaoJian:setVisible(false)
- self.curPage = 1
- self.ui.Items.Button_quick_start:setVisible(false)
- if value == 0 then
- self:saveGameInfoToFile(value,0)
- if self.clubInfo.mode == ClubDefine.BaoJianType.ManyRooms then
- self.ui.Items.Layout_btn_change_rule:setVisible(false)
- end
- app.club_php:setChangeTable(true)
- app.club_php:setSelectBaoJianId(0)
- app.club_php:requestRoomList(self.clubInfo.clubId,0,0,self.curPage,true)
- else
- self:updateChangeRuleBtn()
- self:updateBaoJianList()
- local isHaveUse = false
- for k,v in pairs(self.clubInfo.baoJians) do
- if tonumber(v.gameId) == value then
- if tonumber(v.is_use) == 1 then
- isHaveUse = true
- end
- end
- end
- if not isHaveUse then
- self:updateTableView(value)
- end
- end
- end
-
- function ClubTable:updateBaoJianList()
- local gameId = self.radioManager:getResult()
- self.ui.Items.ScrollView_BaoJian:removeAllChildren()
-
- local baojians = {}
- for k,v in pairs(self.clubInfo.baoJians) do
- if tonumber(v.gameId) == gameId then
- baojians[k] = v
- end
- end
-
- if baojians then
- local radioManager = import("luaScript.Tools.RadioManager"):new()
- radioManager:setColorSwitch(false)
- local function addItem(state,baojian,index)
- local baoJianItem = self.ui.Items.Layout_BaoJian_Item:getCopied()
- baoJianItem:setVisible(true)
- baoJianItem.Items = getUIItems(baoJianItem)
- baoJianItem.Items.Layout_normal:setVisible(false)
- baoJianItem.Items.Layout_all:setVisible(false)
- baoJianItem.state = state
- baoJianItem.baojianId = baojian and toNumber(baojian.baoJianId)
- baoJianItem.index = index
-
- if state == 0 then
- baoJianItem.Items.Layout_all:setVisible(true)
- baoJianItem.Items.Text_baojianinfo:setTextColor(cc.c4b(121,146,180,255))
- self.curSelectBaoJian = baoJianItem
- radioManager:addItem(baoJianItem.Items.CheckBox_BaoJian_Item,0)
-
- elseif state == 1 then--正常状态normal
- local jushu = baojian.gameNum
- local name = ""
- if string.len(baojian.title) > 0 then
- name = baojian.title
- else
- name = "未设包间名"
- if app.club_php:getCestIsOpen(app.club_php.clubID) then
- name = "未设赛事名"
- end
- end
-
- baoJianItem.Items.Layout_normal:setVisible(true)
- baoJianItem.Items.HtmlCtrl:setText('<font size="20" color="7992b4">' .. tostring(name) .. '</font><font size="18" color="7992b4">' .. tostring("("..tostring(jushu).."局)") .. '</font>');
- baoJianItem.Items.Layout_normal:registerClick(function ()
- self.isTouchInfo = true
- local gameId = baojian.realGameId
- local view = import("luaScript.Views.Club.ClubBaoJianInfo"):new(self.clubInfo.clubId,gameId,baojian.gameNum,
- baojian.strGameRule,baojian.arena,baojian.title)
- view:setAnchorPoint(cc.p(0.5, 0.5))
- app:showWaitDialog(view)
- end)
- baoJianItem.Items.Layout_normal:setEnabled(false)
- radioManager:addItem(baoJianItem.Items.CheckBox_BaoJian_Item,baoJianItem.baojianId)
- end
- self.ui.Items.ScrollView_BaoJian:addChild(baoJianItem)
- end
-
- local index = 1
- for ruleid,v in pairsByKeys(baojians) do
- if tonumber(v.is_use) == 1 then
- local gameRule = json.decode(v.strGameRule)
- if index == 1 then
- --全部
- addItem(0,v,1)
- end
- addItem(1,v,index)
- index = index + 1
- end
- end
- radioManager:setCallback(handler(self, self.onClickBaoJian))
- local default = app.club_php:getSelectBaoJianId()
- radioManager:setDefault(default)
- local gameId = self.radioManager:getResult()
- self:saveGameInfoToFile(gameId,value)
- end
- end
-
- function ClubTable:onClickBaoJian(value,node)
- if self.isTouchInfo then
- self.isTouchInfo = false
- return
- end
- self.isUpdateAll = true
- local gameId = self.radioManager:getResult()
- self:saveGameInfoToFile(gameId,value)
- app.club_php:setChangeTable(true)
- app.club_php:setSelectBaoJianId(value)
- self.curPage = 1
- app.club_php:requestRoomList(self.clubInfo.clubId,gameId,value,self.curPage,true)
- if self.curSelectBaoJian and self.curSelectBaoJian.state ~= 0 then
- local baoJian = app.club_php:getBaoJian(self.clubInfo.clubId,self.curSelectBaoJian.baojianId)
- local jushu = baoJian.gameNum
- local name = baoJian.title
- if not baoJian.title or baoJian.title == "" then
- name = "未设包间名"
- if app.club_php:getCestIsOpen(app.club_php.clubID) then
- name = "未设赛事名"
- end
- end
-
- self.curSelectBaoJian.Items.Layout_normal:setVisible(false)
- self.curSelectBaoJian.Items.Layout_all:setVisible(false)
- self.curSelectBaoJian.Items.Layout_normal:setVisible(true)
- self.curSelectBaoJian.Items.Layout_normal:setEnabled(false)
- self.curSelectBaoJian.Items.HtmlCtrl:setText('<font size="20" color="7992b4">' .. tostring(name) .. '</font><font size="18" color="7992b4">' .. tostring("("..tostring(jushu).."局)") .. '</font>');
- elseif self.curSelectBaoJian and self.curSelectBaoJian.state == 0 then
- self.curSelectBaoJian.Items.Text_baojianinfo:setTextColor(cc.c4b(121,146,180,255))
- end
-
- if node:getParent().state ~= 0 then
- local baoJian = app.club_php:getBaoJian(self.clubInfo.clubId,node:getParent().baojianId)
- local jushu = baoJian.gameNum
- local name = ""
- if string.len(baoJian.title) > 0 then
- name = baoJian.title
- else
- name = "未设包间名"
- if app.club_php:getCestIsOpen(app.club_php.clubID) then
- name = "未设赛事名"
- end
- end
- node:getParent().Items.Layout_normal:setVisible(false)
- node:getParent().Items.Layout_all:setVisible(false)
- node:getParent().Items.Layout_normal:setVisible(true)
- node:getParent().Items.HtmlCtrl:setText('<font size="20" color="ffffff">' .. tostring(name) .. '</font><font size="18" color="ffffff">' .. tostring("("..tostring(jushu).."局)") .. '</font>');
- node:getParent().Items.Layout_normal:setEnabled(true)
- elseif node:getParent().state == 0 then
- node:getParent().Items.Text_baojianinfo:setTextColor(cc.c4b(255,255,255,255))
- end
-
- self.curSelectBaoJian = node:getParent()
- end
-
-
- --修改玩法
- function ClubTable:onChangeRule()
- playBtnEffect();
- if self.clubInfo.mode ~= ClubDefine.BaoJianType.ManyRooms then
- self:onClickBaojianNormal()
- else
- if self.tableIdx then
- --有桌子下标,表示当前在房间内游戏,返回时需要退出房间
- showTooltip("正在游戏中,禁止修改玩法")
- return
- end
-
- local gameId = self.radioManager:getResult()
- local gamerule = nil
- local index = 1
- local baojianId = nil
- if toNumber(gameId) > 10000 then
- gamerule = toNumber(gameId)%10000
- --gameId = math.floor(toNumber(gameId)/10000)
- else
- if self.curSelectBaoJian and self.curSelectBaoJian.state ~= 0 then
- local baojian = app.club_php:getBaoJian(self.clubInfo.clubId,self.curSelectBaoJian.baojianId)
- if baojian then
- gamerule = json.decode(baojian.strGameRule).gamerule
- end
- end
- end
- if self.curSelectBaoJian and self.curSelectBaoJian.index then
- if self.curSelectBaoJian.index then
- index = self.curSelectBaoJian.index
- end
- if self.curSelectBaoJian.baojianId then
- baojianId = self.curSelectBaoJian.baojianId
- end
- end
-
-
- local view = import("luaScript.Views.Club.ClubChangeRule"):new(self.clubInfo.clubId,gameId,gamerule,baojianId,index)
- view:setAnchorPoint(cc.p(0.5, 0.5))
- app:showWaitDialog(view)
- end
- end
-
- function ClubTable:onClubHintsUpdateEvent()
- self.ui.Items.ImageView_dian:setVisible(self.clubInfo.isHints)
- end
-
- --设置默认界面
- function ClubTable:setDefault()
- --根据平台修改提示:当前茶馆还未设置任何游戏哦!
- self.ui.Items.Text_1:setString(app.club_php:getCestIsOpen(app.club_php.clubID) and PLN.CLUB_CEST_NOT_GAME or PLN.CLUB_NOT_GAME)
- self.ui.Items.Button_enter_table:setVisible(false)
- self.ui.Items.Button_quick_start:setVisible(false)
-
- --右边按钮集
- self:setRightMenuVisible(false);
-
- --默认不显示人物及提示
- self.ui.Items.Layout_no_set:setVisible(false)
- self.ui.Items.Text_no_table:setVisible(false)
-
- --点击层
- self.ui.Items.Layout_touch:setVisible(false);
- self.ui.Items.Layout_baojian_touch:setVisible(false);
-
- --默认不显示红点提示
- self.ui.Items.ImageView_dian:setVisible(false)
- --包间
- self.ui.Items.Layout_BaoJian:setVisible(false)
- self.ui.Items.CheckBox_BaoJian_Item:setVisible(false)
- --左边游戏集合
- self.ui.Items.CheckBox_Item:setVisible(false)
- self.ui.Items.ScrollView_GameList:hideAllBar()
- self.ui.Items.ScrollView_GameList:getInnerContainer():setAutoSize(true)
- self.ui.Items.ScrollView_BaoJian:hideAllBar()
- self.ui.Items.ScrollView_BaoJian:getInnerContainer():setAutoSize(true)
-
- --合盟
- self.ui.Items.Layout_union_guide:setVisible(false)
- self.ui.Items.ImageView_union_dian:setVisible(false)
-
- --隐藏桌数
- self.ui.Items.Layout_look_table:setVisible(false)
-
- -- 隐藏海选赛的快速开始layout 和 返回桌子
- self.ui.Items.Layout_btn_quick:setVisible(false)
- self.ui.Items.Button_enter:setVisible(false)
- end
-
- --设置亲友圈背景
- function ClubTable:setTableImg(tableImgIndex)
- if tableImgIndex and tonumber(tableImgIndex) >= 0 then
- self.ui.Items.ImageView:loadTexture("res/ui/zy_club/club_common/club_common_bg_"..tableImgIndex..".jpg");
- else
- self.ui.Items.ImageView:loadTexture("res/ui/zy_club/club_common/club_common_bg.jpg");
- end
- end
-
- function ClubTable:onScrollViewEvent(node,event)
- if self.clubInfo and self.clubInfo.mode ~= ClubDefine.BaoJianType.Normal then
- if event == cc.ScrollviewEventType.bounceRightEnd and not self.isUpdateing and self.isCanRequest and self.clubInfo
- and self.clubInfo.pageNum and table.nums(self.clubInfo.rooms) >= self.clubInfo.pageNum then
- local gameId = app.club_php:getSelectGameId()
- local maxPlayingRoomCount = gameId == 0 and (self.clubInfo.config.allPlayerPri or 10) or (self.clubInfo.config.playerPri or 8)
- --创始人和管理员当且查看隐藏桌数的时候可以无限拉取,查看全部桌数
- if self._bShowAllRoom or (table.nums(self.clubInfo.rooms) < maxPlayingRoomCount) then
- self.isCanRequest = false
- self.curPage = self.curPage + 1
- app.club_php:setChangeTable(false)
- logD("only do onece!!!")
- self.isUpdateing = true
- runDelay(0.1,function ()
- self.isUpdateing = false
- end)
- app.club_php:requestRoomList(self.clubInfo.clubId,app.club_php:getSelectGameId(),app.club_php:getSelectBaoJianId(),self.curPage,true)
- end
- elseif event == cc.ScrollviewEventType.scrolling then
- local width1 = self.ui.Items.ScrollView:getContentSize().width
- local width2 = self.ui.Items.ScrollView:getInnerContainer():getContentSize().width
- local pos = self.ui.Items.ScrollView:getInnerContainer():getPosition()
- if math.abs(pos.x + width1 - width2) > 100 then
- self.isCanRequest = true
- end
- end
- end
- end
-
- function ClubTable:onUpdatePlayerListEvent(event)
-
- end
-
- --刷新桌子
- function ClubTable:updateTableList(event)
- logD(" ------------------------- ClubTable:updateTableList() ------------------------- ")
-
- local clubId = event.clubId
- local scrollState = event.scrollState
-
- -- 非当前俱乐部的数据,则不处理
- if clubId ~= self.clubId then
- logD("ClubTable:updateTableList() clubId ~= self.clubId ")
- return
- end
-
- self:changeScrollViewSize()
-
- local clubInfo = app.club_php:getClubInfo(self.clubId)
- if not clubInfo then
- logD("ClubTable:updateTableList() clubInfo is nil")
- return
- end
-
- self._allTables = {}
-
- --更新个人配置信息
- self:initPlayerInfo()
-
- --再来一局
- local againBaoJianId = getAgainGameBaoJianId()
- local bPlayAgain,wanfa = getIsAgainGamebol()
- if bPlayAgain then
- gameId = app.club_php:getGameIdByBaoJianId(self.clubInfo.clubId,againBaoJianId)
- ruleId = againBaoJianId
- --保存到内存
- app.club_php:setSelectGameId(gameId)
- app.club_php:setSelectBaoJianId(ruleId)
- self:saveGameInfoToFile(gameId,ruleId)
- local club = app.club_php.clubList[tonumber(self.clubInfo.clubId)]
- club.isplaying = 0
- end
-
- self:updateSetting()
-
- self:setMenuButton()
-
- --俱乐部消息红点
- self:onClubHintsUpdateEvent()
- --主盟消息红点
- self:onClubUnionHintsUpdateEvent()
-
- self:popClubWindow()
-
- self:updateLeftGame(scrollState)
- end
-
- function ClubTable:updateTableView(data)
- local clubInfo = app.club_php:getClubInfo(self.clubId)
- if not clubInfo then
- logD("ClubTable:updateTableList() clubInfo is nil")
- return
- end
-
- if self._bShowAllRoom and self.clubInfo.groupext then
- self.clubInfo.groupext.is_playerpri = 0
- end
-
- --快速加入状态更换
- self:showButtonState()
-
- local baoJians = {}
- local gameId = data
- if type(data) == "table" then
- gameId = data.gameId--没包括0
- if data.tpage and data.tpage < self.curPage then
- self.curPage = data.tpage
- end
- end
-
- --本地的gameid
- local localGameId = app.club_php:getSelectGameId()
- --全部情况下过滤包间
- if localGameId ~= 0 then
- local ruleId = app.club_php:getSelectBaoJianId()
- for k,v in pairs(self.clubInfo.baoJians) do
- if (tonumber(v.gameId) == gameId or gameId == 0) and (tonumber(v.baoJianId) == ruleId or ruleId == 0) and tonumber(v.is_use) == 1 then
- baoJians[k] = v
- end
- end
- elseif self.clubInfo.mode == ClubDefine.BaoJianType.Multiple then
- for k,v in pairs(self.clubInfo.baoJians) do
- if tonumber(v.is_use) == 1 then
- baoJians[k] = v
- end
- end
- end
-
- --localGameId 为0则是选中全部,无须过滤,不同游戏之间过滤刷新。
- if gameId ~= localGameId and localGameId ~= 0 then
- return
- end
-
- local mListView = self.ui.Items.ScrollView
-
- mListView:getInnerContainer():setAutoSize(true)
- if self.isUpdateAll then
- mListView:removeAllChildren()
- mListView:jumpToLeft()
- self.allTableItem = {}
- self.isUpdateAll = false
- end
- mListView:hideAllBar()
-
- -- 判断包间是否存在
- local function isExistBaoJian(baoJianId)
- local isExist = false;
- local baojians = clubInfo.baoJians;
- for k, v in pairs(baojians or {}) do
- if tonumber(k) == tonumber(baoJianId) then
- isExist = true;
- break;
- end
- end
- return isExist;
- end
-
- local baoJianNum = table.nums(baoJians)
- if baoJianNum == 0 and (localGameId ~= 0 or self.clubInfo.mode == ClubDefine.BaoJianType.Multiple or (self.clubInfo.mode == ClubDefine.BaoJianType.Normal and table.nums(self.clubInfo.settings) == 0)) then --未设置玩法
- self.ui.Items.Layout_no_set:setVisible(true)
- mListView:removeAllChildren()
- logD(" ------------------------- ClubTable:updateTableList() 删除所有桌子")
- else
-
- if localGameId ~= 0 and self.clubInfo.mode == ClubDefine.BaoJianType.ManyRooms then
- self.ui.Items.Layout_BaoJian:setVisible(true)
- end
-
- mListView:setTouchEnabled(false)
-
- self.ui.Items.Layout_no_set:setVisible(false)
-
- -- 记录所有新的 item 的索引
- local newAllTableItem = {}
-
- -- 包间的数量
- logD(" ------------------------- ClubTable:updateTableList() baoJianNum = ", baoJianNum)
-
- local function isRoomHided (hideRooms, pos)
- local isHided = false
- for k, v in ipairs(hideRooms or {}) do
- if v.pos == pos then
- isHided = true
- break
- end
- end
- return isHided
- end
-
- local rooms, hideRooms = app.club_php:getShowRooms(self.clubInfo.clubId)
-
- local roomNum = table.nums(rooms)
-
- if roomNum == 0 and localGameId == 0 and self.clubInfo.mode == ClubDefine.BaoJianType.ManyRooms then
- self.ui.Items.Text_no_table:setVisible(true)
- else
- self.ui.Items.Text_no_table:setVisible(false)
- end
-
- logD(" ------------------------- ClubTable:updateTableList() roomNum = ", roomNum)
-
- local index = 0
-
- if self.clubInfo.mode == ClubDefine.BaoJianType.Normal then
- local idxBegin = (self.clubInfo.settings.orderId - 1) * ClubDefine.TableCountMax + 1
- local idxEnd = idxBegin + (ClubDefine.TableCountMax - 1)
-
- --1.优先显示属于这个包间已经越界的posnumber桌子
- --2.遵守满足30张的规则,不够30张再从当前包间的区间范围里抽余下空桌来凑30张。
-
- ----1.
- local maxCount = 30
- for i = 1, #rooms do
- local roomInfo = rooms[i]
- if idxBegin > roomInfo.pos and roomInfo.pos > idxEnd and (not isRoomHided(hideRooms, roomInfo.pos)) then
- index = index + 1
- newAllTableItem[roomInfo.pos] = 1
- -- 只显示包间存在的桌子,
- -- 包间不存在的桌子,可能是管理员删除了包间
- if isExistBaoJian(roomInfo.baoJianId) then
- local realIndex = roomInfo.pos
- local showIndex = index
- if self.allTableItem[roomInfo.pos] then
- logD(" ------------------------- ClubTable:updateTableList() 更新桌子 ", roomInfo.pos)
- local item = self.allTableItem[roomInfo.pos];
- item.layout:setLocalZOrder(index)
- item:updateData(self.clubId, realIndex, showIndex)
- else
- logD(" ------------------------- ClubTable:updateTableList() 创建桌子 ", roomInfo.pos)
- local item = import("luaScript.Views.Club.ClubTableItem"):new(self.clubId, realIndex, showIndex)
- item.ui.Items.Button_enter_table = self.ui.Items.Button_enter_table
-
- -- 保存节点
- self.allTableItem[roomInfo.pos] = item
-
- -- 添加到容器
- mListView:addChild(item.layout, index)
- end
- end
- end
- end
-
- -----2.
- for tableIdx = idxBegin, idxEnd do
- if index < maxCount and (not isRoomHided(hideRooms, tableIdx)) then
- index = index + 1
- newAllTableItem[tableIdx] = 1
- local realIndex = tableIdx
- local showIndex = index
- if self.allTableItem[tableIdx] then
- logD(" ------------------------- ClubTable:updateTableList() 2更新桌子 ", tableIdx)
- local item = self.allTableItem[tableIdx];
- item.layout:setLocalZOrder(index)
- item:updateData(self.clubId, realIndex, showIndex)
- else
- logD(" ------------------------- ClubTable:updateTableList() 2创建桌子 ", tableIdx)
- local item = import("luaScript.Views.Club.ClubTableItem"):new(self.clubId, realIndex, showIndex)
- item.ui.Items.Button_enter_table = self.ui.Items.Button_enter_table
-
- -- 保存节点
- self.allTableItem[tableIdx] = item
-
- -- 添加到容器
- mListView:addChild(item.layout, index);
- end
- end
- end
- else
- --包间排序
- local newBaoJians = app.club_php:getSortClubBaoJians(self.clubInfo.clubId,baoJians)
- -- 第一页需要先创建包间
- for k,baojianInfo in ipairs(newBaoJians) do
- index = index + 1
- local baoJianId = baojianInfo.baoJianId;
- newAllTableItem[baoJianId] = 1;
-
- if self.allTableItem[baoJianId] then
- logD(" ------------------------- ClubTable:updateTableList() 更新玩法桌子 ", baoJianId)
- local item = self.allTableItem[baoJianId]
- item.layout:setLocalZOrder(index)
- item:updateData(baojianInfo, index)
- else
- logD(" ------------------------- ClubTable:updateTableList() 创建玩法桌子 ", baoJianId)
- local item = import("luaScript.Views.Club.ClubTableBaoJianItem"):new(baojianInfo, clubInfo.clubId)
- item.ui.Items.Button_enter_table = self.ui.Items.Button_enter_table
-
- -- 保存节点
- self.allTableItem[baoJianId] = item
-
- -- 添加到容器
- mListView:addChild(item.layout, index);
- end
- end
-
- for i = 1, #rooms do
- index = index + 1
- local roomInfo = rooms[i]
- newAllTableItem[roomInfo.pos] = 1;
- -- 只显示包间存在的桌子,
- -- 包间不存在的桌子,可能是管理员删除了包间
- if isExistBaoJian(roomInfo.baoJianId) then
- local realIndex = roomInfo.pos
- local showIndex = index - baoJianNum
- if self.allTableItem[roomInfo.pos] then
- logD(" ------------------------- ClubTable:updateTableList() 更新桌子 ", roomInfo.pos)
- local item = self.allTableItem[roomInfo.pos];
- item.layout:setLocalZOrder(index)
- item:updateData(self.clubId, realIndex, showIndex)
- else
- logD(" ------------------------- ClubTable:updateTableList() 创建桌子 ", roomInfo.pos)
- local item = import("luaScript.Views.Club.ClubTableItem"):new(self.clubId, realIndex, showIndex)
- if item then
- item.ui.Items.Button_enter_table = self.ui.Items.Button_enter_table
-
- -- 保存节点
- self.allTableItem[roomInfo.pos] = item
-
- -- 添加到容器
- mListView:addChild(item.layout, index);
- else
- --上传日志,便于查找错误问题
- uploadLogs(GAME_ERROR_TYPE.TABLENOFIND)
- end
- end
- end
- end
-
- -- 比较新旧IDX,删除过期的桌子
- for k,v in pairs(self.allTableItem) do
- if not newAllTableItem[k] then
- if self.clubInfo.mode ~= ClubDefine.BaoJianType.Normal then
- local idx = v:getTableIdx()
- logD(" ------------------------- ClubTable:updateTableList() 删除桌子 ", k, idx)
- v:removeSelf()
- end
- self.allTableItem[k] = nil
- end
- end
- end
- mListView:setTouchEnabled(true)
- mListView:getInnerContainer():requestDoLayout()
- end
-
- self:playAgainlogic()
-
- logD("ClubTable:updateTableList2")
- end
-
- --再来一局
- function ClubTable:playAgainlogic()
- --在子游戏总结算,点了邀请的同意后,在这里实现进入房间
- local agdata = getAgainGameInvitedata()
- if agdata then
- --同意后进入房间,赋值当前进入的俱乐部id
- app.club_php.clubID = agdata.gid
- local function doRequest(gameId, roomId)
- if not gameId or tonumber(gameId) <= 0 then
- showTooltip("房间号不存在")
- return
- end
- app.hall:requestJoinRoom(gameId, roomId)
- end
- app.hall:queryRoomId(agdata.roomid,doRequest)
- setAgainGameInvitedata(nil)
- end
-
- --这部分逻辑的意思:点了再来一局按钮时,包间玩法被人删掉了,做了个校验。
- local againBaoJianId = getAgainGameBaoJianId()
- local baojianbol = false
- if self.clubInfo.baoJians then
- for key,var in pairs(self.clubInfo.baoJians) do
- if tonumber(key) == tonumber(againBaoJianId) then
- baojianbol = true
- end
- end
- end
-
- if not baojianbol then
- if not getMyGameCreateStatus() then
- local againbol,wanfa = getIsAgainGamebol()
- if wanfa ~= "" then
- --showTooltip("房间创建失败,该包间玩法已被删除或修改!")
- showTooltip("该游戏包间玩法已被关闭!")
- end
- setIsAgainGamebol(false,"")
- else
- setIsAgainGamebol(false)
- end
- end
-
- local clubgamedata = getIsRoomGamedata()
- if clubgamedata then
- setisContinueRoomGamebol(true)
- end
- end
-
- function ClubTable:onClickEnter(data)
- setisContinueRoomGamebol(true)
- local tableMenuView = import("luaScript.Views.Club.ClubTableOperatMenu"):new(data.clubInfo.clubId, data.roomInfo, data.showIndex, false)
- tableMenuView.ui.Items.Button_enter_table = self.ui.Items.Button_enter_table
- tableMenuView:setAnchorPoint(cc.p(0.5, 0.5))
-
- local worldPos = self.ui.Items.Layout_touch:getWorldPosition();
- local viewContentSize = cc.size(232, 360);
- local x = worldPos.x;
- local y = worldPos.y - self.ui.Items.Layout_touch:getContentSize().height;
- local newPos = cc.p(x, y);
- tableMenuView:setPosition(newPos);
-
- app:showWaitDialog(tableMenuView, 0, true)
- end
-
- function ClubTable:showButtonState()
- local room = app.club_php:getMyInRoom(self.clubInfo.clubId)
- local view = app:getCurrentView()
- local baoJian = app.club_php:getBaoJianByGameId(self.clubInfo.clubId,app.club_php:getSelectGameId())
- local isHaveUser = false
- if baoJian then
- for k,v in pairs(baoJian) do
- if tonumber(v.gameId) == app.club_php:getSelectGameId() then
- if tonumber(v.is_use) == 1 then
- isHaveUser = true
- end
- end
- end
- end
-
- if not room then --在房间界面的话显示进入桌子按钮
- --进入桌子
- self.ui.Items.Button_enter_table:setVisible(false)
- self.ui.Items.Button_quick_start:setVisible(true)
- --如果所在游戏没有包间且不是全部游戏就隐藏
- if ((not isHaveUser and app.club_php:getSelectGameId() ~= 0)
- or app.club_php:getSelectGameId() == 0 or app.club_php:getSelectBaoJianId() == 0) and self.clubInfo.mode ~= ClubDefine.BaoJianType.Normal then
- self.ui.Items.Button_enter_table:setVisible(false)
- self.ui.Items.Button_quick_start:setVisible(false)
- end
-
- -- cest
- if app.club_php:getCestIsOpen(app.club_php.clubID) then
- --进入桌子
- self.ui.Items.Button_enter:setVisible(false)
- self.ui.Items.Button_quick:setVisible(true)
- --如果所在游戏没有包间且不是全部游戏就隐藏
- if ((not isHaveUser and app.club_php:getSelectGameId() ~= 0)
- or app.club_php:getSelectGameId() == 0 or app.club_php:getSelectBaoJianId() == 0) and self.clubInfo.mode ~= ClubDefine.BaoJianType.Normal then
- self.ui.Items.Button_enter:setVisible(false)
- self.ui.Items.Button_quick:setVisible(false)
- end
-
- --刷新layout布局
- self.ui.Items.Layout_under:requestDoLayout()
- self.ui.Items.Layout_under:doLayout()
- end
- else
- --进入桌子
- self.ui.Items.Button_enter_table:setVisible(true)
- self.ui.Items.Button_quick_start:setVisible(false)
-
- -- cest
- if app.club_php:getCestIsOpen(app.club_php.clubID) then
- self.ui.Items.ImageView_zhanji_line:setVisible(true)
- self.ui.Items.Layout_btn_quick:setVisible(true)
-
- self.ui.Items.Button_enter:setVisible(true)
- self.ui.Items.Button_quick:setVisible(false)
-
- --刷新layout布局
- self.ui.Items.Layout_under:requestDoLayout()
- self.ui.Items.Layout_under:doLayout()
- end
- end
- end
-
- function ClubTable:setMenuButton()
-
- --自己不是管理员或创始人(1:成员 2:管理员 3:创始人)
- local isAdmin = tonumber(self.clubInfo.role) == ClubDefine.Job.Creator
-
- --设置
- self.ui.Items.Layout_set:setVisible(true)
-
- --消息
- if self.clubInfo.isArena == ClubDefine.MATCH_SWITCH.PEOPLE_MATCH_OPEN then
- self.ui.Items.Layout_apply_msg:setVisible(isAdmin
- or self.clubInfo.role == ClubDefine.Job.Manager
- or self.clubInfo.role == ClubDefine.Job.LevelOneCopartner
- or self.clubInfo.role == ClubDefine.Job.LevelTwoCopartner
- or self.clubInfo.role == ClubDefine.Job.LevelThreeCopartner);
- elseif self.clubInfo.isArena == ClubDefine.MATCH_SWITCH.PEOPLE_CEST_OPEN then
- self.ui.Items.Layout_apply_msg:setVisible(isAdmin
- or self.clubInfo.role == ClubDefine.Job.Manager
- or self.clubInfo.role == ClubDefine.Job.LevelOneCopartner
- or self.clubInfo.role == ClubDefine.Job.LevelTwoCopartner
- or self.clubInfo.role == ClubDefine.Job.LevelThreeCopartner);
- else
- self.ui.Items.Layout_apply_msg:setVisible(isAdmin or tonumber(self.clubInfo.role) == ClubDefine.Job.Manager);
- end
-
- --退出
- self.ui.Items.Layout_exit:setVisible(not isAdmin);
-
- self.ui.Items.Layout_invite:setVisible(self.clubInfo.role == ClubDefine.Job.Manager or self.clubInfo.role == ClubDefine.Job.Creator)
- --self.ui.Items.Layout_activity:setVisible(self.clubInfo.role == ClubDefine.Job.Manager or self.clubInfo.role == ClubDefine.Job.Creator)
- if isReviewVersion() then
- self.ui.Items.Layout_invite:setVisible(false)
- end
-
- --刷新右上方layout布局
- self.ui.Items.Layout_up_menu:requestDoLayout()
- self.ui.Items.Layout_up_menu:doLayout()
-
- --刷新下方layout布局
- self.ui.Items.Layout_under:requestDoLayout()
- self.ui.Items.Layout_under:doLayout()
- end
-
- function ClubTable:updateChangeRuleBtn()
- --如果是成员则显示包间玩法按钮,如果是管理员或创始人则显示修改玩法按钮
- if self.clubInfo.mode == ClubDefine.BaoJianType.Normal or self.clubInfo.mode == ClubDefine.BaoJianType.Multiple then
- if (self.clubInfo.role == ClubDefine.Job.Manager or self.clubInfo.role == ClubDefine.Job.Creator) and not app.club_php:getIsSlaveUnion(self.clubInfo.clubId) then
- self.ui.Items.Button_change_rule:loadTextureNormal("res/ui/zy_club/club_table/bottom_view/club_room_btn_change_rule.png")
- else
- self.ui.Items.Button_change_rule:loadTextureNormal("res/ui/zy_club/club_table/bottom_view/club_room_btn_baojian_wanfa.png")
- end
- self.ui.Items.Layout_btn_change_rule:setVisible(true);
- elseif self.clubInfo.mode == ClubDefine.BaoJianType.ManyRooms then
- if (self.clubInfo.role == ClubDefine.Job.Manager or self.clubInfo.role == ClubDefine.Job.Creator)
- and app.club_php:getSelectGameId() ~= 0 and not app.club_php:getIsSlaveUnion(self.clubInfo.clubId) then
- self.ui.Items.Layout_btn_change_rule:setVisible(true);
- else
- self.ui.Items.Layout_btn_change_rule:setVisible(false);
- end
- end
- -- todo lwqcest
- -- self.ui.Items.Button_change_rule:loadTextureNormal("res/ui/zy_club/club_table/bottom_view/club_cest_room_btn_bisai_guanli.png")
- -- self.ui.Items.Button_match_info:loadTextureNormal("res/ui/zy_club/club_table/bottom_view/club_cest_room_btn_cest_rank.png")
- -- self.ui.Items.Button_zhanji:loadTextureNormal("res/ui/zy_club/club_table/bottom_view/club_cest_room_btn_zhanji.png")
-
-
-
- --刷新layout布局
- self.ui.Items.Layout_under:requestDoLayout()
- self.ui.Items.Layout_under:doLayout()
- end
-
-
- --更新玩法数据
- function ClubTable:updateSetting(event)
- if event and event.setType then
- local setType = event.setType
- if setType == GAME_CLUB_SET_STATE.Change_Mode then
- -- 修改包间模式,需要清除一下桌子,再创建新的桌子
- if self.clubInfo.mode ~= event.value then
- self._allTables = {}
- self.ui.Items.ScrollView:removeAllChildren()
- end
- self.clubInfo.mode = event.value
- self:changeScrollViewSize()
- --
- --请求茶馆桌子数据
- local gameId
- local baoJianId
- if self.clubInfo.mode == ClubDefine.BaoJianType.Normal then
- gameId = self.clubInfo.settings.realGameId
- baoJianId = self.clubInfo.settings.baoJianId
- end
- app.club_php:setSelectGameId(gameId or 0)
- app.club_php:setSelectBaoJianId(baoJianId or 0)
-
- app.club_php:requestClubHome(self.clubInfo.clubId)
- end
- end
-
- --顶部包间信息
- self:updateTopBaoJianInfo()
-
- --更多游戏
- if self.clubInfo.role == ClubDefine.Job.Creator or self.clubInfo.role == ClubDefine.Job.Manager then
- self.ui.Items.Button_moreGame:setVisible(true)
- self.ui.Items.Layout_look_table:setVisible(self.clubInfo.mode ~= ClubDefine.BaoJianType.Normal)
- else
- self.ui.Items.Button_moreGame:setVisible(false)
- self.ui.Items.Layout_look_table:setVisible(false)
- self._bShowAllRoom = false
- end
-
- --包间设置
- self:updateChangeRuleBtn()
-
-
- --比赛场设置
- self.ui.Items.Layout_btn_match_info:setVisible(false)
- self.ui.Items.Layout_Score:setVisible(false)
- self.ui.Items.Button_wenhao:setVisible(false)
- self.ui.Items.Button_level:setVisible(false)
-
- --0后台是否开启这个按钮,1,关闭,2开启
- if self.clubInfo.isArena == ClubDefine.MATCH_SWITCH.SERVER_CLOSE then
- self.ui.Items.Layout_btn_hehuoren:setVisible(true)
- local isShowHeHuoRen = app.config.ModuleConfig.IsSupportHeHuoRen and (self.clubInfo.role == 2 or self.clubInfo.role == 3 or self.clubInfo.role == 4)
- self.ui.Items.Layout_btn_hehuoren:setVisible(isShowHeHuoRen)
- self.ui.Items.Layout_FangKa:setVisible(self.clubInfo.role == 3)
- self.ui.Items.Button_match_set:loadTextureNormal("res/ui/zy_club/club_table/bottom_view/club_room_bottom_normal_mode.png")
- elseif self.clubInfo.isArena == ClubDefine.MATCH_SWITCH.PEOPLE_MATCH_SEVER_CLOSE then
- local isShowHeHuoRen = app.config.ModuleConfig.IsSupportHeHuoRen and (self.clubInfo.role == 2 or self.clubInfo.role == 3 or self.clubInfo.role == 4)
- self.ui.Items.Layout_btn_hehuoren:setVisible(isShowHeHuoRen)
- self.ui.Items.Layout_FangKa:setVisible(self.clubInfo.role == 3)
- self.ui.Items.Button_match_set:loadTextureNormal("res/ui/zy_club/club_table/bottom_view/club_room_bottom_normal_mode.png")
- elseif self.clubInfo.isArena == ClubDefine.MATCH_SWITCH.CLIENT_OPEN then
- self.ui.Items.Layout_btn_hehuoren:setVisible(false)
- if self.clubInfo.role ~= ClubDefine.Job.Member then
- self.ui.Items.Layout_btn_match_info:setVisible(true)
- end
- self.ui.Items.Layout_btn_player_list:setVisible(false)
- self.ui.Items.Button_match_set:loadTextureNormal("res/ui/zy_club/club_table/bottom_view/club_room_bottom_match_mode.png")
- self.ui.Items.Button_wenhao:setVisible(true)
- self.ui.Items.Button_level:setVisible(true)
- self.ui.Items.Layout_FangKa:setVisible(self.clubInfo.role == 3)
- elseif self.clubInfo.isArena == ClubDefine.MATCH_SWITCH.CLIENT_CLOSE then
- local isShowHeHuoRen = app.config.ModuleConfig.IsSupportHeHuoRen and (self.clubInfo.role == 2 or self.clubInfo.role == 3 or self.clubInfo.role == 4)
- self.ui.Items.Layout_btn_hehuoren:setVisible(isShowHeHuoRen)
- self.ui.Items.Layout_btn_player_list:setVisible(true)
- self.ui.Items.Layout_btn_match_info:setVisible(false)
- self.ui.Items.Button_match_set:loadTextureNormal("res/ui/zy_club/club_table/bottom_view/club_room_bottom_normal_mode.png")
- self.ui.Items.Button_wenhao:setVisible(true)
- self.ui.Items.Button_level:setVisible(true)
- self.ui.Items.Layout_FangKa:setVisible(self.clubInfo.role == 3)
- elseif self.clubInfo.isArena == ClubDefine.MATCH_SWITCH.PEOPLE_MATCH_OPEN then
- self.ui.Items.Layout_btn_hehuoren:setVisible(false)
- self.ui.Items.Layout_btn_match_info:setVisible(true)
- self.ui.Items.Layout_btn_player_list:setVisible(false)
- self.ui.Items.Button_match_set:loadTextureNormal("res/ui/zy_club/club_table/bottom_view/club_room_btn_quanminsai.png")
- self.ui.Items.Button_match_info:loadTextureNormal("res/ui/zy_club/club_table/bottom_view/club_room_btn_match_quanminsai.png")
- self.ui.Items.Button_level:setTouchEnabled(self.clubInfo.role == ClubDefine.Job.Creator)
- self.ui.Items.Button_wenhao:setTouchEnabled(true)
- self.ui.Items.Layout_Score:setTouchEnabled(true)
- self.ui.Items.Button_wenhao:setVisible(true)
- self.ui.Items.Button_level:setVisible(true)
- self.ui.Items.Layout_Score:setVisible(true)
- self.ui.Items.Layout_FangKa:setVisible(self.clubInfo.role == 3)
- elseif self.clubInfo.isArena == ClubDefine.MATCH_SWITCH.PEOPLE_MATCH_CLOSE then
- local isShowHeHuoRen = app.config.ModuleConfig.IsSupportHeHuoRen and (self.clubInfo.role == 2 or self.clubInfo.role == 3 or self.clubInfo.role == 4)
- self.ui.Items.Layout_btn_hehuoren:setVisible(isShowHeHuoRen)
- self.ui.Items.Layout_btn_player_list:setVisible(true)
- self.ui.Items.Layout_btn_match_info:setVisible(false)
- self.ui.Items.Button_match_set:loadTextureNormal("res/ui/zy_club/club_table/bottom_view/club_room_bottom_normal_mode.png")
- self.ui.Items.Layout_FangKa:setVisible(self.clubInfo.role == 3)
- end
- -- -- todo lwqcest
- -- self.ui.Items.Button_match_set:loadTextureNormal("res/ui/zy_club/club_table/bottom_view/club_room_bottom_cest.png")
- -- self.ui.Items.Button_match_info:loadTextureNormal("res/ui/zy_club/club_table/bottom_view/club_cest_room_btn_cest_rank.png")
-
- --合盟显示
- self:onUpdateMaster()
-
- self:onUpdateHongHua()
-
- if self.clubInfo.mode == ClubDefine.BaoJianType.Normal or self.clubInfo.mode == ClubDefine.BaoJianType.Multiple then
- --屏蔽左侧游戏列表
- self.ui.Items.Layout_LeftGame:setVisible(false)
- --屏蔽子游戏多包间的包间列表
- self.ui.Items.Layout_BaoJian:setVisible(false)
- else
- self.ui.Items.Layout_LeftGame:setVisible(true)
- end
-
- --刷新layout布局
- self.ui.Items.Layout_under:requestDoLayout()
- self.ui.Items.Layout_under:doLayout()
-
- --刷新layout布局
- self.ui.Items.Layout_ChongBangFen:requestDoLayout()
- self.ui.Items.Layout_ChongBangFen:doLayout()
- end
-
- function ClubTable:onUpdateHongHua()
- if self.clubInfo.memberInfo then
- local memberInfo = self.clubInfo.memberInfo
- self.ui.Items.Text_chongbangfen:setText(tostring(memberInfo.warnum))
- self.ui.Items.TextBMFont:setText(tostring(self.clubInfo.groupLevel))
- end
- end
-
- --合盟
- function ClubTable:onUpdateMaster()
- local groupext = self.clubInfo.groupext
- --隐私数据
- local cliext = self.clubInfo.groupext and self.clubInfo.groupext.cliext
-
- if groupext then
- local action = cc.Sequence:create(cc.ScaleTo:create(0.4,0.95),cc.ScaleTo:create(0.4,1.2))
- self.ui.Items.ImageView_hand:runAction(cc.RepeatForever:create(action))
-
- if groupext and groupext.master_union == 2 then
- self.ui.Items.Button_Union:loadTextureNormal("res/ui/zy_club/club_table/top_view/club_room_master.png")
- self.ui.Items.Button_Union:setVisible(true)
- if cliext and cliext.readUnionGuide ~= 1 and self.clubInfo.role == ClubDefine.Job.Creator then
- self.ui.Items.Layout_union_guide:setVisible(true)
- end
- self.ui.Items.Text_union:setText(PLN.CLUB_UNION_MASTER_INTRO)
- elseif groupext and groupext.slave_union == 2 then
- self.ui.Items.Button_Union:setVisible(true)
- self.ui.Items.Button_Union:loadTextureNormal("res/ui/zy_club/club_table/top_view/club_room_slave.png")
- if cliext and cliext.readUnionGuide ~= 1 and self.clubInfo.role == ClubDefine.Job.Creator then
- self.ui.Items.Layout_union_guide:setVisible(true)
- end
- self.ui.Items.Text_union:setText(PLN.CLUB_UNION_SLAVE_INTRO)
- else
- self.ui.Items.Button_Union:setVisible(false)
- end
- end
-
- --不管哪个模式,如果自己是副盟,房卡不显示
- if app.club_php:getIsSlaveUnion(self.clubInfo.clubId) then
- self.ui.Items.Layout_FangKa:setVisible(false)
- self.ui.Items.Button_moreGame:setVisible(false)
- end
- end
-
- function ClubTable:onClose()
- playBtnCloseEffect();
- local room = app.club_php:getMyInRoom(self.clubInfo.clubId)
- if room then
- --有桌子下标,表示当前在房间内游戏,返回时需要退出房间
- self:onExitRoom(room)
- else
- local view = app:getCurrentView()
- -- logD(view.__cname)
- if view and view.__cname == "MainView" then --在主界面则清除ID 在房间界面则不清除 应该是点击切换包间打开的
- app.club_php.clubID = 0
- app.club_php.tableIdx = 0
- end
- setInClubRoom(false)
- self:removeFromParent()
- end
- end
-
- -- 战绩
- function ClubTable:onZhanjiClub()
- playBtnEffect()
-
- if self.clubInfo and self.clubInfo.isGamb and (self.clubInfo.role == ClubDefine.Job.Member or self.clubInfo.role == ClubDefine.Job.Copartner
- or self.clubInfo.role == ClubDefine.Job.LevelOneCopartner or self.clubInfo.role == ClubDefine.Job.LevelTwoCopartner
- or self.clubInfo.role == ClubDefine.Job.LevelThreeCopartner) then
- --开启屏蔽战绩时,不显示战绩数据(只限成员)
- local function onOK()
-
- end
- local function onCancel()
-
- end
- showConfirmDialog("当前战绩已被屏蔽,如需开启,请联系"..(app.club_php:getCestIsOpen(app.club_php.clubID) and PLN.CLUB_CEST_CREATOR_DESC or PLN.CLUB_CREATOR_DESC).."重新设置隐私选项",onOK,onCancel)
- return
- end
-
- local memberInfo = self.clubInfo.memberInfo
- if memberInfo and memberInfo.status == 0 then
- showTooltip("黑名单无法查看!")
- return
- end
-
- local view = import("luaScript.Views.Club.ClubZhanJiView"):new(self.clubInfo)
- view:setAnchorPoint(cc.p(0.5, 0.5))
- app:showWaitDialog(view)
- end
-
- --消息
- function ClubTable:onApplyMsg()
- playBtnEffect();
- if self.clubInfo.isArena == ClubDefine.MATCH_SWITCH.PEOPLE_MATCH_OPEN then
- local view = import("luaScript.Views.Club.Match.ClubMatchMessage"):new(self.clubInfo.clubId)
- view:setAnchorPoint(cc.p(0.5, 0.5))
- app:showWaitDialog(view)
- elseif self.clubInfo.isArena == ClubDefine.MATCH_SWITCH.PEOPLE_CEST_OPEN then -- lwqcest
- local view = import("luaScript.Views.Club.Cest.ClubCestMessage"):new(self.clubInfo.clubId)
- view:setAnchorPoint(cc.p(0.5, 0.5))
- app:showWaitDialog(view)
- else
- local view = import("luaScript.Views.Club.ClubMessage"):new(self.clubInfo.clubId)
- view:setAnchorPoint(cc.p(0.5, 0.5))
- app:showWaitDialog(view)
- end
- end
-
- --设置
- function ClubTable:onSet()
- playBtnEffect();
-
- local isAdmin = (tonumber(self.clubInfo.role) == 3)
-
- if isAdmin then
- local view = import("luaScript.Views.Club.ClubSheZhi.ClubShezhi"):new(self.clubInfo.clubId)
- view:setAnchorPoint(cc.p(0.5, 0.5))
- app:showWaitDialog(view)
- else
- local isShow = self.ui.Items.Layout_right_menu:isVisible();
- self.ui.Items.Layout_touch:setVisible(not isShow)
- self:setRightMenuVisible(not isShow)
- end
-
- end
-
- function ClubTable:setRightMenuVisible(bVisble)
- self.ui.Items.Layout_right_menu:setVisible(bVisble);
- end
-
- --成员列表
- function ClubTable:onPlayerList()
- playBtnEffect();
- self:onTouch()
- local function delView()
- self.playerListView = nil
- end
- local player = app.club_php:getPlayer(self.clubInfo.clubId,app.user.loginInfo.uid)
- if player and player.viewType ~= ClubDefine.PlayListType.NORMAL_MEMBER then
- self.clubInfo.players = {}
- end
- local view = import("luaScript.Views.Club.ClubNormalMode.ClubPlayerMain"):new(self.clubInfo.clubId,delView)
- self.playerListView = view
- view:setAnchorPoint(cc.p(0.5, 0.5))
- app:showWaitDialog(view)
- end
-
- --快速开始
- function ClubTable:onQuickStart()
- playBtnEffect();
- if not isEnableEnterRoom() then
- return
- end
- self:enterRoom();
- end
-
- function ClubTable:enterRoom()
- local baoJian
- if self.clubInfo.mode ~= ClubDefine.BaoJianType.Normal then
- if not self.curSelectBaoJian then
- return
- end
- baoJian = app.club_php:getBaoJian(self.clubInfo.clubId,self.curSelectBaoJian.baojianId)
- else
- baoJian = self.clubInfo.settings
- end
-
- local roomFull = {}
- local rooms = self.clubInfo.rooms
- if rooms then
- for pos,room in pairsByKeys(rooms) do
- if baoJian.baoJianId == room.baoJianId then
- if table.nums(room.players) < app.club_php:getPlayerNum(baoJian) then
- if room.status == 1 then --未开局
- self:joinClubRoom(pos,room.roomId, baoJian)
- return
- else
- roomFull[pos] = true
- end
- else
- roomFull[pos] = true
- end
- end
- end
-
- self:createRoom(baoJian)
- end
- end
-
-
- function ClubTable:createRoom(baoJianInfo)
- if self.clubInfo.status == 2 then
- showConfirmDialog(app.club_php:getCestIsOpen(app.club_php.clubID) and PLN.CLUB_CEST_DONG_JIE_TIP or PLN.CLUB_DONG_JIE_TIP);
- return;
- end
-
- if table.nums(baoJianInfo) <= 0 then
- showConfirmDialog("未设置游戏玩法,请先设置游戏玩法后再来开房!");
- return;
- end
-
- if not app.subGameManager:isInstaller(tonumber(baoJianInfo.realGameId)) or app.subGameManager:isNeedUpdate(tonumber(baoJianInfo.realGameId)) then
- requestDownloadSubGame(tonumber(baoJianInfo.realGameId), function ()
- showTooltip("下载完成")
- end, true)
- return
- end
-
- local memberInfo = self.clubInfo.memberInfo
- if memberInfo and memberInfo.status == 0 then
- showTooltip("您已被暂停游戏,请联系管理员!")
- return
- end
-
-
- local request = self:getCreateRoomData(nil,baoJianInfo);
-
- logD("clubCreateRoomRequest() request = ",table.tostring(request));
-
- --开房时记录茶馆id,用于退出房间时返回界面做判断
- app.club_php.clubID = self.clubInfo.clubId
-
- app.club:requesetCreateRoomInClub(request)
- end
-
- function ClubTable:getCreateRoomData(pos,ruleInfo)
- --局数
- local jushu = 0;
- if table.nums(ruleInfo) > 0 then
- jushu = ruleInfo.gameNum;
- end
-
- local tableIdx = pos;
- if not pos and ruleInfo.orderId then
- local startIndex = (ruleInfo.orderId - 1)* ClubDefine.TableCountMax + 1
- for i=startIndex,startIndex + (ClubDefine.TableCountMax - 1) do
- if not self.clubInfo.posList[i] then
- tableIdx = i
- break
- end
- end
- end
-
- if not tableIdx then
- showTooltip("当前房间数量已达到上限!")
- return
- end
- --showConfirmDialog(tostring(tableIdx))
- local gameId = tonumber(ruleInfo.realGameId)
-
- --记录茶馆桌子下标,用于房间切换回茶馆时做判断
- app.club_php.tableIdx = tableIdx
-
- local request = ClubCreateRoomRequest:new()
- request.gameid = gameId;--游戏id
- request.groupId = tonumber(self.clubInfo.clubId);--茶馆标识
- request.groupIndex = tostring(tableIdx); --茶馆桌子序号
- request.groupUid = tonumber(self.clubInfo.ownerId);--茶馆管理员ID
- request.groupMemNum = tonumber(self.clubInfo.playerNum);--茶馆成员人数
-
- --游戏局数
- request.gameNum = jushu;
-
- --游戏信息,同游戏创建参数
- local gameinfo = ruleInfo.strGameRule
-
- local ttGameInfo = json.decode(gameinfo) or {}
- ttGameInfo.clubId = tonumber(self.clubInfo.clubId)
- ttGameInfo.tableIdx = tonumber(tableIdx)
- ttGameInfo.ruleid = tostring(ruleInfo.baoJianId)
- --柳州字牌增加23人玩法
- if gameId == 20 and not ttGameInfo.startMode then
- ttGameInfo.startMode = 1
- end
- gameinfo = json.encode(ttGameInfo)
-
- request.gameInfo = gameinfo
-
- --发起创建的用户信息
- local tt = json.decode(app.user.userInfo)
- tt.openid = app.user.openid
- tt.unionid = app.user.unionid
- tt.sex = tonumber(tt.sex)
- request.usrinfo =json.encode(tt)
-
- return request;
- end
-
- function ClubTable:joinClubRoom( pos, roomid, ruleInfo)
- if self.clubInfo.status == 2 then
- showConfirmDialog(app.club_php:getCestIsOpen(app.club_php.clubID) and PLN.CLUB_CEST_DONG_JIE_TIP or PLN.CLUB_DONG_JIE_TIP);
- return;
- end
-
- local gameId = tonumber(ruleInfo.realGameId)
-
- if not app.subGameManager:isInstaller(gameId) or app.subGameManager:isNeedUpdate(gameId) then
- requestDownloadSubGame(gameId, function ()
- showTooltip("下载完成")
- end, true)
- return
- end
-
- --[[if self.clubInfo.players then
- local playerList = self.clubInfo.players
- for k,v in pairs(playerList) do
- if v.uid == tostring(app.user.loginInfo.uid) and v.status == 0 then
- showTooltip("您已被暂停游戏,请联系管理员!")
- return
- end
- end
- end--]]
- local memberInfo = self.clubInfo.memberInfo
- if memberInfo and memberInfo.status == 0 then
- showTooltip("您已被暂停游戏,请联系管理员!")
- return
- end
-
- local request = ClubJoinRoomRequest:new()
- request.gameid = gameId; --游戏id
- request.tableid = tonumber(roomid); --房间号
- request.grouId = tonumber(self.clubInfo.clubId); --茶馆标识
- request.groupIndex = tonumber(pos); --茶馆桌子序号
-
- --发起创建的用户信息
- local tt = json.decode(app.user.userInfo)
- tt.unionid = app.user.unionid
- tt.openid = app.user.openid
- tt.sex = tonumber(sex)
- request.usrinfo =json.encode(tt)
-
-
- --游戏信息,同游戏创建参数
- local gameinfo = json.decode(ruleInfo.strGameRule)
- if gameinfo then
- request.gamerule = gameinfo.gamerule
- end
-
- logD("clubJoinRoomRequest() request = ",table.tostring(request));
-
- --开房时记录茶馆id,用于退出房间时返回界面做判断
- app.club_php.clubID = self.clubInfo.clubId;
-
- local createRoomRequest = self:getCreateRoomData(pos, ruleInfo);
-
- app.club:requestJoinRoomInClub(request, createRoomRequest)
- end
-
-
- --退出茶馆
- function ClubTable:onExitClub()
- playBtnEffect();
- local room = app.club_php:getMyInRoom(self.clubInfo.clubId)
- if room then
- --有桌子下标,表示当前在房间内游戏
- showTooltip(app.club_php:getCestIsOpen(app.club_php.clubID) and PLN.CLUB_CEST_IN_GAME_EXIT or PLN.CLUB_IN_GAME_EXIT)
- return
- end
- self:onTouch()
- local view = import("luaScript.Views.Club.ClubDongJie"):new(self.clubInfo.clubId,3)
- view:setAnchorPoint(cc.p(0.5, 0.5))
- app:showWaitDialog(view)
- end
-
- function ClubTable:onTouch()
- self.ui.Items.Layout_touch:setVisible(false)
- self:setRightMenuVisible(false);
- self.ui.Items.Layout_baojian_touch:setVisible(false);
- end
-
- function ClubTable:onApplicationWillEnterForeground()
- logD("ClubTable:onApplicationWillEnterForeground()")
-
- if not self.clubInfo then
- logD("ClubTable:onApplicationWillEnterForeground() self.clubInfo is nil")
- return
- end
-
- logD("ClubTable:onApplicationWillEnterForeground() self.clubInfo = ", table.tostring(self.ClubInfo))
-
- app.club_php:requestClubHome(self.clubInfo.clubId)
-
- --不在成员列表界面请求茶馆成员列表,默认今日,在成员列表界面由成员列表自己去刷新对应的日期
- if not self.playerListView then
- self:requestPlayerList()
- end
- end
-
- function ClubTable:onApplicationDidEnterBackground()
- --[[ local size = self.ui.Items.ScrollView:getContentSize()
- self.lastScrollViewSize = size
- dump(size, "ClubTable:onApplicationDidEnterBackground")--]]
- end
-
- --返回房间
- function ClubTable:onBackRoom()
- playBtnEffect()
- self:removeFromParent()
- end
-
- function ClubTable:onBackRoomEvent()
- self:removeFromParent()
- end
-
- --退出房间
- function ClubTable:onExitRoom()
- playBtnEffect();
- local function onClickOk()
- self.ui:sendMsg(app.room, "callLeaveRequest");
- end
-
- local function onClickCancel()
-
- end
-
- local room = app.club_php:getMyInRoom(self.clubInfo.clubId)
- if room then
- showTooltip("游戏中,无法退出!!!")
- return
- end
-
- --showConfirmDialog("离开后将会自动退出已落座的桌子?", onClickOk, onClickCancel)
- end
-
- --刷新
- function ClubTable:onRefresh()
- playBtnEffect()
- --最后点击刷新的时间
- self.lastRefreshTime = tonumber(loadUserInfo("lastRefreshTime")) or 0
- saveUserInfo("lastRefreshTime",self.lastRefreshTime)
-
- --连续点击次数
- self.touchTimes = tonumber(loadUserInfo("touchTime")) or 0
- self.touchTimes = self.touchTimes + 1;
- saveUserInfo("touchTime", self.touchTimes)
-
- local curTime = os.time()
- local distance = curTime - self.lastRefreshTime
- local disbandTime = 5
- --点击超过三次,提示
- if self.touchTimes > 3 and distance <= disbandTime then
- showTooltip(string.format("请勿频繁刷新,休息一下下哦!"))
- return
- end
- self.lastRefreshTime = curTime
- saveUserInfo("lastRefreshTime",self.lastRefreshTime)
-
- --刷新回到第一页
- self.curPage = 1;
- app.club_php:setChangeTable(true)
-
- local gameId = app.club_php:getSelectGameId()
- local ruleId = app.club_php:getSelectBaoJianId()
- app.club_php:requestClubHome(self.clubInfo.clubId,gameId,ruleId)
-
- --请求茶馆成员列表
- self:requestPlayerList()
-
- showTooltip("刷新成功")
- end
-
- --点击公告
- function ClubTable:onClickGongGao()
- if self.clubInfo.role == 1 then
- -- showTooltip("非管理人员")
- else
- playBtnEffect()
- local view = import("luaScript.Views.Club.ClubSetNotice"):new(self.clubInfo)
- view:setAnchorPoint(cc.p(0.5, 0.5))
- app:showWaitDialog(view)
- end
- end
-
- function ClubTable:onGetClubOfficialActivitySucc(event)
- local view = import("luaScript.Views.Club.ClubOfficialActivityView"):new(event.activitys)
- view:setAnchorPoint(cc.p(0.5, 0.5))
- app:showWaitDialog(view)
- end
-
- function ClubTable:popClubWindow(data)
- if data then
- self.clubInfo.cancelCopartner = data.response
- end
- if self.clubInfo and self.clubInfo.cancelCopartner and self.clubInfo.cancelCopartner.uid then
- local view = import("luaScript.Views.Club.ClubNoticeHeHuoRen"):new(self.clubInfo.clubId,self.clubInfo.cancelCopartner)
- view:setAnchorPoint(cc.p(0.5, 0.5))
- app:showWaitDialog(view,0)
- end
- end
-
- function ClubTable:onClubHeHuoRenCancelTip(data)
- local view = import("luaScript.Views.Club.ClubNoticeHeHuoRenTip"):new()
- view:setAnchorPoint(cc.p(0.5, 0.5))
- app:showWaitDialog(view,0)
- end
-
- function ClubTable:requestPlayerList()
- local playerJson
- if self.clubInfo.isArena == ClubDefine.MATCH_SWITCH.CLIENT_OPEN then--比赛场(弃用模式)
- playerJson = {
- clubId = self.clubInfo.clubId,
- viewType = ClubDefine.PlayListType.MATCH_MEMBER,
- status = ClubDefine.PlayListType.MATCH_MEMBER,
- }
- app.club_php:requestPlayerList(playerJson)
- elseif self.clubInfo.isArena == ClubDefine.MATCH_SWITCH.PEOPLE_MATCH_OPEN then--排名赛(悠闲没有)
- local localData ={
- clubId = self.clubId,
- viewType = ClubDefine.PlayListType.ALL_PEOPLE_MATCH_MANAGER,
- type = 1,
- muid = 0,
- isMyMem = 0,
- orderby = "role",
- sort = "desc",
- lastDay = 0,
- page = 1,
- suid = 0,
- }
- app.club_php:requestMatchManage(localData)
- elseif self.clubInfo.isArena == ClubDefine.MATCH_SWITCH.PEOPLE_CEST_OPEN then
- -- local localData ={
- -- clubId = self.clubId,
- -- viewType = self.viewType,
- -- type = self.type,
- -- muid = self.muid,
- -- isMyMem = self.suid and PLAYER_TYPE_PHP_DATA[PLAYER_TYPE.ALL_MEMBER] or self.isMyMem,--搜索就在全部里面搜索,某个类别里面搜索,可能找不到人。
- -- orderby = self.orderby,
- -- sort = self.sort,
- -- lastday = self.lastDay,
- -- page = self.curPage,
- -- suid = self.suid,
- -- }
-
- local localData ={
- clubId = self.clubId,
- viewType = ClubDefine.PlayListType.ALL_PEOPLE_MATCH_MANAGER,
- type = 1,
- muid = 0,
- isMyMem = 0,--搜索就在全部里面搜索,某个类别里面搜索,可能找不到人。
- orderby = "role",
- sort = "desc",
- lastday = 0,
- page = 1,
- suid = 0,
- }
-
- -- app.club_php:requestMatchManage(localData)
- app.club_php:requestCestManage(localData)
- else
- --普通场
- playerJson = {
- clubId = self.clubInfo.clubId,
- viewType = ClubDefine.PlayListType.NORMAL_MEMBER,
- status = ClubDefine.PlayListType.NORMAL_MEMBER,
- }
- app.club_php:requestPlayerList(playerJson)
- end
- end
-
- function ClubTable:onClubGpsDistanceCheck(data)
- if not data then
- return
- end
- local uid = data.uid
- local userInfo = json.decode(data.userInfo)
- local nickname = getShortName(userInfo.nickname)
- local gpsDistance = data.gpsLimit
- local content = "当前房间禁止"..tostring(gpsDistance).."米内玩家同桌,经检测,您与"..nickname.."的距离小于"..tostring(gpsDistance).."米,无法加入房间"
- showConfirmDialog(content)
- setIsAgainGamebol(false,"")
- end
-
- function ClubTable:changeScrollViewSize()
- if self.clubInfo.mode == ClubDefine.BaoJianType.Normal then
- self.ui.Items.ScrollView:setSize(cc.size(1280*g_radio_x, self.srcTableScrollowSize.height))
- elseif self.clubInfo.mode == ClubDefine.BaoJianType.Multiple then
- self.ui.Items.ScrollView:setSize(cc.size(1280*g_radio_x, self.srcTableScrollowSize.height))
- elseif self.clubInfo.mode == ClubDefine.BaoJianType.ManyRooms then
- self.ui.Items.ScrollView:setSize(cc.size(self.srcTableScrollowSize.width * g_radio_x, self.srcTableScrollowSize.height))
- end
- end
-
- --设置通知
- function ClubTable:onClubChangeEvent()
- -- 茶馆名
- local nickname = getShortNameByLength(self.clubInfo.clubName,5)
- self.ui.Items.Text_name:setText(nickname)
- -- 根据条件隐藏茶馆id
-
- local cliext = self.clubInfo.groupext and self.clubInfo.groupext.cliext
- if not cliext or not cliext.is_hideGid or (cliext and cliext.is_hideGid == 1) then
- if tonumber(self.clubInfo.role) ~= ClubDefine.Job.Manager and tonumber(self.clubInfo.role) ~= ClubDefine.Job.Creator then
- self.ui.Items.Text_id:setVisible(false)
-
- if app.club_php:getCestIsOpen(self.clubId) then
- self.ui.Items.Text_cest_id:setVisible(false)
- end
- end
- else
- self.ui.Items.Text_id:setVisible(true)
- if app.club_php:getCestIsOpen(self.clubId) then
- self.ui.Items.Text_cest_id:setVisible(true)
- end
- end
-
-
-
- --刷新菜单按钮
- self:setMenuButton()
- --包间切换
- self:changeScrollViewSize()
- local gameId
- local baoJianId
- if self.clubInfo.mode == ClubDefine.BaoJianType.Normal then
- gameId = self.clubInfo.settings.realGameId
- baoJianId = self.clubInfo.settings.baoJianId
- app.club_php:setSelectGameId(gameId or 0)
- app.club_php:setSelectBaoJianId(baoJianId or 0)
- end
-
- self.ui.Items.Layout_baojian_touch:setVisible(false);
- end
-
-
- --点击包间列表
- function ClubTable:onClickBaojianNormal()
- local bVisble = self.ui.Items.Layout_baojian_touch:isVisible()
- self.ui.Items.Layout_baojian_touch:setVisible(not bVisble)
- if not self.baoJianView then
- self.baoJianView = import("luaScript.Views.Club.ClubBaojian"):new(self.clubInfo.clubId)
- self.ui.Items.Layout_baojian_normal:addChild(self.baoJianView);
- end
- end
-
- --单包间-自己切换包间事件
- function ClubTable:onClubChangeBaoJianEvent()
- self.ui.Items.Layout_baojian_touch:setVisible(false)
- local gameId = self.clubInfo.settings.gameId
- local baoJianId = self.clubInfo.settings.baoJianId
-
- app.club_php:setSelectGameId(gameId or 0)
- app.club_php:setSelectBaoJianId(baoJianId or 0)
- app.club_php:requestClubHome(self.clubInfo.clubId)
-
- -- 每次切包间,都滚到最左边
- self.ui.Items.ScrollView:jumpToLeft()
- end
-
- function ClubTable:updateTopBaoJianInfo()
- if self.clubInfo.baoJians then
- if self.clubInfo.mode == ClubDefine.BaoJianType.Normal then
- local index = 0
-
- local newBaoJians = app.club_php:getSortClubBaoJians(self.clubInfo.clubId)
-
- for k,v in ipairs(newBaoJians) do
- if tonumber(v.is_use) == 1 then
- index = index + 1
- end
- if tonumber(v.baoJianId) == tonumber(self.clubInfo.settings.baoJianId) then
- break
- end
- end
-
- if self.clubInfo.settings.strGameRule then
- local strGameRule = json.decode(self.clubInfo.settings.strGameRule)
- local gamerule = strGameRule.gamerule or strGameRule.gameRule
- local name = getSubGameRuleName(self.clubInfo.settings.realGameId,tonumber(gamerule))
- self.ui.Items.Text_baojian:setText(tostring(name))
- self.ui.Items.Layout_top_baojian_info:setVisible(true)
-
- -- cest
- if app.club_php:getCestIsOpen(app.club_php.clubID) then
- -- cest
- self.ui.Items.ImageView_zhanji_line:setVisible(true)
- self.ui.Items.Layout_btn_quick:setVisible(true)
- end
- else
- self.ui.Items.Text_baojian:setText(tostring("未设置包间"))
- end
-
- if index ~= 0 then
- self.ui.Items.Text_index:setText(tostring(index))
- else
- self.ui.Items.Layout_top_baojian_info:setVisible(false)
-
- -- cest
- self.ui.Items.ImageView_zhanji_line:setVisible(false)
- self.ui.Items.Layout_btn_quick:setVisible(false)
- end
- elseif self.clubInfo.mode == ClubDefine.BaoJianType.Multiple or self.clubInfo.mode == ClubDefine.BaoJianType.ManyRooms then
- self.ui.Items.Layout_top_baojian_info:setVisible(false)
-
-
-
- -- cest
- if app.club_php:getCestIsOpen(app.club_php.clubID) then
- -- self.ui.Items.ImageView_zhanji_line:setVisible(false)
- -- self.ui.Items.Layout_btn_quick:setVisible(false)
-
- end
- end
- local size = self.ui.Items.Layout_TextSize:getSize()
- self.ui.Items.Layout_TextSize:setSize(cc.size(self.ui.Items.Text_baojian:getSize().width,size.height))
- self.ui.Items.Layout_top_baojian_info:requestDoLayout()
- self.ui.Items.Layout_top_baojian_info:doLayout()
- end
- end
-
- -- 合伙人按钮点击事件
- function ClubTable:onBtnHeHuoRenClicked()
- playBtnEffect()
- if self.clubInfo.clubId <= 0 then
- showTooltip("请先选择" .. (app.club_php:getCestIsOpen(app.club_php.clubID) and PLN.CLUB_CEST_NAME or PLN.CLUB_NAME))
- return
- end
- if tonumber(self.clubInfo.role) == ClubDefine.Job.Manager or tonumber(self.clubInfo.role) == ClubDefine.Job.Creator then
- local view = import("luaScript.Views.Club.HeHuoRen.ClubHeHuoRenMain"):new(self.clubInfo.clubId)
- view:setAnchorPoint(cc.p(0.5, 0.5))
- app:showWaitDialog(view)
- else
- local view = import("luaScript.Views.Club.HeHuoRen.ClubHeHuoRenDetailed"):new(self.clubInfo, app.user.loginInfo.uid)
- view:setAnchorPoint(cc.p(0.5, 0.5))
- app:showWaitDialog(view)
- end
- end
-
- -- 邀请按钮点击事件
- -- @return
- --
- function ClubTable:onBtnInviteClicked()
- playBtnEffect()
-
- if self.clubInfo.clubId <= 0 then
- showTooltip("请先选择" .. (app.club_php:getCestIsOpen(app.club_php.clubID) and PLN.CLUB_CEST_NAME or PLN.CLUB_NAME))
- return
- end
- -- local gname = self.clubInfo.gname
- -- local clubList = app.club_php.clubList
- -- if clubList then
- -- local clubInfo = clubList[tonumber(self.clubInfo.gid)]
- -- if clubInfo then
- -- gname = clubInfo.gname
- -- end
- -- end
-
- local title = string.format("%s名称:%s", (app.club_php:getCestIsOpen(app.club_php.clubID) and PLN.CLUB_CEST_NAME or PLN.CLUB_NAME), self.clubInfo.clubName)
- local content = string.format("可视化牌桌,不用自己开房就可以玩牌。");
- local desc = string.format("%sID:%s\n%s", (app.club_php:getCestIsOpen(app.club_php.clubID) and PLN.CLUB_CEST_NAME or PLN.CLUB_NAME), self.clubInfo.clubId, content);
- local info = {}
- info.ClubID = self.clubInfo.clubId
- info.title = title
- info.description = desc
- print("用户开始分享")
- --需要显示的按钮(1:微信 2:复制 3:茶馆 )
- if type(menuIdxs) ~= "table" then
- info.menuIdxs = {1, 4, 5, 6}
- end
-
- if type(copyData) == "string" then
- info.copyData = copyData
- else
- info.copyData = ""
- end
- dump(info)
-
- local view = import("luaScript.Views.Main.ShareView"):new(info)
- view:setAnchorPoint(cc.p(0.5, 0.5))
- app:showWaitDialog(view)
- end
-
- -- 活动按钮点击事件
- --
- function ClubTable:onBtnActivityClicked()
- playBtnEffect()
- if self.clubInfo.clubId <= 0 then
- showTooltip("请先选择" .. (app.club_php:getCestIsOpen(app.club_php.clubID) and PLN.CLUB_CEST_NAME or PLN.CLUB_NAME))
- return
- end
- local clubId = self.clubInfo.clubId
- app.club_php:requestClubOfficialActivity(clubId)
- end
- ---
- -- 初始化广播条
- -- @return
- --
- function ClubTable:initBoradcastView(noticeList)
- if not self._broadcastView then
- local ClubBroadcastView = require("luaScript.Views.Club.ClubBroadcastView")
- self._broadcastView = ClubBroadcastView:new()
- self.ui.Items.Layout_Broadcast:addChild(self._broadcastView)
- end
-
- self._broadcastView:setBroadcastList(noticeList)
- end
-
- function ClubTable:updateTable(event)
- local showRooms, hideRooms = app.club_php:getShowRooms(nil, nil)
- for kk, vv in pairs(hideRooms or {}) do
- local pos = vv.pos
- for k,v in pairs(self.allTableItem or {}) do
- local idx = v:getTableIdx()
- if idx == pos then
- logD("ClubTable:updateTable 删除桌子 ", k, idx)
- v:removeSelf()
- self.allTableItem[k] = nil
- end
- end
- end
- end
-
- function ClubTable:onClubUnionHintsUpdateEvent()
- self.ui.Items.ImageView_union_dian:setVisible(self.clubInfo.isUnionHints)
- end
-
- -- function ClubTable:initClubCest()
- -- self.ui.Items.Layout_Mid:setVisible(false);
- -- self.ui.Items.Layout_Cest:setVisible(true);
- -- --隐藏桌数
- -- self.ui.Items.Layout_look_table:setVisible(false)
-
- -- self:initClubCestRule()
- -- self:initClubCestChange()
- -- end
-
- -- function ClubTable:initClubCestRule()
- -- self.ui.Items.Text_rule:setVisible(false);
-
- -- self.ui.Items.ScrollView_rule:hideAllBar()
- -- self.ui.Items.ScrollView_rule:getInnerContainer():setAutoSize(true)
- -- local mListView = self.ui.Items.ScrollView_rule
- -- mListView:removeAllChildren()
-
-
- -- local content = {
- -- "1、玩家根据自己的竞技能力,可自主报名参与对应的比赛场;\n",
- -- "2、报名成功后,可获得该场的初始积分和参赛券;\n",
- -- "3、每参与一场比赛,消耗一定数量参赛券,比赛积分低于淘汰分或参赛券不足时,需本轮比赛结束,将本轮成绩更新到海选赛排行榜上后,可重新参与新一轮比赛;\n",
- -- "4、海选赛排行榜实时更新,以选手每天上报的最高好绩进行排名,为保证自己的最好成绩,选手可提前申请结束本轮比赛,保存本轮比赛成绩;\n",
- -- "5、海选赛排行榜24:00停止刷新,确定最终排名,取排行榜前50名,分别奖励50-1分的天梯赛分和CEST商城兑换积分;\n",
- -- "6、获得天梯赛排名可参与CEST专业赛事,CEST商城兑换积分,可到商城中兑换礼物\n",
- -- }
-
- -- for k,v in ipairs(content) do
- -- local item = self.ui.Items.Text_rule:getCopied()
- -- item:setString(v)
- -- mListView:addChild(item,0);
- -- end
-
- -- mListView:requestDoLayout()
- -- mListView:doLayout()
- -- mListView:jumpToTopOnSizeChanged()
- -- end
-
- -- function ClubTable:initClubCestChange()
- -- self.ui.Items.Button_baoming_1:registerClick(handler(self , self.onCestRequestBaoming))
- -- self.ui.Items.Button_baoming_2:registerClick(handler(self , self.onCestRequestBaoming))
- -- self.ui.Items.Button_baoming_3:registerClick(handler(self , self.onCestRequestBaoming))
-
-
- -- end
-
- -- -- 报名参加
- -- function ClubTable:onCestRequestBaoming(_change)
- -- -- local localData ={
- -- -- clubId = self.clubId,
- -- -- viewType = self.viewType,
- -- -- type = self.type,
- -- -- muid = self.muid,
- -- -- isMyMem = self.suid and PLAYER_TYPE_PHP_DATA[PLAYER_TYPE.ALL_MEMBER] or self.isMyMem,--搜索就在全部里面搜索,某个类别里面搜索,可能找不到人。
- -- -- orderby = self.orderby,
- -- -- sort = self.sort,
- -- -- lastday = self.lastDay,
- -- -- page = self.curPage,
- -- -- suid = self.suid,
- -- -- }
-
- -- -- app.club_php:requestMatchManage(localData)
-
- -- self:onCloseCestApplyLayer()
- -- end
-
- -- function ClubTable:onCloseCestApplyLayer()
- -- self.ui.Items.Layout_Cest:setVisible(false);
-
- -- end
-
- -- function ClubTable:onUpdateCestInfo()
- -- -- if self.clubInfo.memberInfo then
- -- local memberInfo = self.clubInfo.memberInfo
- -- self.ui.Items.Text_chongbangfen:setText(tostring(memberInfo.warnum))
- -- self.ui.Items.TextBMFont:setText(tostring(self.clubInfo.groupLevel))
- -- -- end
- -- end
-
-
- return ClubTable
|