3

我有一些关于我一直在研究的乒乓球游戏的代码: 代码示例显示当球击中窗口底部时,球会重置到窗口中间。我想要实现的是,我希望能够添加一些代码,以便如果球击中窗口顶部,球将重置回中间。谁能帮我这个?

//...

// IF BALL GETS PAST PLAYER PADDLE AND TOUCHES BOTTOM OF SCREEN
if (GetPosition().y - GetHeight()/2 <= 0)
{
    _angle = 180 - _angle;
    moveByY = -moveByY;
}

if (GetPosition().y + GetHeight()/2 + moveByY >= Game::SCREEN_HEIGHT)
{
    // RESET BALL TO MIDDLE OF SCREEN AND RESET TIMER TO 0
    GetSprite().SetPosition(Game::SCREEN_WIDTH/2, Game::SCREEN_HEIGHT/2);
    _angle = (float)sf::Randomizer::Random(0,360);
    _velocity = 220.0f;
    _elapsedTimeSinceStart = 0.0f;
}

//...
4

1 回答 1

1

我想通了,添加了更多条件语句来检查边界,如果球击中顶部,则将球重置到屏幕中间。

于 2013-10-12T19:24:40.063 回答