-- 玩家列表提示框Layout local ClubPlayerSetHeHuoRen = class("ClubPlayerSetHeHuoRen" , cc.UIView); local ClubDefine = require("luaScript.Protocol.Club.ClubDefine") local TIPS_TYPE_IMG_SELECT = { [1] = "res/ui/zy_club/club_room/club_player/operate/club_title_font_set_manager.png", --设置管理员 [2] = "res/ui/zy_club/club_room/club_player/operate/club_title_font_cancel_manager.png", --取消管理员 [3] = "res/ui/zy_club/club_room/club_player/operate/club_title_font_pause_game.png", --拉入黑名单 [4] = "res/ui/zy_club/club_room/club_player/operate/club_title_font_resume_game.png", --取消黑名单 [5] = "res/ui/zy_club/club_room/club_player/operate/club_title_font_remove_player.png", --删除成员 [6] = "res/ui/zy_club/club_room/club_player/operate/club_title_font_Transfer.png", --转让茶馆 [8] = "res/ui/zy_club/club_room/club_player/operate/club_title_font_set_hehuoren.png", --设置合伙人 [9] = "res/ui/zy_club/club_room/club_player/operate/club_title_font_tips.png", --设置合伙人 [10]= "res/ui/zy_club/club_room/club_player/operate/club_title_font_tips.png", --取消合伙人 [11]= "res/ui/zy_club/club_room/club_player/operate/club_title_font_levelone_cancelhehuoren.png", --取消一级合伙人 [12]= "res/ui/zy_club/club_room/club_player/operate/club_title_font_levelone_hehuoren.png", --设置一级合伙人 [14]= "res/ui/zy_club/club_room/club_player/operate/club_title_font_freeze_member.png", --冻结下属成员 [15]= "res/ui/zy_club/club_room/club_player/operate/club_title_font_leveltwo_cancelhehuoren.png", --取消2级合伙人 [16]= "res/ui/zy_club/club_room/club_player/operate/club_title_font_leveltwo_hehuoren.png", --设置2级合伙人 [18]= "res/ui/zy_club/club_room/club_player/operate/club_title_font_recovery_member.png", --恢复下属成员 [19] = "res/ui/zy_club/club_room/club_player/operate/club_title_font_set_hehuoren2.png", --设置合伙人 [20] = "res/ui/zy_club/club_room/club_player/operate/club_title_font_set_removeplayer.png", --合伙人移除成员 } function ClubPlayerSetHeHuoRen:ctor(idx,playerInfo,clubId,okCallback) ClubPlayerSetHeHuoRen.super.ctor(self) self.ui = loadUI("res/ui/ui_club/ui_club_player_setHeHuoRen.ui"); self:addChild(self.ui) --玩家数据 self.playerInfo = playerInfo self.clubId = clubId self.clubInfo = app.club_php.clubList[self.clubId] self.idx = idx --确认回调 self.okCallback = okCallback app.club_php:requestClub(self.clubId) self.curDisant = 1 end function ClubPlayerSetHeHuoRen:onEnter() ClubPlayerSetHeHuoRen.super.onEnter(self) -- 确认回调 self.ui.Items.Button_confirm:registerClick(handler(self , self.onConfirm)) self.ui.Items.Button_cancel:registerClick(handler(self , self.onClose)) -- 取消回调 self.ui.Items.Button_close:registerClick(handler(self , self.onClose)) self.ui.Items.Button_Sub:registerClick(handler(self , self.onSub)) self.ui.Items.Button_Add:registerClick(handler(self , self.onAdd)) self:bindTextFildTouch() self:updateView() self:initBindEvent() end function ClubPlayerSetHeHuoRen:initBindEvent() --分成比例回调 --self:bindEvent(app.club_php , GAME_EVENT.UPDATE_COPARTNER_RATDIO , handler(self , self.updateView)); --绑定比赛开关回调 self:bindEvent(app.club_php , GAME_EVENT.CLUB_SET , handler(self , self.onSetSuccess)); self:bindEvent(app.club_php , GAME_EVENT.CLUB_PLAYER_LIST , handler(self , self.updateView)); end -- 当比赛一关,其他和比赛有关的界面需要关闭 function ClubPlayerSetHeHuoRen:onSetSuccess(data) if not data or not data.setType then return end if data.setType == GAME_CLUB_SET_STATE.Math_Switch then self:removeFromParent() end end function ClubPlayerSetHeHuoRen:updateView() self.nPercent = 100 local player = app.club_php:getMatchPlayer(self.clubId,app.user.loginInfo.uid) if not player then --请求茶馆成员列表 local playerJson = { clubId = self.clubInfo.clubId, viewType = ClubDefine.PlayListType.MATCH_MEMBER, status = ClubDefine.PlayListType.MATCH_MEMBER, } app.club_php:requestPlayerList(playerJson); return end if player and player.role == ClubDefine.Job.LevelOneCopartner then self.maxLimit = toNumber(player.arenaRatio) self.nPercent = 0 self.ui.Items.Text_Content_1:setVisible(false) elseif player.role == ClubDefine.Job.Creator then self.maxLimit = 100 else self.maxLimit = 100 end --[[ if self.maxLimit == self.nPercent then self.ui.Items.Button_Add:setEnabled(false) else self.ui.Items.Button_Add:setEnabled(true) end if 0 == self.nPercent then self.ui.Items.Button_Sub:setEnabled(false) else self.ui.Items.Button_Sub:setEnabled(true) end--]] if self.clubInfo.ext and self.clubInfo.config then local leftNum = toNumber(self.clubInfo.config.role5Limit) - toNumber(self.clubInfo.ext.role5) self.ui.Items.Text_Content_1:setText("注:"..ClubDefine.Role[ClubDefine.Job.LevelOneCopartner].."上限为"..tostring(self.clubInfo.config.role5Limit).."人,您还有"..tostring(leftNum).."个名额!") end self.ui.Items.TextField_ratdio:setText(tostring(self.nPercent).."%") -- 玩家id self.ui.Items.Text_player_id:setText("ID:"..self.playerInfo.uid) -- 玩家昵称 self.playerInfo.name = getSubStringNickname(self.playerInfo.name or self.playerInfo.nick or "", self.ui.Items.Text_nick_name) -- 玩家头像地址 local nodeHead = self.ui.Items.ImageView_head local headSize = nodeHead:getContentSize() setPlayerHeadImage(self.playerInfo.uid, self.playerInfo.strHeadUrl, nodeHead) --title self.ui.Items.ImageView_title:loadTexture(TIPS_TYPE_IMG_SELECT[self.idx]); self.srcMinPercent = self.nPercent end function ClubPlayerSetHeHuoRen:onClose() playBtnCloseEffect() self:removeFromParent() end function ClubPlayerSetHeHuoRen:onConfirm() playBtnEffect() if self:isRight() then return end if self.nPercent == 0 then showTooltip("请设置分成比例!") return end if self.nPercent == toNumber(self.playerInfo.arenaRatio) then self:removeFromParent() return end if self.okCallback then self.okCallback(self.nPercent); end self:removeFromParent() end function ClubPlayerSetHeHuoRen:onSub() playBtnEffect() if self:isRight() then return end local nPercent = self.nPercent - self.curDisant if nPercent < 0 then return end --[[ if nPercent == 0 then self.ui.Items.Button_Sub:setEnabled(false) end self.ui.Items.Button_Add:setEnabled(true)--]] self.nPercent = self.nPercent - self.curDisant self.ui.Items.TextField_ratdio:setText(tostring(self.nPercent).."%") end function ClubPlayerSetHeHuoRen:onAdd() playBtnEffect() if self:isRight() then return end local nPercent = self.nPercent + self.curDisant if nPercent > self.maxLimit then return end --[[if nPercent == self.maxLimit then self.ui.Items.Button_Add:setEnabled(false) end self.ui.Items.Button_Sub:setEnabled(true)--]] self.nPercent = self.nPercent + self.curDisant self.ui.Items.TextField_ratdio:setText(tostring(self.nPercent).."%") end function ClubPlayerSetHeHuoRen:bindTextFildTouch() local searchBoxLeft = self.ui.Items.TextField_ratdio; self.curPercent = 0 local function onTouchEndedL(touch , event) logD("event:",event) if event == cc.TextFiledEventType.enter or event == cc.TextFiledEventType.detach_with_ime then local searchCont = searchBoxLeft:getText(); if searchCont == "" then searchCont = tostring(self.curPercent).."%" else searchCont = searchCont.."%" end searchBoxLeft:setText(searchCont) elseif event == cc.TextFiledEventType.attach_with_ime then local searchCont = searchBoxLeft:getText(); local list = string.split(searchCont,"%") logD("list[1]:",list[1]) logD("list[2]:",list[2]) if list[1] and not (list[2] and list[2] ~= "") then logD("searchBoxLeft:setText(tostring(list[1]))") searchBoxLeft:setText(tostring(list[1])) self.curPercent = list[1] else logD("searchBoxLeft:setText()") searchBoxLeft:setText("") end end end searchBoxLeft:addEventListener(onTouchEndedL) end function ClubPlayerSetHeHuoRen:isRight() local searchCont = self.ui.Items.TextField_ratdio:getText(); local list = string.split(searchCont,"%") searchCont = list[1] if (list[2] and list[2] ~= "") or not tonumber(searchCont) or toNumber(searchCont) < 0 or toNumber(searchCont) > 100 or self:calutPointNum(searchCont) then showTooltip("注:输入内容不合法,请输入"..tostring(self.srcMinPercent).."—"..tostring(self.maxLimit).."内的整数!") return true end self.nPercent = toNumber(searchCont) return false end function ClubPlayerSetHeHuoRen:calutPointNum(str) local list = string.split(str,".") if list and list[2] then if string.len(list[2]) ~= 0 then return true end end return false end return ClubPlayerSetHeHuoRen