【问题标题】:How to make a jump sprite如何制作跳跃精灵
【发布时间】:2014-10-21 07:32:06
【问题描述】:

我正在为一个学校项目构建一个洛克人克隆,我刚刚完成了让我的角色跳跃的代码,它运行良好。但我需要它来显示洛克人的实际跳跃精灵。这是 Game1 中的完整代码: http://pastebin.com/py7Y7mtD AnimatedSprites jt 帮助您决定方向并显示精灵。现在没关系,如果它是有效的。这只是开始。当我遇到更复杂的东西时,我会处理它。 MegamanJump 有跳跃精灵(从左到右显示 5 或 6 个精灵) MegamanJump_Flip 是同样的东西,但在左边(再次忘记效率)。

【问题讨论】:

    标签: xna 2d


    【解决方案1】:

    基本上你想根据移动方向或移动方向+跳跃来用你想要绘制的精灵切换当前的可绘制精灵。

    由于您已经有一个正在运行的更新方法,您所要做的就是编写另一个为您执行此操作的方法,一个状态变量来跟踪正在发生的事情以及它可能具有的实际状态,为了清楚起见,最好在一个枚举中。

    基本上

    private void swapSprite() {
       if(state == CharacterState.LEFT) {
         sprite = leftDrawable;
       }
       //etc other single ifs
       if(state == CharacterState.LEFTJUMPING) {
         sprite = leftJumpDrawable;
       }
    }
    

    改变按键组合状态,检查移动后调用该方法。

    我希望这会有所帮助!

    【讨论】:

    • 我可能会补充一点,您不一定需要为每个方向使用单独的精灵。绘制精灵时只需使用 SpriteEffect.FlipHorizo​​ntal :)
    • 是的,我知道我的 Character 课程中有它,但我需要进行很多更改。我只是赶时间,所以我会以最愚蠢和最简单的方式来做。
    • 我知道我应该对所有事情都使用枚举,但这不是我需要的。它根本不绘制跳跃精灵。如果你向上按,支架精灵只会上升然后向下返回,如果你按向上和向左或向右,同样的事情。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多