miduo_client/Assets/ManagedResources/~Lua/Modules/Login/ServerListItem.lua

53 lines
1.8 KiB
Lua

--[[
* @ClassName ServerListItem
* @Description 服务器列表Item
* @Date 2019/8/30 14:52
* @Author MagicianJoker, fengliudianshao@outlook.com
* @Copyright Copyright (c) 2019, MagicianJoker
--]]
---@class ServerListItem
local ServerListItem = quick_class("ServerListItem")
--local TipsBgIconDef = {
-- [1] = "r_yiyou",
-- [2] = "r_zuijin"
--}
function ServerListItem:ctor(root, prefab, parent)
self.root = root
self.cloneObj = newObjToParent(prefab, parent)
self.tipsBg = Util.GetGameObject(self.cloneObj, "tipsBg"):GetComponent("Image")
self.tips = Util.GetGameObject(self.tipsBg.transform, "tips"):GetComponent("Text")
self.serverArea = Util.GetGameObject(self.cloneObj, "serverArea"):GetComponent("Text")
self.serverName = Util.GetGameObject(self.cloneObj, "serverName"):GetComponent("Text")
self.serverState = Util.GetGameObject(self.cloneObj, "serverState"):GetComponent("Image")
self.newServerFlag = Util.GetGameObject(self.cloneObj, "newServerFlag")
end
function ServerListItem:SetValue(serverInfo, flag)
self.serverName.text = serverInfo.name
self.tipsBg.gameObject:SetActive(not not flag)
self.newServerFlag:SetActive(serverInfo.isnew == 1)
if string.find(serverInfo.name, "主播") then
self.serverArea.text = ""
else
self.serverArea.text = tonumber(string.sub(serverInfo.server_id, 0, -5)) .. Language[11138]
end
if not ServerStateIconDef[serverInfo.state] then
LogError(serverInfo.server_id .. " serverInfo.state:" .. serverInfo.state)
self.serverState.sprite = self.root.spLoader:LoadSprite(ServerStateIconDef[1])
else
self.serverState.sprite = self.root.spLoader:LoadSprite(ServerStateIconDef[serverInfo.state])
end
end
function ServerListItem:SetVisible(flag)
self.cloneObj:SetActive(flag)
end
return ServerListItem