Bullet* bu;
if ((Keyboard::isKeyPressed(Keyboard::Space)) && (timerok > 0.43))
{
bu = new Bullet(p.rect.left + 205, p.rect.top + 40, TeX.texture);
bullets.push_back(bu);
timerok = 0;
}
if ((Keyboard::isKeyPressed(Keyboard::P)) && (timerok > 2))
{
Enemy* en = new Enemy(800, 160, TeX.texture);
enemies.push_back(en);
timerok = 0;
}
vector <Bullet*>::iterator it = bullets.begin();
for (it = bullets.begin(); it != bullets.end();)
{
Bullet *b = *it;
(*it)->update(time);
if (b->life == false)
{
it = bullets.erase(it);
delete b;
}
else it++;
}
vector <Enemy*>::iterator it1 = enemies.begin();
for (it1 = enemies.begin(); it1 != enemies.end();)
{
Enemy *b = *it1;
(*it1)->update((*it)->Crush, time);
if (b->life == false)
{
it1 = enemies.erase(it1);
delete b;
}
else it1++;
}
B.DownTool((p.HPCurrent*pow(p.HP,-1))*100, 200, true);
window.clear(Color::Black);
window.draw(sprite);
p.Play(time);
window.draw(p.sprite);
for (it = bullets.begin(); it != bullets.end(); it++)
{
window.draw((*it)->s);
}
for (it1 = enemies.begin(); it1 != enemies.end(); it1++)
{
window.draw((*it1)->s);
}
Вот на всякий случай вся часть этого кода, но он миллион раз переписанный и поменянный , что тут куча лишнего и рудиментов из старых тестов) Так то я делал все по урокам.