687 lines
22 KiB
Lua
687 lines
22 KiB
Lua
require("Base/BasePanel")
|
|
require("Base/Stack")
|
|
require("Modules.Battle.Config.PokemonEffectConfig")
|
|
require("Modules.Battle.Test.View.AllSetView")
|
|
require("Modules.Battle.Test.View.MonsterSetView")
|
|
require("Modules.Battle.Test.View.RoleSetView")
|
|
require("Modules.Battle.Test.View.SkillSetView")
|
|
local MonsterGroup = ConfigManager.GetConfig(ConfigName.MonsterGroup)
|
|
local SpriteAnimalSkill = ConfigManager.GetConfig(ConfigName.SpiritAnimalSkill)
|
|
local shenbing=ConfigManager.GetConfig(ConfigName.ShenBingSkill)
|
|
local BattleView = require("Modules/Battle/View/BattleView")
|
|
BattleTestPanel = Inherit(BasePanel)
|
|
|
|
local this = BattleTestPanel
|
|
local battleTimeScaleKey = "battleTimeScaleKey"
|
|
|
|
local timeCount
|
|
local endFunc
|
|
local levelId
|
|
local isTestFight = false
|
|
local isBack = false --是否为战斗回放
|
|
local fightType -- 1关卡 2副本 3限时怪, 5兽潮, 6新关卡, 7公会boss
|
|
local orginLayer
|
|
|
|
-- 显示跳过战斗使用
|
|
local hadCounted = 0
|
|
|
|
local TestFightData = {
|
|
playerData = { teamSkill = {}, teamPassive = {} },
|
|
enemyData = {{teamSkill = {}, teamPassive = {} }},
|
|
}
|
|
local roleTestData = {}
|
|
local monsterTestData = {}
|
|
local allTestData = {}
|
|
|
|
local _IsStart = false
|
|
local _IsCanNext = false
|
|
|
|
|
|
--初始化组件(用于子类重写)
|
|
function this:InitComponent()
|
|
this.spLoader = SpriteLoader.New()
|
|
orginLayer = 0
|
|
|
|
this.BattlePanel = Util.GetGameObject(self.gameObject, "BattlePanel")
|
|
BattleView:InitComponent(this, this.BattlePanel)
|
|
|
|
this.UpRoot = Util.GetGameObject(this.BattlePanel, "UpRoot")
|
|
this.DownRoot = Util.GetGameObject(this.BattlePanel, "DownRoot")
|
|
|
|
this.Option = Util.GetGameObject(this.UpRoot, "option")
|
|
this.roundText = Util.GetGameObject(this.Option, "timeCount"):GetComponent("Text")
|
|
this.orderText = Util.GetGameObject(this.Option, "order/text"):GetComponent("Text")
|
|
this.BtnTimeScale = Util.GetGameObject(this.DownRoot, "option/BtnTimeScale")
|
|
|
|
|
|
this.tOption = Util.GetGameObject(self.gameObject, "Test/option")
|
|
this.BtnStrat = Util.GetGameObject(this.tOption, "BtnStrat")
|
|
this.BtnPause = Util.GetGameObject(this.tOption, "BtnPause")
|
|
this.BtnNext = Util.GetGameObject(this.tOption, "BtnNext")
|
|
this.IsSingle = Util.GetGameObject(this.tOption, "isSingle"):GetComponent("Toggle")
|
|
this.IsSkill = Util.GetGameObject(this.tOption, "isSkill"):GetComponent("Toggle")
|
|
this.btnLoadMy = Util.GetGameObject(this.tOption, "loadMy")
|
|
this.btnLoadMonster = Util.GetGameObject(this.tOption, "loadMonster")
|
|
this.monsterGroupId = Util.GetGameObject(this.tOption, "loadMonster/InputField"):GetComponent("InputField")
|
|
|
|
this.SkillOption = Util.GetGameObject(self.gameObject, "skillOption")
|
|
this.RoleSkillOption = Util.GetGameObject(self.gameObject, "skillOption/Role")
|
|
|
|
|
|
-- 初始化设置界面
|
|
RoleSetView:Init(Util.GetGameObject(self.gameObject, "roleSet"))
|
|
MonsterSetView:Init(Util.GetGameObject(self.gameObject, "monsterSet"))
|
|
AllSetView:Init(Util.GetGameObject(self.gameObject, "allSet"))
|
|
SkillSetView:Init(Util.GetGameObject(self.gameObject, "skillSet"))
|
|
|
|
|
|
this.MyRolePosList = {}
|
|
this.EnemyRolePosList = {}
|
|
for i = 1 , 6 do
|
|
this.MyRolePosList[i] = Util.GetGameObject(self.gameObject, "Test/role/"..i.."/root")
|
|
this.EnemyRolePosList[i] = Util.GetGameObject(self.gameObject, "Test/enemy/btn"..i)
|
|
end
|
|
|
|
-- 灵兽
|
|
this.MonsterSkillOption = Util.GetGameObject(self.gameObject, "skillOption/Monster")
|
|
this.EnemyMonsterSet = Util.GetGameObject(this.MonsterSkillOption, "enemyMonster/set")
|
|
this.PlayerMonsterSet = Util.GetGameObject(this.MonsterSkillOption, "playerMonster/set")
|
|
|
|
this.EnemyMonsterList = {}
|
|
this.PlayerMonsterList = {}
|
|
for i = 1 , 6 do
|
|
this.EnemyMonsterList[i] = Util.GetGameObject(this.MonsterSkillOption, "enemyMonster/list/"..i.."/cast")
|
|
this.PlayerMonsterList[i] = Util.GetGameObject(this.MonsterSkillOption, "playerMonster/list/"..i.."/cast")
|
|
end
|
|
Time.timeScale=2
|
|
end
|
|
|
|
--绑定事件(用于子类重写)
|
|
function this:BindEvent()
|
|
|
|
Util.AddClick(this.BtnTimeScale, function ()
|
|
if Time.timeScale > 4 then
|
|
Time.timeScale = 2
|
|
else
|
|
Time.timeScale = math.floor(Time.timeScale + 1)
|
|
end
|
|
this.SwitchTimeScale()
|
|
end)
|
|
|
|
Util.AddClick(this.BtnStrat, function ()
|
|
-- 开始战斗
|
|
if _IsStart then
|
|
--TODO:
|
|
BattleView:StopBattle()
|
|
_IsStart = false
|
|
this.RoleSkillOption:SetActive(false)
|
|
BattleView.Clear()
|
|
BattleView:OnClose2()
|
|
|
|
BattleView.InitBattleEvent()
|
|
this.RefreshAllRoleShow()
|
|
LogRed("战斗已停止")
|
|
else
|
|
LogRed("战斗开始")
|
|
BattleView:ClearRole()
|
|
this:SetData()
|
|
BattleView:StartBattle()
|
|
BattleLogic.SetIsDebug(this.IsSingle.isOn)
|
|
BattleLogic.Event:AddEvent(BattleEventName.DebugStop, this.OnDebugStop)
|
|
this.InitSkillOption()
|
|
_IsStart = true
|
|
end
|
|
end)
|
|
Util.AddClick(this.BtnPause, function ()
|
|
if _IsStart then
|
|
-- 战斗暂停
|
|
if BattleManager.IsBattlePlaying() then
|
|
BattleManager.PauseBattle()
|
|
else
|
|
BattleManager.ResumeBattle()
|
|
end
|
|
end
|
|
end)
|
|
|
|
Util.AddClick(this.BtnNext, function ()
|
|
if _IsCanNext then
|
|
_IsCanNext = false
|
|
BattleLogic.TurnRound(true)
|
|
end
|
|
end)
|
|
|
|
this.IsSingle.onValueChanged:AddListener(function(state)
|
|
if not state then
|
|
this.IsSkill.isOn = false
|
|
end
|
|
end)
|
|
this.IsSkill.onValueChanged:AddListener(function(state)
|
|
if state then
|
|
this.IsSingle.isOn = true
|
|
end
|
|
end)
|
|
|
|
|
|
Util.AddClick(this.btnLoadMy, function ()
|
|
TestFightData.playerData = BattleManager.GetBattlePlayerData()
|
|
if not TestFightData.playerData then
|
|
PopupTipPanel.ShowTip(Language[10206])
|
|
return
|
|
end
|
|
-- 加载角色
|
|
this.RefreshAllRoleShow()
|
|
end)
|
|
|
|
Util.AddClick(this.btnLoadMonster, function ()
|
|
local gId = tonumber(this.monsterGroupId.text)
|
|
if not gId then
|
|
PopupTipPanel.ShowTip(Language[10207])
|
|
return
|
|
end
|
|
TestFightData.enemyData = BattleManager.GetBattleEnemyData(gId)
|
|
if not TestFightData.enemyData[1] then
|
|
PopupTipPanel.ShowTip(Language[10208])
|
|
return
|
|
end
|
|
-- 加载角色
|
|
this.RefreshAllRoleShow()
|
|
end)
|
|
|
|
--
|
|
for i = 1 , 6 do
|
|
Util.AddClick(this.MyRolePosList[i], function()
|
|
if _IsStart then
|
|
PopupTipPanel.ShowTip(Language[10209])
|
|
return
|
|
end
|
|
RoleSetView:Show(0, i, roleTestData[i], this.ApplyRoleData)
|
|
end)
|
|
Util.AddClick(this.EnemyRolePosList[i], function()
|
|
if _IsStart then
|
|
PopupTipPanel.ShowTip(Language[10209])
|
|
return
|
|
end
|
|
RoleSetView:Show(1, i, roleTestData[i+6], this.ApplyRoleData)
|
|
end)
|
|
end
|
|
|
|
|
|
Util.AddClick(this.EnemyMonsterSet, function ()
|
|
Log("EnemyMonsterSet")
|
|
if _IsStart then
|
|
PopupTipPanel.ShowTip(Language[10209])
|
|
return
|
|
end
|
|
MonsterSetView:Show(1, monsterTestData, this.ApplyMonsterData)
|
|
end)
|
|
|
|
Util.AddClick(this.PlayerMonsterSet, function ()
|
|
Log("PlayerMonsterSet")
|
|
if _IsStart then
|
|
PopupTipPanel.ShowTip(Language[10209])
|
|
return
|
|
end
|
|
MonsterSetView:Show(0, monsterTestData, this.ApplyMonsterData)
|
|
end)
|
|
|
|
|
|
end
|
|
|
|
function this:LoseJump(id)
|
|
if not MapManager.Mapping then
|
|
if JumpManager.CheckJump(id) then
|
|
this:ClosePanel()
|
|
JumpManager.GoJumpWithoutTip(id)
|
|
end
|
|
else
|
|
PopupTipPanel.ShowTip(Language[10210])
|
|
end
|
|
end
|
|
|
|
--添加事件监听(用于子类重写)
|
|
function this:AddListener()
|
|
end
|
|
|
|
--移除事件监听(用于子类重写)
|
|
function this:RemoveListener()
|
|
end
|
|
|
|
--
|
|
function this.OnDebugStop()
|
|
_IsCanNext = true
|
|
end
|
|
|
|
|
|
|
|
function this:OnSortingOrderChange()
|
|
Util.AddParticleSortLayer(this.gameObject, this.sortingOrder - orginLayer)
|
|
orginLayer = this.sortingOrder
|
|
|
|
BattleView:OnSortingOrderChange(this.sortingOrder)
|
|
this.UpRoot:GetComponent("Canvas").sortingOrder = this.sortingOrder + 10
|
|
this.DownRoot:GetComponent("Canvas").sortingOrder = this.sortingOrder + 10
|
|
end
|
|
|
|
--界面打开时调用(用于子类重写)
|
|
function this:OnOpen()
|
|
BattleView:Init()
|
|
|
|
TestFightData = {
|
|
playerData = { teamSkill = {}, teamPassive = {} },
|
|
enemyData = {{teamSkill = {}, teamPassive = {} }},
|
|
}
|
|
this.InitPanelData()
|
|
|
|
-- SoundManager.PlayMusic(SoundConfig.BGM_Battle_1, true, function()
|
|
SoundManager.PlayMusic(SoundConfig.BGM_Battle_2, false)
|
|
-- end)
|
|
|
|
|
|
this.SkillOption:GetComponent("Canvas").sortingOrder = BattleManager.GetBattleSorting() + 20
|
|
end
|
|
|
|
-- 设置数据
|
|
function this:SetData()
|
|
BattleView:SetData(TestFightData, nil, 1, 90)
|
|
end
|
|
|
|
-- 根据当前设置生成战斗数据
|
|
function this.RefreshFightData(type)
|
|
if not type or type == 1 then
|
|
-- 清除所有数据
|
|
this.ClearRoleData()
|
|
-- 重新添加
|
|
for i = 1, 12 do
|
|
local role = roleTestData[i]
|
|
if role then
|
|
local data = {}
|
|
data.camp = math.floor((i-1)/6)
|
|
data.position = (i - 1) % 6 + 1
|
|
data.monsterId = role.monsterId
|
|
data.roleId = role.roleId
|
|
local roleData
|
|
if role.roleId > 10000 then
|
|
roleData = ConfigManager.GetConfigData(ConfigName.HeroConfig, data.roleId)
|
|
else
|
|
roleData = ConfigManager.GetConfigData(ConfigName.MonsterConfig, data.monsterId)
|
|
end
|
|
data.element = roleData.PropertyName
|
|
data.professionId = roleData.Profession
|
|
data.quality = roleData.Quality
|
|
data.star = role.star
|
|
data.skinId=role.skinId
|
|
--LogError("skinId==="..role.skinId)
|
|
data.type = 1
|
|
data.job=roleData.Job
|
|
local paskill = string.split(role.passivity, "#")
|
|
data.passivity = BattleManager.GetPassivityData(paskill) or {}
|
|
data.property = {}
|
|
for pi = 1, 25 do
|
|
data.property[pi] = role.props[pi] or 0
|
|
end
|
|
data.teamDamage=data.property[4]
|
|
data.skill = BattleManager.GetSkillData(role.skill,role.skinId) or {}
|
|
data.superSkill = BattleManager.GetSkillData(role.superSkill) or {}
|
|
-- 添加角色数据
|
|
this.AddRoleData(data)
|
|
end
|
|
end
|
|
|
|
-- 刷新角色显示
|
|
this.RefreshAllRoleShow()
|
|
end
|
|
|
|
-- 灵兽数据刷新
|
|
if not type or type == 2 then
|
|
-- 清除所有数据
|
|
this.ClearMonsterData()
|
|
this.ClearWeaponData()
|
|
-- 重新添加
|
|
for i = 1, 12 do
|
|
local monster = monsterTestData[i]
|
|
if monster then
|
|
local data = {}
|
|
data.camp = math.floor((i-1)/6)
|
|
data.position = (i - 1) % 6 + 1
|
|
data.id = monster.id
|
|
data.star = monster.star
|
|
data.teamDamage=monster.props[2]
|
|
data.property = {}
|
|
for pi = 1, 25 do
|
|
data.property[pi] = monster.props[pi] or 0
|
|
end
|
|
local isPokemon=true
|
|
local MSkillId = data.id..data.star
|
|
LogError("data.id=="..data.id.." data.star=="..data.star)
|
|
data.skill={}
|
|
data.skill[1] = BattleManager.MonsterSkillAdapter(MSkillId) or {}
|
|
if monster.skillId~=nil and monster.skillId~=0 then
|
|
LogError("data.skill=="..monster.skillId)
|
|
--data.position=100
|
|
data.skill[1] = BattleManager.PlayerSkillAdapter(monster.skillId) or {}
|
|
end
|
|
if monster.weaponId~=nil and monster.weaponId~=0 then
|
|
LogError("data.weaponskill=="..monster.weaponId)
|
|
isPokemon=false
|
|
|
|
local pokemonUnit=shenbing[monster.weaponId]
|
|
|
|
if pokemonUnit and pokemonUnit.SkillIDList then
|
|
LogError("神兵技能+++++++++++++++++++++")
|
|
monster.id=pokemonUnit.SpiritAnimalMatch
|
|
data.id=pokemonUnit.SpiritAnimalMatch
|
|
data.skill={}
|
|
--for i = 1, #pokemonUnit.SkillIDList do
|
|
data.skill[1]=BattleManager.WeaponSkillAdapter(monster.weaponId)
|
|
|
|
if pokemonUnit.PassiveSkill then
|
|
--LogError("pokemonUnit.PassiveSkill=="..pokemonUnit.PassiveSkill)
|
|
--local passs=string.split(pokemonUnit.PassiveSkill, "#")
|
|
local passs=pokemonUnit.PassiveSkill
|
|
local passivityList = {}
|
|
for j = 1, #passs do
|
|
LogError("神兵被动============="..passs[j])
|
|
table.insert(passivityList, tonumber(passs[j]))
|
|
end
|
|
data.passivity = BattleManager.GetPassivityData(passivityList)
|
|
end
|
|
--end
|
|
end
|
|
end
|
|
-- 添加角色数据
|
|
this.AddMonsterData(data,isPokemon)
|
|
end
|
|
end
|
|
|
|
-- 刷新显示
|
|
this.RefreshAllMonsterShow()
|
|
end
|
|
|
|
if not type or type == 3 then
|
|
|
|
end
|
|
--
|
|
--LogGreen("战斗数据刷新 " .. BattleManager.PrintBattleTable(TestFightData))
|
|
end
|
|
|
|
|
|
function this.ApplyMonsterData(data)
|
|
monsterTestData = data
|
|
this.RefreshFightData(2)
|
|
return true
|
|
end
|
|
function this.ClearMonsterData(camp)
|
|
if camp == 0 then
|
|
TestFightData.playerData.monsterList = {}
|
|
elseif camp == 1 then
|
|
TestFightData.enemyData[1].monsterList = {}
|
|
else -- 全清
|
|
TestFightData.playerData.monsterList = {}
|
|
TestFightData.enemyData[1].monsterList = {}
|
|
end
|
|
end
|
|
function this.ClearWeaponData(camp)
|
|
if camp == 0 then
|
|
TestFightData.playerData.weaponList = {}
|
|
elseif camp == 1 then
|
|
TestFightData.enemyData[1].weaponList = {}
|
|
else -- 全清
|
|
TestFightData.playerData.weaponList = {}
|
|
TestFightData.enemyData[1].weaponList = {}
|
|
end
|
|
end
|
|
function this.AddMonsterData(data,_isPokemon)
|
|
local camp = data.camp
|
|
local pos = data.position
|
|
if camp == 0 then
|
|
local rIndex
|
|
for index, role in ipairs(TestFightData.playerData.monsterList) do
|
|
if role.position == pos then
|
|
rIndex = index
|
|
break
|
|
end
|
|
end
|
|
if _isPokemon then
|
|
if rIndex then
|
|
TestFightData.playerData.monsterList[rIndex] = data
|
|
else
|
|
table.insert(TestFightData.playerData.monsterList, data)
|
|
end
|
|
else
|
|
if rIndex then
|
|
TestFightData.playerData.weaponList[rIndex] = data
|
|
else
|
|
table.insert(TestFightData.playerData.weaponList, data)
|
|
end
|
|
end
|
|
|
|
|
|
else
|
|
local rIndex
|
|
for index, role in ipairs(TestFightData.enemyData[1].monsterList) do
|
|
if role.position == pos then
|
|
rIndex = index
|
|
break
|
|
end
|
|
end
|
|
if _isPokemon then
|
|
if rIndex then
|
|
TestFightData.enemyData[1].monsterList[rIndex] = data
|
|
else
|
|
table.insert(TestFightData.enemyData[1].monsterList, data)
|
|
end
|
|
else
|
|
if rIndex then
|
|
TestFightData.enemyData[1].weaponList[rIndex] = data
|
|
else
|
|
table.insert(TestFightData.enemyData[1].weaponList, data)
|
|
end
|
|
end
|
|
end
|
|
end
|
|
|
|
|
|
-- 角色数据
|
|
function this.ApplyRoleData(camp, pos, data)
|
|
if camp == 0 then
|
|
roleTestData[pos] = data
|
|
else
|
|
roleTestData[pos+6] = data
|
|
end
|
|
this.RefreshFightData(1)
|
|
end
|
|
-- 清除人物数据
|
|
function this.ClearRoleData(camp)
|
|
for i = 1, 6 do
|
|
if camp == 0 then
|
|
TestFightData.playerData[i] = nil
|
|
elseif camp == 1 then
|
|
TestFightData.enemyData[1][i] = nil
|
|
else -- 全清
|
|
TestFightData.playerData[i] = nil
|
|
TestFightData.enemyData[1][i] = nil
|
|
end
|
|
end
|
|
end
|
|
-- 增加一个数据
|
|
function this.AddRoleData(data)
|
|
local camp = data.camp
|
|
local pos = data.position
|
|
if camp == 0 then
|
|
local rIndex
|
|
for index, role in ipairs(TestFightData.playerData) do
|
|
if role.position == pos then
|
|
rIndex = index
|
|
break
|
|
end
|
|
end
|
|
if rIndex then
|
|
TestFightData.playerData[rIndex] = data
|
|
else
|
|
table.insert(TestFightData.playerData, data)
|
|
end
|
|
|
|
else
|
|
local rIndex
|
|
for index, role in ipairs(TestFightData.enemyData[1]) do
|
|
if role.position == pos then
|
|
rIndex = index
|
|
break
|
|
end
|
|
end
|
|
if rIndex then
|
|
TestFightData.enemyData[1][rIndex] = data
|
|
else
|
|
table.insert(TestFightData.enemyData[1], data)
|
|
end
|
|
|
|
end
|
|
end
|
|
|
|
|
|
-- 刷新显示
|
|
function this.RefreshAllRoleShow()
|
|
BattleView:ClearRole()
|
|
-- body
|
|
if TestFightData.enemyData[1] then
|
|
-- 加载角色
|
|
for _, data in ipairs(TestFightData.enemyData[1]) do
|
|
RoleManager.AddRole(data, data.position)
|
|
end
|
|
end
|
|
|
|
if TestFightData.playerData then
|
|
-- 加载角色
|
|
for _, data in ipairs(TestFightData.playerData) do
|
|
RoleManager.AddRole(data, data.position)
|
|
end
|
|
end
|
|
end
|
|
|
|
function this.RefreshAllMonsterShow()
|
|
-- 灵兽
|
|
if TestFightData.enemyData[1] and TestFightData.enemyData[1].monsterList then
|
|
for _, data in ipairs(TestFightData.enemyData[1].monsterList) do
|
|
if data.id then
|
|
MonsterManager.AddMonster(data)
|
|
end
|
|
end
|
|
end
|
|
|
|
if TestFightData.playerData and TestFightData.playerData.monsterList then
|
|
-- 加载角色
|
|
for _, data in ipairs(TestFightData.playerData.monsterList) do
|
|
if data.id then
|
|
MonsterManager.AddMonster(data)
|
|
end
|
|
end
|
|
end
|
|
end
|
|
|
|
-- 全局被动
|
|
function this.ApplyAllData(camp, data)
|
|
|
|
end
|
|
|
|
-- 初始化
|
|
function this.InitPanelData()
|
|
--显示倒计时
|
|
local curRound, maxRound = BattleLogic.GetCurRound()
|
|
this.roundText.text = string.format(Language[10211], curRound, maxRound)
|
|
hadCounted = 0
|
|
|
|
this.Option:SetActive(true)
|
|
|
|
this.SwitchTimeScale()
|
|
end
|
|
|
|
|
|
function this.SwitchTimeScale()
|
|
local _scale = math.floor(Time.timeScale)
|
|
local child = this.BtnTimeScale.transform.childCount - 3 -- 3倍速时-2
|
|
local s = "x".. _scale
|
|
for i=1, child do
|
|
local g = this.BtnTimeScale.transform:GetChild(i-1).gameObject
|
|
g:SetActive(g.name == s)
|
|
end
|
|
end
|
|
|
|
function this.BattleEnd(result)
|
|
BattleManager.PauseBattle()
|
|
--LogGreen("战斗结果 = "..result)
|
|
end
|
|
|
|
|
|
-- 战斗波次变化回调
|
|
function this.OnOrderChanged(order)
|
|
-- body
|
|
--显示波次
|
|
this.orderText.text = string.format("%d/%d", order, BattleLogic.TotalOrder)
|
|
end
|
|
|
|
-- 战斗回合变化回调
|
|
function this.OnRoundChanged(round)
|
|
-- body
|
|
--显示波次
|
|
local curRound, maxRound = BattleLogic.GetCurRound()
|
|
this.roundText.text = string.format(Language[10211], curRound, maxRound)
|
|
|
|
end
|
|
|
|
-- 由BattleView驱动
|
|
function this.OnUpdate()
|
|
|
|
end
|
|
|
|
-- 初始化技能选项
|
|
function this.InitSkillOption()
|
|
this.RoleSkillOption:SetActive(this.IsSkill.isOn)
|
|
if this.IsSkill.isOn then
|
|
for i = 1, 12 do
|
|
local camp = math.floor((i-1)/6)
|
|
local pos = i - camp*6
|
|
local btn1 = Util.GetGameObject(this.RoleSkillOption, i.."/1")
|
|
local btn2 = Util.GetGameObject(this.RoleSkillOption, i.."/2")
|
|
local btn3 = Util.GetGameObject(this.RoleSkillOption, i.."/3")
|
|
Util.AddOnceClick(btn1, function()
|
|
if _IsCanNext then
|
|
local role = RoleManager.GetRole(camp, pos)
|
|
if not role then return end
|
|
_IsCanNext = false
|
|
role:ForceCastSkill(1, nil, function()
|
|
_IsCanNext = true
|
|
end)
|
|
end
|
|
end)
|
|
Util.AddOnceClick(btn2, function()
|
|
if _IsCanNext then
|
|
local role = RoleManager.GetRole(camp, pos)
|
|
if not role then return end
|
|
_IsCanNext = false
|
|
role:ForceCastSkill(2, nil, function()
|
|
_IsCanNext = true
|
|
end)
|
|
end
|
|
end)
|
|
Util.AddOnceClick(btn3, function()
|
|
SkillSetView:Show(camp, pos, BattleView)
|
|
end)
|
|
end
|
|
end
|
|
end
|
|
|
|
|
|
|
|
--界面关闭时调用(用于子类重写)
|
|
function this:OnClose()
|
|
BattleView:OnClose()
|
|
Time.timeScale = 2
|
|
end
|
|
|
|
--界面销毁时调用(用于子类重写)
|
|
function this:OnDestroy()
|
|
BattleView:OnDestroy()
|
|
this.spLoader:Destroy()
|
|
end
|
|
|
|
return this |