在rpg中指定地图边界的最佳方法是什么?[iOS]



我在为我的城镇创建边界时遇到了一些麻烦。我现在正在使用SpriteKit创建一个rpg,我为我的角色制作了一个简单的城镇。很明显,现在他正在穿过所有的房子/水/围栏,因为这只是一个背景图像。

指定他无法穿过的区域的最佳方式是什么?(如果是的话,我想这是一个次要的子问题。有人能推荐我应该如何绘制我的图像吗?有没有什么工具可以让我粘贴我的图像,它会告诉我点击的坐标?)

这是否意味着绘制每栋房子的坐标并在其周围创建边界?或者我应该将每个房子/围栏/水体创建为一个节点?

在房屋、墙壁等位置创建SKSpriteNodes

你可以做出这样的边界:

SKSpriteNode boundary1 = [SKSpriteNode spriteNodeWithColor:[SKColor Black] size: CGSizeMake(0,0)];
boundary1.physicsBody = [SKPhysicsBody bodyWithRectangleOfSize: CGSizeMake(boundary1 height,boundary1 width)];
boundary1.position = CGPointMake(boundary1 x loc, boundary1 y loc);
boundary1.categoryBitMask = boundaryCategory;
boundary1.collisionBitMask = mainPlayerCategory;

通过将主角的身体设置为与主角碰撞,SpriteKit将自动确保玩家只能通过适当的区域。

请确保玩家设置为与boundaryCategory冲突。

最新更新