質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

DXライブラリ

DXライブラリとは、DirectXを使ったWindowsソフトの開発に必ず付いて回るDirectXやWindows関連のプログラムを使い易くまとめた形で利用できるようにしたC++言語用のゲームライブラリです。

Q&A

1回答

2175閲覧

画像の交換処理

退会済みユーザー

退会済みユーザー

総合スコア0

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

DXライブラリ

DXライブラリとは、DirectXを使ったWindowsソフトの開発に必ず付いて回るDirectXやWindows関連のプログラムを使い易くまとめた形で利用できるようにしたC++言語用のゲームライブラリです。

0グッド

0クリップ

投稿2015/11/18 03:08

C++で水道管ゲームを制作していますが、画像(パネル)の入れ替えがうまくいきません。
一枚目と二枚目の画像をクリックすると入れ替える体にしたいのです。
非常に初歩的な問題で申し訳ありませんが教えていただけると幸いです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sgr-2

2015/11/18 04:10

今のご質問の内容ですと、何に躓いているかが分からないのではと思います。 希望の処理を実現するには、ざっくり以下のステップが必要なのではと想像します。 「クリックに対して、対象のパネルを特定」→「選択された2つのパネルが入れ替え可能かの判定」→「選択された2つのパネルを入れ替え」→「再描画」 どこの段階(処理内容)が上手くいっていないのかを追記頂くと良いかと思います。
T.Kanno

2015/11/22 03:26

少なくとも、何をどうやって上手くいかないのかを書かないと、解答はしにくいと思います。
yumetodo

2016/01/27 04:11

DxLibということでしたら、純粋にメインループでマウス座標とクリックされたかを毎回確認して、2つの画像の描画座標を入れ替えて描画するだけですが、なにが聞きたいんでしょうか。現在のソースを貼ってください
guest

回答1

0

質問の修正をできずにそのまま自己解決してしまいました。
原因はif文の書きまつがえのようでした。
修正依頼をしてくださった皆様本当にありがとうございます。
以下に私が書いたコードを記します。

C言語

1int i = (MouseY - W_MARGIN)/ BLOCKSIZE + 1; 2int j = (MouseX - MARGIN) / BLOCKSIZE + 1; 3 4 if(KeyFlg & MOUSE_INPUT_LEFT){ 5 if( i > HEIGHT-1 || j > WIDTH-1){ 6 return; 7 }else{ 8 if(ClickFlg == TRUE && Block[i][j].image != 0){ 9 Ci = i; 10 Cj = j; 11 CopyImage1 = Block[i][j].image; 12 ClickFlg = FALSE; 13 14 }else{ 15 CopyImage2 = Block[i][j].image; 16 Block[Ci][Cj].image = CopyImage2; 17 Block[i][j].image = CopyImage1; 18 19 ClickFlg = TRUE; 20 } 21 } 22 }

投稿2016/02/09 06:14

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問