可变图像

时间:2016-09-24 02:48:40

标签: xcode sprite-kit swift3

    Ghost = SKSpriteNode(imageNamed: "Ghost1")
    Ghost.size = CGSize(width: 50, height: 50)
    Ghost.position = CGPoint(x: self.frame.width / 2 - Ghost.frame.width, y: self.frame.height / 2)

    Ghost.physicsBody = SKPhysicsBody(circleOfRadius: Ghost.frame.height / 1.4)
    Ghost.physicsBody?.categoryBitMask = PhysicsCatagory.Ghost
    Ghost.physicsBody?.collisionBitMask = PhysicsCatagory.Ground | PhysicsCatagory.Wall
    Ghost.physicsBody?.contactTestBitMask = PhysicsCatagory.Ground | PhysicsCatagory.Wall | PhysicsCatagory.Score
    Ghost.physicsBody?.affectedByGravity = false
    Ghost.physicsBody?.isDynamic = true

    Ghost.zPosition = 2


    self.addChild(Ghost)

在我的应用程序上,我有一个在屏幕上移动的对象,它的名字是“幽灵”。我不知道如何设置一个按钮来改变代码

Ghost = SKSpriteNode(imageNamed: "Ghost2")

而不是

Ghost = SKSpriteNode(imageNamed: "Ghost1")

1 个答案:

答案 0 :(得分:3)

要更改SKSpriteNode的图像,请指定不同的纹理:

function nextStep (arrayOfLinks) { 
    var promiseArray = [];

    for(var i = 0; i < arrayOfLinks.length; i++) {
        var link = requestPromise(arrayOfLinks[i]);
        promiseArray.push(link);
    }   

    return Promise.all(promiseArray)                
}

注意:您应该使用小写字母表示变量名称,以区别于类名。

包含Button和Ghost的示例实现如下图所示,右上角创建了一个红色按钮。看到按钮和ghost的声明现在出现在didMoveToView之外,以便稍后当用户点击屏幕时可以引用这些变量。

Ghost.texture = SKTexture(imageNamed:"Ghost2")

当用户点击屏幕时,会执行touchesBegan并进行检查以查看用户点击是否在按钮上。