龍神録4章をマネしてみたらエラー
Posted: 2011年10月29日(土) 12:33
龍神録4章を真似してみたらエラーしました。
自分で作った画像をソースファイルの中の「dotto」という名前のファイルに入れました。(png形式でデスクトップからコピペした)
load.ccpを
#include "DxLib.h"
extern int img_ch[1][24];
void load(){
LoadDivGraph( "dotto/画像の名前.png" , 24 , 8 , 3 , 48 , 64 , img_ch[0] ) ;
}
としまして、graph.ccpを
#include "DxLib.h"
extern ch_t ch;
extern int img_ch[1][24];
void graph_ch(){
DrawRotaGraphF(ch.x,ch.y,1.0f,0.0f,img_ch[0][ch.img],TRUE);
}
void graph_main(){
graph_ch();
}
としまして、main.ccpを
#define GLOBAL_INSTANCE
#include "DxLib.h"
//現在のキー入力処理を行う
extern int GetHitKeyStateAll_2();
//受け取ったキー番号の現在の入力状態を返す
extern int CheckStateKey(unsigned char Handle);
//データのロード
extern void load();
//描画メイン
extern void graph_main();
int img_ch[1][24]; //キャラクタ画像24枚分
ch_t ch; //キャラクタデータ
//ループで必ず行う3大処理
int ProcessLoop(){
if(ProcessMessage()!=0)return -1;//プロセス処理がエラーなら-1を返す
if(ClearDrawScreen()!=0)return -1;//画面クリア処理がエラーなら-1を返す
GetHitKeyStateAll_2();//現在のキー入力処理を行う
return 0;
}
int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nCmdShow){
ChangeWindowMode(TRUE);//ウィンドウモード
if(DxLib_Init() == -1 || SetDrawScreen( DX_SCREEN_BACK )!=0) return -1;//初期化と裏画面化
load();//データロード
while(ProcessLoop()==0){//メインループ
graph_main();//描画メイン
if(CheckStateKey(KEY_INPUT_ESCAPE)==1)break;//エスケープが入力されたらブレイク
ScreenFlip();//裏画面反映
}
DxLib_End(); // DXライブラリ終了処理
return 0;
}
としてデバッグすると
main.cpp
c:\users\owner\documents\visual studio 2008\projects\wth_06\main.cpp(16) : error C2146: 構文エラー : ';' が、識別子 'ch' の前に必要です。
c:\users\owner\documents\visual studio 2008\projects\wth_06\main.cpp(16) : error C4430: 型指定子がありません - int と仮定しました。メモ: C++ は int を既定値としてサポートしていません
c:\users\owner\documents\visual studio 2008\projects\wth_06\main.cpp(16) : error C4430: 型指定子がありません - int と仮定しました。メモ: C++ は int を既定値としてサポートしていません
graph.cpp
c:\users\owner\documents\visual studio 2008\projects\wth_06\graph.cpp(3) : error C2146: 構文エラー : ';' が、識別子 'ch' の前に必要です。
c:\users\owner\documents\visual studio 2008\projects\wth_06\graph.cpp(3) : error C4430: 型指定子がありません - int と仮定しました。メモ: C++ は int を既定値としてサポートしていません
c:\users\owner\documents\visual studio 2008\projects\wth_06\graph.cpp(3) : error C4430: 型指定子がありません - int と仮定しました。メモ: C++ は int を既定値としてサポートしていません
c:\users\owner\documents\visual studio 2008\projects\wth_06\graph.cpp(7) : error C2228: '.x' の左側はクラス、構造体、共用体でなければなりません
型は 'int' です。
c:\users\owner\documents\visual studio 2008\projects\wth_06\graph.cpp(7) : error C2228: '.y' の左側はクラス、構造体、共用体でなければなりません
型は 'int' です。
c:\users\owner\documents\visual studio 2008\projects\wth_06\graph.cpp(7) : error C2228: '.img' の左側はクラス、構造体、共用体でなければなりません
型は 'int' です。
コードを生成中...
ビルドログは "file://c:\Users\owner\Documents\Visual Studio 2008\Projects\wth_06\Debug\BuildLog.htm" に保存されました。
wth_06 - エラー 9、警告 0
========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ==========
というエラーが出てしまいます。何が原因なのでしょうか?何方か翻訳して下さい。
自分で作った画像をソースファイルの中の「dotto」という名前のファイルに入れました。(png形式でデスクトップからコピペした)
load.ccpを
#include "DxLib.h"
extern int img_ch[1][24];
void load(){
LoadDivGraph( "dotto/画像の名前.png" , 24 , 8 , 3 , 48 , 64 , img_ch[0] ) ;
}
としまして、graph.ccpを
#include "DxLib.h"
extern ch_t ch;
extern int img_ch[1][24];
void graph_ch(){
DrawRotaGraphF(ch.x,ch.y,1.0f,0.0f,img_ch[0][ch.img],TRUE);
}
void graph_main(){
graph_ch();
}
としまして、main.ccpを
#define GLOBAL_INSTANCE
#include "DxLib.h"
//現在のキー入力処理を行う
extern int GetHitKeyStateAll_2();
//受け取ったキー番号の現在の入力状態を返す
extern int CheckStateKey(unsigned char Handle);
//データのロード
extern void load();
//描画メイン
extern void graph_main();
int img_ch[1][24]; //キャラクタ画像24枚分
ch_t ch; //キャラクタデータ
//ループで必ず行う3大処理
int ProcessLoop(){
if(ProcessMessage()!=0)return -1;//プロセス処理がエラーなら-1を返す
if(ClearDrawScreen()!=0)return -1;//画面クリア処理がエラーなら-1を返す
GetHitKeyStateAll_2();//現在のキー入力処理を行う
return 0;
}
int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nCmdShow){
ChangeWindowMode(TRUE);//ウィンドウモード
if(DxLib_Init() == -1 || SetDrawScreen( DX_SCREEN_BACK )!=0) return -1;//初期化と裏画面化
load();//データロード
while(ProcessLoop()==0){//メインループ
graph_main();//描画メイン
if(CheckStateKey(KEY_INPUT_ESCAPE)==1)break;//エスケープが入力されたらブレイク
ScreenFlip();//裏画面反映
}
DxLib_End(); // DXライブラリ終了処理
return 0;
}
としてデバッグすると
main.cpp
c:\users\owner\documents\visual studio 2008\projects\wth_06\main.cpp(16) : error C2146: 構文エラー : ';' が、識別子 'ch' の前に必要です。
c:\users\owner\documents\visual studio 2008\projects\wth_06\main.cpp(16) : error C4430: 型指定子がありません - int と仮定しました。メモ: C++ は int を既定値としてサポートしていません
c:\users\owner\documents\visual studio 2008\projects\wth_06\main.cpp(16) : error C4430: 型指定子がありません - int と仮定しました。メモ: C++ は int を既定値としてサポートしていません
graph.cpp
c:\users\owner\documents\visual studio 2008\projects\wth_06\graph.cpp(3) : error C2146: 構文エラー : ';' が、識別子 'ch' の前に必要です。
c:\users\owner\documents\visual studio 2008\projects\wth_06\graph.cpp(3) : error C4430: 型指定子がありません - int と仮定しました。メモ: C++ は int を既定値としてサポートしていません
c:\users\owner\documents\visual studio 2008\projects\wth_06\graph.cpp(3) : error C4430: 型指定子がありません - int と仮定しました。メモ: C++ は int を既定値としてサポートしていません
c:\users\owner\documents\visual studio 2008\projects\wth_06\graph.cpp(7) : error C2228: '.x' の左側はクラス、構造体、共用体でなければなりません
型は 'int' です。
c:\users\owner\documents\visual studio 2008\projects\wth_06\graph.cpp(7) : error C2228: '.y' の左側はクラス、構造体、共用体でなければなりません
型は 'int' です。
c:\users\owner\documents\visual studio 2008\projects\wth_06\graph.cpp(7) : error C2228: '.img' の左側はクラス、構造体、共用体でなければなりません
型は 'int' です。
コードを生成中...
ビルドログは "file://c:\Users\owner\Documents\Visual Studio 2008\Projects\wth_06\Debug\BuildLog.htm" に保存されました。
wth_06 - エラー 9、警告 0
========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ==========
というエラーが出てしまいます。何が原因なのでしょうか?何方か翻訳して下さい。