Sto lavorando alla mia prima app SpriteKit in Xcode 6, che codifica in Swift. Ora ho creato alcuni bei pulsanti dai file png trasparenti. Ma sto cercando di mostrare un effetto visivo quando viene premuto il pulsante.Aggiunta di un effetto visivo a un SKSpriteNode quando viene premuto
Esempio di come io ora mostrare un pulsante statica:
let playButton = Button(imageNamed:"playButton")
playButton.position = CGPointMake(self.size.width/2, self.size.height/2 - playButton.size.height * 2.5 - displacement)
self.sharedInstance.addChildFadeIn(playButton, target: self)
Qualsiasi effetto sarebbe sufficiente, forse un effetto di impulso, o bagliore sulla stampa. Ho cercato, ma non riesco davvero a trovare nulla in Swift.
edit: più informazioni
class Button: SKSpriteNode {
init(imageNamed: String) {
let texture = SKTexture(imageNamed: imageNamed)
// have to call the designated initializer for SKSpriteNode
super.init(texture: texture, color: nil, size: texture.size())
}
override func touchesBegan(touches: NSSet, withEvent event: UIEvent) {
self.runAction(SKAction.scaleTo(1.3, duration: kButtonFadingSpeed))
}
override func touchesMoved(touches: NSSet, withEvent event: UIEvent) {
self.runAction(SKAction.scaleTo(1.3, duration: kButtonFadingSpeed))
}
override func touchesEnded(touches: NSSet, withEvent event: UIEvent) {
self.runAction(SKAction.scaleTo(1.0, duration: kButtonFadingSpeed))
}
required init(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
}
func addChildFadeIn(node: SKNode, target: SKNode) {
node.alpha = 0
target.addChild(node)
node.runAction(SKAction.fadeAlphaTo(1.0, duration: NSTimeInterval(kAddChildSpeed)))
}
La funzione AddChildFadeIn
è definita in classe: singleton
Ogni aiuto è molto apprezzato!
Che cos'è il pulsante? Dove è definito addChildFadeIn? –
Ho modificato il post con queste informazioni. Potresti aiutarmi? –
Purtroppo non conosco SpriteKit. Ho aggiornato il titolo e i tag per rendere la tua domanda più rilevabile da persone che possono rispondere. –