骑老登游戏开发笔记
  • 介绍
  • 魔兽地图开发笔记
    • 介绍
    • 数据格式
    • 英雄经验值公式
    • 常规制图
      • 修改特效角度
      • 禁止单位攻击物品
      • 多重射击参数设置
      • 修改建筑建造速度
    • 内置Lua制图
      • 黑窗控制台
      • 获取对象物编数据
      • 技能冷却渲染机制
      • 异步计时器
      • UI异步行为转同步
      • UI界面显示与隐藏,菜单按钮的实现
    • 狼魂Lua框架
      • 控制台UI调整
      • 字符串转魔兽ID
      • 创建单位
      • 编辑自定义属性
    • 平台BUG
    • 效率工具
      • 模型批量改名
      • 装饰物物编生成
  • 魔兽Lua
    • 魔兽Lua/UI/基类
  • y3doc/uplib
    • y3doc/uplib/math
    • y3doc/uplib/particle
    • y3doc/uplib/lighting
    • y3doc/uplib/projectiles
    • y3doc/uplib/destructable
    • y3doc/uplib/timer
    • y3doc/uplib/selector
    • y3doc/uplib/ui
    • y3doc/uplib/point
    • y3doc/uplib/player
    • y3doc/uplib/unit
    • y3doc/uplib/item
    • y3doc/uplib/skill
    • y3doc/uplib/buff
  • 代码片段
Powered by GitBook
On this page
  • 事件
  • 技能-获得
  • 技能-前摇开始
  • 技能-失去
  • 使用示例
  • 方法
  • 添加技能
  • 增加剩余冷却
  • 禁用
  • 启用
  • 获取冷却
  • 获取等级
  1. y3doc/uplib

y3doc/uplib/skill

技能需要被放置到单位身上由单位使用。

事件

技能-获得

function skill:on_add()
   
end

技能-前摇开始

function skill:on_cast_start()
   
end

技能-失去

function skill:on_remove()
   
end

使用示例

--声明技能类型
local mt = up.skill[134256632]

--技能-施法引导时
function mt:on_cast_channel()
    --获取技能拥有者
    local unit = self:get_owner()
    --获取技能目标点/目标单位
    local target = self:get_target()
    local skill = self
    local damage = 100

    if target.type == 'unit' then
        target = target:get_point()
    end

    --对目标点附近敌人造成伤害
    for _,u in up.selector()
        :in_range(target,300)
        :is_enemy(unit)
        :ipairs()
    do
        unit:damage{
            target = u,
            skill = skill,
            damage = damage,
        }
    end
end

方法

添加技能

--ability_type 隐藏,普攻,通用,英雄
unit:add_skill(ability_type,id,slot)

增加剩余冷却

skill:add_cd(1)

禁用

skill:disable()

启用

skill:enable()

获取冷却

local cd = skill:get_cd()

获取等级

local level = skill:get_level()
Previousy3doc/uplib/itemNexty3doc/uplib/buff

Last updated 1 year ago