首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >一次多个动画

一次多个动画
EN

Stack Overflow用户
提问于 2010-07-02 21:15:16
回答 1查看 199关注 0票数 0

我正在制作一个小行星游戏,但我不能一次玩多个爆炸。一次只做一件事...

这是我在主循环中调用的代码:

代码语言:javascript
复制
for(i = 0; i < MAX_SHOTS; i++) {
    for(j = 0; j < MAX_ASTEROIDS; j++) {
        if(shot[i].CheckCollision(asteroide[j])) {
            shot[i].SetPos(-100, 0);
            explosionSnd.Play();

            numAst = j;
            explosion[numExp++].Enable(true);

            if(numExp == MAX_EXPLOSIONS-1) {
                numExp = 1;
            }
        }
    }
}

for(i = 1; i < MAX_EXPLOSIONS; i++) {
    if(explosion[i].Enable()) {
        explosion[i].SetPos(asteroide[numAst].GetX(), asteroide[numAst].GetY());
        explosion[i].Draw();
        if(explosion[i].GetFrame() == 5) {
            explosion[i].Enable(false);
        }
    }
}

如果我向一颗小行星射击,在我向另一颗小行星射击后,动画被剪切并转到新的小行星上。

有什么帮助吗?

谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-07-02 21:22:02

在您的第二个循环中,您正在将每个爆炸移动到小行星asteroide[numAst]的位置-您正在播放所有的爆炸,都在同一个地方!

在第一个循环中创建爆炸时,应该只在Enable(true)它之后定位它一次,而不是每次绘制它时。

希望这能有所帮助。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3165964

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档