CreateCardGameView = {} local M = CreateCardGameView function CreateCardGameView.new() setmetatable(M, { __index = BaseView }) local self = setmetatable({}, { __index = M }) self.class = "CreateCardGameView" self._full = true -- self:init() return self end function M:init() -- self:InitView("base/prefab/ViewCreateCardGame.prefab", "base/prefab/ViewCreateCardGame") local view = self._view self.pageSlider = view.transform:Find("pageSlider") self.pageSlider = self.pageSlider:GetComponent("PageSliderManager") -- self.pageSlider:SetMoveAction(function(val) -- self:SetPageSlider(val) -- end) local bg = view.transform:Find("imageBG") bg = bg:GetComponent(typeof(UnityEngine.UI.Image)) bg.sprite = CommonUISprite:GetSprite("bg1") self.imagePoint = view.transform:Find("imagePoint") self.create_table = view.transform:Find("createtable") self.create_table.position = self.imagePoint.position self.select = view.transform:Find("select") --选择玩法界面 self.imageTop = self.create_table:Find("imageTop") self.imageTop.gameObject:SetActive(false) self.topCopy = self.create_table:Find("imageTop/scroll/Viewport/Content/btnItem") self.topCopy.gameObject:SetActive(false) local select_btnDezhou = self.select:Find("btnDezhou") select_btnDezhou = select_btnDezhou:GetComponent(typeof(UnityEngine.UI.Button)) LuaUIHelper:AddButtonClick(select_btnDezhou, function() self.select.gameObject:SetActive(false) self.imageTop.gameObject:SetActive(true) self:ShowPage(self.subView.room) end) local select_btnShort = self.select:Find("btnShort") select_btnShort = select_btnShort:GetComponent(typeof(UnityEngine.UI.Button)) LuaUIHelper:AddButtonClick(select_btnShort, function() self.select.gameObject:SetActive(false) self.imageTop.gameObject:SetActive(true) self:ShowPage(self.subView.room) end) local select_btnAomaha = self.select:Find("btnAomaha") select_btnAomaha = select_btnAomaha:GetComponent(typeof(UnityEngine.UI.Button)) LuaUIHelper:AddButtonClick(select_btnAomaha, function() self.select.gameObject:SetActive(false) self.imageTop.gameObject:SetActive(true) self:ShowPage(self.subView.room) end) self.subView = { none = 0, room = 1, rank = 2, dairu = 3, daichu = 4, gamePlay = 5, otherPlay = 6, safety = 7, money = 8, total = 9 } self.arr_subView = {} self.arr_subView[self.subView.room] = { name = "房间", with = 136, v = self.subView.room } self.arr_subView[self.subView.rank] = { name = "级别", with = 136, v = self.subView.rank } self.arr_subView[self.subView.dairu] = { name = "带入", with = 136, v = self.subView.dairu } self.arr_subView[self.subView.daichu] = { name = "带出", with = 136, v = self.subView.daichu } self.arr_subView[self.subView.gamePlay] = { name = "特色玩法", with = 220, v = self.subView.gamePlay } self.arr_subView[self.subView.otherPlay] = { name = "其他玩法", with = 220, v = self.subView.otherPlay } self.arr_subView[self.subView.safety] = { name = "安全性", with = 188, v = self.subView.safety } self.arr_subView[self.subView.money] = { name = "费用", with = 136, v = self.subView.money } self.arr_subView[self.subView.total] = { name = "总览", with = 136, v = self.subView.total } self.arr_subView[self.subView.room].goView = view.transform:Find("room") self.arr_subView[self.subView.rank].goView = view.transform:Find("rank") self.arr_subView[self.subView.dairu].goView = view.transform:Find("dairu") self.arr_subView[self.subView.daichu].goView = view.transform:Find("daichu") self.arr_subView[self.subView.gamePlay].goView = view.transform:Find("gamePlay") self.arr_subView[self.subView.otherPlay].goView = view.transform:Find("otherPlay") self.arr_subView[self.subView.safety].goView = view.transform:Find("safety") self.arr_subView[self.subView.money].goView = view.transform:Find("money") self.arr_subView[self.subView.total].goView = view.transform:Find("total") for index, value in ipairs(self.arr_subView) do local goTopTemp = UnityEngine.GameObject.Instantiate(self.topCopy.gameObject, self.topCopy.parent, false) goTopTemp:SetActive(true) local textTop = goTopTemp.transform:Find("Text") self.arr_subView[index].Animator = textTop:GetComponent(typeof(UnityEngine.Animator)) self.arr_subView[index].Animator:Play("stop", -1, 0) textTop = textTop:GetComponent(typeof(UnityEngine.UI.Text)) textTop.text = value.name local rectUITemp = goTopTemp:GetComponent(typeof(UnityEngine.RectTransform)) rectUITemp.sizeDelta = Vector2.New(rectUITemp.sizeDelta.x, value.with) self.arr_subView[index].goTitle = goTopTemp.transform local btnSubTitleTemp = goTopTemp.transform:GetComponent(typeof(UnityEngine.UI.Button)) LuaUIHelper:AddButtonClick(btnSubTitleTemp, function(vTemp) self:ShowPage(vTemp) end, index) -- self.arr_subView[index].goView.position = self.imagePoint.position local backTemp = self.arr_subView[index].goView:Find("imageDown/btnBack") backTemp = backTemp:GetComponent(typeof(UnityEngine.UI.Button)) LuaUIHelper:AddButtonClick(backTemp, function(btnVar) local tempBackNum = btnVar - 1 if tempBackNum == 0 then self.select.gameObject:SetActive(true) self.imageTop.gameObject:SetActive(false) self:ShowPage(self.subView.none) else self:ShowPage(tempBackNum) end end, index) local nextTemp = self.arr_subView[index].goView:Find("imageDown/btnNext") nextTemp = nextTemp:GetComponent(typeof(UnityEngine.UI.Button)) LuaUIHelper:AddButtonClick(nextTemp, function(btnVar) local tempNextNum = btnVar + 1 if tempNextNum == self.subView.total + 1 then UIManager.ShowUI(UIManager.ViewGame) else self:ShowPage(tempNextNum) end end, index) end local count = #self.arr_subView local transformArray = {} local indexTransform = 0 for int, value in ipairs(self.arr_subView) do transformArray[indexTransform] = value.goTitle -- Lua索引1开始,C#索引0开始 indexTransform = indexTransform + 1 end self.pageSlider:SetTitleSpacing(transformArray) local create_table_btnBack = self.create_table:Find("btnBack") local create_table_btnBackBg = create_table_btnBack:GetComponent(typeof(UnityEngine.UI.Image)) create_table_btnBackBg.sprite = CommonUISprite:GetSprite("arrow1") create_table_btnBack = create_table_btnBack:GetComponent(typeof(UnityEngine.UI.Button)) LuaUIHelper:AddButtonClick(create_table_btnBack, function() local viewMainNew = UIManager.ShowUI(UIManager.LobbyView) viewMainNew:ShowPage(1) end) self.selectPage = self.subView.none self.select.gameObject:SetActive(true) self.select.position = self.imagePoint.position self:ShowPage(self.selectPage) end function M:ShowPage(val) -- if val == self.subView.none then -- self.pageSlider.enableSwipe = false -- else -- self.pageSlider.enableSwipe = true -- end self.pageSlider:JumpToPage(val - 1) for index, value in ipairs(self.arr_subView) do if val == self.subView.none then value.goView.gameObject:SetActive(false) else value.goView.gameObject:SetActive(true) end if value.v == val then -- value.goView.gameObject:SetActive(true) local scaleTemp1 = LuaUIHelper:GetAnimatorAormalizedTime(value.Animator, true) local scaleTemp2 = 0 if self.selectPage ~= self.subView.none then scaleTemp2 = LuaUIHelper:GetAnimatorAormalizedTime(self.arr_subView[self.selectPage].Animator, false) end if not LuaUIHelper:GetAnimatorIsName(self.arr_subView[val].Animator, "open") then if scaleTemp1 > 1 then scaleTemp1 = 1 scaleTemp2 = 1 end self.arr_subView[val].Animator:Play("open", -1, 1 - scaleTemp1) if self.arr_subView[self.selectPage] then if not LuaUIHelper:GetAnimatorIsName(self.arr_subView[self.selectPage].Animator, "open") then self.arr_subView[self.selectPage].Animator:Play("close", -1, 1 - scaleTemp2) end end else self.arr_subView[val].Animator:Play("open", -1, 0.5) end else -- value.goView.gameObject:SetActive(false) if LuaUIHelper:GetAnimatorIsName(value.Animator, "open") then local scaleTemp3 = LuaUIHelper:GetAnimatorAormalizedTime(value.Animator, true) if scaleTemp3 > 1 then scaleTemp3 = 1 end value.Animator:Play("close", -1, 1 - scaleTemp3) end end end self.selectPage = val self:SetPageSlider(0) end function M:SetPageSlider(val) local last = nil local lastV = nil local next = nil local nextV = nil local now = nil local nowV = nil if self.selectPage == self.subView.room and self.selectPage ~= self.subView.none then last = nil lastV = nil next = self.arr_subView[self.selectPage + 1].goView:GetComponent(typeof(UnityEngine.RectTransform)) nextV = nil now = self.arr_subView[self.selectPage].goView:GetComponent(typeof(UnityEngine.RectTransform)) nowV = nil elseif self.selectPage == self.subView.total and self.selectPage ~= self.subView.none then last = self.arr_subView[self.selectPage - 1].goView:GetComponent(typeof(UnityEngine.RectTransform)) lastV = nil next = nil nextV = nil now = self.arr_subView[self.selectPage].goView:GetComponent(typeof(UnityEngine.RectTransform)) nowV = nil elseif self.selectPage == self.subView.none then last = self.arr_subView[self.subView.room].goView:GetComponent(typeof(UnityEngine.RectTransform)) lastV = nil next = self.arr_subView[self.subView.room + 1].goView:GetComponent(typeof(UnityEngine.RectTransform)) nextV = nil now = self.arr_subView[self.subView.room + 2].goView:GetComponent(typeof(UnityEngine.RectTransform)) nowV = nil else last = self.arr_subView[self.selectPage - 1].goView:GetComponent(typeof(UnityEngine.RectTransform)) lastV = nil next = self.arr_subView[self.selectPage + 1].goView:GetComponent(typeof(UnityEngine.RectTransform)) nextV = nil now = self.arr_subView[self.selectPage].goView:GetComponent(typeof(UnityEngine.RectTransform)) nowV = nil end if val == -1 then self.selectPage = self.selectPage - 1 elseif val == 1 then self.selectPage = self.selectPage + 1 else end -- self.pageSlider:SetPageLast(last) -- self.pageSlider:SetPageNext(next) -- self.pageSlider:SetPageNow(now) end function M:SetTuoGuanState() -- printlog("初始化设置托管状态") if ControllerManager.enterPlayerData and #ControllerManager.enterPlayerData > 0 then -- pt(ControllerManager.enterPlayerData) for i = 1, #ControllerManager.enterPlayerData do local p = self._player_info[self:GetPos( ControllerManager.enterPlayerData[i].seat)] -- p.seat=ControllerManager.enterPlayerData[i].seat local t = ControllerManager.enterPlayerData[i].entrust_time -- local isShow=ControllerManager.enterPlayerData[i].entrust -- if isShow==nil then return end if t and t > 0 then p:IsShowTGTips(true, t) else end end ControllerManager.enterPlayerData = nil end end