在「Galaga」(我最喜歡的射手遊戲成長)的背景下製作一款新的射手遊戲。iPhone射擊遊戲子彈物理!
下面的代碼我有子彈物理學:
-(IBAction)shootBullet:(id)sender{
imgBullet.hidden = NO;
timer = [NSTimer scheduledTimerWithTimeInterval:0.05 target:self selector:@selector(fireBullet) userInfo:Nil repeats:YES];
}
-(void)fireBullet{
imgBullet.center = CGPointMake(imgBullet.center.x + bulletVelocity.x , imgBullet.center.y + bulletVelocity.y);
if(imgBullet.center.y <= 0){
imgBullet.hidden = YES;
imgBullet.center = self.view.center;
[timer invalidate];
}
}
無論如何,最明顯的問題是,一旦子彈離開屏幕,它的中心是被重置,所以我重用相同每按一下「火」按鈕的子彈。
理想情況下,我希望用戶能夠在不導致程序崩潰的情況下發送「火災」按鈕。我該如何修改這個現有的代碼,以便每次按下按鈕時都會產生一個子彈對象,然後在它離開屏幕後退出,或者與敵人發生衝突?
感謝您提供任何幫助!
我明白gamestates的問題,當然。這應該不成問題。 但是,我仍然有點困惑你的描述,當用戶按下「火」按鈕時應該發生什麼。有沒有辦法可以更詳細地解釋它?感謝您的幫助! – user298261 2010-04-24 19:25:04
仍然有問題...請介意給我多一點解釋? :P – user298261 2010-04-25 06:49:26
還是有點困惑。 :( 我想弄清楚爲什麼數組實現以及它應該做什麼。提供更多的細節介紹?我理解僞代碼的其餘部分相當不錯。還有,「fire按鈕按下「的方法應該代表IBAction? 謝謝! – user298261 2010-04-26 07:04:05