マップイメージが閉じられない?

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
Qloeh
記事: 35
登録日時: 8年前

マップイメージが閉じられない?

#1

投稿記事 by Qloeh » 8年前

また初歩的な質問です。すみません。
少し調べてソースをいじってみました。
そうすると読み込まれはしますが、FileRead_close関数で-1を返すらしく、メッセージボックスに「マップイメージが閉じられない」と出ます。
ソースコードは下の通りです。

コード:

bool LoadMapData(){
	int fh = 0;
	char pass[STR_MAX] = {0};
	char str[STR_MAX] = {0};
	char* a;
	sprintf_s(pass, "%s%s%s", MAP_ROOT, maplist.list[maplist.map_id], MAP_DATAROOT);
	if ((fh = FileRead_open(pass)) == 0){
		MB("MapData Cannot Open");
		return false;
	}
	FileRead_gets(str, STR_MAX, fh);
	strcpy_s(map.plug.name, sizeof(map.plug.name), strtok_s(str, PERIOD, &a));
	FileRead_gets(str, STR_MAX, fh);
	map.data.size_x = atoi(str);
	FileRead_gets(str, STR_MAX, fh);
	map.data.size_y = atoi(str);
	FileRead_gets(str, STR_MAX, fh);
	map.data.num_x = atoi(str);
	FileRead_gets(str, STR_MAX, fh);
	map.data.num_y = atoi(str);
	if (FileRead_close(fh) == -1){
		MB("MapData Cannot Close");
		return false;
	}
	return true;
}

コード:

#define MAP_LIST_MAX 10
#define MAP_CHIP_NUM_X 20
#define MAP_CHIP_NUM_Y 15
#define MAP_CHIP_RAYER 4
#define MAP_CHIP_MAX 1024
#define MAP_CHIP_X_MAX 192
#define MAP_CHIP_Y_MAX 192
#define VIEW_CHIP_X 20
#define VIEW_CHIP_Y 15
#define MAP_RAYER 4
#define STR_MAX 256
#define SCROLL_MAX_X 40
#define SCROLL_MAX_Y 30

struct MapData{
	int*data;
	int size_x;//マップのサイズX
	int size_y;//マップのサイズY
	int num;
	int num_x;
	int num_y;
	int mapchip[MAP_CHIP_Y_MAX*MAP_CHIP_X_MAX];
	int mapdata[MAP_CHIP_Y_MAX][MAP_CHIP_X_MAX];
	int maphandle;
	int mapwidth;
	int mapheight;
};
足りない情報などがあったらご指摘下さい。
質問が初歩的過ぎて答えたくない場合無視ではなく、その旨を返信して頂けると有り難い
です。

“C言語何でも質問掲示板” へ戻る