안녕하세요, 저는 DirectX와 C++을 사용하여 간단한 게임을 프로그래밍하고 있습니다. 약간의 천재성을 해결할 수있는 약간의 문제가 발생했습니다.간단한 게임 프로그래밍하기
저는 현재 8 명의 외계인 어레이를 보유하고 있으며 현재이 코드를 사용하여 왼쪽에서 오른쪽으로 그리고 아래로 한 줄씩 이동합니다.
bool turnaround=false;
if ((Aliens[0].pos.x<-5 & Aliens[0].vel.x<0)|(Aliens[3].pos.x>5&Aliens[3].vel.x>0))
{
turnaround=true;
if(Aliens[0].vel.x<0)
Aliens[0].animCtrl->SetTrackSpeed(0,1);
else
Aliens[0].animCtrl->SetTrackSpeed(0,-1);
}
그러나 이것은 현재 왼쪽이나 오른쪽에있는 사람이 파괴 된 경우 누군가가 if 문에 올 수있는 경우 (그들은 내가 궁금 변수
Aliens[i].dead = true
에 의해 파괴하거나의 경우 중첩 된 그 짧은 중지 먼 파괴 왼쪽 또는 오른쪽 것들을 통해 더 가면 말을하는 데 필요한 : 그건 그렇고/
감사합니다 :)
의도적으로 논리 OR ('||') 대신 비트 OR ('|')을 사용하고 있습니까 (AND와 동일)? 나는 네가 그렇다고 생각하지 않는다. 또한 ... '벡터'은 당신의 친구입니다. –
바이너리'|'와'&'연산자 또는 논리'||'와'&&'를 사용하고 싶습니까? – sholsapp
코드에 몇 가지 문제가 있습니다. 왜 for 루프를 사용하여 'Alien'목록을 반복하지 않습니까? 왜'.dead' 속성을 단지 목록에서 지우는 대신에 사용하고 있습니까? – kaoD