dezhou_client/lua_probject/base_project/Game/IGameInfo.lua

71 lines
1.9 KiB
Lua
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

-- Edit by ChenGY
--@type IGameInfo
--扩展UI
--需要两个控制器agent控制支付类型显示Cost控制目前选中的支付类型
--回合数对应的显示价格组件统一命名为tex_price1、tex_price2、...
--房主支付、AA支付显示价格的组件需要统一名称tex_owner、tex_aa
IGameInfo = {
-- 回合选项数量,必填
_roundChoice = 2,
-- 玩家数量,在子类中赋值,如果玩家数量可选,需要重载 OnChangeOption 方法, 详见长沙麻将
_maxPlayer = 2,
_game_data = nil,
}
local M = IGameInfo
function M:SelectedCardNum()
return 0
end
function M:SelectedConfigData()
return {}
end
function M:FillData()
end
function M:ShowRoomPrice(ctype)
local list = DataManager.SelfUser.games
if not self._game_data then
for i = 1, #list do
if list[i].game_id == self.game_data.game_id then
self._game_data = list[i]
end
end
end
self:ShowVariablePrice(ctype)
end
function M:OnChangeOption(ctype)
self:ShowRoomPrice(ctype)
local round = self._config:GetController("round")
round.onChanged:Set(function ()
self:ShowVariablePrice(ctype)
end)
end
function M:ShowVariablePrice(ctype)
-- 显示回合数后面的价格tex_price1、tex_price2
for i = 1, self._roundChoice do
local price = "0"
price = self._game_data[string.format("pay%s_%s", i, self._maxPlayer)]
local tex_price = self._config:GetChild("tex_price" .. i)
if tex_price then
tex_price.text = price
end
end
-- 显示房主支付、aa支付的价格tex_aa/tex_owner
-- local tex_aa = self._config:GetChild("tex_aa")
-- local tex_owner = self._config:GetChild("tex_owner")
-- local opt = self._config:GetController("round").selectedIndex
-- local price = self._game_data[string.format("pay%s_%s", opt + 1, self._maxPlayer)]
-- tex_aa.text = math.ceil(price / self._maxPlayer)
-- tex_owner.text = price
end
return M