垂直滚动,可以更容易吗?

时间:2014-07-24 09:30:07

标签: cocos2d-iphone

我正在设计一个简单的游戏,比如太空入侵者。游戏场景有一个CCNode(_levelNode),我在其中加载了级别。 我的问题是关于滚动,在更新方法中我向上移动_hero和_physicsNode。

这是我的更新方法:

    - (void)update:(CCTime)delta {

if (heroAlive) {


    //scrolling
    _hero.position = ccp(_hero.position.x, _hero.position.y + _level.levelSpeed);
    _physicsNode.position = ccp(_physicsNode.position.x, _physicsNode.position.y - _level.levelSpeed);



    //tilting : Moving the hero left and right
    float maxX = winSize.width - _hero.contentSize.width/4;
    float minX = _hero.contentSize.width/4;


    CMAccelerometerData *accelerometerData = _motionManager.accelerometerData;
    CMAcceleration acceleration = accelerometerData.acceleration;
    CGFloat newXPosition = _hero.position.x + acceleration.x * 1000 * delta;
    newXPosition = clampf(newXPosition, minX, maxX);
    _hero.position = CGPointMake(newXPosition, _hero.position.y);


    [self removeLasers];
}

}

以上工作正常,但我想知道我能否更轻松,更快地完成任务。有了这个,我还必须手动移动所有的激光器#39; removeLasers方法可以做到这一点,如果它们到达可见级别的末尾也会移除激光。

所以,如果你们有任何关于如何使我的游戏更容易构建的提示,我会很感激!!

下面有关游戏到目前为止的图片(使用的图像是工作图像): enter image description here

0 个答案:

没有答案