跳转到内容

Skill

技能系统

角色技能相关操作

函数列表

ClearSkillCD

  • 描述: 重置技能冷却CD为0

  • 范围: 服务端

参数列表:

参数类型说明
PlayerIdnumber玩家角色id
SkillIdnumber要重置冷却CD的技能id,技能id-新增技能时的技能序号:1,2,3…
local playerIds = Character:GetAllPlayerIds()
local skillId = 1
for _, playerId in ipairs(playerIds) do
Skill:ClearSkillCD(playerId, skillId)
end

SwitchSkill

  • 描述: 切换技能

  • 范围: 客户端

参数列表:

参数类型说明
SkillIdListnumber[]要切换的技能id数组,技能id-新增技能时的技能序号:1,2,3…
CanReplaceOldSkillboolean是否替换旧技能
local skillIdList = {1}
Skill:SwitchSkill(skillIdList, true)

OpenRechargedAbilityUI

  • 描述: 通知玩家打开充能大招选中界面

  • 范围: 服务端

  • 警告: 需要在【地图设置】-【玩法设置】中开启充能大招

  • 警告: 游戏初始化时使用无效,需在游戏开始后使用才生效

参数列表:

参数类型说明
PlayerIdnumber玩家角色id
Timenumber充能大招选中界面倒计时长,单位秒
local playerIds = Character:GetAllPlayerIds()
for _, playerId in ipairs(playerIds) do
Skill:OpenRechargedAbilityUI(playerId, 3)
end

SetRechargedAbility

  • 描述: 设置玩家当前充能大招

  • 范围: 服务端

  • 警告: 需要在【地图设置】-【玩法设置】中开启充能大招

  • 警告: 游戏初始化时使用无效,需在游戏开始后使用才生效

参数列表:

参数类型说明
PlayerIdnumber玩家角色id
AbilityIdnumber充能大招
local playerIds = Character:GetAllPlayerIds()
for _, playerId in ipairs(playerIds) do
Skill:SetRechargedAbility(playerId, 91002)
end

GetRechargedAbility

  • 描述: 获取玩家当前充能大招

  • 范围: 服务端、客户端

  • 警告: 需要在【地图设置】-【玩法设置】中开启充能大招

  • 警告: 游戏初始化时使用无效,需在游戏开始后使用才生效

参数列表:

参数类型说明
PlayerIdnumber玩家角色id

返回字段:

返回字段字段类型说明
abilityIdnumber充能大招id
local localPlayerId = Character:GetLocalPlayerId()
local abilityId = Skill:GetRechargedAbility(localPlayerId)

SetRechargedAbilityEnergy

  • 描述: 设置玩家当前充能大招充能点数

  • 范围: 服务端

  • 警告: 需要在【地图设置】-【玩法设置】中开启充能大招

  • 警告: 游戏初始化时使用无效,需在游戏开始后使用才生效

参数列表:

参数类型说明
PlayerIdnumber玩家角色id
Energynumber充能点数
local playerIds = Character:GetAllPlayerIds()
for _, playerId in ipairs(playerIds) do
Skill:SetRechargedAbilityEnergy(playerId, 10)
end

GetRechargedAbilityEnergy

  • 描述: 获取玩家当前充能大招充能点数

  • 范围: 服务端、客户端

  • 警告: 需要在【地图设置】-【玩法设置】中开启充能大招

  • 警告: 游戏初始化时使用无效,需在游戏开始后使用才生效

参数列表:

参数类型说明
PlayerIdnumber玩家角色id

返回字段:

返回字段字段类型说明
energynumber充能点数
local localPlayerId = Character:GetLocalPlayerId()
local energy = Skill:GetRechargedAbilityEnergy(localPlayerId)

SetRechargedAbilityCostEnergy

  • 描述: 设置玩家当前充能大招所需充能点数

  • 范围: 服务端

  • 警告: 需要在【地图设置】-【玩法设置】中开启充能大招

  • 警告: 游戏初始化时使用无效,需在游戏开始后使用才生效

参数列表:

参数类型说明
PlayerIdnumber玩家角色id
CostEnergynumber所需充能点数
local playerIds = Character:GetAllPlayerIds()
for _, playerId in ipairs(playerIds) do
Skill:SetRechargedAbilityCostEnergy(playerId, 1000)
end

GetRechargedAbilityCostEnergy

  • 描述: 获取玩家当前充能大招所需充能点数

  • 范围: 服务端、客户端

  • 警告: 需要在【地图设置】-【玩法设置】中开启充能大招

  • 警告: 游戏初始化时使用无效,需在游戏开始后使用才生效

参数列表:

参数类型说明
PlayerIdnumber玩家角色id

返回字段:

返回字段字段类型说明
costEnergynumber所需充能点数
local localPlayerId = Character:GetLocalPlayerId()
local costEnergy = Skill:GetRechargedAbilityCostEnergy(localPlayerId)

SetRechargedAbilityAddPreEnergy

  • 描述: 设置玩家当前充能大招每秒增加多少充能点数

  • 范围: 服务端

  • 警告: 需要在【地图设置】-【玩法设置】中开启充能大招

  • 警告: 游戏初始化时使用无效,需在游戏开始后使用才生效

参数列表:

参数类型说明
PlayerIdnumber玩家角色id
PreEnergynumber每秒增加的充能点数
local playerIds = Character:GetAllPlayerIds()
for _, playerId in ipairs(playerIds) do
Skill:SetRechargedAbilityAddPreEnergy(playerId, 10)
end

GetRechargedAbilityAddPreEnergy

  • 描述: 获取玩家当前充能大招每秒增加多少充能点数

  • 范围: 服务端、客户端

  • 警告: 需要在【地图设置】-【玩法设置】中开启充能大招

  • 警告: 游戏初始化时使用无效,需在游戏开始后使用才生效

参数列表:

参数类型说明
PlayerIdnumber玩家角色id

返回字段:

返回字段字段类型说明
preEnergynumber每秒增加的充能点数
local localPlayerId = Character:GetLocalPlayerId()
local preEnergy = Skill:GetRechargedAbilityAddPreEnergy(localPlayerId)

SetRechargedAbilityEnabled

  • 描述: 设置玩家充能大招能否使用

  • 范围: 服务端

  • 警告: 需要在【地图设置】-【玩法设置】中开启充能大招

  • 警告: 游戏初始化时使用无效,需在游戏开始后使用才生效

参数列表:

参数类型说明
PlayerIdnumber玩家角色id
Enableboolean能否使用充能大招
local playerIds = Character:GetAllPlayerIds()
for _, playerId in ipairs(playerIds) do
Skill:SetRechargedAbilityEnabled(playerId, false)
end

UseRechargedAbility

  • 描述: 玩家朝某方向释放充能大招

  • 范围: 服务端、客户端

  • 警告: 需要在【地图设置】-【玩法设置】中开启充能大招

  • 警告: 游戏初始化时使用无效,需在游戏开始后使用才生效

参数列表:

参数类型说明
PlayerIdnumber玩家角色id
DirEngine.Vector释放朝向,默认为角色前方

返回字段:

返回字段字段类型说明
bUsedboolean是否成功释放充能大招
failedReasonstring释放充能大招失败说明,可用于给玩家提示
local localPlayerId = Character:GetLocalPlayerId()
Skill:UseRechargedAbility(localPlayerId)

ClearRechargedAbility

  • 描述: 清除玩家充能大招

  • 范围: 服务端

  • 警告: 需要在【地图设置】-【玩法设置】中开启充能大招

  • 警告: 游戏初始化时使用无效,需在游戏开始后使用才生效

参数列表:

参数类型说明
PlayerIdnumber玩家角色id
local playerIds = Character:GetAllPlayerIds()
for _, playerId in ipairs(playerIds) do
Skill:ClearRechargedAbility(playerId)
end

GetName

  • 描述: 获取技能名称

  • 范围: 服务端、客户端

参数列表:

参数类型说明
skillIdnumber技能id

返回字段:

返回字段字段类型说明
namestring技能名称
local skillName = Skill:GetName(1)

GetIcon

  • 描述: 获取技能图标

  • 范围: 服务端、客户端

参数列表:

参数类型说明
skillIdnumber技能id

返回字段:

返回字段字段类型说明
iconnumber技能图标
isCustomboolean是否是自定义图片
local skillIcon,isCustom = Skill:GetIcon(1)

GetCD

  • 描述: 获取技能冷却

  • 范围: 服务端、客户端

参数列表:

参数类型说明
skillIdnumber技能id

返回字段:

返回字段字段类型说明
cdnumber技能冷却
local skillCD = Skill:GetCD(1)

GetCurrentCD

  • 描述: 获取技能当前冷却

  • 范围: 服务端、客户端

参数列表:

参数类型说明
playerIdnumber角色id
skillIdnumber技能id

返回字段:

返回字段字段类型说明
currentCDnumber技能当前冷却
local currentCD = Skill:GetCurrentCD(playerId, 1)