###前提・実現したいこと
ここに質問したいことを詳細に書いてください
swift3で円の図形と中に文字を入れたノードを作りそれを一つのノードとして作りたい。
又は扱いたい。
###発生している問題・エラーメッセージ
今、円と中に文字を入れた二つのノードを作り。クリックするとその個々のノードを動かしたいのですが、現在、円と中の文字が別々の動きをします。
原因は円と文字が別々のノードで作成されており最初のクリックで文字が反応し上の方に飛んでいき、もう一度空の円をクリックすると x=600の位置に動きます。
エラーメッセージ
###該当のソースコード
言語 swift3
ここにご自身が実行したソースコードを書いてください
import SpriteKit
import GameplayKit
class GameScene: SKScene {
var ball:SKShapeNode? // メッセージを表示するラベルノードを作ります let msgLabel = SKLabelNode(fontNamed: "HiraKakuProN-W3") var msg:String = "違う漢字をタッチしよう" override func didMove(to view: SKView) { // 背景を白にします self.backgroundColor = UIColor.white // メッセージラベルを表示します msgLabel.text = msg msgLabel.fontSize = 36 msgLabel.fontColor = UIColor.red msgLabel.position = CGPoint(x: 320, y: 1080) self.addChild(msgLabel) for loopID in 0..<2 { let ball = SKShapeNode(circleOfRadius: 45) ball.fillColor = UIColor(red: 1.0, green: 0.9, blue: 0.6, alpha: 1.0) ball.position = CGPoint(x:loopID * 100 + 70, y: 500) // ballフィルドに保存 self.ball = ball // シーンに表示します self.addChild(ball) // 漢字を表示するラベルノードを作ります let kanji = SKLabelNode(fontNamed: "HiraKakuProN-W6") kanji.text = "間" kanji.fontSize = 60 kanji.fontColor = UIColor.black kanji.position = CGPoint(x:0, y: -25) // ボールに漢字を追加します ball.addChild(kanji) } } override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) { if let touch: AnyObject = touches.first { //タップした場所を取得 let location = (touch ).location(in: self) //タップした一番上のNodeを取得 let tNode = self.nodes(at: location).first let action = SKAction.move(to: CGPoint(x: location.x, y: 600), duration: 0.2) // タッチ位置にあったNode. tNode!.run(action) print(tNode!) print(location.x) print(location.y) } }
}
###試したこと
課題に対してアプローチしたことを記載してください
###補足情報(言語/FW/ツール等のバージョンなど)
より詳細な情報
###前提・実現したいこと
ここに質問したいことを詳細に書いてください
(例)PHP(CakePHP)で●●なシステムを作っています。
■■な機能を実装中に以下のエラーメッセージが発生しました。
###発生している問題・エラーメッセージ
エラーメッセージ
###該当のソースコード
ここにご自身が実行したソースコードを書いてください
###試したこと
課題に対してアプローチしたことを記載してください
###補足情報(言語/FW/ツール等のバージョンなど)
より詳細な情報
あなたの回答
tips
プレビュー