Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

Struttura della classe GameScene

Strutturare la classe GameScene, elemento fondamentale di ogni game app per iOS basata su SpiteKit, utilizzando Xcode ed il linguaggio Swift.
Strutturare la classe GameScene, elemento fondamentale di ogni game app per iOS basata su SpiteKit, utilizzando Xcode ed il linguaggio Swift.
Link copiato negli appunti

Iniziamo a lavorare sulla classe GameScene per poter eseguire il gioco man mano che lo costruiamo. Prima di tutto apriamo il file GameScene.sks, clicchiamo col tasto destro sull’elemento helloLabel e selezioniamo la voce Delete.

Si tratta di un oggetto di classe SKLabelNode, aggiunta di default da Xcode quando creiamo un progetto SpriteKit; l'abbiamo eliminata perchè non ne avremo bisogno.

Figura 25 (click per ingrandire)


Apriamo quindi il file GameScene.swift e sovrascriviamolo con il seguente codice:

import SpriteKit
class GameScene: SKScene {
    private var mouse: Mouse!
    override func didMove(to view: SKView) {
        startGame()
    }
    private func startGame() {
        mouse = Mouse(gameScene: self)
        mouse.position = CGPoint(x: -frame.width / 4, y: frame.midY)
        addChild(mouse)
        self.physicsWorld.gravity = .zero
    }
    override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
        mouse.fly()
    }
    func didDie() {
    }
}

Non appena la scena viene presentata nella view, SpriteKit invocherà il metodo didMove():

override func didMove(to view: SKView) {
        startGame()
    }

Al suo interno viene invocato startGame(), che a sua volta crea l’oggetto Mouse e lo aggiunge alla scena.

Ogni volta che l'utente tocca lo schermo, SpriteKit si occupa, inoltre, di eseguire il metodo seguente:

override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
        mouse.fly()
    }

Nel nostra caso, utilizzeremo il metodo touchesBegan per comunicare a Mouse che deve avviare la sequenza di animazioni relative all’accensione del razzo che lo spingeranno in alto.

Si noti, inoltre, che al momento abbiamo definito un metodo vuoto chiamato didDie(); ciò è necessario per far sì che il progetto possa essere compilato correttamente.

Possiamo ora avviare il gioco sul simulatore, utilizzando la combinazione di tasti CMD + R. Toccando lo schermo, vedremo che il razzo di Mouse si accenderà, ed il nostro personaggio salità verso l'alto per poi ricadere, come mostrato nella GIF seguente.

Figura 26 (click per ingrandire)


Ti consigliamo anche