我正在创建一个射击游戏,您可以在其中触摸屏幕并让玩家射击。我遇到的问题是,当您触摸屏幕并保持向下拖动它时,它会迅速射击。处理这个问题的最佳方法是什么?
我希望玩家能够按住手指并以稳定的速度射击,并在手指向上停止射击。
我正在考虑只使用计时器,但我认为这不是很有效......还有其他想法吗?
谢谢
我正在创建一个射击游戏,您可以在其中触摸屏幕并让玩家射击。我遇到的问题是,当您触摸屏幕并保持向下拖动它时,它会迅速射击。处理这个问题的最佳方法是什么?
我希望玩家能够按住手指并以稳定的速度射击,并在手指向上停止射击。
我正在考虑只使用计时器,但我认为这不是很有效......还有其他想法吗?
谢谢
我真的很想看到更多关于你如何实施拍摄的细节,但让我为你提供一种方法来实现这一点:
CCScheduler
来安排方法调用,而不是使用计时器。这是非常有效的。您不必担心性能。以下是一些帮助您入门的代码:
注意:我在 cocos2d v2.0 中使用 cocos2d v1.0.1 ..,我认为它CCScheduler
已移至CCDirector
.
- (void)init {
// ...
[[CCScheduler sharedScheduler] scheduleSelector:@selector(shoot:) forTarget:self interval:0.2f paused:NO];
// ...
}
- (void)shoot:(ccTime)dt {
if (userIsTouching) {
[player shoot];
}
}