困っています(大至急お願いします)
Posted: 2010年2月09日(火) 12:33
卒業課題でガンシューティングを作成しているんですがエラーが二つほどあり プロンプトでType mismatch in~というエラーが出るんです
ちなみに作成中のゲームですが単発・連射などがあるんですが、そのうち
連射・狙撃の文字に灰色(Gray)を色づけたいんですが
なかなかできません どなたかエラーを取り除いてくださいお願いします
注意 エラーだけ取れればいいです
#include<stdio.h>
#include<graphics.h>
#include<conio.h>
void ginit(void);
void DispGamen( void );
void Game( void );
int stage, // プレイ中のステージ数
tm, // ゲーム中の残り時間
score, // スコア
gun, // 選んでいる武器の種類
// 0-単発 1-連射 2-散弾 3-狙撃
mg[4] = {0}; // 各武器のマガジン数
void main()
{
ginit();
Game();
closegraph();
}
void Game()
{
stage = 2;
tm = 9999;
score = 1234;
gun = 2;
mg[0] = -1;
mg[1] = 1;
mg[2] = 2;
mg[3] = 3;
DispGamen();
(void)getchar();
}
void DispGamen()
{
char mes[81];
void Gray(void);
cleardevice(); // 画面消去
setfillstyle( SOLID_FILL, GREEN ); // 上下のステータス欄の色
bar( 0,0, 639, 4*16-1);
bar( 0,24*16, 639,479 );
setcolor( YELLOW );
settextstyle(DEFAULT_FONT,HORIZ_DIR,2); // 2倍角
outtextxy( 10,16,"THE SHOT"); // タイトル表示
sprintf( mes, "STAGE %2d", stage );
outtextxy( 150,16, mes ); // 表示
sprintf( mes, "TIME%4d", tm );
outtextxy( 300,16, mes ); // 表示
sprintf( mes, "SCORE%5d", score );
outtextxy( 450,16, mes ); // 表示
setcolor( WHITE );
settextstyle(DEFAULT_FONT,HORIZ_DIR,1); // 1倍角
outtextxy( 16, 24*16, "TARGET" ); // 表示
outtextxy( 40, 29*14, "w" ); // 表示
outtextxy( 10, 27*16, "A" );
outtextxy( 70, 27*16, "D" ); // 表示
outtextxy( 40, 33*14, "S" );
outtextxy( 105, 28*16, "Q" );
outtextxy( 180, 28*16, "E" );
outtextxy( 105, 24*16, "SHOT" );
outtextxy( 120, 25*16, "SPACEKEY" );
outtextxy( 105, 27*16, "GUN CHANGE" );
outtextxy( 250, 26*16, "GUN" );
outtextxy( 390, 24*16, "MAGAZINE" ); // 表示
outtextxy( 380, 26*16, "単発" );
outtextxy( 444, 26*16, "連射" );
outtextxy( 500, 26*16, "散弾" );
outtextxy( 564, 26*16, "狙撃" );
outtextxy( 391, 27*16, "∞" ); //単発
setcolor( Gray );
settextstyle(DEFAULT_FONT,HORIZ_DIR,2); // 2倍角
outtextxy( 430, 26*16, "使用不可"); //連射
setcolor( Gray );
settextstyle(DEFAULT_FONT,HORIZ_DIR,2); // 2倍角
outtextxy( 551, 26*16, "使用不可"); //狙撃
outtextxy( 37, 30*14, "↑" ); // 表示
outtextxy( 37, 32*14, "↓" );
outtextxy( 17, 27*16, "←" ); // 表示
outtextxy( 55, 27*16, "→" );
outtextxy( 117, 28*16, "←" ); // 表示
outtextxy( 162, 28*16, "→" );
}
void ginit()
{
int drv=0,mod;
initgraph(&drv,&mod,"");
}
ちなみに作成中のゲームですが単発・連射などがあるんですが、そのうち
連射・狙撃の文字に灰色(Gray)を色づけたいんですが
なかなかできません どなたかエラーを取り除いてくださいお願いします
注意 エラーだけ取れればいいです
#include<stdio.h>
#include<graphics.h>
#include<conio.h>
void ginit(void);
void DispGamen( void );
void Game( void );
int stage, // プレイ中のステージ数
tm, // ゲーム中の残り時間
score, // スコア
gun, // 選んでいる武器の種類
// 0-単発 1-連射 2-散弾 3-狙撃
mg[4] = {0}; // 各武器のマガジン数
void main()
{
ginit();
Game();
closegraph();
}
void Game()
{
stage = 2;
tm = 9999;
score = 1234;
gun = 2;
mg[0] = -1;
mg[1] = 1;
mg[2] = 2;
mg[3] = 3;
DispGamen();
(void)getchar();
}
void DispGamen()
{
char mes[81];
void Gray(void);
cleardevice(); // 画面消去
setfillstyle( SOLID_FILL, GREEN ); // 上下のステータス欄の色
bar( 0,0, 639, 4*16-1);
bar( 0,24*16, 639,479 );
setcolor( YELLOW );
settextstyle(DEFAULT_FONT,HORIZ_DIR,2); // 2倍角
outtextxy( 10,16,"THE SHOT"); // タイトル表示
sprintf( mes, "STAGE %2d", stage );
outtextxy( 150,16, mes ); // 表示
sprintf( mes, "TIME%4d", tm );
outtextxy( 300,16, mes ); // 表示
sprintf( mes, "SCORE%5d", score );
outtextxy( 450,16, mes ); // 表示
setcolor( WHITE );
settextstyle(DEFAULT_FONT,HORIZ_DIR,1); // 1倍角
outtextxy( 16, 24*16, "TARGET" ); // 表示
outtextxy( 40, 29*14, "w" ); // 表示
outtextxy( 10, 27*16, "A" );
outtextxy( 70, 27*16, "D" ); // 表示
outtextxy( 40, 33*14, "S" );
outtextxy( 105, 28*16, "Q" );
outtextxy( 180, 28*16, "E" );
outtextxy( 105, 24*16, "SHOT" );
outtextxy( 120, 25*16, "SPACEKEY" );
outtextxy( 105, 27*16, "GUN CHANGE" );
outtextxy( 250, 26*16, "GUN" );
outtextxy( 390, 24*16, "MAGAZINE" ); // 表示
outtextxy( 380, 26*16, "単発" );
outtextxy( 444, 26*16, "連射" );
outtextxy( 500, 26*16, "散弾" );
outtextxy( 564, 26*16, "狙撃" );
outtextxy( 391, 27*16, "∞" ); //単発
setcolor( Gray );
settextstyle(DEFAULT_FONT,HORIZ_DIR,2); // 2倍角
outtextxy( 430, 26*16, "使用不可"); //連射
setcolor( Gray );
settextstyle(DEFAULT_FONT,HORIZ_DIR,2); // 2倍角
outtextxy( 551, 26*16, "使用不可"); //狙撃
outtextxy( 37, 30*14, "↑" ); // 表示
outtextxy( 37, 32*14, "↓" );
outtextxy( 17, 27*16, "←" ); // 表示
outtextxy( 55, 27*16, "→" );
outtextxy( 117, 28*16, "←" ); // 表示
outtextxy( 162, 28*16, "→" );
}
void ginit()
{
int drv=0,mod;
initgraph(&drv,&mod,"");
}