Ich habe wie unten gekennzeichnet:Wie kann ich eine Anzahl von SpriteNodes innerhalb der Bildschirmgröße erscheinen lassen und sich innerhalb des Bildschirms bewegen?
func spriteCollection(count : Int) -> [SKSpriteNode]{
var spriteArray = [SKSpriteNode]()
for _ in 0..<count {
let sprite = SKSpriteNode(imageNamed: "node.png")
//giving random position to sprites, but problem is some sprites are going invisible. How do I make it appear inside the view?
let x = CGFloat(arc4random_uniform(UInt32(UIScreen.mainScreen().bounds.size.height)))
let y = CGFloat(arc4random_uniform(UInt32(UIScreen.mainScreen().bounds.size.width)))
sprite.position = CGPoint(x: x, y: y)
spriteArray.append(sprite)
}
return spriteArray
}
override func didMoveToView(view: SKView) {
let spriteCollection = spriteCollection(10)
for sprite in spriteCollection{
//facing problem here, not sure how to move it inside the view
let x = CGFloat(arc4random_uniform(UInt32(size.height)))
let y = CGFloat(arc4random_uniform(UInt32(size.width)))
let action = SKAction.moveTo(CGPoint(x: x , y: y), duration: 5)
sprite.runAction(action)
addChild(sprite)
}
}
Das Problem, das ich ist jetzt mit Blick auf bin, wenn ich Zählung 10 bis spriteCollection
passieren, ich nur 5 oder 6 Sprites sehen und ruhen alle versteckt sind. Ich möchte nur alle Sprites innerhalb der Bildschirmgröße erscheinen lassen und wenn ich Bewegung mache, sollte ihre Position auch innerhalb des Bildschirms sein. Ich arbeite im Querformat. Könnte mir bitte jemand helfen, dieses Problem zu lösen ..
So die Größe der Szene überprüfen und die Spawn-Koordinaten prüfen und sehen, ob einige Knoten sind off- Bildschirm ... – Whirlwind
Ich habe gerade die Positionen der Knoten sowie die Breite und Höhe der Ansicht gedruckt. Optional (667,0) <--- Ansicht der Breite Optional (375,0) <--- Ansicht der Höhe x und y-Positionen aller Knoten unter (492,0, 62,0) (479,0, 67,0) (189,0, 248,0) (91,0 , 298,0) (54,0, 214,0) (490,0, 155,0) (590,0, 224,0) (127,0, 122,0) (328,0, 233,0) (204,0, Sieht aus 195,0) wie alle Koordinaten innerhalb sind aber noch einige Knoten sind nicht sichtbar. Was mache ich falsch? –
Wie groß ist die Szene? (Sie fügen der Szene Knoten hinzu). Die Szene kann eine andere Größe als die Ansicht haben. Standardmäßig ist die Szenengröße 1024 x 768, wenn Sie sie aus der .sks-Datei laden. – Whirlwind