自定义技能消耗
前言
这篇就是系列教程的最后一篇了
这回要做一个自制的技能消耗系统,而且要用到图片、变量和一些JS函数
这次的目标有二:
- 自定义并实现一个在战斗中显示的技能条
- 创建一个使用该技能条的技能
制作技能条
首先是制作图片素材,制作素材时要对自己做的系统有概念,这个技能条有0、25%、50%、75%、100%五种状态,你也可以直接下载作者做好的图片
![]()
作者留的是谷歌盘,需要翻,我这里直接传度盘了
通过网盘分享的文件:CustomGauge.zip 链接: https://pan.baidu.com/s/1mnLMnzopTEWw2o3WRfgtFw?pwd=q81r 提取码: q81r --来自百度网盘超级会员v2的分享
将素材放到图片文件夹
显示建立一个新的公共事件来初始化我们的技能条,先简单设置一下图片:
![]()
然后来创建另一个公共事件,并在这个事件中创建一个新的变量,命名为“Burst Gauge(技能条)”,先给这个变量增加1
![]()
然后,使用条件分歧来判断该变量是否超出4,如果是,就重新设置回4
![]()
然后再新建一个公共事件,这次用来管理技能条图片,让它根据变量值来显示对应的图片。和上一篇讲的类似,设置一系列条件分歧从0-4来判断变量值,然后显示为值对应的图片
![]()
然后回到前面创建的两个事件,调用刚才设置的图片管理
![]()
![]()
现在初始化完成,接下来如何将它用在战斗中呢?
首先要让图片显示在战斗中。可以通过Battle Core插件的插件参数来一次性设置,就不用单独在每个敌群事件中设置一遍了
打开插件参数 - Mechanics Settings - Base Troop ID's
![]()
把它设置为1或者随便几号都行。然后去1号敌群事件调用初始化事件,然后技能条就会显示在战斗中了
![]()
![]()
接下来开始让技能条真正工作,又要用到我们前面几篇制作的技能动作序列,并且要稍微写点代码了
在每个动作序列的结尾,调用“增加技能条”的这个公共事件(也就是我们本篇创建的第二个公共事件)
![]()
然后进入战斗使用技能,可以看到技能条涨起来了
![]()
制作技能
现在技能条已经ok了,开始制作一个使用这个技能条的技能
这次的新技能叫Impulse Slash,它比较强,敌人被烧伤时还会造成额外伤害
先进行必要的设置,然后启用Battle Core中的JS函数,将下面的代码输入备注栏中
<JS Skill Enable>
enabled = $gameVariables.value(4) >= 4;
</JS Skill Enable>
意思就是这个技能在4号变量大于等于4之前无法使用,也就是要技能条满了才能用
然后再加入如下自定义消耗文本
<Custom Cost Text>
\C[2]100% Burst
</Custom Cost Text>
这会在菜单中标记该技能消耗100%技能条,且文本颜色为2(默认来讲,也就是红色)
![]()
老样子,做动作序列,这次再加一点简单的演出
给这个技能加个闪光和震动效果,然后根据敌方是否存在烧伤状态来造成额外效果,只要添加图片和音效就行
![]()
![]()
然后进行条件分歧判断是否有烧伤状态,通过BattleManager._target.isStateAffected(X). X来进行判断(X填入烧伤状态的编号),这用于判断目标是否受烧伤状态的影响
![]()
然后加入额外效果,包括新的动画、伤害倍率以及额外的技能效果
![]()
然后将技能条清零,并调用图像管理器
![]()
现在开始测试,这是没有烧伤的时候
![]()
然后现在又烧伤状态
![]()
很好,现在启动了二阶段攻击,造成了更大的伤害
那么这一系列教程就算完结了
后记
后面还有一篇Timed Hits with Action Sequences - Yanfly.moe Wiki,不过本质是推销qte插件,这里就不搬了