トップページ > 過去ログ > 記事閲覧
マウス関連
名前:メルボルン 日時: 2013/04/02 14:38

再び失礼します。 現在、DXライブラリを使ってガンシューティングっぽいものを作っております。 簡単に言えば、マウスでカーソルを動かし、2D画面上の敵をポチポチと撃っていくという簡単なものなのですが、 (1 カーソルグラフィックを変えることはできるのでしょうか? (2 マウスの左ボタンを押したままだと命令が実行されないようにするにはどうすれば・・・!? ・・・という二つの問題が生じ、困っています。質問が多くて面倒だとは思いますが、どうかやり方を教えて下さいまし。

Page: 1 |

Re: マウス関連 ( No.1 )
名前:Will 日時:2013/04/02 17:29

1.マウスカーソルを非表示にしてマウスの座標に画像を表示すれば出来ます。 2.ボタンを押して離した時に命令を実行すればできます。
Re: マウス関連 ( No.2 )
名前:メルボルン 日時:2013/04/02 18:33

ありがとうございます。 できれば、2のやり方というものを、もう少し詳しく解説していただければと思います。 ↓私の作ったプログラムを抜粋。これでは押したまま敵の画像に合わせても“撃った”ことになってしまう。 int MouseX,MouseY,Luck,Shot; for(int i=0;i<50;i++){ if(Edata[i].flag == 1){ GetMousePoint(&MouseX,&MouseY); Mouse.x = MouseX; Mouse.y = MouseY; if((AtariHantei(Edata[i],Mouse))&&(GetMouseInput() & MOUSE_INPUT_LEFT )!=0){ Edata[i].flag = 0; Edata[i].ghandle = 0; Edata[i].Atk_Flg = 0; Max ++; P++; Killing += 100; Luck = GetRand(30); if(Luck == 1){ Idata[i].x = Edata[i].x; Idata[i].y = Edata[i].y; Idata[i].flag = 1; } } } }
Re: マウス関連 ( No.3 )
名前:Will 日時:2013/04/03 10:32

コードそのものを書くとあなたの力にならないと思いますので、日本語部分はあなたがプログラムにしてください。 if (変数==false && 左ボタンが押されている) { 変数=true; } else if (変数==true && 左ボタンは押していない) { 変数=false; if (当たり判定) { 何かの処理 } } このロジックの場合、離した時にのみ当たり判定を行なっています。 ただし、「敵の居ないところでボタンを押して、敵のいるところで離す」でも当たり判定が行われます。 (普通はそんなことしないと思いますが) 敵がいる所でクリックした(押して離した)場合のみ、ということであればもっと複雑な制御が必要です。

Page: 1 |