私がいま作ってるシューテングゲームに会話の処理をいれたくて、会話の処理の勉強のためノベルゲームで桃太郎をつくっているのですが、touchの処理がうまくいきません。
import Foundation import SpriteKit import UIKit class River: SKScene { let window = SKSpriteNode(imageNamed: "メッセージ.png") override func didMove(to view: SKView) { let back = SKSpriteNode(imageNamed: "川.png") back.size = CGSize(width: self.size.width, height: self.size.height) back.position = CGPoint(x: self.size.width/2, y: self.size.height/2) addChild(back) window.anchorPoint = CGPoint(x:0,y:0) window.size = CGSize(width: self.size.width , height: self.size.height / 5) addChild(window) message(messageText: "むかしむかしあるところに") } //メッセージ処理 func message(messageText:String){ let message1 = SKLabelNode(text: messageText) message1.fontColor = .black message1.fontSize = 20 message1.position = CGPoint(x: window.size.width/2, y: window.size.height/2) let fadeout = SKAction.fadeOut(withDuration: 1.0) let sequenceAnim = SKAction.sequence([fadeout]) message1.run(sequenceAnim) addChild(message1) } override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) { message(messageText: "おじいさんとおばあさんが住んでいました。") message(messageText: "おじいさんは山へ芝刈りに") } }
このように書くと、タッチしたときに処理が重なってしまったり、画面から文字がはみ出てしまいます。
コードがとても汚いのですが、どうかよろしくお願いします。
あなたの回答
tips
プレビュー