for (int i = 0; i < playerBullets.size(); i++)
{
// Ship projectile hit enemy
if (IntersectsWith(playerBullets[i].ReturnBoundingBox()) || IntersectsWith(playerBulletsTwo[i].ReturnBoundingBox()))
{
//Deal with enemies response to collision
//Do damage
Damage();
if (ReturnHealth() <= 0)
{
this->mobsKilledCounter++;
SetCurrentTexture(currentTextureKey);
}
}
}
총알이 적을 때리면 코드가 실행되어 손상됩니다 (원하는대로). 그런 다음 똑같은 탄환 (1000 회/초)에이어서 코드를 연속적으로 실행하여 적을 즉시 죽입니다. 이 코드는 업데이트 루프에 있으며,이 코드는 계속해서 업데이트됩니다.적과 너무 자주 교차하는 총알
아무도 내가 이것을 막을 수 있습니다. 나는 불법 복제를 시도했지만 벡터와 여러 개의 탄환/적을 사용하기 때문에 너무 잘 작동하지 않았습니다.
교차로 코드가 자주 점검되는 경우 잠시 동안 총알이 여전히 내부에있을 수 있다는 것이 합리적이지 않습니까? 동일한 총알이 적을 두 번 때리는 것을 명시 적으로 방지해야합니다. 총알은 그것이 쳤던 적을 추적 할 수 있으며 두번 똑같은 공격을받는다면 피해를주지 마십시오. ** 편집 : ** 또는 적과 충돌 할 때 총알을 버리십시오. 그렇지 않으면 초입 관탄입니다. – AndyG