C++ 如何在游戏C++;
我要做一个游戏,一架飞机在x轴上移动,大炮用炮弹击中飞机,飞机不得不坠毁。我尽了我所能,但我遇到了一个严重的问题 问题1:当计划进行时,我不能使用佳能,因为两者都使用for循环,它们必须等待对方完成 问题2:因为cleardevice();对我来说,继续炮弹的运动和计划是如此的困难。任何人如果知道我错过了什么,都会感激的。提前感谢C++ 如何在游戏C++;,c++,C++,我要做一个游戏,一架飞机在x轴上移动,大炮用炮弹击中飞机,飞机不得不坠毁。我尽了我所能,但我遇到了一个严重的问题 问题1:当计划进行时,我不能使用佳能,因为两者都使用for循环,它们必须等待对方完成 问题2:因为cleardevice();对我来说,继续炮弹的运动和计划是如此的困难。任何人如果知道我错过了什么,都会感激的。提前感谢 #include <graphics.h> #include <windows.h> void fire(); void canon(); v
#include <graphics.h>
#include <windows.h>
void fire();
void canon();
void plan();
void plan_move();
int main( )
{
initwindow(800, 500, "First Sample");
canon();
plan_move();
plan();
getch();
return 0;
}
void fire()
{
int i=0;
for(i=0;i<370;i++)
{
circle(363, 400-i, 13);
setcolor(WHITE);
delay(5);
canon();
cleardevice();
}
}
void canon()
{
line(350,450,350,400);
line(380,450,380,400);
circle(365,400,15);
circle(365,470,25);
}
void plan()
{
line(25,70,50,70);
line(25,30,50,30);
line(80,70,50,30);
line(80,70,50,70);
line(25,30,25,70);
}
void plan_move()
{
int i=0;
for(i=0;i<700;i++)
{
line(25+i,70,50+i,70);
line(25+i,30,50+i,30);
line(80+i,70,50+i,30);
line(80+i,70,50+i,70);
line(25+i,30,25+i,70);
delay(8);
canon();
if(GetAsyncKeyState(VK_SPACE))
{
fire();
}
cleardevice();
}
}
#包括
#包括
无效火();
无效教规();
作废计划();
作废平面图_move();
int main()
{
初始窗口(800500,“第一个样本”);
佳能();
计划移动();
计划();
getch();
返回0;
}
虚火
{
int i=0;
对于(i=0;i可能想尝试在新线程上运行循环。请参阅此帖子为例:过杀和不必要。我使用DEV C++,可惜它不是那么简单。that@HazratBilal“我正在使用Dev C++”嗯?就这么简单。你的工具链和编译器标志设置是什么?@CaptainObvlious那么理想的解决方案是什么呢?一个大的for循环,可以同时实现这两个功能。