当前位置: 首页 > 知识库问答 >
问题:

如何将游戏推进到下一个关卡

柳培
2023-03-14
{
    private char[][] level1 = {
        {'#', '#', '#', '#', ' ', ' ', ' ', ' ', ' ', ' '},
        {'#', ' ', '|', '#', ' ', ' ', ' ', ' ', ' ', ' '},
        {'#', ' ', ' ', '#', '#', '#', ' ', ' ', ' ', ' '},
        {'#', ' ', '@', ' ', ' ', '#', ' ', ' ', ' ', ' '},
        {'#', ' ', ' ', '$', ' ', '#', ' ', ' ', ' ', ' '},
        {'#', ' ', ' ', '#', '#', '#', ' ', ' ', ' ', ' '},
        {'#', '#', '#', '#', ' ', ' ', ' ', ' ', ' ', ' '}
    };
    
    private char[][] level2 = {
        {'#', '#', '#', '#', '#', ' ', ' ', ' ', ' '},
        {'#', '@', ' ', ' ', '#', ' ', ' ', ' ', ' '},
        {'#', ' ', '$', '$', '#', ' ', '#', '#', '#'},
        {'#', ' ', '$', ' ', '#', ' ', '#', '|', '#'},
        {'#', '#', '#', ' ', '#', '#', '#', '|', '#'},
        {' ', '#', '#', ' ', ' ', ' ', ' ', '|', '#'},
        {' ', '#', ' ', ' ', ' ', '#', ' ', ' ', '#'},
        {' ', '#', ' ', ' ', ' ', '#', '#', '#', '#'},
        {' ', '#', '#', '#', '#', '#', ' ', ' ', ' '},
    };
    
    private char[][] level3 = {
        {'#', '#', '#', '#', '#', '#', ' '},
        {'#', ' ', ' ', ' ', ' ', '#', ' '},
        {'#', ' ', '#', '@', ' ', '#', ' '},
        {'#', ' ', '$', '*', ' ', '#', ' '},
        {'#', ' ', '|', '*', ' ', '#', ' '},
        {'#', ' ', ' ', ' ', ' ', '#', ' '},
        {'#', '#', '#', '#', '#', '#', ' '},
    };

public void act() {
\\game code here

if (testLevelComplete() == true) {
            levelComplete();   
        }
        
    }
   
    
    public void levelComplete()
    {
        int currentLevel = 0;
        currentLevel = currentLevel + 1;
        showWarning("Level Complete! Current level is " + currentLevel);
        if (currentLevel == 1) {
            loadLevel(level1);
        } else {
        if (currentLevel == 2) {
            loadLevel(level2);
        } else {
         if (currentLevel == 3) {
            loadLevel(level3);
        } else {
        if (currentLevel > 3) {
            showWarning("Level Complete! No more levels.");
        }}}}
        
        
    }
    
}```

共有1个答案

苏鸿波
2023-03-14

在检查下一个级别时,重新启动到0,然后重新添加1,因为方法中包含CurrentLevel变量

我建议你做这样的事情:

private int currentLevel = 0; // make the variable global
// to update always the same and not restarting all time

public void levelComplete() { // your method
   currentLevel++; // go to next level
   showWarning("Level Complete! Current level is " + currentLevel);
   if (currentLevel == 1) { // set lvl1
       loadLevel(level1);
   } else if (currentLevel == 2) { // set lvl2
       loadLevel(level2);
   } else if (currentLevel == 3) { // set lvl3
       loadLevel(level3);
   } else if (currentLevel > 3) { // completed
       showWarning("Level Complete! No more levels.");
   }
}

此外,与其执行else{if(...)},不如使用else if(...)

 类似资料:
  • 我目前正在从事一个项目,该项目涉及将LWJGL游戏场景渲染为视频流而不是窗口。我相信,如果将游戏场景渲染为中间格式(如 ByteBuffer),我就能实现这一目标。我正在尝试扩展LWJGL 演示作为概念证明。 我发现了一个类似的SO问题和一个论坛帖子,但我无法做到这一点。我是OpenGL和LWJGL的初学者,我正在努力寻找关于这方面的可理解文档。 在渲染循环()的开始,调用函数。根据我的理解,它将

  • 关于手Q轻游戏平台的游戏推广,有以下几个概念说明: 游戏上架:游戏发布至外网环境,任何一个QQ用户有机会玩到该游戏。但如果用户不被传播,看不到该游戏。 游戏放量:平台将游戏主动推动到用户游戏列表中(并同时打上“推荐”标签)。 上中心化入口:游戏被列在“游戏城”页面(所有厘米秀用户)或“玩一玩”页面(少量QQ用户)。 上推荐位:游戏被列在“游戏城”页面的banner轮播位、主推位(编辑推荐)、次推位

  • 利用cocos2d框架写的推箱子游戏。仅能在真机3.5寸Retina屏幕下测试。 [Code4App.com]

  • 我正在尝试使用制作游戏,最后会弹出一条消息,显示游戏在消息上,并显示再次玩的选项。 当我按下“再次播放”按钮时,按下该键时,播放器精灵根本不会移动。 然后我发现它正在发生,因为在我按下消息框按钮后,它没有将焦点更改为活动的窗口。 如果有人能告诉我如何更改对焦窗口,那会很有帮助。

  • 在讲述有关list的时候,提到做游戏的事情,后来这个事情一直没有接续。不是忘记了,是在想在哪个阶段做最合适。经过一段时间学习,看官已经不是纯粹小白了,已经属于python初级者了。现在就是开始做那个游戏的时候了。 游戏内容:猜数字游戏 太简单了吧。是的,游戏难度不大,不过这个游戏中蕴含的东西可是值得玩味的。 游戏过程描述 程序运行起来,随机在某个范围内选择一个整数。 提示用户输入数字,也就是猜程序

  • 下载游戏 可透过以下方法下载(购买)游戏。可下载(购买)的游戏分为两种,一种是只可在PSP™上游玩的游戏,另一种则可在PSP™和PS3™两种主机上游玩。关于游戏的种类和对应的主机等信息,可在PlayStation®Store上确认。 PSP™的(PlayStation®Store) 有关下载(购买)游戏的详细方法,请参阅(PlayStation®Network) > (PlayStation®St