我遇到了我的英雄角色的问题,当他落在一个移动的平台上,而不是随着它一起移动时,他确实站在同一个X位置,直到平台离开屏幕.我搜索了许多答案但没有用.
这是我的英雄角色和移动平台的方法.
-(void)HeroAdd
{
_Hero = [SKSpriteNode spriteNodeWithImageNamed:@"Hero-1"];
_Hero.name = @"Daniel";
_Hero.physicsBody = [SKPhysicsBody bodyWithRectangleOfSize:_Hero.size];
_Hero.physicsBody.categoryBitMask = fPlayerCategory;
_Hero.physicsBody.contactTestBitMask = fPlatformCategory | fEnemyCategory;
_Hero.physicsBody.usesPreciseCollisionDetection = YES;
_Hero.physicsBody.affectedByGravity = YES;
_Hero.physicsBody.dynamic = YES;
_Hero.physicsBody.friction = .9;
_Hero.physicsBody.restitution = 0;
_Hero.position = CGPointMake(CGRectGetMidX(self.frame), CGRectGetMidY(self.frame));
_Hero.position = CGPointMake(_Hero.position.x - 252, _Hero.position.y + 50);
if (self.size.width == 480) {
_Hero.position = CGPointMake(_Hero.position.x + 44, _Hero.position.y);
}
[self addChild:_Hero];
}
Run Code Online (Sandbox Code Playgroud)
我的移动平台代码
-(void)createPlatform {
SKTexture *objectTexture;
switch (arc4random_uniform(2)) {
case (0):
objectTexture = [SKTexture textureWithImageNamed:@"shortPlatform"];
break; …Run Code Online (Sandbox Code Playgroud)