查看: 915|回复: 2

[已经解决] 关于按键前冲脚本的修改

  [复制链接]
梦石
3
星屑
6420
在线时间
1131 小时
注册时间
2007-12-26
回帖
914
发表于 2009-10-27 08:54:40 | 显示全部楼层 |阅读模式

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

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

×
以下脚本是实现按D键角色以速度6前冲5格,然后回复速度4,但是我在Interpreter 6中把角色在地图中的行走速度和agi联系起来了,也就是说,角色的agi越高,行走速度也越快,前冲之前的速度就不一定是4了。那么应该如何修改下面的脚本才可以让角色前冲之后回复原来的速度呢?


class Game_Player
  #--------------------------------------------------------------------------
  # ● フレーム更新
  #--------------------------------------------------------------------------
  alias old_update update
  def update
    unless $game_system.map_interpreter.running? or
      @move_route_forcing or $game_temp.message_window_showing
      if Kboard.keyb($R_Key_D) == 1
        if @move_speed != 6
          @move_speed = 6
          move_route = RPG::MoveRoute.new
          move_route.repeat = false
          move_route.list.clear
          move_command = RPG::MoveCommand.new
          move_command.code = @direction / 2
          5.times{move_route.list.push(move_command.clone)}
          move_command.code = 0
          move_route.list.push(move_command)
          force_move_route(move_route)
          @character_name_run = @character_name
          @character_name = @character_name + "rush"
          Audio.se_play("Audio/SE/"+"013-Move01",80,100)
          $game_temp.common_event_id = 51
        end
      else
        if @move_speed != 4
          @move_speed = 4
          @character_name = @character_name_run
        end
      end  
    end
    old_update
    if @move_route_forcing
      if not @move_route.skippable and not moving? and not jumping?
        @move_route_index = @move_route.list.size - 1
        return
      end
    end
  end
end
囡囚囨囚囨図囨囧
梦石
0
星屑
60
在线时间
61 小时
注册时间
2006-9-15
回帖
864
发表于 2009-10-27 10:42:33 | 显示全部楼层
你把那个4换成你的计算公式啊
回复

使用道具 举报

梦石
3
星屑
6420
在线时间
1131 小时
注册时间
2007-12-26
回帖
914
 楼主| 发表于 2009-10-27 10:46:05 | 显示全部楼层
没什么计算公式,我是在Interpreter 6的#增减 EXP下这么写的:
    if $game_party.actors[0].agi > 500
      $game_player.move_speed = 5
    elsif $game_party.actors[0].agi > 400
      $game_player.move_speed = 4.5
    elsif $game_party.actors[0].agi > 300
      $game_player.move_speed = 4
    elsif $game_party.actors[0].agi > 200
      $game_player.move_speed = 3.5
    elsif $game_party.actors[0].agi > 100
      $game_player.move_speed = 3
    elsif $game_party.actors[0].agi > 50
      $game_player.move_speed = 2.5
    else
      $game_player.move_speed = 2
    end
囡囚囨囚囨図囨囧
回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部