miduo_client/Assets/ManagedResources/~Lua/Modules/YuJianXing/RiceCtrlView.lua

82 lines
2.5 KiB
Lua
Raw Normal View History

2021-09-28 17:48:28 +08:00
require("Base/Stack")
2021-09-29 18:34:54 +08:00
-- local PlayerView = require("Modules/YuJianXing/RiceSinglePlayerView")
local RiceCtrlView = {}
2021-09-28 17:48:28 +08:00
local riceCtrl = "RiceCtrl"
local bgNameList = {}
2021-09-29 18:34:54 +08:00
local playerDataList = {}
2021-09-28 17:48:28 +08:00
2021-09-29 18:34:54 +08:00
function RiceCtrlView:Awake(_bgList,_playerList)
2021-09-28 17:48:28 +08:00
if _bgList then
bgNameList = _bgList
end
2021-09-29 18:34:54 +08:00
if _playerList then
playerDataList = _playerList
end
self.speed = 0
self.bgItemList = {}
self.playerList = {}
self.spLoader = SpriteLoader.New()
UIManager.camera.clearFlags = CameraClearFlags.Depth
self.Ctrl = poolManager:LoadAsset(riceCtrl, PoolManager.AssetType.GameObject)
self.Ctrl.name = "riceCtrl"
self.Ctrl.transform:SetParent(UIManager.uiRoot.transform.parent)
self.Ctrl.transform.position = Vector3(-100, -100, -100)
self.bgList = Util.GetGameObject(self.Ctrl.gameObject,"Canvas/BgList")
self.imgPre = Util.GetGameObject(self.bgList,"imgPre")
self.camara = Util.GetGameObject(self.Ctrl.gameObject,"Camera")
self.roadList = Util.GetGameObject(self.Ctrl.gameObject,"Canvas/RoadList")
--加载背景--并不滚动,有几个加载几个
self:SetBg()
self:SetPlayer()
return self.Ctrl
end
function RiceCtrlView:SetGameState(_state)
self.isRunning = _state
for i,v in ipairs(self.playerList) do
v:SetSinglePlayerState(self.isRunning)
2021-09-28 17:48:28 +08:00
end
2021-09-29 18:34:54 +08:00
end
function RiceCtrlView:SetBg()
2021-09-28 17:48:28 +08:00
for i = 1, #bgNameList do
2021-09-29 18:34:54 +08:00
local go = {}
go = newObjToParent(self.imgPre,Util.GetTransform(self.Ctrl, "Canvas/BgList"))
go.name = "bg"..i
go:GetComponent("Image").sprite = self.spLoader:LoadSprite(bgNameList[i])
2021-09-28 17:48:28 +08:00
go:GetComponent("Image"):SetNativeSize()
go.gameObject:SetActive(true)
2021-09-29 18:34:54 +08:00
self.bgItemList[i] = go
2021-09-28 17:48:28 +08:00
end
end
2021-09-29 18:34:54 +08:00
function RiceCtrlView:SetPlayer()
for i = 1, 4 do--#playerDataList do
self.playerList[i] = {}
self.playerList[i] = SubUIManager.Open(SubUIConfig.PlayerRiceView,self.roadList.transform,i)--playerDataList[i])
2021-09-28 17:48:28 +08:00
end
end
2021-09-29 18:34:54 +08:00
function RiceCtrlView:Dispose()
self.speed = 0
for i,v in ipairs(self.bgItemList) do
destroy(v.gameObject)
end
for i,v in ipairs(self.playerList) do
SubUIManager.Close(v)
end
--卸载地图
if self.Ctrl then
poolManager:UnLoadAsset(riceCtrl, self.Ctrl, PoolManager.AssetType.GameObject)
self.Ctrl = nil
end
UIManager.camera.clearFlags = CameraClearFlags.Skybox
if self.spLoader then
self.spLoader:Destroy()
self.spLoader = nil
2021-09-28 17:48:28 +08:00
end
end
2021-09-29 18:34:54 +08:00
return RiceCtrlView