2016-12-31 56 views
-2

我试图创建多个SKSpriteNodes,每个都有自己独立的变量,我可以改变/修改。我希望能够在应用程序启动时运行一个函数,例如“createSprites(5)”,它将随机的x和y坐标与图像/纹理“shape.png”一起创建5个精灵并将所有5个精灵添加到一个数组,我可以根据索引值访问和编辑不同的Sprite的位置。然后,我希望能够有另一个函数“addSprite()”,每次调用它时,都会创建一个具有相同“shape.png”纹理的新Sprite,并将它放置在另一个随机X和Y坐标处,并添加它给所有精灵的阵列,再次,可以在以后访问和更改坐标等斯威夫特3 - 函数来创建随机X精灵数n/y坐标

我一直在寻找通过许多其他的堆栈溢出的页面,似乎无法找到解决的办法。我的理想解决方案就是我前面提到的两个功能。一个用于创建“n”个Sprites,另一个用于在每次调用时创建并向该阵列添加一个Sprite。

希望是有道理的,我是相当新的雨燕而这一切雪碧的东西,就这么简单信息的答案将是非常赞赏。

+0

好吧,把它分解下来。你想做一项任务,并重复几次。一个简单的for循环覆盖后者。现在,你会怎么做一次? – Alexander

+4

@Terminal欢迎来到SO。我们的工作不是为您编写代码。我建议你尝试一下,即使你没有做太多的事情发布你所做的事情。那我们可以帮助你更好。没有人会为你制定整个项目。 –

回答

2

你不会找到从过去的理想解决方案,因为没有人可能有完全相同既斯威夫特和SpriteKit同样的愿望。话虽如此,你可以将部分答案混合在一起,并得到你想要的结果,或者至少了解如何去做。

雪碧定位在SK大概是上阅读起来的第一件事:

https://developer.apple.com/library/content/documentation/GraphicsAnimation/Conceptual/SpriteKit_PG/Sprites/Sprites.html

已经得到了那想通了,你可以移动到随机位置。

精灵的随机定位:

Duplicate Sprite in Random Positions with SpriteKit

Sprite Kit random positions

都使用早期版本的随机化是没有什么现已上市,在GameplayKit强大。所以...生成随机数字在斯威夫特与GameplayKit: https://www.hackingwithswift.com/read/35/overview

很难夸大的理解不同类型随机化的游戏设计影响的各种可能性的重要性,所以可能是明智的阅读,从苹果:

https://developer.apple.com/library/content/documentation/General/Conceptual/GameplayKit_Guide/RandomSources.html

之后,它的需要来决定什么是在其中创建于更多的随机位置更精灵时间或事件的情况下,你想怎么挑剔约为靠近其他精灵,和重叠。