Re: 敵の画像が正しく描画されない。 ( No.1 ) |
- 名前:マーク42 日時:2020/01/18 03:52
あの後、以下のようにバトルに関するヘッダファイルの部分に以下のものを加えました。
//敵を描画
if (enemystayhere == 0) {
DrawExtendGraph(pos[enemyY][enemyX][0] - 14, pos[enemyY][enemyX][1] - 66, pos[enemyY][enemyX][0] + 64, pos[enemyY][enemyX][1] + 66, enemyImage, TRUE);
}
if (stayhere == 1) {
++enemystayhere;
}
if (enemystayhere > 0 && enemystayhere < 500) {
DrawExtendGraph(pos[1][4][0] - 14, pos[1][4][1] - 66, pos[1][4][0] + 64, pos[1][4][1] + 66, enemyImage, TRUE);
}
if (enemystayhere > 500) {
enemystayhere = 0;
stayhere = 0;
enemymovelock = 0;
}
しかし、if (enemystayhere > 0 && enemystayhere < 500)での描画が出来ません。何時間も考えましたがわからないままです。
どうか解決のために知力を貸してください。
こちらはバトルに関する新しいヘッダファイルです。
//pastebin.com/TrFkBqdu
新しいメインプログラムです。
//pastebin.com/z0VEhu7a
新しい変数のヘッダファイルです。
//pastebin.com/zKxRaZQc
その他のヘッダファイルはいじっていません。
|
Re: 敵の画像が正しく描画されない。 ( No.2 ) |
- 名前:マーク42 日時:2020/01/18 16:38
敵の画像はこちらのサイトの画像を使わせて頂きました。
//bituse.info/game/21
|
Re: 敵の画像が正しく描画されない。 ( No.3 ) |
- 名前:管理人 日時:2020/01/19 04:14
使用されている環境はWindows10とのことですが、使用されているソフトは何でしょうか?( VisualStudio 2019 など )
|
Re: 敵の画像が正しく描画されない。 ( No.4 ) |
- 名前:マーク42 日時:2020/01/19 04:39
解答ありがとうございます!はい、使用しているソフトはVisualStudio 2019 でDXライブラリはバージョンはわかりませんが2019年のモノを使わせて頂いています。
|
Re: 敵の画像が正しく描画されない。 ( No.5 ) |
- 名前:マーク42 日時:2020/01/19 04:41
画像は
twitter.com/OnslaughtA/status/1218541632762499073
に載せたものを使っています。
|
Re: 敵の画像が正しく描画されない。 ( No.6 ) |
- 名前:マーク42 日時:2020/01/19 08:30
あのお手数ばかりおかけして申し訳ないのですが、管理人様の方では正しく動いておりますでしょうか?
最近PCの調子が悪くて、その影響もあるかもと思いっております。
|
Re: 敵の画像が正しく描画されない。 ( No.7 ) |
- 名前:管理人 日時:2020/01/19 13:46
VisualStudio2019 でしたら、
DrawExtendGraph(pos[1][4][0] - 14, pos[1][4][1] - 66, pos[1][4][0] + 64, pos[1][4][1] + 66, enemyImage, TRUE);
の行にブレークポイントを置いて( カーソルを↑の行に移動してF9キーを押すと置けます )
デバッグ実行( F5キーでデバッグ実行です )してみて、↑の行で処理が止まったら enemyImage に
グラフィックハンドルが入っているか値を確認してみてください
( プログラム中の enemyImage と書かれているところにマウスカーソルを重ねたまま1秒ぐらい待っていると
enemyImage の変数の値が表示されます )
> あのお手数ばかりおかけして申し訳ないのですが、管理人様の方では正しく動いておりますでしょうか?
実行は試していません
「ボタンに関するヘッダファイル」や「バトルに関するヘッダファイル」などありますが、それぞれ
ファイル名は何でしょうか?
|
Re: 敵の画像が正しく描画されない。 ( No.8 ) |
- 名前:マーク42 日時:2020/01/19 23:44
debugの詳しいやり方ありがとうござまいす。
それぞれにヘッダファイル名を書きました。
ゲームの内容に関するメインプログラムです。
//pastebin.com/QWZGYTHR
playerhennsuu.h
//pastebin.com/1iFJZDFp
taitol.h
//pastebin.com/kSg4CDu2
countine.h
//pastebin.com/qURfZ4Xs
key.h
//pastebin.com/JaVEHZAE
player.h
//pastebin.com/xMsWDmj3
|
Re: 敵の画像が正しく描画されない。 ( No.9 ) |
- 名前:マーク42 日時:2020/01/20 00:27
書いていただいた通りdebugしたところ、自己解決できました!
if (enemystayhere > 0 && enemystayhere < 50) {
enemyImage = enemyGHandle[11];
DrawExtendGraph(pos[1][4][0] - 14, pos[1][4][1] - 66, pos[1][4][0] + 64, pos[1][4][1] + 66, enemyImage, TRUE);
}
とデバッグした際にenemyImageの値が0だったのですが、
enemyImage = enemyGHandle[11]を前に加えたところ
enemyImageに enemyGHandle[11]の値が代入されenemystayhere > 0 && enemystayhere < 50の間ちゃんと描画されました!
多分描画関数を再度使った際にその描画関数にenemyImage = enemyGHandle[11]などの情報が入るかを書いていないため
何も描画されなかったのかもしれません。playhennsuu.hで既ににenemyImage = enemyGHandle[11]と定義していたので、勘違いして描画関数に
勝手に代入されると勘違いしていました。
|
Re: 敵の画像が正しく描画されない。 ( No.10 ) |
- 名前:管理人(解決) 日時:2020/01/21 01:06
自己解決できたようで何よりです
正常に描画できなかった原因については、確かにその通りですね
定義に書かれた代入処理は WinMain 関数が始まる前に実行されますので…
|
Re: 敵の画像が正しく描画されない。 ( No.11 ) |
- 名前:マーク42 日時:2020/01/21 14:33
debugの詳しい方法を教えて頂いたことで自己解決できました。
どうもありがとうございます。
|