2017-12-10 5 views
1

私は簡単なトリビアゲームを構築しています。しかし、アップデートの一環として、ゲームにもっと複雑なトリビアレベルを追加したいと思います。このレベルは、SpriteKitを使用してアニメーションやその他のもので構築されますが、どのように移行して、 spriteKitのゲームシーンをシンプルなシングルビューで素早く表示して、通常のView Controllerに戻すことができます。SpriteKitから1つのゲームシーンを通常のSingle View Swift Appに追加するにはどうすればいいですか?

私は周りを検索しましたが、この質問に対する具体的な回答は見つかりませんでした。

ご協力いただきまして誠にありがとうございます。あなただけで.sksのシーンを作成する必要があります

let scene = NewTriviaScene(fileNamed: "NewTriviaScene") 
scene?.scaleMode = .aspectFill 
self.view?.presentScene(scene!, transition: SKTransition.flipHorizontal(withDuration: 0.42)) // or whatever other transition 

:あなたはまだこれを実行しようとしているが、あなたのような何かをやって、かなり簡単のUIKitとSpriteKitベースシーンの間を移行できるかどう

+0

あなたはSpriteKitを使いたくないかもしれませんが、UIKitは高度なアニメーションを作成する能力以上のものです.SpriteKitを使用すると、必要以上に過重ではないかもしれません。 – Knight0fDragon

答えて

0

わかりません必要なコンテンツを作成し、作成したスウィフトコードファイルに 'カスタムクラス'を設定します。そのSWIFTコードファイルはSpriteKitベースをインポートし、SKScene次のようになります。

class NewTriviaScene: SKScene { } 

その後、あなたは、このコードファイルにカスタム動作やアニメーションを追加し、タッチやその他のイベントに応答することができます。トリビアの場合、主にタッチイベントに関係すると推測します。そして、あなたはタッチイベントまたはスコアまたは何の内側に、以前のように同様の方法で、新規のUIKitシーンをロードすることができ

override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) { 
    for t in touches { 
     let loc = t.location(in: self) 

     if atPoint(loc).name == "someName" { } 

:あなたはSKSファイル内のノードに名前を付け、のようなタッチの方法でそれらを参照することができます。

+0

ありがとうございました、今週はそれを試してみましょう。すべてがうまくいくなら私はあなたの答えを選びます – gmogames

関連する問題