クリック入力の範囲(質問掲示板)
投稿: tomato
投稿:2012/08/11 09:37:11(最新:2012/08/11 14:57:11)
ノベルゲーム制作中です。
画面内にクリックで反応するボタンを設置したいなと思っているのですが、
マウス入力の範囲を設定する方法がわかりません。
具体的に申しますと、
getMousePosition()
でクリック判定を求めた時に、
X座標700
Y座標0
の位置に
タテヨコ90・90
のボタンを設置したいのです。
いまだスクリプトの上っ面を撫でるばかりの知識しかなくお恥ずかしいのですが、がんばって理解いたしますので、どなたかお知恵をお貸しください。
ツイート
画面内にクリックで反応するボタンを設置したいなと思っているのですが、
マウス入力の範囲を設定する方法がわかりません。
具体的に申しますと、
getMousePosition()
でクリック判定を求めた時に、
X座標700
Y座標0
の位置に
タテヨコ90・90
のボタンを設置したいのです。
いまだスクリプトの上っ面を撫でるばかりの知識しかなくお恥ずかしいのですが、がんばって理解いたしますので、どなたかお知恵をお貸しください。
コメントする
コメントするには、ログインする必要があります。
コメント一覧
理解した後のお話。
・マウス位置がどこなのかは常に更新したいけど、最初にキー操作に入ったときに「配列じゃないよ」て怒られない為の仕込み
・設置したつもりのボタンを押す、という事
をまとめるとこんな感じに。
・マウス位置がどこなのかは常に更新したいけど、最初にキー操作に入ったときに「配列じゃないよ」て怒られない為の仕込み
・設置したつもりのボタンを押す、という事
をまとめるとこんな感じに。
#マウスカーソル位置取得用変数(p[0],p[1]) p=createArray() p[0]=400; p[1]=300 button=false #カーソルがボタンの上にあるかどうか osu=false #ボタンを押したかどうか startInput() #キー操作ココから key=true while key while hasInput() takeInput() if isMouseMove() p=getMousePosition() elsif isMouseDown() && button osu=true elsif isKeyUp("ESC") key=false end end #hasInput()ループ終 if 700<p[0] && p[0]<790 && 0<p[1] && p[1]<90 button=true else button=false end if osu osu=false #ボタンを押していた場合の処理をこの辺に書く end waitTime(20) end #keyループ終 endInput() #キー操作ココまで goBadEnding()
皆様ありがとうございます!
>aoihikawaさん
ありがとうございます、戻り値はそういう風に書くんですね!
独学ではおそらく半年かかってもたどり着かなかったと思うので、やはりここで聞いて正解でした。
ノベルゲームを作るのは初めてで、画像の置き方など分からない所も多々あり、実はaoihikawaさんのブログ講座にしばしばお世話になっております。重ねて御礼申し上げます。
>rurun9さん
いつもお世話になっております!
躓くであろう所を、あらかじめ補足してくださるとは(あなたが神か)!
wikiと、類似内容の質問掲示板のスレットは目を通しながら、スクリプトを書いているのですが、少しゲームに合うように変更を加えただけでエラーの嵐に見舞われるので、こうしたお心遣いは本当に助かります。
ゲームが出来ましたら、また遊んでやってくださいまし。
ありがとうございました。