i working on project 20 sprites , noticing lot of code repetition. sprites named: sprite1, sprite2, sprite3.... looking way reference sprite based on 2 variables. first being "sprite" , second being integer, can change or loop through range @ time. possible this? random example:
x = 1 while x <= 10 { sprite & x.physicsbody.affectedbygravity = true x++ } instead of:
sprite1.physicsbody.affectedbygravity = true sprite2.physicsbody.affectedbygravity = true sprite3.physicsbody.affectedbygravity = true sprite4.physicsbody.affectedbygravity = true sprite5.physicsbody.affectedbygravity = true so on...
this simple as:
for sprite in [sprite1, sprite2, sprite3, /* ... */] { sprite.physicsbody.affectedbygravity = true } however, having bunch of local variables (or instance variables) sprite1, sprite2, etc suggests you're not making use of tools in other way. what's meaningful these sprites? there way can use scene structure better manage them?
for example, if of nodes want turn gravity on children of same parent node, instead like:
for sprite in somecontainernode.children { sprite.physicsbody.affectedbygravity = true } or, if there's subset of nodes in scene need for, give them same name (say, in spritekit scene editor in xcode) , use find them:
scene.enumeratechildnodeswithname("needsgravity") { node, stop in node.physicsbody.affectedbygravity = true }
Comments
Post a Comment