查看: 2511|回复: 3

[已经解决] 一回合连续行动两次

[复制链接]
梦石
0
星屑
2416
在线时间
187 小时
注册时间
2018-5-11
回帖
96
发表于 2018-8-23 14:39:09 | 显示全部楼层 |阅读模式

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

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

×
如题…………
比如说一个BOSS在一回合内,一次是攻击,一次群体AOE之类的。
最好能够兼容所有战斗系统…………
人生总会有中二的时候,比如现在
梦石
0
星屑
42235
在线时间
6017 小时
注册时间
2006-11-10
回帖
6966
发表于 2018-8-23 15:08:08 | 显示全部楼层
本帖最后由 灯笼菜刀王 于 2018-8-23 15:26 编辑

能够兼容所有战斗系统是不可能的, 毕竟这个是修改战斗流程, 而不同的战斗系统的战斗流程是根本不一样的, 像RTAB完全就是重写自己的流程, 所以冲突才惊天地泣鬼神~想要兼容所有系统, 唯一的方法就是,根据需要自己写XD~~

默认的战斗系统要做起来还是很简单的,

@active_battler = @action_battlers.shift
这句就是依次把行动数组里最开头的人抽出来行动

所以, 只要在 最后 @phase4_step = 1 之前, 把行动过的角色再塞回数组里, 这样他就可以再次行动了~

@action_battlers.unshift(@active_battler)

不过,这样它只是重复一次上次的行动, 那就塞回去之前,重新make_action

@active_battler.make_action
@action_battlers.unshift(@active_battler)

不过, 这样不能判断现在行动的是不是BOSS啊, 所以要分歧下

if @active_battler.is_a?(Game_Enemy) && @active_battler.id == 10086
   @active_battler.make_action
   @action_battlers.unshift(@active_battler)
end

好了, 但是这样做一样有问题, 轮到BOSS它就没完没了的行动了=。=, 所以要加上开关控制下

if @active_battler.is_a(Game_Enemy) && @active_battler.id == 10086 && $game_switches[1]
   @active_battler.make_action
   @action_battlers.unshift(@active_battler)
   $game_switches[1] = false
end

搞定收工~  这样只要开关打开, BOSS就会使用随机技能行动两次了

点评

恐怖的数字,10086,恶趣味的说  发表于 2018-8-23 15:28
恩恩!十分感谢的说!  发表于 2018-8-23 15:27

评分

参与人数 1星屑 +100 赞 +1 收起 理由
RyanBern + 100 + 1 认可答案

查看全部评分

回复 1 0

使用道具 举报

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

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部