我正在使用 Cocos2D 和 SneakyInput 操纵杆制作格斗游戏。我有一个角色和这个角色的一些动画。(walkAnim、attackAnim、jumpAnim...等)
我想做这样的事情:当我按下 jumpButton 时,角色将运行 ccjumpby 和 jumpAnim。
在角色跳跃时,我按下attackButton 让角色运行attackAnim,而角色仍在运行ccjumpby。
没有attackbutton,角色仍然运行jumpAnim 和ccjumpby。
我想做的只是像“街头霸王”一样。
在 character.m 中,我有:
- (void) jumpButtonPress {
id action = nil;
id movementAction = nil;
CGPoint newPosition;
newPosition = ccp(screenSize.width * 0.2f, 0.0f);
if ([self flipX] == YES) {
newPosition = ccp(newPosition.x * -1.0f, 0.0f);
}
movementAction = [CCJumpBy actionWithDuration:1.5f
position:newPosition
height:160.0f
jumps:1];
action = [CCSequence actions:
[CCAnimate
actionWithAnimation:crouchingAnim
restoreOriginalFrame:NO],
[CCSpawn actions:
[CCAnimate
actionWithAnimation:jumpingAnim
restoreOriginalFrame:YES],
movementAction,
nil],
[CCAnimate
actionWithAnimation:afterJumpingAnim
restoreOriginalFrame:NO],
nil];
[self runAction:action];
}
- (void) attackButtonPressed {
action = [CCAnimate
actionWithAnimation:rightPunchAnim
restoreOriginalFrame:NO];
[self runAction:action];
}
这是行不通的。