Project1

标题: [已解决]普通攻击动画和连击动画,如何用脚本改? [打印本页]

作者: miantouchi    时间: 2019-7-6 15:06
标题: [已解决]普通攻击动画和连击动画,如何用脚本改?
本帖最后由 miantouchi 于 2019-7-16 14:34 编辑

打个比方,我方人物普通攻击的情况下有4个动作总共25帧,但是有一定几率是连击,就是6个动作总共50帧,如何通过脚本改下。
比如武器设置动画地方只能选择一个动画,如何让系统判定下,可以使用系统的会心一击,或者熟练度判断都行。
普通攻击播放123/124动画。
连击情况播放125/126动画。

1.png (48.9 KB, 下载次数: 8)

1.png

2.png (49.02 KB, 下载次数: 10)

2.png

3.png (43.17 KB, 下载次数: 13)

3.png

作者: soulsaga    时间: 2019-7-6 15:25
本帖最后由 soulsaga 于 2019-7-6 16:00 编辑

RUBY 代码复制
  1. #--------------------------------------------------------------------------
  2.   # ● 生成基本行动结果
  3.   #--------------------------------------------------------------------------
  4.   def make_basic_action_result
  5.     # 攻击的情况下
  6.     if @active_battler.current_action.basic == 0
  7.       # 设置攻击 ID
  8.       @animation1_id = @active_battler.animation1_id
  9.       @animation2_id = @active_battler.animation2_id
  10.       # 行动方的战斗者是敌人的情况下
  11.       if @active_battler.is_a?(Game_Enemy)
  12.         if @active_battler.restriction == 3
  13.           target = $game_troop.random_target_enemy
  14.         elsif @active_battler.restriction == 2
  15.           target = $game_party.random_target_actor
  16.         else
  17.           index = @active_battler.current_action.target_index
  18.           target = $game_party.smooth_target_actor(index)
  19.         end
  20.       end
  21.       # 行动方的战斗者是角色的情况下
  22.       if @active_battler.is_a?(Game_Actor)
  23.         if @active_battler.restriction == 3
  24.           target = $game_party.random_target_actor
  25.         elsif @active_battler.restriction == 2
  26.           target = $game_troop.random_target_enemy
  27.         else
  28.           index = @active_battler.current_action.target_index
  29.           target = $game_troop.smooth_target_enemy(index)
  30.         end
  31.       end
  32.       # 设置对像方的战斗者序列
  33.       @target_battlers = [target]
  34.       # 应用通常攻击效果
  35.       for target in @target_battlers
  36.         target.attack_effect(@active_battler)
  37.       end
  38.       return
  39.     end
  40.     # 防御的情况下
  41.     if @active_battler.current_action.basic == 1
  42.       # 帮助窗口显示"防御"
  43.       @help_window.set_text($data_system.words.guard, 1)
  44.       return
  45.     end
  46.     # 逃跑的情况下
  47.     if @active_battler.is_a?(Game_Enemy) and
  48.        @active_battler.current_action.basic == 2
  49.       #  帮助窗口显示"逃跑"
  50.       @help_window.set_text("逃跑", 1)
  51.       # 逃跑
  52.       @active_battler.escape
  53.       return
  54.     end
  55.     # 什么也不做的情况下
  56.     if @active_battler.current_action.basic == 3
  57.       # 清除强制行动对像的战斗者
  58.       $game_temp.forcing_battler = nil
  59.       # 移至步骤 1
  60.       @phase4_step = 1
  61.       return
  62.     end
  63.   end


想怎么改..你自己决定..
作者: miantouchi    时间: 2019-7-16 14:07
我这么做怎么都是灰心一击都是false

11.png (76.72 KB, 下载次数: 10)

11.png





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