1. mochizukikotaro

    No comment

    mochizukikotaro
Changes in body
Source | HTML | Preview
@@ -1,10 +1,56 @@
-あるシーンからResultSceneへの遷移をする場合。
+## あるシーンからResultSceneへの遷移をする場合。
```swift
let tr = SKTransition.revealWithDirection(SKTransitionDirection.Down, duration: 1)
let newScene = ResultScene(size: self.scene.size)
newScene.scaleMode = SKSceneScaleMode.AspectFill
self.scene.view.presentScene(newScene, transition: tr)
```
デフォルトでは、スケールモードがAspectFillになっているので、コレを設定しておいた方が遷移後のシーンのアスペクト比がずれないので良いと思います。
+
+
+## ラベルをタップしたら遷移する場合。
+
+TitleSceneからGameSceneへの移動。Startラベルをタップしたら遷移するように設定しています。
+
+`if touchedNode.name {}`の部分などは冗長な気がしているのですが、よくわからず、今のところこのようにしています。もっと綺麗な方法がありそうです…。
+
+
+```swift:TitleScene.swift
+
+import SpriteKit
+
+class TitleScene: SKScene {
+
+ override func didMoveToView(view: SKView) {
+
+ let startLabel = SKLabelNode(fontNamed: "Copperplate")
+ startLabel.text = "Start"
+ startLabel.fontSize = 50
+ startLabel.position = CGPoint(x: 512, y: 300)
+ startLabel.name = "Start"
+ self.addChild(startLabel)
+ }
+
+ override func touchesBegan(touches: NSSet, withEvent event: UIEvent) {
+
+ for touch in touches {
+ let location = touch.locationInNode(self)
+ let touchedNode = self.nodeAtPoint(location)
+
+ if touchedNode.name {
+
+ if touchedNode.name == "Start" {
+ let tr = SKTransition.revealWithDirection(SKTransitionDirection.Down, duration: 1)
+ let newScene = GameScene(size: self.scene.size)
+ newScene.scaleMode = SKSceneScaleMode.AspectFill
+ self.scene.view.presentScene(newScene, transition: tr)
+ }
+ }
+ }
+ }
+
+ override func update(currentTime: CFTimeInterval) {}
+}
+```