监听事件中函数的执行顺序
来源:互联网 发布:bbc纪录片中国网络支付 编辑:程序博客网 时间:2024/06/11 06:19
inst:ListenForEvent("onhitother", onHit)
这是用来监听攻击动作事件的,监听到后执行函数onHit
实际测试
local target = data.targetdata.damage = data.damage * 2local damage = data.damagedamage = damage * 1target.components.health:DoDelta(-damage)
这是onHit的一段代码,用手杖(伤害为17)攻击的伤害是51,即17 + 17 * 2,所以应该是先计算攻击的伤害,并应用在被攻击的对象上,然后在执行这个函数,而不是在攻击伤害计算之前执行。
对于下面的onAttack函数的执行也同理
inst:ListenForEvent("attacked", onAttack)
暂且将攻击分为
- 攻击前摇
- 攻击
- 攻击后摇
由此初步设想监听事件的函数执行都是发生攻击后摇的阶段。
注:只通过上述测试是无法验证函数执行的前后的,不过配上监听事情“killed”时就可以完全的验证上述的结论,因为如果被攻击的对象在执行完语句
target.components.health:DoDelta(-damage)
之后死亡时,是不会触发“killer”事件的,比如说用攻击为30的武器去攻击health为45的对象,此时是触发不了“killed”事件的,因为先计算武器的30伤害,然后执行onHit函数,在执行onHit函数过程中,对象刚好死亡,如果攻击health为25的对象时,对象在被攻击的时候就已经死亡了,此时就会触发“killed”事件
0 0
- 监听事件中函数的执行顺序
- Unity3D中事件函数的执行顺序
- 【Unity】MonoBehavior事件函数的执行顺序(监听调用顺序)
- 事件函数的执行顺序
- Unity3D中自带事件函数的执行顺序
- Unity3D中自带事件函数的执行顺序
- Unity3D中组件事件函数的执行顺序
- Unity3D中自带事件函数的执行顺序
- Unity3D中自带事件函数的执行顺序
- Unity3D中自带事件函数的执行顺序
- 【Unity3D】 Unity3D中自带事件函数的执行顺序
- Unity3D中自带事件函数的执行顺序
- Unity3D中自带事件函数的执行顺序
- Unity3D中自带事件函数的执行顺序
- Unity3D中自带事件函数的执行顺序
- Unity3D中自带事件函数的执行顺序
- Unity3D中各种事件函数的执行顺序
- Unity3D中自带事件函数的执行顺序
- 卷积神经网络(CNN)标准模型分析(一)
- 三层神经网络实现分类器
- oracle客户端的tnsname.ora的配置
- javaweb概览
- js深拷贝和浅拷贝
- 监听事件中函数的执行顺序
- mongodb 二
- Android开发——ProgressBar进度条进度控制
- Android中AlarmManager使用示例
- Java链接Mysql中文问号乱码解决办法
- Bootstrap—解决下拉菜单不弹出问题
- Android Volley的认识和基本使用
- 画图工具matplotlib简单实用--绘制散点图
- Remove specific element by editing the array