[UE4]多个Montage之间存在协作问题
Paragon
的连招系统的基础变量:
bool comboflag
bool isattacking
int attackPeriod
玩家按下攻击键,检测 isattacking
如果 isattacking == false
,设置 isattacking=true
,然后根据 attackPeriod
进入对应的 play montage
有 isattacking
作为阀门,因此你可以“高速连按攻击键,但是始终在播放一段动作”
如果 isattacking == true
,设置 comboflag=true
,为连招的发生提供信息
然后在“攻击montage”的中间设置通知事件:如果角色的 comboflag=true
,那么 comboflag=false
,然后 attackPeriod++
,然后根据 attackPeriod
进入对应的 play montage
。
这样如果你高速连按攻击键,那么在“攻击montage”的中间,检测到了你 comboflag=true
,就会播放下一段连招 montage
最后在“攻击montage”的尾部设置通知事件:comboflag=false
,isattacking=false,attackPeriod=0
。这样如果一段攻击 montage
播放完,你还没有按攻击键,那么重置连招系统
如果你要连招,那么是先触发这段 montage
的第一个通知事件,而第一个通知事件会让你进入下一个 montage
,因此当你正常连招的时候就不会触发每段 montage
的第二个通知事件
而当我想再加多一个 montage
,作为冲刺动画,我发现当我在攻击的时候冲刺,那么接下来就没有办法继续播放攻击动画了
这就是一个多 Montage
之间的协作问题。我的冲刺 montage
把攻击 montage
给中断了,那么攻击 montage
尾部的通知事件就不会被激活,那么连招系统就不会被重置,那么每次我触发攻击事件的时候,都会认为 isattacking == true
,然后设置 comboflag=true
,就结束了,没有进入到蒙太奇的部分。
解决方法就是在每个要播放的 Montage
之间加判断,判断播放新的 Montage
的时候是否需要补全其他的 Montage
的通知事件
图1 攻击蒙太奇_1
图2 动画蓝图 动画通知事件->连招系统
图3 连招系统重置事件
图4 在冲刺蒙太奇播放的时候判断是否需要补全攻击蒙太奇的通知事件
[UE4]多个Montage之间存在协作问题相关推荐
- 线程的状态转换、sleep()、wait()、yeild()、终止线程的方法、线程之间的协作(join()、wait() notify() notifyAll()、await() signal() )
1.线程的状态转换 1.1 新建(New) 创建后尚未启动 1.2 可运行(Runnable) 可能正在运行,也可能正在等待 CPU 时间片. 包含了操作系统线程状态中的 Running 和 Read ...
- Java协作开发,Java开发学习笔记之八:servlet之间的协作
servlet与servlet,servlet与JSP(其本质也是servlet)之间需要合作.主要因为以下几个原因: 1.当Web程序比较复杂时,使用一个servlet来完成所有的功能显然是不合理的 ...
- V2X、OBU、RSU、V2V之间的协作关系
[自动驾驶]1.V2X.OBU.RSU.V2V之间的协作关系_Mister Zhu的博客-CSDN博客_obu和rsu 1. V2X.OBU.RSU.V2V 名词术语解释 OBU: On Board ...
- 【自动驾驶】1.V2X、OBU、RSU、V2V之间的协作关系
1. V2X.OBU.RSU.V2V 名词术语解释 OBU: On Board Unit 车载单元 RSU: Road Side Unit 路侧单元 V2V: Vehicle to Vehicle 车 ...
- 如何解决各部门之间沟通协作的障碍
现代社会是信息化的社会,沟通作为信息传递的媒介起到了越来越重要的作用,有效的沟通也越来越受到了重视.在企业内部也是如此.尤其是在企业分工细化.部门设置增多.组织结构趋于扁平化的情况下,跨部门沟通逐渐频 ...
- 价格逗号怎么打_OFFICE软件之间的协作技巧,打通任督二脉,提升办公效率!
每一个软件都有各自所擅长的领域,比如Word的文字处理,比如Excel的数据处理,比如PPT的图像处理. 如果你非要使用PPT去做数据处理,用Excel做文字处理--只能事倍功半. 所以高效使用工具最 ...
- BrainNet:脑-脑接口用于人与人之间直接协作
华盛顿大学(Universityof Washington)和卡内基梅隆大学(CarnegieMellon University)等多家研究机构的研究团队提出了BrainNet,据研究人员表示他们是第 ...
- BrainNet:用于人与人之间直接协作的多人脑对脑接口
华盛顿大学(Universityof Washington)和卡内基梅隆大学(CarnegieMellon University)等多家研究机构的研究团队提出了BrainNet,据研究人员表示他们是第 ...
- 【多线程】四种种方案实现多线程之间相互协作的通信
在并发编程中,经常会遇到多个线程之间需要相互协作的情况,即并不是多个线程同时执行,而是按照一定的顺序循环执行的情况. 那么怎样去实现这种效果呢?这里介绍三种方案. 这里都以子线程循环10次,然后主线程 ...
最新文章
- Intel Optane(tm) Memory Pinning 无法加载DLL“iaStorAfsServiceApi.dll“:找不到指定模块。(异常来自HRESULT:0x8007007E)
- 记一种数据库水平扩展的技巧
- openresty package.path require 报错
- unc 隐藏共享文件夹_你真的了解任务栏吗?win10任务栏居然隐藏了这么多小窍门...
- leetcode题库:2.两数相加
- 表格细线边款(HTML、CSS)
- PyTorch1.2.0版本来啦!居然还有全套视频!让你快速熟练掌握深度学习框架!
- VS2015 经常不出现智能提示,代码颜色也没有了
- 增量式pid调节方式有何优点_PID控制在变频器驱动系统中的应用
- javaweb项目设计文档
- 基于Springboot+mybatis+lyaui实现学科竞赛管理系统【详细设计--附完整源码】
- VS2008安装部署应用程序安装包制作过程
- 服务器删除东西直接找不到了,重新安装T1后,用了一天半,又出现演示版到期的问题了-重新删除T1PFLS服务后,怎么找不到服务器-esrv-Gh....exe文件?...
- 大数据治理包括哪几个方面
- 无法激活服务,因为它不支持 ASP.NET 兼容性
- 直接让Windows注销的脚本
- X86_64 GNU汇编、寄存器、内嵌汇编
- CMD常用命令大全(old)
- IDEA插件系列(20):Grep Console插件——显示多颜色调试日志
- 书签同步工具android,「效率工具推荐」跨平台在线云书签管理工具
热门文章
- Java进阶 | IO流核心模块与基本原理
- 华为云TaurusDB性能挑战赛-java赛题mvn编译时报错:不支持 diamond 运算符
- django-websocket 安装及配置
- 9.特殊权限 软连接 硬链接
- python之rabbitMQ
- Double.valueOf()与Double.parseDouble()两者的区别
- .net 实现Cookie跨域共享,单点登录SSO
- 《Java特种兵》1.8 老A是在逆境中迎难而上者
- 怎么hold住版本质量
- [MS bug]安装SQL Server 2008 错误:is not a valid login or you do not have permission