0

我正在使用 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];
}

这是行不通的。

4

0 回答 0