- 締切済み
C言語でクリックゲー(脱出ゲームみたいな)を作りたい。(windows
C言語でクリックゲー(脱出ゲームみたいな)を作りたい。(windowsヘッダ利用 まず、私の今の知識は、明解C言語入門編1冊読んだのと、ウィンドウの表示、画像を指定の場所に 張り付ける、キーを押したら値を増やす、矢印ポインタの座標を表示する。ぐらいならできると思います。 画面内のとある場所(画像)をクリックしたら値を返す(別の画像を表示)といったことをしたいのですが どうしたらいいでしょう。 WM_LBUTTONDOWNっていうのを使うとクリックしたかどうかのメッセージはだせるっぽいのですが これを使えばできるのでしょうか?(クリックした座標・・・・・ ゲームプログラミングのサイトや本はいくつかでてますが キーボードのみで操作のゲームの作り方載せてるのが主流?のようで・・・ 暇なときにでも回答してもらえるとうれしいです。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- oresama777
- ベストアンサー率16% (1/6)
関連するQ&A
- C言語 C++ においての画像参照が分からなくて困っています。
C言語やC++で画像を表示するプログラムを 検索エンジン等で調べているのですが、 コンパイルした後で、画像を差し替える事が出来るようにするには、 どうすればいいのか分かりません。 C言語大全500の極意という本は持っているので試しましたが、 ここに書かれてあるのは一度ヘッダーに取り込んでから表示するもので、後から差し替える事が出来ませんでした。
- 締切済み
- C・C++・C#
- java言語で簡単なゲームを作りたい
Java言語の基本を一通り覚えたので、Java言語で簡単なゲームを作って見ようと思いました。フレームを表示して、その中にグーとチョキとパーがあって、どれかをクリックするとランダムに選ばれた相手の手と比較して結果を表示する、みたいなゲームを作りたいのですが、わからないところがあるので教えてほしいところがあります。 ・指定した場所をクリックすると指定した画像が表示されるようにしたい。 ・ランダムに選んだ手と自分の手を同時に表示させるには、全パターン(3×3=9)の画像又は動画を制作するしかないでしょうか?上半分、下半分など別々に表示するのは無理でしょうか。 ・BGMを流したい。 どれでもいいので、それをするためのクラスなど教えてください 回答よろしくお願いします。
- ベストアンサー
- Java
- c言語でできること
c言語は具体的には何ができるのでしょうか ものすごくがんばれば市販のゲームソフトなども作れるようになるのでしょうか というのは 今、僕はc言語のプログラミングを勉強しています コンパイルするとms-dosの黒い画面が表示されますよね。オセロなどのゲームはとても見にくいです。 あのようなゲームではなく、ちゃんと絵があるようなゲームは作れるのでしょうか?? また3Dのゲームはつくれるのでしょうか? 「c言語のゲーム」とググってもありません c言語だけではできなくてdirectxなどがいることは知っています。 プログラミングを学ぶ上でなにか目標ができたら それに向けてがんばれると思うので情報よろしくお願いします。 わかりにくい文章ですいません^^;
- ベストアンサー
- C・C++・C#
- C言語の質問です。
C言語の質問です。 以前質問した、C言語初心者のものです。 以前回答してくださった方、ありがとうございました! 前回の質問とかぶるんですが、質問は、 正方形の画像を円形にひきのばす(歪ませる)というプログラムがなかなか書けません。 どなたか教えてください! 円形にひきのばしたときに、正方形のどの座標がどにに移動してるのかってのを考えてつくりたいのですが。 画像を添付しました。 この画像の意味は、たとえば、正方形の中にある緑の四角(座標)が円のほうの緑の四角(座標)に移動したと考えたときに、添付画像に書いてある公式をつかって処理していくってことなんですが・・・。 それを同じようにすべての座標で処理していって円形に歪ませた画像をつくりあげたいんです。
- 締切済み
- C・C++・C#
- c言語、パチンコリール
c言語とDirectXを使用して、パチンコのリールを作っています。 質問なんですが、図柄の画像が0~9まであったとします。 現在、スプライトを使って左上と右下座標のY座標に値を与えて、画面の上から下まで画像を動かしています。 しかし、9まで行ってもまた画面の上から0を出すことができません。 これをループさせたいのですがどうすればよいでしょうか? 説明内容不足を承知していますので、随時補足していきたいと思いますので、よろしくお願い致します。
- 締切済み
- C・C++・C#
- VC++ のマウス入力
visual c++のAPIでアクションゲームをつくっていてアクションはWM_TIMERに50ミリ秒に設定しておいています。マウスも使いたいのでWM_LBUTTONDOWNで左クリックが押されたフラグを立てるようにしたのですが効かない時があります。 WM_TIMERの処理の最後にフラグをfalseにするようにしています。 WM_LBUTTONDOWNの代わりにWM_TIMERでGetKeyStateでフラグをたてるとちゃんと動きます。 どうすればマウスがちゃんと効くようにできますか? よろしくお願いします。
- ベストアンサー
- C・C++・C#
- C言語についての初心者向けの本を探しています。
C言語についての初心者向けの本を探しています。 C言語・プログラミングなどの知識はないに等しいぐらいです。 最終目標としてはゲームなどをプログラミングしてみたいと思っています。 実際に本屋に言ってみてどれがいいかを探したのですが、 そのような知識のない私のはどれが分かりやすいのかはまったく分かりませんでした。 ネットなどで調べてみた結果、 「猫でも分かるC言語」 「やさしいC」 「明解C言語 入門編」 らへんの本が初心者に向いていると知ったのですが実際はどうなのでしょうか? 実際に呼んだことがある方や、評判を聞いたことのある方はお教えください。 また、このほかにも初心者向けの本がありましたらお教えください。
- 締切済み
- C・C++・C#
- C言語等での画像処理の勉強方法
画像処理をしたいがためにCを勉強中のものです。 新版 明解C言語 入門編 (単行本) 柴田望洋 (著) を読んでCの基礎を学んだのですが、画像処理については一切触れらていませんでした。 これからC言語で画像処理の勉強をするに当たって分かりやすい本やサイトがあれば教えてください。
- ベストアンサー
- C・C++・C#
- C言語・Windows RECTが渡せない
C言語のWindowsプログラムで、左クリック後に四角形の描画をしたいのですがうまくいきません。 WM_LBUTTONDOWNイベントで定義したRECT構造体を、別の関数に渡しRectangleで描画したいのですが、その関数内でRECTの値を調べるととんでもない値になっています。 何度やってもどうして値がおかしくなるのかわかりません。 WM_LBUTTONDOWNもWM_PAINTも正常に反応していると思います。 どうか知恵をお貸しくださいm(_ _)m 以下ソースコードのメッセージ処理部分です。 ウィンドウ生成のひな型はサイトの物を丸写しし、正常に動作することを確認しています。 LRESULT CALLBACK WndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam) { HDC hdc; PAINTSTRUCT ps; RECT rcPos; switch (msg){ case WM_LBUTTONDOWN: rcPos.top =0; rcPos.left =0; rcPos.bottom =100; rcPos.right =100; InvalidateRect(hWnd, &rcPos, FALSE); break; //ウィンドウの描画 case WM_PAINT: hdc = BeginPaint(hWnd, &ps); DrawGr(hWnd, hdc, &rcPos); EndPaint(hWnd, &ps); break; //ウィンドウの削除 case WM_DESTROY: PostQuitMessage(0); break; default: return(DefWindowProc(hWnd, msg, wParam, lParam)); } return (0L); } //描画 int DrawGr(HWND hWnd, HDC hdc, RECT *rcPos) { int i; HBRUSH hBrush, hOldBrush; char *str_org = "rc.top=%d rc.left=%d rc.bottom=%d rc.right=%d"; char strx[256]; //四角形 hBrush = CreateSolidBrush(RGB(100, 100, 255)); hOldBrush = (HBRUSH)SelectObject(hdc, hBrush); //デバッグ用 wsprintf((LPSTR)strx, (LPCSTR)str_org, rcPos->top, rcPos->left, rcPos->bottom, rcPos->right); MessageBox(hWnd, (LPCSTR)strx, (LPCSTR)"終了確認", MB_OKCANCEL | MB_ICONQUESTION); Rectangle(hdc, rcPos->left, rcPos->top, rcPos->right, rcPos->bottom); SelectObject(hdc, hOldBrush); DeleteObject(hBrush); return 0; }
- ベストアンサー
- C・C++・C#