0
首先我想說我還很沒經驗,我只是在上週開始編程。我正在開發我的第一個遊戲(和C++應用程序),我遇到了一個問題,並沒有設法解決它,我開始放棄。敵方邏輯|子彈重置
我可以正確地產生敵人,但現在我希望他們每個人每秒射擊一次。我使用這個代碼如下:
for (int i = 0; i < 200; i++)
{
if (enemy_basic[i].getPositionY() >= -100 && enemy_basic[i].getPositionY() <= 900)
{
if (enemyBasicLaserNumber[i] < 200 && enemyLaserTimer[i].getElapsedTime().asSeconds() > 1)
{
enemy_laser[enemyBasicLaserNumber[i]].setPosition(enemy_basic[i].getPositionX(), enemy_basic[i].getPositionY());
enemyLaserTimer[i].restart();
enemyBasicLaserNumber[i]++;
cout << enemyBasicLaserNumber[i] << endl;
}
if (enemyBasicLaserNumber[i] >= 199) enemyBasicLaserNumber[enemyBasicNumber] = 0;
}
}
現在,我知道有一些錯誤在那裏的某個地方,因爲子彈繼續得到只要有屏幕上的多個敵人重置回敵人(如只要它只有一個敵人,它就完美無缺),而且我仍然無法弄清楚需要改變什麼,或者如果我需要以完全不同的方式做到這一點。
如果有人能指引我朝着正確的方向或以某種方式幫助我,我會非常感激!
是的,我知道有更好的方式來構建我的代碼,而不是現在的方式,但我不知道哪些資源適合學習。我應該在尋找書籍,面向對象的教程,還是隻看開源遊戲?如果你能指出我正確的方向,那會很酷,謝謝! – user2558804