gpt4 book ai didi

ios - SpriteKit - 旋转和跳跃同时结束

转载 作者:行者123 更新时间:2023-12-01 16:43:12 25 4
gpt4 key购买 nike

Sprite Kit 和游戏开发新手 我正在学习 Following tutorial @ 雷文德利希 .

WHAT I AM DOING ?

我已经在 map 上实现了连续运动,在播放器上实现了重力,我知道可以像这样将旋转 Action 添加到 SKSpriteNode 中。

        SKAction *action = [SKAction rotateByAngle:M_PI duration:1];

[myPlayer runAction:[SKAction repeatActionForever:action]];

而我的重力播放器如下

MSPlayer.h
#import <SpriteKit/SpriteKit.h>

@interface MSPlayer : SKSpriteNode
@property (nonatomic, assign) CGPoint velocity;
- (void)update:(NSTimeInterval)delta;
@end

MSPlayer.m
#import "MSPlayer.h"
#import "SKTUtils.h"

@implementation MSPlayer
//2
- (instancetype)initWithImageNamed:(NSString *)name {
if (self == [super initWithImageNamed:name]) {
self.velocity = CGPointMake(0.0, 0.0);
}
return self;
}

- (void)update:(NSTimeInterval)delta {
//3
CGPoint gravity = CGPointMake(0.0, -10.0);
//4
CGPoint gravityStep = CGPointMultiplyScalar(gravity, delta);
//5
self.velocity = CGPointAdd(self.velocity, gravityStep);
CGPoint velocityStep = CGPointMultiplyScalar(self.velocity, delta);
//6
self.position = CGPointAdd(self.position, velocityStep);
}
-(CGRect)collisionBoundingBox {
return CGRectInset(self.frame, 2, 0);
}

@end

My Issue is

现在的问题是我希望节点旋转并让它在重力下跳跃,并且旋转在节点即将结束跳跃之前结束。应该怎么做才能使两个动画同时结束?

最佳答案

为 Jumping 编写另一个 runAction

[myPlayer runAction:[SKAction repeatActionForever:runAction]];

在此处定义 runAction。

关于ios - SpriteKit - 旋转和跳跃同时结束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22405011/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com