📄 bullet.cpp
字号:
#include ".\bullet.h"
CBullet::CBullet(HANDLE _hStdOut, CONSOLE_SCREEN_BUFFER_INFO _csbi)
{
hStdOut=_hStdOut;
csbi=_csbi;
cBullet=0x2E;
cVoid=0x20;
}
CBullet::~CBullet(void)
{
}
void CBullet::Render()
{
for (int i=0 ; i<vecBullet.size() ; i++)
{
WriteConsoleOutputCharacter(hStdOut , &cVoid , 1 , vecBullet[i].oldcoord , &result);
WriteConsoleOutputCharacter(hStdOut , &vecBullet[i].cBullet , 1 , vecBullet[i].newcoord , &result);
vecBullet[i].oldcoord.X=vecBullet[i].newcoord.X;
vecBullet[i].oldcoord.Y=vecBullet[i].newcoord.Y;
}
}
void CBullet::upData()
{
for (int i=0 ; i<vecBullet.size() ; i++)
{
if ((vecBullet[i].newcoord.Y-1)<1)
{
WriteConsoleOutputCharacter(hStdOut , &cVoid , 1 , vecBullet[i].oldcoord , &result);
vecBullet.erase(&vecBullet[i]);
i--;
}
else
{
vecBullet[i].newcoord.Y--;
vecBullet[i].newcoord.X+=vecBullet[i].iAngleX;
}
}
}
void CBullet::Fire(CPlane* player)
{
BULLET bullet;
bullet.newcoord.X=player->newcoord.X;
bullet.oldcoord.X=player->oldcoord.X;
bullet.newcoord.Y=player->newcoord.Y;
bullet.oldcoord.Y=player->oldcoord.Y;
bullet.cBullet=cBullet;
bullet.iAngleX=0;
vecBullet.push_back(bullet);
}
void CBullet::FireUlt(CPlane* player)
{
static int iFireUltTime=0;
if (iFireUltTime==0)
{
if(GetAsyncKeyState(0x4B))
{
iFireUltTime=100;
}
}
if (iFireUltTime>99)
{
iFireUltTime++;
}
if (iFireUltTime>99 && iFireUltTime%2==0)
{
BULLET bullet1,bullet2,bullet3,bullet4,bullet5,bullet6,bullet7;
bullet1.newcoord.X=player->newcoord.X;
bullet1.oldcoord.X=player->oldcoord.X;
bullet1.newcoord.Y=player->newcoord.Y;
bullet1.oldcoord.Y=player->oldcoord.Y;
Sleep(2);
srand(time(0));
bullet1.cBullet=(char)GetRandom(1,128);
bullet1.iAngleX=-3;
vecBullet.push_back(bullet1);
bullet2.newcoord.X=player->newcoord.X;
bullet2.oldcoord.X=player->oldcoord.X;
bullet2.newcoord.Y=player->newcoord.Y;
bullet2.oldcoord.Y=player->oldcoord.Y;
Sleep(2);
srand(time(0));
bullet2.cBullet=(char)GetRandom(1,128);
bullet2.iAngleX=-2;
vecBullet.push_back(bullet2);
bullet3.newcoord.X=player->newcoord.X;
bullet3.oldcoord.X=player->oldcoord.X;
bullet3.newcoord.Y=player->newcoord.Y;
bullet3.oldcoord.Y=player->oldcoord.Y;
Sleep(2);
srand(time(0));
bullet3.cBullet=(char)GetRandom(1,128);
bullet3.iAngleX=-1;
vecBullet.push_back(bullet3);
bullet4.newcoord.X=player->newcoord.X;
bullet4.oldcoord.X=player->oldcoord.X;
bullet4.newcoord.Y=player->newcoord.Y;
bullet4.oldcoord.Y=player->oldcoord.Y;
Sleep(2);
srand(time(0));
bullet4.cBullet=(char)GetRandom(1,128);
bullet4.iAngleX=0;
vecBullet.push_back(bullet4);
bullet5.newcoord.X=player->newcoord.X;
bullet5.oldcoord.X=player->oldcoord.X;
bullet5.newcoord.Y=player->newcoord.Y;
bullet5.oldcoord.Y=player->oldcoord.Y;
Sleep(2);
srand(time(0));
bullet5.cBullet=(char)GetRandom(1,128);
bullet5.iAngleX=1;
vecBullet.push_back(bullet5);
bullet6.newcoord.X=player->newcoord.X;
bullet6.oldcoord.X=player->oldcoord.X;
bullet6.newcoord.Y=player->newcoord.Y;
bullet6.oldcoord.Y=player->oldcoord.Y;
Sleep(2);
srand(time(0));
bullet6.cBullet=(char)GetRandom(1,128);
bullet6.iAngleX=2;
vecBullet.push_back(bullet6);
bullet7.newcoord.X=player->newcoord.X;
bullet7.oldcoord.X=player->oldcoord.X;
bullet7.newcoord.Y=player->newcoord.Y;
bullet7.oldcoord.Y=player->oldcoord.Y;
Sleep(2);
srand(time(0));
bullet7.cBullet=(char)GetRandom(1,128);
bullet7.iAngleX=3;
vecBullet.push_back(bullet7);
}
if (iFireUltTime>118)
{
iFireUltTime=0;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -