小编som*_*mer的帖子

了解SpriteKit:移动Sprite

这是我的第一篇文章,我正在尝试使用Apple的SpriteKit框架.

我相信我对如何使用框架移动精灵有误解.我有一个简单的例子,其中我想移动一个hero以简单UP,DOWN,LEFT,RIGHT基于所述的抽头位置的方向,相对于该"英雄"位置.一旦英雄命中一个block"英雄"应该停止.

出于测试目的,我只是试图点击屏幕顶部的"墙壁"上的"英雄".然后在碰撞发生后,点击"英雄"下方.我期待着"英雄"向底排的街区移动; 然而,似乎"英雄"继续向上移动并穿过顶墙.我相信我正在制造一个根本性的缺陷,我将不胜感激.

谢谢

这是我写的示例场景:

static inline CGPoint CGPointSubtract(const CGPoint a, const CGPoint b)
{
    return CGPointMake(a.x - b.x, a.y - b.y);
}

typedef enum DIRECTION_e
{
    UP,
    DOWN,
    LEFT,
    RIGHT
} DIRECTION_t;

typedef NS_OPTIONS(uint32_t, CNPhysicsCategory)
{
    PhysicsCategoryBlock  = 1 << 0,
    PhysicsCategoryHero   = 1 << 1
};

@interface LevelScene ()
    @property (nonatomic) SKSpriteNode * hero;
    @property (nonatomic) BOOL inMotion;
@end

@implementation LevelScene

-(id) initWithSize:(CGSize)size …
Run Code Online (Sandbox Code Playgroud)

objective-c ios ios7 sprite-kit

6
推荐指数
1
解决办法
4706
查看次数

标签 统计

ios ×1

ios7 ×1

objective-c ×1

sprite-kit ×1