じ☆ve冰风 发表于 2026-7-10 18:31:05

Dash and Walking speed plus

Ruby:       
=begin===============================================================================Dash and Walking speed plus (by Zero_G)Version: RGSS================================================================================= Description ==This script will add a dashing feature and modifying the default walking(and dashing speed) of the main character.Speed during events will follow the game engine defaultsSpeed-Slow: 3-Normal: 4-Fast: 5== Terms of Use ==- Free for use in non-commercial projects with credits- Free for use in commercial projects- Please provide credits to Zero_G== Credits ==-This was based on a japanese script that I couldn't find the authorEvent functionality was added by me == Changelog ==v1.1 - Changed update_move to Game_Player, so change of speed is only on player   and not on NPCs== Usage ==Just add the plugin.-------------------------------------------------------------------------------=endmodule ZERO    MOVE_SPEED = 5    DASH_KEY = Input::Aend$duringEvent = false$dashing = falseclass Game_Character    alias dash_force_move_route force_move_route    def force_move_route(move_route)      $duringEvent = true      dash_force_move_route(move_route)    endendclass Game_Player < Game_Character    # Override update_move    def update_move      # added condition      if $duringEvent            distance = 2 ** @move_speed      else            if $dashing                distance = 2 ** (ZERO::MOVE_SPEED + 1)            else                distance = 2 ** ZERO::MOVE_SPEED            end      end      # Rest is original code      if @y * 128 > @real_y            @real_y = [@real_y + distance, @y * 128].min      end      if @x * 128 < @real_x            @real_x = [@real_x - distance, @x * 128].max      end      if @x * 128 > @real_x            @real_x = [@real_x + distance, @x * 128].min      end      if @y * 128 < @real_y            @real_y = [@real_y - distance, @y * 128].max      end      if @walk_anime            @anime_count += 1.5      elsif @step_anime            @anime_count += 1      end    end   # Overwrite update    def update      # Add dashing      $dashing = false      if Input.press?(ZERO::DASH_KEY)            $dashing = true      end               last_moving = moving?      unless moving? or $game_system.map_interpreter.running? or               @move_route_forcing or $game_temp.message_window_showing          case Input.dir4          when 2            $duringEvent = false # Moving by input presses            move_down          when 4            $duringEvent = false            move_left          when 6            $duringEvent = false            move_right          when 8            $duringEvent = false            move_up          end      end      # Rest is original code      last_real_x = @real_x      last_real_y = @real_y      super      if @real_y > last_real_y and @real_y - $game_map.display_y > CENTER_Y          $game_map.scroll_down(@real_y - last_real_y)      end      if @real_x < last_real_x and @real_x - $game_map.display_x < CENTER_X          $game_map.scroll_left(last_real_x - @real_x)      end      if @real_x > last_real_x and @real_x - $game_map.display_x > CENTER_X          $game_map.scroll_right(@real_x - last_real_x)      end      if @real_y < last_real_y and @real_y - $game_map.display_y < CENTER_Y          $game_map.scroll_up(last_real_y - @real_y)      end      unless moving?          if last_moving            result = check_event_trigger_here()            if result == false            unless $DEBUG and Input.press?(Input::CTRL)                if @encounter_count > 0                  @encounter_count -= 1                end            end            end          end          if Input.trigger?(Input::C)            check_event_trigger_here()            check_event_trigger_there()          end      end    endend




本贴来自国际rpgmaker官方论坛作者:Zero_G处,因国际论坛即将永久关站,为了存档多年珍贵资料,署名转载到本论坛存档,由于官方帖子为英文原帖,需要中文翻译请点击论坛顶部切换语言为中文就可以将帖子翻译成中文浏览,方便大家随时查看,原文地址:https://forums.rpgmakerweb.com/threads/dash-and-walking-speed-plus.127066/
页: [1]
查看完整版本: Dash and Walking speed plus