miduo_client/Assets/ManagedResources/~Lua/Modules/Guild/Transcript/GuildTranscriptManager.lua

108 lines
4.4 KiB
Lua
Raw Normal View History

2020-08-18 19:33:31 +08:00
GuildTranscriptManager = {};
local this = GuildTranscriptManager
2020-08-19 17:28:17 +08:00
local guildCheckpointConfig = ConfigManager.GetConfig(ConfigName.GuildCheckpointConfig)
local allChapterConfigData = {}
local curBoss = 1--当前bossId
local blood = 0--剩余血量万分比
local canSweep = 0--是否能扫荡今天是否挑战过这个boss
2020-08-20 20:05:38 +08:00
local isKill = 0 --当场战斗boss 是否击杀
2020-08-21 15:52:49 +08:00
local buffCount = 0--当前buff到多少索引
local buffTime = 0--buff结束时间
2020-08-20 20:05:38 +08:00
this.damage = 0
this.drop = nil--当场战斗掉落
this.shopGoodId = 10014--公会副本挑战价格
2020-08-18 19:33:31 +08:00
function this.Initialize()
2020-08-19 17:28:17 +08:00
for _, configInfo in ConfigPairs(guildCheckpointConfig) do
table.insert(allChapterConfigData,configInfo)
end
end
function this.GetAllConFigData()
return allChapterConfigData
end
--请求当前副本章节
function this.GetGuildChallengeInfoRequest(fun)
NetManager.GetGuildChallengeInfoRequest(function (msg)
2020-08-20 20:05:38 +08:00
curBoss = msg.curBoss--当前bossId
blood = msg.blood--剩余血量万分比
canSweep = msg.canSweep--是否能扫荡今天是否挑战过这个boss
2020-08-21 15:52:49 +08:00
buffCount = msg.buffCount
buffTime = msg.buffTime
LogPink("curBoss "..curBoss.." blood "..blood.." canSweep "..canSweep.." buffCount "..buffCount.." buffTime "..buffTime)
2020-08-19 17:28:17 +08:00
Game.GlobalEvent:DispatchEvent(GameEvent.Guild.RefreshGuildTranscript)
2020-08-21 15:52:49 +08:00
Game.GlobalEvent:DispatchEvent(GameEvent.Guild.RefreshGuildTranscriptBuff)
2020-08-19 17:28:17 +08:00
end)
end
--请求战斗
function this.GuildChallengeRequest(attackType,callBack)
2020-08-20 20:05:38 +08:00
if attackType == 0 then
NetManager.GuildChallengeRequest(this.GetCurBoss(),attackType,function (msg)
local fightData = BattleManager.GetBattleServerData(msg)
this.damage = msg.damage
this.drop = msg.drop
canSweep = 1
PrivilegeManager.RefreshPrivilegeUsedTimes(PRIVILEGE_TYPE.GUILDTRANSCRIPT_BATTLENUM, 1)--更新特权
UIManager.OpenPanel(UIName.BattlePanel, fightData, BATTLE_TYPE.GuildTranscript, callBack)
end)
elseif attackType == 1 then--快速战斗 扫荡
NetManager.GuildChallengeRequest(this.GetCurBoss(),attackType,function (msg)
this.damage = msg.damage
PrivilegeManager.RefreshPrivilegeUsedTimes(PRIVILEGE_TYPE.GUILDTRANSCRIPT_BATTLENUM, 1)--更新特权
UIManager.OpenPanel(UIName.RewardItemPopup,msg.drop, 1,function()
end, 6,true,true)
end)
end
end
function this.RefreshGuildTranscriptInfo(msg)
local oldBossId = curBoss
curBoss = msg.curBoss--当前bossId
blood = msg.blood--剩余血量万分比
-- canSweep = msg.canSweep--是否能扫荡今天是否挑战过这个boss
isKill = msg.isKill--是否击杀
if msg.isKill == 1 then
PopupTipPanel.ShowTip("已击败【首领名称】!")
2020-08-21 15:52:49 +08:00
-- canSweep = 0
2020-08-20 20:05:38 +08:00
end
if oldBossId ~= curBoss then--前后ID不等认为是击杀
canSweep = 0
isKill = 1
2020-08-21 15:52:49 +08:00
PrivilegeManager.RefreshPrivilegeUsedTimes(PRIVILEGE_TYPE.GUILDTRANSCRIPT_BATTLENUM, - PrivilegeManager.GetPrivilegeUsedTimes(PRIVILEGE_TYPE.GUILDTRANSCRIPT_BATTLENUM))
PrivilegeManager.RefreshPrivilegeUsedTimes(PRIVILEGE_TYPE.GUILDTRANSCRIPT_BUY_BATTLENUM, - PrivilegeManager.GetPrivilegeUsedTimes(PRIVILEGE_TYPE.GUILDTRANSCRIPT_BUY_BATTLENUM))
2020-08-20 20:05:38 +08:00
end
Game.GlobalEvent:DispatchEvent(GameEvent.Guild.RefreshGuildTranscript)
end
2020-08-21 15:52:49 +08:00
function this.RefreshGuildTranscriptBuffInfo(msg)
buffCount = msg.buffCount
buffTime = msg.buffTime
Game.GlobalEvent:DispatchEvent(GameEvent.Guild.RefreshGuildTranscriptBuff)
end
2020-08-20 20:05:38 +08:00
-- 获取剩余挑战次数 特权
function this.GetCanBattleCount()
return PrivilegeManager.GetPrivilegeRemainValue(PRIVILEGE_TYPE.GUILDTRANSCRIPT_BATTLENUM)
end
-- 获取剩余挑战购买次数 特权
function this.GetCanBuyBattleCount()
return PrivilegeManager.GetPrivilegeRemainValue(PRIVILEGE_TYPE.GUILDTRANSCRIPT_BUY_BATTLENUM)
end
function this.GetRedPointState()
return PrivilegeManager.GetPrivilegeRemainValue(PRIVILEGE_TYPE.GUILDTRANSCRIPT_BATTLENUM) > 0
2020-08-19 17:28:17 +08:00
end
function this.GetCurBoss()
return curBoss
end
function this.GetBlood()
return blood
end
function this.GetCanSweep()
return canSweep
2020-08-18 19:33:31 +08:00
end
2020-08-21 15:52:49 +08:00
function this.GetbuffTime()
return buffTime
end
function this.GetbuffCount()
return buffCount
end
2020-08-20 20:05:38 +08:00
function this.GetCurBattleIsSkillBoss()
return isKill == 1
end
2020-08-18 19:33:31 +08:00
return this