gpt4 book ai didi

ios - Tilemap 不在 spritekit 中滚动

转载 作者:塔克拉玛干 更新时间:2023-11-02 10:05:34 25 4
gpt4 key购买 nike

我正在 IOS 中开发一款涉及滚动图 block map 的小游戏。我已经让我的背景图片像这样滚动

- (void)moveBg
{
[self enumerateChildNodesWithName:@"scroll" usingBlock:
^(SKNode *node, BOOL *stop) {
SKSpriteNode * bg = (SKSpriteNode *) node;
CGPoint bgVelocity = CGPointMake(-BG_POINTS_PER_SEC, 0.0);
CGPoint amtToMove = CGPointMultiplyScalar(bgVelocity, _dt);
bg.position = CGPointAdd(bg.position, amtToMove);
}];
}

但是,如果我加载我的 tilemap 并将其命名为“scroll”,如下所示

- (TileMapLayer *)createLandScape
{

_tileMap = [JSTileMap mapNamed:@"level1.tmx"];
_tileMap.name=@"scroll";
return [[TmxTileMapLayer alloc]
initWithTmxLayer:[_tileMap layerNamed:@"Background"]];
}

我相信瓷砖 map 滚动不同于背景图像滚动。如果有人可以帮助我或为我指明正确的方向以完成任务,我会很高兴。

谢谢!

最佳答案

添加了 SKNode 的背景并添加了 tilemap 作为 child 。现在,当调用滚动背景代码时,它会滚动 tilemmap 以及 is

  SKSpriteNode * bg =
[SKSpriteNode spriteNodeWithImageNamed:@"bg"];
bg.anchorPoint = CGPointZero;
bg.position = CGPointZero;
bg.name = @"bg";
[self addChild:bg];
[bg addChild:_tileMap];

关于ios - Tilemap 不在 spritekit 中滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23149333/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com