#============================================================================== # ■ RGSS3 歩行/足踏みアニメ加速 Ver1.01 by 星潟 #------------------------------------------------------------------------------ # 歩行/足踏みアニメを加速させます。 # 処理としては、歩行/足踏みアニメは移動速度に依存して速度が決まる為 # 歩行/足踏みアニメの処理を行う際のみ移動速度の判定に補正を加えます。 # ある程度を超えると毎フレーム足踏みが発生する為、程々に。 # # 設定値は1〜4程度で十分だと思います。 # ちなみに負の値も指定できます。 #============================================================================== # イベントの名前欄に記述。 #------------------------------------------------------------------------------ # # # このイベントは歩行/足踏みアニメの速度が1段階上の移動速度の物になります。 #------------------------------------------------------------------------------ # # # このイベントは歩行/足踏みアニメの速度が2段階上の移動速度の物になります。 #============================================================================== # イベントコマンドのスクリプトで記述。 #------------------------------------------------------------------------------ # character_rms_change(-1,1) # # プレイヤーの歩行/足踏みアニメの速度が1段階上の移動速度の物になります。 #------------------------------------------------------------------------------ # character_rms_change(0,2) # # 実行したイベントの歩行/足踏みアニメの速度が2段階上の移動速度の物になります。 #------------------------------------------------------------------------------ # character_rms_change(2,1) # # イベントID2の歩行/足踏みアニメの速度が1段階上の移動速度の物になります。 #------------------------------------------------------------------------------ # character_rms_reset(1) # # イベントID1の歩行/足踏みアニメの速度が # イベントコマンドのスクリプトで加速させられていた場合 # この変更を無効化し、通常の歩行/足踏みアニメの速度になります。 #============================================================================== module AnimeCountRMSChange #基本足踏み加速値の設定用キーワードを指定します。 Word = "StA" end class Game_Interpreter #-------------------------------------------------------------------------- # 足踏み加速値強制変更 #-------------------------------------------------------------------------- def character_rms_change(id,value) c = get_character(id) return unless c c.anime_count_rms_change_forcing = value end #-------------------------------------------------------------------------- # 足踏み加速値強制変更無効化 #-------------------------------------------------------------------------- def character_rms_reset(id) c = get_character(id) return unless c c.anime_count_rms_change_forcing = nil end end class Game_CharacterBase attr_accessor :anime_count_rms_change_forcing #-------------------------------------------------------------------------- # 歩行/足踏みアニメの更新 #-------------------------------------------------------------------------- alias update_animation_anime_count_rms_change update_animation def update_animation @anime_count_rms_change = anime_count_rms_change update_animation_anime_count_rms_change @anime_count_rms_change = nil end #-------------------------------------------------------------------------- # 足踏み加速値 #-------------------------------------------------------------------------- def anime_count_rms_change @anime_count_rms_change_forcing ? @anime_count_rms_change_forcing : base_anime_count_rms_change end #-------------------------------------------------------------------------- # 基本足踏み加速値 #-------------------------------------------------------------------------- def base_anime_count_rms_change 0 end #-------------------------------------------------------------------------- # 移動速度の取得 #-------------------------------------------------------------------------- alias real_move_speed_anime_count_rms_change real_move_speed def real_move_speed r = real_move_speed_anime_count_rms_change r += @anime_count_rms_change if @anime_count_rms_change && @anime_count_rms_change != 0 r end end class Game_Event < Game_Character #-------------------------------------------------------------------------- # 基本足踏み加速値 #-------------------------------------------------------------------------- def base_anime_count_rms_change @event.anime_count_rms_change_forcing end #-------------------------------------------------------------------------- # イベントページの設定をセットアップ #-------------------------------------------------------------------------- alias setup_page_settings_anime_count_rms_change setup_page_settings def setup_page_settings setup_page_settings_anime_count_rms_change @anime_count_rms_change_forcing = nil end end class RPG::Event #-------------------------------------------------------------------------- # 基本足踏み加速値 #-------------------------------------------------------------------------- def anime_count_rms_change_forcing /<#{AnimeCountRMSChange::Word}[::](\S+)>/ =~ name ? $1.to_i : 0 end end