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

Project1

 找回密码
 注册会员
搜索

脚本“攻击后执行公共事件”的BUG?

查看数: 2368 | 评论数: 5 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2018-7-9 20:11

正文摘要:

先放出代码。 #============================================================================== # 本脚本来自www.66rpg.com,转载和使用请保留此信息   #============================================= ...

回复

709299008 发表于 2018-7-10 14:13:14
灯笼菜刀王 发表于 2018-7-10 10:00
找到这段

  #--------------------------------------------------------------------------

那个……确实在插件里也找到了这段。
我在脚本里安的插件,相关的应该有RTAB和菜鸟横版两个
RTAB里在相同的位置,加上了这条,但是经测试后发现同样没有作用;
菜鸟横版里则是没有找到对应的代码……
问题是出在了“菜鸟横版”这个插件了吗?

点评

RTAB的话,需要好好研究一下~  发表于 2018-7-10 23:40
是在RTAB上, RTAB不能用默认的方法来做事件。 不懂脚本的话, 两个选择, 1, 放弃一切战斗事件, 2 放弃RTAB脚本。  发表于 2018-7-10 15:13
709299008 发表于 2018-7-10 11:21:32
灯笼菜刀王 发表于 2018-7-10 10:00
找到这段

  #--------------------------------------------------------------------------

呃……我添加上了这一行内容,但是好像没有奏效的样子……

点评

咱给的位置是默认脚本, 你有用插件就要到插件里去加  发表于 2018-7-10 11:29
灯笼菜刀王 发表于 2018-7-10 10:00:43
709299008 发表于 2018-7-9 22:11
那……请教一下,
如果是让(我方角色)普通攻击之后执行某个公共事件的话,可以做到吗? ...

找到这段

  #--------------------------------------------------------------------------
  # ● 生成基本行动结果
  #--------------------------------------------------------------------------
  def make_basic_action_result
    # 攻击的情况下
    if @active_battler.current_action.basic == 0
      # 设置攻击 ID
      @animation1_id = @active_battler.animation1_id
      @animation2_id = @active_battler.animation2_id
      # 行动方的战斗者是敌人的情况下
      if @active_battler.is_a?(Game_Enemy)
        if @active_battler.restriction == 3
          target = $game_troop.random_target_enemy
        elsif @active_battler.restriction == 2
          target = $game_party.random_target_actor
        else
          index = @active_battler.current_action.target_index
          target = $game_party.smooth_target_actor(index)
        end
      end
      # 行动方的战斗者是角色的情况下
      if @active_battler.is_a?(Game_Actor)
        if @active_battler.restriction == 3
          target = $game_party.random_target_actor
        elsif @active_battler.restriction == 2
          target = $game_troop.random_target_enemy
        else
          index = @active_battler.current_action.target_index
          target = $game_troop.smooth_target_enemy(index)
        end
        @common_event_id =  4 #执行4号公共事件
      end
      # 设置对像方的战斗者序列

在这里加上红色部分就可以了, 默认的脚本是在 scene battle4

这个是"我方普通攻击后就执行4号公共事件", 包括"自动攻击敌人, 自动攻击我方" 的情况, 如果想排除这两个异常状态下的普通攻击, 把红色句子和上面的end交换位置就行。

评分

参与人数 2星屑 +100 +1 收起 理由
RyanBern + 100 认可答案
709299008 + 1 明白了,多谢解疑!

查看全部评分

709299008 发表于 2018-7-9 22:11:39
灯笼菜刀王 发表于 2018-7-9 20:39
这个脚本不是"普通攻击后执行公共事件"  而是每次行动(包括敌人)后都执行公共事件~~

脚本很简单 ...

那……请教一下,
如果是让(我方角色)普通攻击之后执行某个公共事件的话,可以做到吗?
灯笼菜刀王 发表于 2018-7-9 20:39:03
这个脚本不是"普通攻击后执行公共事件"  而是每次行动(包括敌人)后都执行公共事件~~

脚本很简单, 并没有什么错误.  不过因为它覆盖了update_phase4, 所以和战斗类插件冲突的可能性很大~

你战斗卡壳的原因估计就是这个
拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

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

GMT+8, 2024-9-21 12:30

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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