http://beauty.geocities.jp/seijings137/mirage17/magineo.zip
タイトル通りHSP3dishのミニゲームを作成中ですが、ゲームをスタート
させて、移動する魔法陣をクリックしても、きっちりスコアが増えてくれません。
どうすれば、マウスと魔法陣が重なっている時にクリックすれば、スコアが伸びる
ようになるのか、教えてください。HSP3dishの書籍などを参考にして、作成
しています。画像は、自作したマジカルクライシスから使っています。
プログラムの根本的な処理の仕方や、awaitなどの使い方にも問題はあると思います。
皆様教えてください。よろしくお願いします。
ソースは下記から。
; ; キャラクター表示 ; #include "hsp3dish.as" #packopt xsize 320 #packopt ysize 480 #pack "backd.png" #pack "magicri.png" #pack "shot.png" title "magical crisis neo" randomize *title_start cls ; 画面の初期化を行なう celload "magicri.png",1 ; 素材読み込み pos 60,300 ; 座標指定 objsize 200,30 ; ボタンのサイズを指定 button "START",*start ; ボタンを設置 *title_loop redraw 0 ; 描画開始 pos 0,0:gcopy 1,0,0,320,480 ; 背景画像を表示 gosub *putscore ; スコア表示 redraw 1 ; 描画終了 await 16 ; 待ち時間(1/60秒) goto *title_loop ; ループさせる *start cls ; 画面の初期化を行なう celload "shot.png",1 ; 素材読み込み celload "backd.png",2; 素材読み込み celdiv 1,128,128 ; キャラクターのサイズを指定 mx=0:my=0:key=0 clx=-999:cly=-999 ; クリック座標を初期化 *main redraw 0 ; 描画開始 pos 0,0:gcopy 2,0,0,320,480 ; 背景画像を表示 //color 0,255,0:boxf ; 画面クリア gosub *putscore ; スコア表示 gosub *maction ; 敵行動ルーチン stick key if key&256 { //clx=mousex ; 表示X座標を設定 //cly=mousey ; 表示Y座標を設定 // mmplay 1 ; サウンド再生 if ((mousex>=mx) && (mousex<mx+128)) && ((mousey>=my) && (mousey<my+128)){ score++ ; スコア表示 } } // pos 128,208 ; 表示座標を指定 gmode 2,128,128 celput 1,0 ; キャラクターを表示 redraw 1 ; 描画終了 await 800 ; 待ち時間(0.8秒) goto *main ; ループさせる *putscore ; スコア表示を行なう ; color 0,0,255 pos 0,0:mes "SCORE "+score return *maction ; 敵行動ルーチン ; mx=rnd(320-64):my=rnd(480-64) //await 300 pos mx,my return