- 注册时间
- 2005-6-23
- 最后登录
- 2005-9-7
⑥精研
- 积分
- 1737
|
脚本来源:http://naramura.kdn.ne.jp/
效果说明:角色各方向站立时不是呆呆的站在那里,而是使用行走图第一列的动作(走路时不用第一列)
使用方法:将行走图第一列的动作改成你想要的站立姿势(比如叉着腰抱着手),脚本插入在DEBUG之前
冲突:没遇到,没道理会有吧……
- <PRE>class Game_Character
- #--------------------------------------------------------------------------
- # ● オブジェクト初期化
- #--------------------------------------------------------------------------
- alias walk_initialize initialize
- def initialize
- walk_initialize
- @pattern_walk = [1,2,3,2] # 歩行パターン配列
- @pattern_walkstep = 0 # 歩行パターン
- end
- #--------------------------------------------------------------------------
- # ● フレーム更新
- #--------------------------------------------------------------------------
- def update
- # ジャンプ中、移動中、停止中で分岐
- if jumping?
- update_jump
- elsif moving?
- update_move
- else
- update_stop
- end
- # アニメカウントが最大値を超えた場合
- # ※最大値は、基本値 18 から移動速度 * 1 を引いた値
- if @anime_count > 18 - @move_speed * 2
- # 停止時アニメが OFF かつ 停止中の場合
- if not @step_anime and @stop_count > 0
- # パターンをオリジナルに戻す
- @pattern = @original_pattern
- # 停止時アニメが ON または 移動中の場合
- else
- # パターンを更新 #書き換え:停止時と歩行時を分ける
- @pattern_walkstep += 1
- if @pattern_walkstep > 4
- @pattern_walkstep = 1
- end
- @pattern = @pattern_walk[@pattern_walkstep-1]
- # ここまで
- end
- # アニメカウントをクリア
- @anime_count = 0
- end
- # ウェイト中の場合
- if @wait_count > 0
- # ウェイトカウントを減らす
- @wait_count -= 1
- return
- end
- # 移動ルート強制中の場合
- if @move_route_forcing
- # カスタム移動
- move_type_custom
- return
- end
- # イベント実行待機中またはロック状態の場合
- if @starting or lock?
- # 自律移動はしない
- return
- end
- # 停止カウントが一定の値 (移動頻度から算出) を超えた場合
- if @stop_count > (40 - @move_frequency * 2) * (6 - @move_frequency)
- # 移動タイプで分岐
- case @move_type
- when 1 # ランダム
- move_type_random
- when 2 # 近づく
- move_type_toward_player
- when 3 # カスタム
- move_type_custom
- end
- end
- end
- end
复制代码 </PRE> |
|