源战役客户端
Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.
 
 
 
 
 

635 рядки
23 KiB

BossHomeSubView = BossHomeSubView or BaseClass(BaseItem)
local BossHomeSubView = BossHomeSubView
local ConfigItemMgr = ConfigItemMgr
local Config = Config
local stringtotable = stringtotable
function BossHomeSubView:__init()
self.base_file = "boss"
self.layout_file = "BossHomeSubView"
self.layer_name = "UI"
self.model = BossHomeModel:getInstance()
self.full_screen = true
-- self.ani_right = 400
self.ani_left = -200
-- self.adjust_mid = {left = 370, right = 520}
self.adjust_mid = {left = 370}
self.cur_hor_tab_index = 1
self.cur_select_index = 1
self.select_boss_id = false
self.need_auto_selected = false
self.main_tab_data = {}
self.first_update_maintab = true
self.main_tab_selected_index = 1 -- 区域tab索引
self.guild_exclusive_index = 1--社团归属索引
self.bosshome_area_type = 1 -- 区域类型 1:普通 2:社团专属
self.sort_data_list = nil
self.cache_event_req_list = {} -- 缓存对应区域/层数的协议请求,满足条件则不会在本次打开界面时反复请求协议
self.reward_list = {}
self.main_role = RoleManager.Instance.mainRoleInfo
self:Load()
-- 清除红点
self.model:CheckBossHomeRedByType(BossConst.RedType.ModuleOpen, false)
self.model.boss_home_login_red = false
self.model:CheckBossHomeRedByType(BossConst.RedType.Login)
end
function BossHomeSubView:Load_callback()
self.nodes = {
"bg:raw",
"right", "right/right_bg:raw",
"right/con_model:raw",
-- "right/boss_bg_mask:obj",
"right/boss_bg_mask_new:raw",
"right/scroll_special","right/scroll_special/Viewport/Content_special",
"right/btn_challenge/red_challenge:obj",
"right/btn_challenge:obj:img","right/btn_help:obj",
"right/btn_history:obj",
"left/scroll_tab","left/scroll_tab/Viewport/Content_tab",
"left/tab_con", "left/bg_tab", "left/bg_main_tab",
"right/btn_challenge/lb_btn_challenge:tmp",
"right/costCon:obj", "right/costCon/costNum:tmp", "right/costCon/costImg:img",
"right/costCon/costDes:tmp", "right/block_tips:tmp",
}
self:GetChildren(self.nodes)
self.btn_help_obj:SetActive(false)
self.costDes_tmp.text = "<#f558ff>VIP等级</color><#ffffff>不足可消耗</color>"
-- SetLocalPositionZ(self.boss_bg_mask, -4000)
-- self.boss_bg_mask_canvas = self.boss_bg_mask.gameObject:GetComponent(typeof(UnityEngine.Canvas))
-- self.boss_bg_mask_obj.layer = LayerMask.NameToLayer(self.layer_name)
-- 重新设置RT节点
self.block_tips_tmp.fontSize = 16
SetSizeDelta(self.con_model, 400, 500)
SetAnchoredPosition(self.con_model, -3.5, -30)
lua_resM:setOutsideRawImage(self, self.bg_raw, GameResPath.GetViewBigBg("bosshome_main_bg"))
lua_resM:setOutsideRawImage(self, self.right_bg_raw, GameResPath.GetViewBigBg("bosshome_main_bg2"))
lua_resM:setOutsideRawImage(self, self.boss_bg_mask_new_raw, GameResPath.GetViewBigBg("bosshome_boss_bgmasknew"))
self:AddEvents()
if self.need_refreshData then
self:UpdateView()
end
end
function BossHomeSubView:AddEvents( )
local on_click = function ( click_obj )
if self.btn_challenge_obj == click_obj then
self:DoChallenge()
elseif self.btn_history_obj == click_obj then
if self.select_boss_id and self.select_boss_id > 0 then
BossModel.Instance:Fire(BossConst.OPEN_MONEY_KILL_HISTORY_VIEW,self.select_boss_id)
end
end
end
AddClickEvent(self.btn_challenge_obj, on_click)
AddClickEvent(self.btn_history_obj, on_click)
local function ANS_BOSS_HOME_INFO(bosstype, level, guild_id)
local target_guild_id = 0
if self.main_tab_selected_index ~= 1 then
target_guild_id = self.main_tab_data[self.main_tab_selected_index]
and self.main_tab_data[self.main_tab_selected_index].guild_data
and self.main_tab_data[self.main_tab_selected_index].guild_data.guild_id or 0
end
if bosstype == self.bosshome_area_type and level == self.cur_hor_tab_index and guild_id == target_guild_id then
self:UpdateLeftItemInfo()
end
end
self:BindEvent(self.model, BossHomeConst.ANS_BOSS_HOME_INFO, ANS_BOSS_HOME_INFO)
local function ChangeVisible( flag )
if not flag then
return
end
self:UpdateModelInfo(true)
end
self:BindEvent(GlobalEventSystem, BaseView.ChangeVisible, ChangeVisible)
local function updateGuildExclusiveData()
self:UpdateMainTab()
end
self:BindEvent(self.model, BossHomeConst.UPDATE_GUILD_EXCLUSIVE_DATA, updateGuildExclusiveData)
-- 当玩家所在的社团id变动时,刷新主页签
self.on_guild_id_chagne_id = self.main_role:BindOne("guild_id", updateGuildExclusiveData)
end
function BossHomeSubView:SetData( select_boss_id )
--需要判断下这个bossid是否正确,否则就重置为nil
-- local is_boss_id_true = false
-- for k,v in pairs(Config.Homeboss) do
-- if v.boss_id == select_boss_id and v.sub_module == 1 then
-- is_boss_id_true = true
-- break
-- end
-- end
-- if not is_boss_id_true then
-- select_boss_id = nil
-- end
if select_boss_id then
select_boss_id = nil--先不允许外部传
end
self.select_boss_id = select_boss_id or self.select_boss_id
-------------------------
if self.select_boss_id then
self.need_auto_selected = true
-- local boss_conf = self.model:GetBossHomeCFGById( self.select_boss_id )
-- self:SwitchTab( boss_conf.level )
end
-------------------------
if self.is_loaded then
self.need_refreshData = false
self:UpdateView()
else
self.need_refreshData = true
end
end
function BossHomeSubView:UpdateView( )
self:UpdateMainTab()
end
-- 更新幻魔之家最右侧主tab:区域tab
function BossHomeSubView:UpdateMainTab( )
self.main_tab_data = {}
local guild_exclusive_data = self.model:GetBossHomeGuildExclusiveData()
-- 插入公共区域的配置
self.main_tab_data[#self.main_tab_data+1] = {
type = BossHomeConst.BossHomeType.Normal,
}
-- 插入社团专属区域的信息
self.guild_exclusive_index = 1
local temp_ex_data
for i = 1, 3 do
temp_ex_data = guild_exclusive_data[i]
self.main_tab_data[#self.main_tab_data+1] = {
type = BossHomeConst.BossHomeType.Guild,
-- 没有社团信息到时候要做空表现处理
guild_data = temp_ex_data or nil
}
if temp_ex_data and temp_ex_data.guild_id == self.main_role.guild_id then
self.guild_exclusive_index = i + 1
end
end
-- 选中回调,选中后需要同步更新左侧层数,boss页签和最右侧的boss模型等内容和奖励
local function select_callback(index, type)
self.main_tab_selected_index = index
self.bosshome_area_type = type
self.maintab_item_creator:IterateItems(function ( item, i )
item:SetSelected(index)
end)
-- 更新这个区域的页签数据信息
self:SetTabData()
-- 更新boss模型
self:UpdateModelInfo()
-- 更新奖励
self:UpdateAwardInfo()
end
self.maintab_item_creator = self.maintab_item_creator or self:AddUIComponent(UI.ItemListCreator)
local data = {
data_list = self.main_tab_data,
scroll_view = self.bg_main_tab,
item_con = self.bg_main_tab,
item_class = BossHomeMainTabItem,
item_height = 151,
start_x = 11.5,
start_y = -6,
space_y = 6,
on_update_item = function(item, i, v)
item:SetData(v, i, select_callback)
item:SetSelected(self.main_tab_selected_index)
end,
}
self.maintab_item_creator:UpdateItems(data)
-- 首次打开需要自动定位
-- 若存在外部传入的bossid,则需要定位到对应的区域/层数和位置
-- 而不存在外部传入的bossid,且存在自己所在的社团专属区域,则自动定位到该index,否则默认第一位
if self.first_update_maintab then
-- if self.need_auto_selected then
-- local boss_conf = self.model:GetBossHomeCFGById(self.select_boss_id)
-- if boss_conf then -- 在公共区域,则需要强制切换到公共区域
-- self.guild_exclusive_index = 1
-- else
-- -- 是专属区域的boss,则不要变动self.guild_exclusive_index,但固定层数索引
-- boss_conf = self.model:GetGuildBossHomeCFGById(self.select_boss_id)
-- end
-- -- 确定外部传入的bossid对应的层数,后面的逻辑跳过对这个值的更新
-- self.cur_hor_tab_index = boss_conf.level
-- end
-- select_callback(self.guild_exclusive_index, self.main_tab_data[self.guild_exclusive_index].type)
select_callback(1, self.main_tab_data[1].type)
else
select_callback(self.main_tab_selected_index, self.main_tab_data[self.main_tab_selected_index].type)
end
self.first_update_maintab = false
end
function BossHomeSubView:SetTabData()
-- 需根据区域是否属于公共区域划分不同的配置,后同
local cfg = self.bosshome_area_type == BossHomeConst.BossHomeType.Normal
and self.model:GetBossHomeLevelCFG() or self.model:GetGuildBossHomeLevelCFG()
local open_count = 0
self.menu_list = {}
local tab = 1
for i,v in ipairs(cfg) do
if v.enter_lv <= self.main_role.level then
table.insert(self.menu_list, string.format("第%s层", v.level))
open_count = i -- 标记开放的个数
tab = i -- 计算顶部页签
else
if i == open_count + 1 then
local str = string.format("%s级开放", v.enter_lv)
table.insert(self.menu_list, {text = str, enter_lv = v.enter_lv, show_lock = true})
end
end
end
local call_back = function (index)
if index <= open_count then
self:SwitchTab(index or 1)
else
local temp_cfg = self.menu_list[index]
Message.show(string.format("%s级开放该层幻魔之家!", temp_cfg.enter_lv), "fault")
if self.tabBar then
self.tabBar:SetSelectTab(self.cur_hor_tab_index)
end
self:SwitchTab(self.cur_hor_tab_index)
end
end
-- 在没有指定bossid跳转的前提下,才可以确定当前等级最高可以挑战的boss索引index
if not self.need_auto_selected then
self.cur_hor_tab_index = tab
end
SetSizeDeltaX(self.bg_tab.transform, 125.7 * (#self.menu_list))
if not self.tabBar then
self.tabBar = self:CreateItem(UIHorTabBar, self.tab_con, self.layer_name)
end
self.tabBar:SetData(self.menu_list, call_back)
-- self.tabBar:SetBtnLabelColor(ColorUtil:ConvertHexToRGBColor("#9eb3cf"), ColorUtil:ConvertHexToRGBColor("#ffffff"))
self.tabBar:SetSize(130,45)
self.tabBar:SetPosition(-1,-2)
self.tabBar:SetBtnRes("alphaCommon_asset", "tyui_btn1_3", "tyui_btn1_1")
self.tabBar:SetSpacing(-6, 0)
local offset = -math.min(124*(self.cur_hor_tab_index - 1),814)
self.tabBar:SetScrollConPos(offset,0)
-- -- 若需要选中外部传入的bossid对应的层数
-- if self.need_auto_selected then
-- local boss_conf = self.model:GetBossHomeCFGById( self.select_boss_id )
-- -- 确定外部传入的bossid对应的层数
-- self.cur_hor_tab_index = boss_conf.level
-- end
-- if self.select_boss_id then
-- self.need_auto_selected = true
-- end
self.sort_data_list = self.bosshome_area_type == BossHomeConst.BossHomeType.Normal
and self.model:GetBossHomeCFG(self.cur_hor_tab_index) or self.model:GetGuildBossHomeCFG(self.cur_hor_tab_index)
local monster_cfg
for i,v in ipairs(self.sort_data_list) do
monster_cfg = ConfigItemMgr.Instance:GetMonsterDataItem(v.boss_id)
if monster_cfg then
if monster_cfg.lv <= self.main_role.level then
self.cur_select_index = i
end
end
end
-- 选中顶部层数页签,更新boss列表和其他内容
self.tabBar:SetSelectTab(self.cur_hor_tab_index)
call_back(self.cur_hor_tab_index)
end
function BossHomeSubView:SwitchTab( index )
self.cur_hor_tab_index = index
-- 请求boss信息列表
self:RequestBossData()
end
function BossHomeSubView:RequestBossData( )
local target_guild_id = 0
if self.main_tab_selected_index ~= 1 then
target_guild_id = self.main_tab_data[self.main_tab_selected_index]
and self.main_tab_data[self.main_tab_selected_index].guild_data
and self.main_tab_data[self.main_tab_selected_index].guild_data.guild_id or 0
end
-- 请求boss信息列表
-- local key = self.bosshome_area_type .. "@" .. self.cur_hor_tab_index .. "@" .. target_guild_id
-- if self.cache_event_req_list[key] then -- 已经请求过数据的不再请求,直接加载
-- self:UpdateLeftItemInfo()
-- else
self.model:Fire(BossHomeConst.REQUEST_CCMD_EVENT, 46201, self.bosshome_area_type, self.cur_hor_tab_index, target_guild_id)
-- end
-- 追加缓存,后续避开协议请求
-- self.cache_event_req_list[key] = true
end
function BossHomeSubView:CheckSelectId( )
--检查默认选中的Id
if (not self.select_boss_id) or (self.select_boss_id == 0) then
--默认选择
self.select_boss_id = self.sort_data_list[1].boss_id
end
end
function BossHomeSubView:UpdateLeftItemInfo()
-------------------------
local function select_call( index,boss_id,data )
if boss_id and boss_id > 0 then
self:SetSelectItem(index, boss_id, data)
end
end
-------------------------
self.sort_data_list = self.bosshome_area_type == BossHomeConst.BossHomeType.Normal
and self.model:GetBossHomeCFG(self.cur_hor_tab_index) or self.model:GetGuildBossHomeCFG(self.cur_hor_tab_index)
self:CheckSelectId()
local show_data = self.sort_data_list
local server_data = self.model:GetBossHomeInfo()
self.tab_item_list = self.tab_item_list or self:AddUIComponent(UI.ItemListCreator)
local data = {
data_list = show_data or {},
item_con = self.Content_tab,
item_class = BossHomeTabItem,
item_width = BossHomeTabItem.Width,
item_height = BossHomeTabItem.Height-3.2,
space_y = 2.5,
start_x = 8.5-6,
start_y = -5.5+6,
scroll_view = self.scroll_tab,
on_update_item = function(item, i, v)
item:SetData(i,v,select_call, server_data[v.boss_id], "boss_home")
item:SetSelect(self.select_boss_id)
end,
}
self.tab_item_list:UpdateItems(data)
if self.need_auto_selected then
for k,v in pairs(show_data) do
if v.boss_id == self.select_boss_id then
self.cur_select_index = k
end
end
self.need_auto_selected = false
end
-------------------------
self.cur_select_index = show_data[self.cur_select_index] and self.cur_select_index or 1
local data = show_data[self.cur_select_index]
self:SetSelectItem(self.cur_select_index, data.boss_id, data)
self.tab_item_list:ScrollToItem(self.cur_select_index)
end
function BossHomeSubView:SetSelectItem( index, boss_id,data )
self.cur_select_index = index
self.select_boss_id = boss_id
self.select_data = data
self.tab_item_list:IterateItems(function ( item )
item:SetSelect(self.select_boss_id)
end)
self:UpdateModelInfo(true)
self:UpdateAwardInfo()
self:UpdateChallengeBtnState()
end
function BossHomeSubView:UpdateModelInfo( force )
--Boss形象
local monster = ConfigItemMgr.Instance:GetMonsterDataItem(self.select_boss_id)
if not monster then
print("HWR:BossDesertedSubView [234]no boss cfg: ",self.select_boss_id)
return
end
-------------------------
--BOSS展示的时候的第一次播放的动作
-- print("Saber:BossHomeSubView [371] monster.icon: ",monster.icon)
local aciton_list = {"show", idle_name="show",loopList=false}
local pos = Config.ConfigBoss.ModelPos[monster.icon] or {0,0}
if not self.last_boss_id or self.last_boss_id~=self.select_boss_id or force then
local function delay( )
if self._use_delete_method then return end
local res_data = {
clothe_res_id = monster.icon,
--weapon_res_id = monster.weapon_id,
type = SceneBaseType.Monster,
action_name_list = aciton_list,
layer_name = self.layer_name,
father_node = self,
transform = self.con_model,
rotate = Vector3(15,180,0),
fashion_type = FuncOpenModel.TypeId.Monster,
size = {x = 600, y = 500},
-- position = Vector3(pos[1], 20 + pos[2], -1000),
position = Vector3(pos[1], 100 + pos[2], 0),
-- scale = 70,
scale = 30,
can_rotate = false;
-- ui_model_type = UIModelCommon.ModelType.Model,
ui_model_type = UIModelCommon.ModelType.RT,
show_shadow = false,
}
FuncOpenModel:getInstance():SetModelRes(res_data)
end
setTimeout(delay,0.05)
end
self.last_boss_id = self.select_boss_id
-- self.boss_bg_mask_canvas.sortingOrder = self:GetCurrLayerDepth(self.layer_name) + 1
end
function BossHomeSubView:UpdateAwardInfo( )
local conf = self.select_data
if not conf or not conf.drop_show then return end
-------------------------
local base_conf = stringtotable(conf.drop_show)
local function GetShowList( data )
local result = {}
if data then
for k,v in pairs(data) do
if self.main_role.career == tonumber(v[1]) or tonumber(v[1]) == 0 then
table.insert(result,v)
end
end
end
return result
end
base_conf = GetShowList(base_conf)
-------------------------
for k, v in ipairs(base_conf) do
if k > 12 then return end -- 至多显示12个道具
self.reward_list[k] = self.reward_list[k] or UIObjPool:getInstance():PopItem(UIObjPool.UIType.AwardItem, self.Content_special)
-- 使用了组件自动对准位置
-- self.reward_list[k]:SetAnchoredPosition((k - 1) * 96 + offset_x, 0)
self.reward_list[k]:SetItemSize(78, 78)
self.reward_list[k]:SetVisible(true, nil, true)
self.reward_list[k]:SetDataWithMapId(v[3], v[4], v[2])
local goods_vo = GoodsModel:getInstance():GetGoodsBasicByTypeId(v[3])
if goods_vo.type == 4 and goods_vo.subtype >= 6 and goods_vo.subtype <= 9 then--珍宝要显示概率UP
self.reward_list[k]:SetNumLimitVisible(true,33)
else
self.reward_list[k]:SetNumLimitVisible(false)
end
end
if #base_conf < #self.reward_list then
for i = #base_conf + 1, #self.reward_list do
self.reward_list[i]:SetVisible(false, nil, true)
end
end
end
-- 点击挑战按钮回调
function BossHomeSubView:DoChallenge( )
if self.select_boss_id and self.select_boss_id > 0 then
--场景内寻路
local scene_id = self.model:GetBossHomeSceneById(self.select_boss_id)
local cur_scene_id = SceneManager.Instance:GetSceneId()
if cur_scene_id == scene_id then
local cfg = Config.Homeboss[self.bosshome_area_type .. "@" .. self.select_boss_id]
local pos = stringtotable(cfg.born_pos)
local function call_back( ... )
GlobalEventSystem:Fire(EventName.STARTAUTOFIGHT)
end
local findVo = FindVo.New()
findVo.sceneId = SceneManager.Instance:GetSceneId()
findVo.type = FindVo.POINT
findVo.x = pos[1]/ SceneObj.LogicRealRatio.x
findVo.y = pos[2]/ SceneObj.LogicRealRatio.y
findVo.call_back = call_back
GlobalEventSystem:Fire(EventName.FIND,findVo)
BossModel.Instance:Fire(BossConst.CLOSE_BOSS_BASE_VIEW)
else
--如果是在boss之家场景中,但是点了其他场景中的boss,飘字提示不允许这样做
if SceneManager.Instance:IsBossHomeScene() then
Message.show("当前场景不能直接进入!","fault")
return
end
local is_in_common = self.main_tab_selected_index == 1
local is_in_guild = self.guild_exclusive_index == self.main_tab_selected_index and self.guild_exclusive_index ~= 1
if not is_in_common and not is_in_guild then
Message.show("无法进入其他社团的幻魔之家", "fault")
return
end
--场景外先判断vip够不够,不够要提醒花钱买门票
local ok_enter = function()
self.model:Fire(BossHomeConst.REQUEST_CCMD_EVENT, 46204, self.bosshome_area_type, self.select_boss_id)
self.model:SetNeedFindBoss(self.select_boss_id)
end
local vip_condition = stringtotable(Config.Homebosslevel[self.bosshome_area_type .. "@" .. self.cur_hor_tab_index].condition)[1][2]
if self.main_role.vip_flag >= vip_condition then
ok_enter()
else
local cost = stringtotable(Config.Homebosslevel[self.bosshome_area_type .. "@" .. self.cur_hor_tab_index].cost)
if cost[1] then
local function ok1( ... )
if RoleManager.Instance.mainRoleInfo.jinLock>=cost[1][3] then--够钱直接买
ok_enter()
else
local function use_function( toggle_tip_data,call_fun_sum )
GlobalEventSystem:Fire(EventName.OPEN_COM_TOGGLE_TIP_VIEW, toggle_tip_data)
end
local function recharge_open_call_back( )
self:Close()
end
local buy_tip_data = {
gold_type = cost[1][1],--货币类型
cost_price = cost[1][3],--消耗金额
ok_callback = ok_enter,--成功
no_need_toggle = true,
-- toggle_function = toggle_function,--多选
-- recharge_open_call_back = recharge_open_call_back,
togglePriceStr = string.format("<color=#fdffc2>%s</color> 抵扣VIP条件进入?",cost[1][3]),--提示语
use_function = use_function,--最终调用
}
CustomActivityModel:getInstance():BuyTips(buy_tip_data)
end
end
local function ok2( ... )
OpenFun.Open(158,0)
end
local ask_str = string.format("您的<#f558ff>VIP</color>等级不满足,是否消耗 %s<#fdffc2>%s</color> 进入?", WordManager:GetMoneyFaceStr(cost[1][1]),cost[1][3])
Alert.show(ask_str,Alert.Type.Two,ok1,ok2,"确定","提升VIP")
else
-- Message.show(string.format("需达到VIP%s方可进入", vip_condition), "fault")
local function ok3( ... )
OpenFun.Open(158,0)
end
local ask_str = "您的<#f558ff>VIP</color>等级不足,\n提升<#f558ff>VIP</color>可进入幻魔之家无限刷BOSS哦!"
Alert.show(ask_str,Alert.Type.One,ok3,nil,"提升VIP")
end
end
end
self.model.boss_home_scene_boss = self.select_boss_id
end
end
--刷新挑战按钮vip进入显示条件
function BossHomeSubView:UpdateChallengeBtnState( )
local level_cfg = self.bosshome_area_type == BossHomeConst.BossHomeType.Normal
and self.model:GetBossHomeLevelCFG(self.cur_hor_tab_index) or self.model:GetGuildBossHomeLevelCFG(self.cur_hor_tab_index)
if level_cfg then
local vip_condition = stringtotable(level_cfg.condition)[1][2]
self.lb_btn_challenge_tmp.text = string.format("VIP%s直接进入", vip_condition)
local cost = stringtotable(level_cfg.cost)
local can_use_money = false
local cost_money = 0
if cost[1] then
can_use_money = true
cost_money = cost[1][3]
end
local is_in_common = self.main_tab_selected_index == 1
local is_in_guild = self.guild_exclusive_index == self.main_tab_selected_index and self.guild_exclusive_index ~= 1
local vip_enough = self.main_role.vip_flag >= vip_condition
local is_need_set_gray = false
if is_in_common then--公共情况下,不能花钱进且vip不够的时候置灰
if vip_enough or (not vip_enough and can_use_money) then--亮
is_need_set_gray = false
else--置灰
is_need_set_gray = true
end
else
if is_in_guild then
if vip_enough or (not vip_enough and can_use_money) then--亮
is_need_set_gray = false
else--置灰
is_need_set_gray = true
end
else--置灰
is_need_set_gray = true
end
end
if is_need_set_gray then
SetImageGray(self.btn_challenge_img,true)
SetTMPSharedMaterial(self.lb_btn_challenge_tmp, ShaderTools.TMPSharedMaterialType.FZZZOutlineDarkGrayBtn)
else
SetImageGray(self.btn_challenge_img,false)
SetTMPSharedMaterial(self.lb_btn_challenge_tmp, ShaderTools.TMPSharedMaterialType.FZZZOutlineDarkOrangeBtn)
end
self.block_tips_tmp.text = (is_in_guild or is_in_common) and "" or "无法进入其他社团的幻魔之家"
if (is_in_common and not vip_enough and can_use_money) or (is_in_guild and not vip_enough and can_use_money) then
self.costCon_obj:SetActive(true)
self.costNum_tmp.text = string.format("<#fdffc2>%s</color><#ffffff> 进入</color>",cost_money)
else
self.costCon_obj:SetActive(false)
end
end
end
function BossHomeSubView:__delete( )
for k,v in pairs(self.reward_list) do
UIObjPool:getInstance():PushItem(UIObjPool.UIType.AwardItem, v)
v = nil
end
self.reward_list = {}
if self.on_guild_id_chagne_id then
self.main_role:UnBind(self.on_guild_id_chagne_id)
self.on_guild_id_chagne_id = nil
end
end