赞 | 167 |
VIP | 6 |
好人卡 | 208 |
积分 | 225 |
经验 | 137153 |
最后登录 | 2025-4-1 |
在线时间 | 8598 小时 |
Lv5.捕梦者
- 梦石
- 0
- 星屑
- 22461
- 在线时间
- 8598 小时
- 注册时间
- 2011-12-31
- 帖子
- 3364
|
我没用過
連続アニメーション
http://mitsu-evo.6.ql.bz/RGSS3_06.html
使用方法
スキルのメモ欄に「<連続アニメ:10,20,30>」と記入すると
指定スキル使用時に通常設定のアニメーション後に
アニメーションIDの10番・20番・30番を表示する。
通常攻撃と同じアニメは「-1」を入れて下さい。
スキルのメモ欄に「<使用者アニメ:10,20,30>」と記入すると
指定スキル使用前にスキル使用バトラーにアニメーションを表示します。
連続アニメと同じくいくらでも連続して表示します。
ただし、通常攻撃と同じアニメ指定は出来ません。- #==============================================================================
- # ☆VXAce RGSS3 「連続アニメーション」☆
- # EnDlEss DREamER
- # URL:http://mitsu-evo.6.ql.bz/
- # 製作者 mitsu-evo
- # Last:2012/1/20
- # スキルで設定個数分のアニメーションを表示する
- # ▼ バトルレイアウト変更よりも下に。
- #==============================================================================
- =begin
- 使用方法
-
- スキルのメモ欄に「<連続アニメ:10,20,30>」と記入すると
- 指定スキル使用時に通常設定のアニメーション後に
- アニメーションIDの10番・20番・30番を表示する。
- 通常攻撃と同じアニメは「-1」を入れて下さい。
-
- スキルのメモ欄に「<使用者アニメ:10,20,30>」と記入すると
- 指定スキル使用前にスキル使用バトラーにアニメーションを表示します。
- 連続アニメと同じくいくらでも連続して表示します。
- ただし、通常攻撃と同じアニメ指定は出来ません。
-
- =end
- $ed_rgss3 = {} if $ed_rgss3 == nil
- $ed_rgss3["ed_continuity_anime"] = true
- COUNTINUITY_ANIME_MEMO = "連続アニメ" # 連続アニメ用スキルのメモ欄指定文字
- SKILL_USER_ANIME_MEMO = "使用者アニメ" # スキル使用者アニメ用スキルのメモ欄指定文字
- #==============================================================================
- # ■ Scene_Battle
- #------------------------------------------------------------------------------
- # バトル画面の処理を行うクラスです。
- #==============================================================================
- class Scene_Battle < Scene_Base
-
- #--------------------------------------------------------------------------
- # ● スキルアニメのメモ欄取得
- #--------------------------------------------------------------------------
- def skill_anime_memo(skill)
- skill_note = []
- skill_note2 = []
- a = skill.note.scan(/<#{COUNTINUITY_ANIME_MEMO}[::](-?\d+(?:[ ]*,[ ]*-?\d+)*)>/)
- a.flatten!
- # 連続アニメ
- unless a == [] and a.empty?
- $1.scan(/-?\d+/).each { |num|
- skill_note.push(num.to_i)}
- @skill_continuity_anime = skill_note
- else
- @skill_continuity_anime = []
- end
- b = skill.note.scan(/<#{SKILL_USER_ANIME_MEMO}[::](-?\d+(?:[ ]*,[ ]*-?\d+)*)>/)
- b.flatten!
- # スキル使用者アニメ
- unless b == [] and b.empty?
- $1.scan(/-?\d+/).each { |num|
- skill_note2.push(num.to_i)}
- @skill_user_anime = skill_note2
- else
- @skill_user_anime = []
- end
- end
- #--------------------------------------------------------------------------
- # ● 戦闘行動の実行 : スキル
- #--------------------------------------------------------------------------
- alias ed_continuity_anime_execute_action execute_action
- def execute_action
- item = @subject.current_action.item
- skill_anime_memo(item)
- ed_continuity_anime_execute_action
- end
- #--------------------------------------------------------------------------
- # ● スキル使用者アニメーションの表示
- # targets : 対象者の配列
- # animation_id : アニメーション ID (-1: 通常攻撃と同じ)
- #--------------------------------------------------------------------------
- def befor_skill_display_animation
- unless @skill_user_anime == nil or @skill_user_anime == []
- # スキル使用者アニメの場合
- for anime in @skill_user_anime
- if anime > 0
- # targets はバトラーを格納する配列なので、一人の場合は二重にする。
- battler = []
- battler << @subject
- # mirror は アクターなら反転無し。敵なら反転有り。
- if $ed_rgss3["ed_battle_scene"]
- if @subject.is_a?(Game_Enemy)
- # 敵のバックアタック:右側に居る場合 ? 反転なし : 反転有り
- mirror = @subject.back_attack? ? false : true
- else
- # 味方のバックアタック:左側に居る場合 ? 反転あり : 反転なし
- mirror = @subject.back_attack? ? true : false
- end
- else
- # 敵の場合は反転アニメ。
- mirror = @subject.is_a?(Game_Enemy) ? true : false
- end
- show_normal_animation(battler, anime, mirror)
- wait_for_animation
- end
- end
- @skill_user_anime = []
- end
- end
- #--------------------------------------------------------------------------
- # ● アニメーションの表示
- # targets : 対象者の配列
- # animation_id : アニメーション ID (-1: 通常攻撃と同じ)
- #--------------------------------------------------------------------------
- alias ed_continuity_anime_show_animation show_animation
- def show_animation(targets, animation_id)
- # バトルレイアウト変更:extensionが導入されていないならここで処理。
- befor_skill_display_animation unless $ed_rgss3["ed_battle_extension"]
- unless @skill_continuity_anime == nil or @skill_continuity_anime == []
- # 連続アニメの場合
- ed_continuity_anime_show_animation(targets, animation_id)
- for anime in @skill_continuity_anime
- if anime < 0
- show_attack_animation(targets)
- else
- ed_continuity_anime_show_animation(targets, anime)
- end
- end
- @skill_continuity_anime = []
- else
- # 通常アニメの場合
- ed_continuity_anime_show_animation(targets, animation_id)
- end
- end
- end
复制代码 |
评分
-
查看全部评分
|