查看: 4221|回复: 9

[已经解决] CP制战斗的问题:似乎固定己方先手?以及图标相关

[复制链接]
梦石
0
星屑
1356
在线时间
153 小时
注册时间
2019-5-31
回帖
47
发表于 2019-12-10 14:12:26 | 显示全部楼层 |阅读模式

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

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

×
本帖最后由 664145107 于 2020-1-16 20:23 编辑

如题,做敌人属性数据的时候把个别敌人的速度设定得比主角全队高了一点,然后实际战斗的时候发现敌人CP条满后不行动而且直接重新跑一遍,等到主角行动过之后才会正常行动,换了一个同样用CP战斗的工程也是出现了一样的问题,所以我怀疑这个系统可能就是这个样子,有没有可以改进的方法?

还有个问题就是敌人行动时CP条上的图标会先回到起点然后敌人行动,如果己方和敌方速度相同或者敌方速度都相同时这个问题尤其明显(好像突然明白了RMXP把属性数值设定得都这么大的好处),我想改成敌人先行动图标再回归,虽然也不是什么了不得的问题但是我觉得改一下观感更好……

CP制战斗系统v1.2.rar

196.69 KB, 下载次数: 62

梦石
0
星屑
222
在线时间
24 小时
注册时间
2019-4-19
回帖
6
发表于 2019-12-30 16:54:10 | 显示全部楼层
请问楼主找到解决方法了吗?我也遇到了同样的问题
回复

使用道具 举报

梦石
0
星屑
1356
在线时间
153 小时
注册时间
2019-5-31
回帖
47
 楼主| 发表于 2020-1-14 13:13:31 | 显示全部楼层
673343298 发表于 2019-12-30 16:54
请问楼主找到解决方法了吗?我也遇到了同样的问题

至今没有,不知道为什么没有人注意这个问题……
回复

使用道具 举报

梦石
0
星屑
1350
在线时间
275 小时
注册时间
2011-3-18
回帖
36
发表于 2020-1-15 12:38:35 | 显示全部楼层
楼主用的是什么版本的CP系统 上一个范例工程我看下 我用的桜雅 在土的版本...好像这两个问题都没有....
回复

使用道具 举报

梦石
0
星屑
1356
在线时间
153 小时
注册时间
2019-5-31
回帖
47
 楼主| 发表于 2020-1-16 20:22:51 | 显示全部楼层
小小猪猪 发表于 2020-1-15 12:38
楼主用的是什么版本的CP系统 上一个范例工程我看下 我用的桜雅 在土的版本...好像这两个问题都没有.... ...

发在主楼里了,感觉是在默认战斗系统的基础上改的CP系统
回复

使用道具 举报

梦石
0
星屑
1350
在线时间
275 小时
注册时间
2011-3-18
回帖
36
发表于 2020-1-17 04:02:38 | 显示全部楼层
本帖最后由 小小猪猪 于 2020-1-17 04:08 编辑
664145107 发表于 2020-1-16 20:22
发在主楼里了,感觉是在默认战斗系统的基础上改的CP系统


改好了  建议楼主跟着我下面写的一起改 这样你也清楚改了哪些地方
另外这个cp系统的原作者在范例的教程里也写了他写的地方有几个有问题 所以...

让敌人先手行动:(其实就是敌人AI里,数据库里的通常行动操作不会在0回合发生)

1 不改脚本方法: 在数据库里,为这些可能会先手的敌人设置一个<回合0>的行动,先手时就会自动使用
2  改脚本的方法:
找到Game_Enemy,把268行的[pre lang="ruby" line="268"]         (b > 0 and (n < 1 or n < a or n % b != a % b))[/pre]
改为  [pre lang="ruby" line="268"]           (b > 0 and (n < 0 or n < a or n % b != a % b))[/pre]

在行动后才消耗CP: 原作者在教程里就是这么写的,他的本意就是希望大家自己研究...
把这个CP系统的Scene_Battle3里的25-28行注释掉,如下,这样行动前不会再消耗CP
[pre lang="ruby" line="24"]       if @actor_index == @input_action_battlers.size-1
  #      for battler in @input_action_battlers
  #        battler.cp -= @now_maxspeed
  #      end
  #      @cp_window.refresh(@now_maxspeed)
        start_phase4
        return
      end[/pre]找到Scene_Battle4的402行的 update_phase4_step6 改成下面的:

[pre lang="ruby" ]   def update_phase4_step6
    # 清除强制行动对像的战斗者
    $game_temp.forcing_battler = nil
    # 公共事件 ID 有效的情况下
    if @common_event_id > 0
      # 设置事件
      common_event = $data_common_events[@common_event_id]
      $game_system.battle_interpreter.setup(common_event.list, 0)
    end
    @active_battler.cp -= @now_maxspeed   #这两行就会在行动后,公共事件也执行完了才消耗CP
    @cp_window.refresh(@now_maxspeed)
    # 移至步骤 1
    @phase4_step = 1
  end[/pre]
另外如果才刚开坑的话,个人小小建议改用桜雅在土写的CP战斗系统 (见图书馆https://rpg.blue/forum.php?mod=viewthread&tid=379188&page=1#pid2603195),(然后再在论坛搜索AX追加,可以做出和这个系统一样的CP条显示功能) 出现问题的可能性要少一些...

评分

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

查看全部评分

回复

使用道具 举报

梦石
0
星屑
1356
在线时间
153 小时
注册时间
2019-5-31
回帖
47
 楼主| 发表于 2020-1-18 11:00:01 | 显示全部楼层
小小猪猪 发表于 2020-1-17 04:02
改好了  建议楼主跟着我下面写的一起改 这样你也清楚改了哪些地方
另外这个cp系统的原作者在范例的教程里 ...

非常感谢!不过樱雅在土的CP战斗和这个有什么差异吗
回复

使用道具 举报

梦石
0
星屑
1350
在线时间
275 小时
注册时间
2011-3-18
回帖
36
发表于 2020-1-18 13:34:02 | 显示全部楼层
664145107 发表于 2020-1-18 11:00
非常感谢!不过樱雅在土的CP战斗和这个有什么差异吗

实现方式有些不一样 我个人觉得这个版本因为很多定义是直接重写的和其他脚本冲突的可能性大一点  桜雅的版本基本都是写的alias 要好一点...
回复

使用道具 举报

梦石
0
星屑
1356
在线时间
153 小时
注册时间
2019-5-31
回帖
47
 楼主| 发表于 2020-1-19 20:58:43 | 显示全部楼层
小小猪猪 发表于 2020-1-18 13:34
实现方式有些不一样 我个人觉得这个版本因为很多定义是直接重写的和其他脚本冲突的可能性大一点  桜雅的 ...

我系统搞得差不多了而且目前兼容也还可以所以觉得目前这个用着也不错,谢谢大佬解答!
回复

使用道具 举报

梦石
0
星屑
7296
在线时间
1244 小时
注册时间
2015-8-15
回帖
473
发表于 2022-11-9 15:55:18 | 显示全部楼层
MAX      =   4    是按人均分配的 ,不是手动添加的 以攻击速度值高执行的
回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部