9

主题

6

回帖

149

积分

普通创作者

积分
149
发表于  2024-2-4 15:36:02 | 显示全部楼层 |阅读模式 1168 1
本帖最后由 只道寻常#9534 于 2024-2-5 10:44 编辑

首先, 简而言之说一下触发器的使用定义.
每个触发器分为3个大部分,
    1.地图中发生的事件
    2.发生事件的同时满足的条件(条件可为空)
    3.满足条件后逐条执行的动作


    图片1.png

以复活单位为例
    1. 复活一个单位, 首先得有单位得死亡, 所以事件为“任意单位死亡” ;
    每张地图会有许多单位, 单位的用途又不同, 这时候就用到了条件;
    2. 通过判断”死亡单位的分类是否为英雄” 为条件, 可以在有单位死亡的时候筛选出所有死亡的英雄单位 .
    3. 当事件触发的同时满足条件,所有条件时, 就开始逐条执行动作下的所有内容.


论常用功能
    1. 常用事件
        1.1 游戏 - 游戏初始化
        - 地图加载时运行的代码, 主要用来初始化地图数据.
    1.2 单位 - 任意单位事件
        - 常用单位的相关事件都在里面
    1.3 技能 - 任意技能事件
        - 常用技能的相关事件都在里面
    1.4 魔法效果 - 任意魔法效果事件
        - 常用魔法效果的相关事件都在里面
    1.5 界面 - 控件事件
        - 用来衔接所有UI事件
    1.6 键盘 - 按下_抬起
        - 键盘的监听事件
    1.7 鼠标 - 按下_抬起
        - 鼠标的监听事件
    1.8 鼠标悬浮事件
        - 常用功能辅助实现

2. 常用条件
    判断类
        - 条件的主要功能为筛选, 在常用中常用的条件为  
        判断 - 数值 / 布尔值 / 单位 / 技能 / 魔法效果等
        图片2.png
3.常用动作
    设置 - 设置变量
        - 设置全局 / 局部变量
    条件 -  if语句
        - 常用的逻辑判断, 满足条件执行then内所有动作 , 不满足执行else内所有动作
    图片3.png
    循环 - 指定次数重复执行
        - for循环, 可惜的是递增固定为1.
    图片4.png
        i == 循环执行次数 ; k == 初始值 ; v == 最大(终止)值 ;
        假设k为5, v为10. 该循环运行时i的值依次为1,2,3,4,5
        5  +1=6  +1=7  +1=8  +1=9  +1 =10  ==  10 结束
               1         2           3          4          5
    计时器相关
    图片5.png
    - 等待 x 秒 ,逐条执行其内所有动作
    - 每 x 秒 ,逐条执行其内所有动作
    - 每 x 秒 , 总运行次数 int , 逐条执行其内所有动作
    - 删除计时器
自定义值相关

    图片6.png
    表的高阶用法, 已被Y3封装为自定义值, 其功能很强大, 与自身想象力/脑洞持平. 遇强则强

0

主题

10

回帖

138

积分

普通创作者

积分
138
发表于  2024-3-6 17:08:10 | 显示全部楼层
解释的很好,对我很有帮助谢谢