独学ツクールブログ

ツクールでのオリジナル作品の話を中心に創作関係の徒然な語り。

<< RGSS奮闘記26:アイテムを分類する8 | main | RGSS奮闘記28:アイテムを分類する10 >>

[ - ] スポンサーサイト

一定期間更新がないため広告を表示しています

| 2018.05.23 Wednesday | - | - |

[ RGSS奮闘記 ] RGSS奮闘記27:アイテムを分類する9

〜前回のあらすじ〜
ヘルプ!あにっさばーでー


今回はmainメソッド後編とupdateメソッドをば。をば。



  Graphics.transition
  loop do
    Graphics.update
    Input.update
    update
    if $scene != self
      break
    end
  end
  Graphics.freeze
  @help_window.dispose
  @item_windows.each {|window|
    window.dispose
  }
  @target_window.dispose
  @category_window.dispose
end
Graphics.transitionからGraphics.freezeまでは前回述べたとおりヘルプにもある基本構造なので省略。
続くdisposeメソッド連打はウィンドウの解放である。ループを抜けこの位置を実行するのはシーン終了時なので、すべてのウィンドウを解放、つまりもう使わないと宣言する。これを忘れるとシーンを抜けてもウィンドウが残ってしまうので注意(体験談)。


さてupdateメソッドに移ろう。
def update
  @help_window.update
  @current_item_window.update
  @target_window.update
  @category_window.update
  case
  when @category_window.active
    update_category
  when @current_item_window.active
    update_item
  when @target_window.active
    update_target
  end
end
まずはそれぞれのウィンドウのupdateメソッドで表示状態を更新する。
続いて、アクティブウィンドウ用の更新メソッドを呼ぶ。これはキー入力を監視してアクティブウィンドウを切り替えるためのものだ。ここで、caseの後ろの式が省略されていることに注意。こう書くと、whenに書かれた式のうち最初にtrueが返ったものの後の処理を実行する。


これでupdateメソッドは終了。
次回からは今回の最後に出てきたみっつの更新メソッドを解説していく。


タグ:[Ruby] [RGSS] [素材] [Scene_Item]

| 2011.02.03 Thursday 15:04 | comments(0) | trackbacks(0) |

[ - ] スポンサーサイト

| 2018.05.23 Wednesday 15:04 | - | - |

コメント

コメントする






この記事のトラックバックURL

トラックバック

このページの先頭へ▲

Twitter

WebClap

Blogram

ブログランキングならblogram

calendar

S M T W T F S
  12345
6789101112
13141516171819
20212223242526
2728293031  
<< October 2019 >>

categories

archives

Amazon

selected entries

recent comment

recent trackback

recent ranking

links

search this site.

sponsored links

others

mobile

qrcode

powered

無料ブログ作成サービス JUGEM