设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 2688|回复: 5
打印 上一主题 下一主题

[有事请教] 求教用YEP动作序列做二刀流技能的方法

[复制链接]

Lv1.梦旅人

梦石
0
星屑
53
在线时间
3 小时
注册时间
2020-2-17
帖子
6
跳转到指定楼层
1
发表于 2020-5-6 19:54:47 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
角色拥有两个武器槽,要求是只装备一把武器时和普通攻击一样,装备两把武器时发动二连斩。
通过搜索找到了一位坛友给的持有武器数的判定公式 $gameActors.actor(1).weapons().length===2,但这条脚本写在动作序列里的时候具体应当如何应用呢

Lv3.寻梦者

梦石
0
星屑
4072
在线时间
752 小时
注册时间
2016-2-28
帖子
149
2
发表于 2020-5-7 08:47:54 | 只看该作者
本帖最后由 hanyilun 于 2020-5-7 08:52 编辑

尝试着写了一种方法,目测没什么问题,除非你用了某些冲突的插件
1.创建三个技能,一个叫判断,一个叫攻击,一个叫二连斩
2.创建一个公共事件,选择条件分歧,判断方式选择4号页里的脚本
3.在脚本里输入你的判定公式,记得把“创建不满足条件时的分支”勾上
4.当装备了两把武器时,执行“强制战斗行动”指令,让该角色使用“二连斩”,目标为上一目标
5.同理当装备一把武器时,让该角色使用“攻击”,目标为上一目标
6.在“判断”这个技能的动作序列里加上一句“common event x”,x为你创建的公共事件ID
7.“判断”这个技能的目标选择敌方单体,不需要加动画,伤害什么的都不用写,这个技能效果就是触发ID为x的公共事件,然后判断当前持有武器的数量,从而释放不同的技能,因为已经选择了敌方单体为目标,所以强制战斗行动直接选择上一目标就可以,当然你也可以不叫他判断,改成自己想要的名字就行

我尽量写的详细了,不知道能不能满足你的要求,你可以试一试
回复 支持 1 反对 0

使用道具 举报

Lv2.观梦者

梦石
0
星屑
702
在线时间
326 小时
注册时间
2013-5-31
帖子
74
3
发表于 2020-5-7 19:32:57 | 只看该作者
<target action>
  if BattleManager._subject.isActor() && BattleManager._subject.weapons().length===2
    eval: BattleManager._subject.forceAction(4);BattleManager.forceAction(BattleManager._subject);
  else
    action animation
    wait for animation
    action effect
    wait for effect
  end
</target action>
好好看一下YEP动作序列插件的插件帮助 备注栏-右键-插件帮助 里面有详尽的使用方式
词语解释:BattleManager._subject 指行动主体,一般是动作的当前对象,就是正在行动的对象 很好理解。然后拼你后面那么二刀流的判断。
BattleManager._subject.forceAction(4) 行动主体有一个forceAction()方法,指强制行动指令,4是技能ID 指强制行动哪个技能。
BattleManager.forceAction(BattleManager._subject) 战斗管理器同样有一个forceAction()方法,用于执行强制行动,括号内是执行对象,一般是角色(自己人)或敌人(不是自己人),这里扔的是行动主体,正在行动的当前对象。
思路就是上面的强制行动思路。下面是上面以外的情况下,因为重写targetAction这个阶段的动作,所以要手动填上这个技能原来数据库里的效果,至于这些名词 YEP的插件帮助上有写 好好看一下。加油楼主,学习赛高!

点评

多谢解惑  发表于 2020-5-8 02:06
我一直觉得我的方法有缺陷,大佬这个看起来规范了好多!学习了!  发表于 2020-5-7 22:58

评分

参与人数 3+3 收起 理由
绫波 + 1 认可答案
白嫩白嫩的 + 1 精品文章
hanyilun + 1 塞糖

查看全部评分

回复 支持 1 反对 0

使用道具 举报

Lv2.观梦者

梦石
0
星屑
702
在线时间
326 小时
注册时间
2013-5-31
帖子
74
4
发表于 2020-5-7 19:34:48 | 只看该作者
本帖最后由 橙光 于 2020-5-7 19:49 编辑
橙光 发表于 2020-5-7 19:32
if BattleManager._subject.isActor() && BattleManager._subject.weapons().length===2
    eval: Batt ...


通俗易懂就是
行动主体受到命令-》 技能ID的行动-》战斗管理器(遥控器)按下遥控器按钮-》行动主体开始动了

PS:death break当技能目标陷入死亡状态就中断行动,该阶段的该指令下方的指令不再执行,可以用来防止一些明明已经打死了还在播放特效。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2025-1-12 20:03

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表