我想使用按钮上下移动我的精灵。由于你不能在精灵套件中使用UIButton我使用不同的SpriteKitNodes。节点将是箭头图像。但我想使用箭头图像移动我的原始精灵,但只需触摸它。我以为我会使用SKAction,但我被卡住了。是否可以使用另一个精灵移动一个精灵?
答案 0 :(得分:0)
SpriteKit中可能没有任何按钮规定,但可以轻松地将SKSpriteNode子类化为按钮。我创建了一个可以在GitHub here上找到的类。
不建议使用SKAction
基于方向按钮进行移动。相反,您需要使用标记作为方向按钮,您将在-update:
方法中移动节点。
将标志保存为实例变量。
@implementation MyScene
{
BOOL upDirection;
BOOL downDirection;
}
在-initWithSize:
方法中将它们初始化为FALSE。
这是你应该如何处理-update方法中的标志:
-(void)update:(CFTimeInterval)currentTime
{
/* Called before each frame is rendered */
if (upDirection)
{
myNode.position = CGPointMake(myNode.position.x, myNode.position.y + 5); //Increment value can be adjusted
}
if (downDirection)
{
myNode.position = CGPointMake(myNode.position.x, myNode.position.y - 5); //Decrement value can be adjusted
}
}