LOFTER for ipad —— 让兴趣,更有趣

点击下载 关闭
分支变身(WJK、SJK)的释放错误解决方案
diazynez 2019-10-03

3.3更新后多出了一些新的概念,钢身、Buff、分支变身……


分支变身在官方版中的体现是始解一护同时按下S+J+K,可以变身为半虚一护,但是这个按键方案是存在问题的。一般的JK键变身需要的条件大致为:

0.该人物具有变身能力(废话)
1.持有3条气
2.人物处于闲置状态(指站立或J1的第一帧)

而条件2在WJK、SJK这里是不同的:
人物处于闲置状态(指除被打、被击飞、开场、胜利、死亡、失败等无法操作的情况以外的任意状态)

意即WJK和SJK可以在技能释放的中途发动(会打断该技能),甚至可以在空中使用,比如始解一护可以藉由这个特殊情况打出诸如DJ+JJJ+SU+SJK+WU这样的奇葩连招。这可以当做一个特性,但我认为这是属于BUG的,那么当然是要想办法修复它啦!


从诸多的禁用技能效果的特技可以看出,人物的技能是可以用一些代码来“封印”的,那么便从这里切入:

1.在非站立的情况下,禁用WJK
2.在非站立或封印的情况下,禁用SJK

简化一下逻辑:

若处于站立,允许WJK和SJK
若处于防御,允许SJK
不在这两种情况内,两者都禁用


然后从代码角度分析:

判断人物的状态,可以用parent.$fighter_ctrler.getTargetSP().getCurrentTarget().actionState所返回的数据进行判断,若返回了0,说明人物正处于站立状态;若返回了20,说明人物正处于防御状态;若返回其他数据,则人物处于其他状态。

那么就好办了,在人物运行的每一帧都进行检测,如果满足条件,就可以使用某某技能,这就是我们要的结果。


以下是成品的代码,放在人物的站立处便可起作用,有特殊需要的话可以自行修改

import flash.events.Event;    //导入事件类

this.addEventListener(Event.ENTER_FRAME, bankaiWSLimitHandler, false, 0, true);    //添加侦听器
function bankaiWSLimitHandler(event: Event): void
{
    //switch语句,用于条件判断,可以认为是简化版的if-else if-else语句                            

switch (parent.$fighter_ctrler.getTargetSP().getCurrentTarget().actionState)
    {
    case 0:
        parent.$mc_ctrler.getAction().waiKaiW = "万解W";
    case 20:
        parent.$mc_ctrler.getAction().waiKaiS = "万解S";
        break;    //break语句,终止命令,此处情况“0”后未设置break,因此在情况“0”中也会运行情况“20”中的代码
    default:
        parent.$mc_ctrler.getAction().waiKaiW = null;
        parent.$mc_ctrler.getAction().waiKaiS = null;
        break;
    }
}




补充:使用上述代码后可能会造成WJK难以按出,修改此处判定即可优化手感:

default:

if (parent.$fighter_ctrler.self.mc.currentFrameLabel != "砍技1" && parent.$fighter_ctrler.self.mc.currentFrameLabel != "砍技2")

{

parent.$mc_ctrler.getAction().waiKaiW = null;

parent.$mc_ctrler.getAction().waiKaiS = null;

}

break;

推荐文章
评论(0)
联系我们|招贤纳士|移动客户端|风格模板|官方博客|侵权投诉 Reporting Infringements|未成年人有害信息举报 0571-89852053|涉企举报专区
网易公司版权所有 ©1997-2024  浙公网安备 33010802010186号 浙ICP备16011220号-11 增值电信业务经营许可证:浙B2-20160599
网络文化经营许可证: 浙网文[2022]1208-054号 自营经营者信息 工业和信息化部备案管理系统网站 12318全国文化市场举报网站
网信算备330108093980202220015号 网信算备330108093980204230011号
分享到
转载我的主页