Re: 別の画像のはずが・・・ ( No.1 ) |
- 名前:通 日時:2008/01/24 00:25
>int Gr1,G2;
>Gr=LoadGraph("Gr1.png");
>Gr=LoadGraph("Gr2.png");
Grの宣言が無いようですが、
このコードだとコンパイル通らないのでは?
Gr2だけ表示されるのは、
Gr1の画像を読み込んだGrをGr2で上書きしている
為でしょう。
|
Re: 別の画像のはずが・・・ ( No.2 ) |
- 名前:Fe 日時:2008/01/24 01:51
あ・・・
すいません。
例のつもりで書いたコードを普通にミスってました。
また書いてミスしたりするの嫌なんで問題のとこのコードを貼ります。
#include "DxLib.h"
#define ITEM 1
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,LPSTR lpCmdLine, int nCmdShow )
{
//関係ない部分は省略させてもらいます。
int C1W1,C1W2,C1W3,C1W4,C1W5;
int JobGraph;
int WeponGraph[ITEM];
// DXライブラリ初期化処理
if( DxLib_Init() == -1 ) return -1;
// 描画先画面を裏画面にする
SetDrawScreen( DX_SCREEN_BACK ) ;
JobGraph = LoadGraph("class1.png");
WeponGraph[1] = LoadGraph("wepon1.png");
C1W1 = 1;
C1W2 = 0;
C1W3 = 0;
C1W4 = 0;
C1W5 = 0;
while(1)
{
DrawGraph(20,360,JobGraph,TRUE);
DrawGraph(350,70,WeponGraph[C1W1],TRUE);
DrawGraph(350,120,WeponGraph[C1W2],TRUE);
DrawGraph(350,170,WeponGraph[C1W3],TRUE);
DrawGraph(350,220,WeponGraph[C1W4],TRUE);
DrawGraph(350,270,WeponGraph[C1W5],TRUE);
ScreenFlip();
WaitKey();
}
}
今の状況を簡略化するとこんな感じです。
シュミレーションRPG作っててステータスとアイテムの表示画面を作ってるんですが・・・。
クラスの書き方とかいま一つわからないんで、
本当はかなり長くなっちゃってます。
できればもう一度お願いしたいですが、とりあえず今日は寝させていただきます。
|
Re: 別の画像のはずが・・・ ( No.3 ) |
- 名前:やそ 日時:2008/01/24 11:20
#define ITEM 1
なので
WeponGraph[1] = LoadGraph("wepon1.png");
はおかしくないですか?
[0]と[1]の2つ使いたいなら
#define ITEM 2
ですよね。
Feさんがどのように表示して欲しいのに、実行結果は○○と表示されてしまう。といった記述がないので指摘しづらいですが・・・。
WeponGraph[0] = LoadGraph("XXX.png");
がないので
2つめ以降の
DrawGraph(350,120,WeponGraph[C1W2],TRUE);
DrawGraph(350,170,WeponGraph[C1W3],TRUE);
DrawGraph(350,220,WeponGraph[C1W4],TRUE);
DrawGraph(350,270,WeponGraph[C1W5],TRUE);
は表示されないんじゃ・・・
(ハンドルの値が不定だとどう表示されるのだろう?)
|
Re: 別の画像のはずが・・・ ( No.4 ) |
- 名前:通 日時:2008/01/24 13:10
やそさんが既に指摘されていますが、
C言語での配列の添え字は0オリジン(0から)です
#define ITEM 1
int WeponGraph[ITEM];
とするとint型の領域を1つ確保することになり、
WeponGraph[1]はメモリのアクセス違反になります。
>ハンドルの値が不定だとどう表示されるのだろう
一応読み込んだデータ数や画像データの有無、
ハンドルのタイプ、アドレスなどをチェック
しているようなので、基本的にはDrawGraphが
エラーで戻ると思います。
たまたま、アクセスできて読み込んだ画像がある
数値が入っていると正常に表示されたように見える
かもしれません。
|
Re: 別の画像のはずが・・・ ( No.5 ) |
- 名前:Fe 日時:2008/01/24 16:22
やそさん、通さんのおっしゃる通りでした。
WeponGraph[1]のところを0にしたら正常に表示されました。
ありがとうございました。
|
|