|
char com_name[256];
int i=0;
int flag=OFF;
//コメント文対応
if( *(TEXT+1)=='#' || *(TEXT-1)=='#' ){
|
//#が2回連続したらコメント文なので行末までテキストポインタを飛ばす
while( *TEXT!=0x0d ) TEXT++;
return; |
}
TEXT++; //#を飛ばす
//コマンド文字列の切り出し
while( *TEXT>0x20 ){
|
com_name[i] = *TEXT;
TEXT++;
i++; |
}
TEXT--;
com_name[i]=0; //これはNULL文字
//コマンド名の評価 → 処理関数呼び出し
if( strcmp(com_name,"delay" )==0 ){ Com_delay(); flag=ON;}
//遅延
if( strcmp(com_name,"wait" )==0 ){ Com_cursor_blink();
flag=ON;} //カーソルブリンク
if( strcmp(com_name,"w" )==0 ){ Com_cursor_blink();
flag=ON;} //カーソルブリンク
if( strcmp(com_name,"halt" )==0 ){ Com_halt(); flag=ON;}
//終了
if( strcmp(com_name,"page" )==0 ){ Com_page(); flag=ON;}
//改ページ
if( strcmp(com_name,"g_load" )==0 ){ Com_g_load();
flag=ON;} //BMPのLOAD
if( strcmp(com_name,"g_copy" )==0 ){ Com_g_copy();
flag=ON;} //BMPのCOPY
if( strcmp(com_name,"g_change")==0 ){ Com_g_change();
flag=ON;} //画面切替
if( strcmp(com_name,"flag_on" )==0 ){ Com_flag_on();
flag=ON;} //イベントフラグON
if( strcmp(com_name,"flag_off")==0 ){ Com_flag_off();
flag=ON;} //イベントフラグOFF
if( strcmp(com_name,"disp_flag")==0 ){ Com_disp_flag();
flag=ON;} //イベントフラグ表示
if( strcmp(com_name,"if_flag" )==0 ){ Com_if_flag();
flag=ON;} //フラグによる分岐
if( strcmp(com_name,"jump" )==0 ){ Com_jump(); flag=ON;}
//ラベルジャンプ
if( strcmp(com_name,"file_change")==0 ){Com_file_change();
flag=ON;} //ファイル間ジャンプ
if( strcmp(com_name,"select3" )==0 ){ Com_select3();
flag=ON;} //3択
if( strcmp(com_name,"play_wav")==0 ){ Com_play_wav();
flag=ON;} //WAV演奏開始
if( strcmp(com_name,"stop_wav")==0 ){ Com_stop_wav();
flag=ON;} //WAV演奏停止
if( strcmp(com_name,"play_midi")==0 ){ Com_play_midi();
flag=ON;} //MIDI演奏開始
if( strcmp(com_name,"stop_midi")==0 ){ Com_stop_midi();
flag=ON;} //MIDI演奏停止
if( strcmp(com_name,"play_mp3")==0 ){ Com_play_mp3();
flag=ON;} //MP3演奏開始
if( strcmp(com_name,"stop_mp3")==0 ){ Com_stop_mp3();
flag=ON;} //MP3演奏停止
if( strcmp(com_name,"set_font_size")==0 ){ Com_set_font_size();
flag=ON;} //フォントサイズ変更
if( strcmp(com_name,"set_text_area")==0 ){ Com_set_text_area();
flag=ON;} //テキストエリア変更
if( strcmp(com_name,"set_text_wait")==0 ){ Com_set_text_wait();
flag=ON;} //テキストウェイト変更
if( strcmp(com_name,"set_text_color")==0 ){ Com_set_text_color();
flag=ON;} //テキストカラー変更
if( strcmp(com_name,"set_str")==0 ){ Com_set_str();
flag=ON;} //文字列変数に値をセット
if( strcmp(com_name,"text_input")==0 ){ Com_text_input();
flag=ON;} //ダイアログを開いてテキスト入力
if( strcmp(com_name,"save_point")==0 ){ Com_save_point();
flag=ON;} //セーブポイント設定
if( strcmp(com_name,"sp")==0 ) { Com_save_point();
flag=ON;} //セーブポイント設定(短縮表記)
if( strcmp(com_name,"save_point_mode")==0 ){Com_save_point_mode();
flag=ON;}//セーブポイントモード
if( strcmp(com_name,"disp_save_point_mode")==0 ){Com_disp_save_point_mode();flag=ON;}
//セーブポイントDEBUG用
if( strcmp(com_name,"shake")==0 ) {Com_shake(); flag=ON;}
//揺れる効果
if( strcmp(com_name,"fade_out")==0 ) {Com_fade_out();
flag=ON;} //フェードアウト
if( strcmp(com_name,"fade_in")==0 ) {Com_fade_in();
flag=ON;} //フェードイン
if( strcmp(com_name,"alpha_copy")==0
) {Com_alpha_copy(); flag=ON;} //アルファブレンド
// ↑
//そのうちここに他のコマンドも追加していきましょう
// ↓
//フラグを見て、切り出されたコマンド名が有効なコマンドだったかどうか確認する
if( flag == OFF ){
|
char str[256];
sprintf( str,"警告:無効なコマンド [#%s]
が記述されています",com_name);
MessageBox(NULL,str,"Command_call()",MB_OK); |
} |