; Picture Feedback ; copyleft 2017-07-12 sugiura@nagoya-u.jp ; ボタンを押したら、画像を表示する。 ; 数秒待って、元に戻す。 ;----------------------------------------------------------------------------- ;------------------------------------------------------------------------------ ; 背景画像 buffer 1 ; 画像を事前に読み込んでおく場所の番号 picload "fuji3.jpg" ; 画像を読み込んで、bufferに入れておく ;---------------------------------- ; 使う画像に番号をつけていく buffer 2 picload "rose2.jpg" buffer 3 picload "saboten2.jpg" buffer 4 picload "cups2.jpg" ;------------------------------------------------------------------------------- screen 0, 640, 480 ; ウインドウの初期化 0番、ウインドウの大きさの指定 ; bufferを使って画像を読み込んだときは、明示的にウィンドウを指定する ;------------------------------------------ *main ; 背景画像を表示(スクリーンの大きさと背景画像のサイズを同じにしてある) ; 背景に画像を配置しないのであればこの部分不要。 gmode 0, 640, 480 ; 表示モードと大きさ指定 pos 0,0 ; 左上角から、 gcopy 1, 0, 0;, 640, 480 ; 1番の画像(buffer 1)を表示 ;------------------------------------------ ; ボタンの配置 pos 200, 400 button gosub "Rose", *rose pos 300, 400 button gosub "Saboten", *saboten pos 400, 400 button gosub "Cups", *cups ;------------------------------------------------------------------ ; 下に、その他のボタンを配置 *Quit pos 580, 460 button "Quit", *owari ;------------------------------------------------------------------------- stop *owari end ; -------------------------------- sub --------------------------------------- *rose pos 200, 50 ; 画像を配置する位置 gmode 0, 273, 262 ; モード0で通常画像コピー, 画像の大きさをx, y で gcopy 2, 0, 0;, 273, 262 ; 画像の番号(buffer 2), その画像の左上の座標, (大きさを指定できる) ; 大きさの指定を省略したらgmodeで指定した大きさとなる wait 200 gcopy 1, 200, 50;, 273, 262 ; 元の背景画像(buffer 1)に戻す ; 左上は、上のposで開始点を指定したところ, (大きさを指定できる) ; 大きさの指定を省略したらgmodeで指定した大きさとなる return *saboten pos 300, 50 gmode 0, 208, 212 ; 画像の大きさ指定 gcopy 3, 0, 0 ; 3番の画像 wait 200 gcopy 1, 300, 50 ; 元の画像(1番)に戻す return *cups pos 400, 50 gmode 0, 190, 126 gcopy 4, 0, 0 wait 200 gcopy 1, 400, 50 return ; End of Script