スポンサーサイト

 --------
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
カテゴリ :スポンサー広告 トラックバック(-) コメント(-)

顔グラ別枠表示

 2009-07-28
> こんにちわ!はじめまして Rと申します。
突然なのですがこちらのように顔グラを上げるにはどうすればいいでしょうか?
またその状態で右の方に持っていくというのは可能でしょうか?

どーも。はじめまして。
あー、これは素材として作成してないんで、最低限の機能しかないですけど良いですか?
説明するには、ちょっと長いのでスクリプトだけ公開したいと思います。
ホントに自分専用で作ってるんで、ウィンドウは下表示のみ顔グラは左表示のみで構成してます。
一応、他の位置も変更してますけど、チェックはしてません。

右の方に持っていくというのは、右固定?それとも左表示と右表示と両方なのかな?
ウィンドウの位置は、28行目で設定しています。
第1引数の 0 を 416 に変更すると右表示になります。
もし、両方表示にしたいなら reset_window のどこでも良いんで、
@face_window.x = $game_switches[10] ? 416 : 0
もしくは、
@face_window.x = $game_variables[10]
を追加していただければと思います。
上は、10番のスイッチがONの時に右表示になります。
下が、10番のイベント変数の値で位置を決めます。

あ、どこでも良いって言いましたけど、どこでもいいわけじゃなくて、
そうだな、私なら115行目のcase文の上に追加します。


#==============================================================================
# ■ Window_Message
#------------------------------------------------------------------------------
#  文章表示に使うメッセージウィンドウです。
#==============================================================================

class Window_Message < Window_Selectable
  #--------------------------------------------------------------------------
  # ○ オブジェクト初期化
  #--------------------------------------------------------------------------
  alias _cao_initialize_mes initialize
  def initialize
    _cao_initialize_mes
    create_face_window
  end
  #--------------------------------------------------------------------------
  # ○ 解放
  #--------------------------------------------------------------------------
  alias _cao_dispose_mes dispose
  def dispose
    _cao_dispose_mes
    dispose_face_window
  end
  #--------------------------------------------------------------------------
  # ◎ 顔グラウィンドウの作成
  #--------------------------------------------------------------------------
  def create_face_window
    @face_window = Window_Base.new(0, 0, 128, 128)
    @face_window.openness = 0
  end
  #--------------------------------------------------------------------------
  # ◎ 顔グラウィンドウの解放
  #--------------------------------------------------------------------------
  def dispose_face_window
    @face_window.dispose
  end
  #--------------------------------------------------------------------------
  # ◎ 顔グラウィンドウの更新
  #--------------------------------------------------------------------------
  def update_face_window
    @face_window.update
  end
  #--------------------------------------------------------------------------
  # ○ フレーム更新
  #--------------------------------------------------------------------------
  def update
    super
    update_face_window
    update_gold_window
    update_number_input_window
    update_back_sprite
    update_show_fast
    unless @opening or @closing             # ウィンドウの開閉中以外
      if @wait_count > 0                    # 文章内ウェイト中
        @wait_count -= 1
      elsif self.pause                      # 文章送り待機中
        input_pause
      elsif self.active                     # 選択肢入力中
        input_choice
      elsif @number_input_window.visible    # 数値入力中
        input_number
      elsif @text != nil                    # 残りの文章が存在
        update_message                        # メッセージの更新
      elsif continue?                       # 続ける場合
        start_message                         # メッセージの開始
        open                                  # ウィンドウを開く
        $game_message.visible = true
        @face_window.open unless $game_message.face_name.empty?
      else                                  # 続けない場合
        close                                 # ウィンドウを閉じる
        $game_message.visible = @closing
        @face_window.close
      end
    end
  end
  #--------------------------------------------------------------------------
  # ○ 改ページ処理
  #--------------------------------------------------------------------------
  def new_page
    contents.clear
    unless $game_message.face_name.empty?
      name = $game_message.face_name
      index = $game_message.face_index
      @face_window.contents.clear
      @face_window.draw_face(name, index, 2, 2)
    end
    @contents_x = 0
    @contents_y = 0
    @line_count = 0
    @show_fast = false
    @line_show_fast = false
    @pause_skip = false
    contents.font.color = text_color(0)
  end
  #--------------------------------------------------------------------------
  # ○ 改行処理
  #--------------------------------------------------------------------------
  def new_line
    @contents_x = 0
    @contents_y += WLH
    @line_count += 1
    @line_show_fast = false
  end
  #--------------------------------------------------------------------------
  # ○ ウィンドウの背景と位置の設定
  #--------------------------------------------------------------------------
  def reset_window
    @background = $game_message.background
    @position = $game_message.position
    if @background == 0   # 通常ウィンドウ
      self.opacity = 255
    else                  # 背景を暗くする、透明にする
      self.opacity = 0
    end
    case @position
    when 0  # 上
      self.y = 0
      @gold_window.y = 360
      @face_window.y = 128
    when 1  # 中
      self.y = 144
      @gold_window.y = 0
      @face_window.y = 16
    when 2  # 下
      self.y = 288
      @gold_window.y = 0
      @face_window.y = 160
    end
  end
end
コメント




 

 ※ コメント内にURLを含めるには、バッククォート(`)をURLの直前に付け加えてください。


管理人のみ閲覧許可 [?]

トラックバック
トラックバックURL:
http://cacaosoft.blog42.fc2.com/tb.php/283-dfd3fb1e
≪ トップページへこのページの先頭へ  ≫
カレンダー
04 << 2017/05 >> 06
- 1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31 - - -

カテゴリー
最近の記事
02/28 お返事
02/14 お返事
01/21 お返事
01/12 更新情報
11/28 お返事

最近のコメント
03/16 お返事
01/21 お返事
11/30 z座標
11/20 z座標
08/03 お返事

タグクラウド

リンク
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。