Project1

标题: RTAB横版的齐时战斗问题 [打印本页]

作者: 独行侠    时间: 2009-11-12 22:29
标题: RTAB横版的齐时战斗问题
本帖最后由 独行侠 于 2009-11-23 13:05 编辑

我用的是站上我爱龙修改的RTAB横版战斗脚本,我在将其设置为齐时战斗时出现了一点问题。按照柳柳的教学我把位于核心战斗脚本的update_phase4_step4定义的for循环内容(也就是显示挨打动画的部分)剪切到update_phase4_step3里面完成修改,但是在RTAB连击+连击数-计算部分里面也有类似的内容,但是差别比较大。在连击计算部分里面没有update_phase4_step3,但是有update_phase4_step4,也有一个类似的for循环,如下:
  1. def update_phase4_step4(battler)
  2.     # カメラ設定
  3.     if battler.target[0].is_a?(Game_Enemy) and battler.anime1 != 0
  4.       camera_set(battler)
  5.     end
  6.     # 対象側アニメーション
  7.     for target in battler.target
  8.       target.animation.push([battler.anime2,
  9.                                           (target.damage[battler] != "Miss")])
  10.       unless battler.anime2 == 0
  11.         battler.wait = 2 * target.total_damage[battler][0][6] - 1 +
  12.           Graphics.frame_count % 2
  13.       end
  14.     end
  15.     # ステップ 5 に移行
  16.     battler.phase = 5
  17.   end
复制代码
我想第三部分的循环大概是被我爱龙前辈给删掉了吧。因为在大概58行左右的位置有
  1. case battler.phase
  2.       when 1
  3.         update_phase4_step1(battler)
  4.       when 2
  5.         update_phase4_step2(battler)
  6.       when 3
  7.         update_phase4_step3(battler)
  8.       when 4
  9.         update_phase4_step4(battler)
  10.       when 5
  11.         update_phase4_step5(battler)
  12.       when 6
  13.         update_phase4_step6(battler)
  14.       end
复制代码
可以看到里面是有step3 的。于是我就把第四部分的for循环内容随便剪切到它前面那一部分中去了,变成:
  1. #--------------------------------------------------------------------------
  2.   # ● アイテムアクション 結果作成
  3.   #--------------------------------------------------------------------------
  4.   def make_item_action_result(battler)
  5.     # アイテムを取得
  6.     @item = $data_items[battler.current_action.item_id]
  7.     # アイテムの効果を適用
  8.     for target in battler.target
  9.       target.item_effect(@item, battler)
  10.     end
  11.     for target in battler.target
  12.       target.animation.push([battler.anime2,
  13.                                           (target.damage[battler] != "Miss")])
  14.       unless battler.anime2 == 0
  15.         battler.wait = 2 * target.total_damage[battler][0][6] - 1 +
  16.           Graphics.frame_count % 2
  17.       end
  18.     end
  19.   end
复制代码
大概是在570行左右。战斗动画是没有问题了,就这样过了几个月……直到刚才,我在使用物品时出现了错误。我在检查后发现是这个问题,于是直接把那段for循环删除了。暂时来看没有问题,但是我想问删除了这一段会不会带来别的影响啊?比如计算时会有什么失误?我需不需要把step3给加上然后再改step4?因为我是从Sherryx的整合系统中找到的这个横版战斗脚本,所以没有仔细看过我爱龙的修改版本,应该也不是齐时战斗的吧。我想问一下关于这个有没有完美的修改方案?谢谢!因为RTAB系列的都太长,所以我附上一个工程。希望能得到帮助!
Project2.rar (269 KB, 下载次数: 182)
作者: kakarot    时间: 2009-11-13 00:03
本帖最后由 kakarot 于 2009-11-13 00:09 编辑

咱的印象中这个和LZ先前删的for循环不相干,LZ可以拿我爱龙前辈的原工程试试,使用滋补剂MS照样会脚本报错,所以建议LZ直接拿66饭前辈的最新版RTAB改成横版的吧,把镜头缩放关掉就好了,传送门附上:
http://rpg.blue/web/index.php?doc-view-4072
作者: 独行侠    时间: 2009-11-13 16:57
顶一下。
作者: 独行侠    时间: 2009-11-21 18:34
再顶……请问是否有人能回答这个问题哈?
作者: RPG-XP    时间: 2009-12-25 17:59
第三部分的循环没被删掉,本来就没有。

要想保留连击计算,又要用齐时战斗,可参照下文:

http://rpgjstl.uueasy.com/index.php




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1