local MJDefine = MJFramework.MJImport("mj.luaScript.MJDefine") local MJMessage = MJFramework.MJImport("mj.luaScript.Protocol.MJMessage") local yibinmajiangDingQueView = class("yibinmajiangDingQueView", cc.UIView) function yibinmajiangDingQueView:ctor() yibinmajiangDingQueView.super.ctor(self) self:setVisible(false) self:setAnchorPoint(cc.p(0, 0)) self._initAni = {} end -- 加载UI function yibinmajiangDingQueView:loadUI() local ui = loadUI("mj_yibinmajiang/res/ui_fangjian/mj_yibinmajiang_dingque.ui") self.ui = ui self:addChild(ui) end function yibinmajiangDingQueView:onEnter() yibinmajiangDingQueView.super.onEnter(self) self:loadUI() self:initViews() end function yibinmajiangDingQueView:onExit() yibinmajiangDingQueView.super.onExit(self) end -- 初始化界面 function yibinmajiangDingQueView:initViews() self.ui.Items.Button_Wan:registerClick(handler(self, self.onbtnWanClicked)) self.ui.Items.Button_Tong:registerClick(handler(self, self.onbtnTongClicked)) self.ui.Items.Button_Tiao:registerClick(handler(self, self.onbtnTiaoClicked)) end -- 点击了万 function yibinmajiangDingQueView:onbtnWanClicked() self:sendDingQueRequest(0) end -- 点击了筒 function yibinmajiangDingQueView:onbtnTongClicked() self:sendDingQueRequest(1) end -- 点击了条 function yibinmajiangDingQueView:onbtnTiaoClicked() self:sendDingQueRequest(2) end -- 发送定缺请求 function yibinmajiangDingQueView:sendDingQueRequest(value) local request = MJMessage.DingQueRequest:new() request.que = value self.ui:sendMsg(app.room, MJDefine.MJEvent.DingQueRequest, request) logD("-------------------- 发送定缺消息 ------------------------") logD(table.tostring(request)) self:hideSelf() end -- 移除按钮 function yibinmajiangDingQueView:hideSelf() self:setVisible(false) end -- 显示定缺操作界面 function yibinmajiangDingQueView:showDingQueOpreate(nice_choose) self:resetState() self:setVisible(true) self:showNiceChooseAni(nice_choose) end function yibinmajiangDingQueView:resetState() local temp = {'Button_Wan', 'Button_Tong', 'Button_Tiao' } for i, v in ipairs(temp) do local node = self.ui.Items[v] node:stopAllActions() node:setScale(1) end end -- 最佳优选动画 function yibinmajiangDingQueView:showNiceChooseAni(nice_choose) local temp = { [0] = 'Button_Wan', [1] = 'Button_Tong', [2] = 'Button_Tiao', } if not nice_choose or not temp[nice_choose] then return end local scale = 1.25 local time = 0.5 local scaleto = cc.ScaleBy:create(time, scale) local reverse = scaleto:reverse() local sequence = cc.Sequence:create(scaleto, reverse) local noce = self.ui.Items[temp[nice_choose]]:runAction(cc.RepeatForever:create(sequence)) end return yibinmajiangDingQueView