ちょっと私は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( '|')を使用していますか?私はあなたがいるとは思わない。また... 'ベクトル'はあなたの友人です:) –
バイナリ '|'と '&'演算子、または論理 '||'と '&&'を使用することを意味しますか? – sholsapp
あなたのコードにはいくつかの問題があります。なぜforループを 'Alien'リストに対して繰り返し使用していないのですか?そのようなリストから単に削除するのではなく、なぜ '.dead'属性を使用していますか? – kaoD