game.loading do |loader|
loader.add :window, :system => "window"
loader.add :gui_item, :system => "gui_item"
#読み込む素材を追加します
#参考;https://core.rmake.jp/doc/reference/rmake_common_loader#2_4
loader.add :Icon1, 301
loader.add :Icon2, 302
loader.add :Icon3, 303
loader.add :Icon4, 304
end
game.on_init do
set_window_image :window
set_gui_image :gui_item
scene_change :start_scene
end
#start_scene
scene :start_scene do |scene|
scene.on_init do
speak "今回は画像表示、当たり判定のテストを行いたいと思います"
#時間待ち
wait_time 500
speak("それでは、10秒以内に僕(114)が2014年1月25日現在、Rmakeで使用しているアイコンを、次から選びなさい")
#画像表示 参考;https://core.rmake.jp/doc/reference/rmake_common_scene#2_4
#アイコン1(IconG)
IconG = scene.add :image, :name => :IconG, :texture => :Icon1, :center_position => [400 - 150, 225 - 150] #400は画面の横幅(800)の半分225は画面の縦幅(450)の半分
#アイコン2(IconB)
IconB = scene.add :image, :name => :IconB, :texture => :Icon2, :center_position => [400 + 150, 225 - 150]
#アイコン3(IconP)
IconP = scene.add :image, :name => :IconP, :texture => :Icon3, :center_position => [400 - 150, 225 + 150]
#アイコン4(IconY)
IconY = scene.add :image, :name => :IconY, :texture => :Icon4, :center_position => [400 + 150, 225 + 150]
#ループ用変数
loop = true
#表示文字列設定 参考;https://core.rmake.jp/doc/reference/rmake_common_sprite#23_4
text = scene.text :position => [10, 50]
text.set_text_area_size 160, 300
text.set_font_point_size 32
#イベント
#参考;https://core.rmake.jp/doc/reference/rmake_common_scene#11_4
#IconGを選択した場合
scene.event :IconG, :on_click do
#スプライト削除
text.delete
speak("正解")
loop=false
end
scene.event :IconB, :on_click do
speak("違うよ")
end
scene.event :IconP, :on_click do
speak("違うよ")
end
scene.event :IconY, :on_click do
speak("違うよ")
end
#時間関連 参考;https://core.rmake.jp/doc/reference/mruby/time
time2 = Time.now + 10 # 10秒足す
#ループ
while loop
time = Time.now
time3 = time2 - time
#文字列表示
text.set_text "残り\n #{time3} \n 秒"
if time3 <= 0
loop = false
#文字列表示
text.set_text "残り\n 0 \n 秒"
speak("時間切れ!")
speak("答えは・・・")
#スプライト削除 参考;https://core.rmake.jp/doc/reference/rmake_common_sprite#2_4
IconB.delete #IconBを消す
IconP.delete
IconY.delete
speak("これでした")
end
wait_time 1
end
#スプライト削除
text.delete
IconG.delete
IconB.delete
IconP.delete
IconY.delete
#なんとなくシーン移動
scene_change :last_scene
end
end
#last_scene
scene :last_scene do |scene|
scene.on_init do
speak("それでは次、いってみよー!")
speak("今度は当たり判定のテストです。")
speak("画面をクリック(タップ)しまくって、当たり判定のあるところを探しだしましょう")
#当たり判定の設定 参考;https://core.rmake.jp/doc/reference/rmake_common_scene#4_5
#参考;https://core.rmake.jp/doc/reference/rmake_common_sprite#38_4
s = scene.add :collision, :name => :atari, :center_position => [0, 0]
s.collision :circle, :mode => :center, :position => [rand(800), rand(450)], :radius => 50
scene.event :atari, :on_click do
s.delete
speak("おめでとう!")
speak("当たりです")
speak("終了します…")
# スタートメニューに戻る
game.change_project "start_menu"
end
end
end