⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gamescreen.java

📁 Bamboo Dance, game for mobile device It containt only source code, not any document related.
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
      case -9:
        loadImage();
        init();
        break;

      case -1:
        for (int i = 0; i < 128; i += 59) {
          for (int j = 0; j < 128; j += 28) {
            Graphics _tmp4 = g;
            Graphics _tmp5 = g;
            g.drawImage(pattern01Img, i, j, 0x10 | 4);
          }

        }

        Graphics _tmp6 = g;
        Graphics _tmp7 = g;
        g.drawImage(maintitleImg, 3, 11, 0x10 | 4);
        paintPlayer(g, 45, 70, 0);
        paintButton(g, 1, 118, 0);
        break;

      case 2: // '\002'
        paintMainMenu(g);
        paintButton(g, 1, 118, 3);
        break;

      case 0: // '\0'
        paintBG(g);
        moveFlag();
        if (player.frame == 0) {
          makeArrow();
        }
        if (player.frame == 8 || player.frame == 6 && !stepOK) {
          paintPanda(g, 3, 70, 3);
        } else
        if (pandaFlag < 3) {
          paintPanda(g, 3, 70, pandaFlag);
        } else {
          paintPanda(g, 3, 70, 5 - pandaFlag);
        }
        player.move();
        if (player.frame < 4) {
          paintPlayer(g, player.pos[0][0], player.pos[0][1], player.animFlag);
        } else {
          if (player.frame == 5) {
            ns.start();
          }
          if (player.frame == 8 || player.frame == 6) {
            if (stepOK) {
              paintPlayer(g, player.pos[player.frame - 3][0],
                          player.pos[player.frame - 3][1], 3);
            } else {
              if (player.frame == 8 && player.dir == 1) {
                if (player.life > 1) {
                  player.life--;
                } else {
                  player.life = 0;
                  gamestate = 1;
                  frame = 20;
                }
              }
              paintPlayer(g, player.pos[player.frame - 3][0],
                          player.pos[player.frame - 3][1], 5);
              for (int k = 0; k < 3; k++) {
                Graphics _tmp8 = g;
                Graphics _tmp9 = g;
                g.drawImage(hitcloudImg,
                            player.pos[player.frame - 3][0] + getRand(25),
                            player.pos[player.frame - 3][1] + getRand(10) + 16,
                            0x10 | 4);
              }

            }
          } else {
            paintPlayer(g, player.pos[player.frame - 3][0],
                        player.pos[player.frame - 3][1], 2);
          }
        }
        if (player.frame >= 6) {
          if (!stepOK) {
            paintBigTitle02(g, 27, 30, 1);
          } else {
            paintBigTitle02(g, 40, 30, 0);
          }
        }
        break;

      case 1: // '\001'
        paintBG(g);
        paintPanda(g, 3, 70, 0);
        paintBigTitle01(g, 15, 40, 3);
        paintMenu(g);
        if (frame > 0) {
          frame--;
        } else
        if (needRanking(score)) {
          rank.saveState(0, 0);
          ( (BamboDance) midlet).enterName();
        } else {
          reset();
          gamestate = -1;
        }
        break;

      case 4: // '\004'
        paintBG(g);
        paintPanda(g, 3, 70, 0);
        paintBigTitle01(g, 15, 40, 2);
        paintMenu(g);
        if (frame > 0) {
          frame--;
        } else {
          player.resetMotion();
          stepOK = false;
          currentArrow = 0;
          pandaFlag = 0;
          fixing = true;
          frame = 0;
          gamestate = 0;
          level++;
          if (arrowNum < 6) {
            arrowNum++;
          }
        }
        break;

      case -100:
        g.setColor(0, 0, 0);
        g.fillRect(0, 0, 128, 128);
        g.setColor(255, 255, 255);
        Graphics _tmp10 = g;
        Graphics _tmp11 = g;
        g.drawString("Please wait", 64, 60, 0x10 | 1);
        gamestate = -101;
        break;

      case -101:
        saveRank();
        gamestate = -1;
        break;
    }
    if (gamestate > -5) {
      if (gamestate == 0 || gamestate == 1 || gamestate == 4) {
        paintMenu(g);
        if (player.frame < 7 && player.dir == 1) {
          if (fixing) {
            fixing = false;
          } else {
            paintArrow(g);
          }
        }
        g.setClip(0, 0, 128, 128);
        paintLife(g);
        paintButton(g, 1, 118, 0);
      }
      if (gamestate == -1 || gamestate == 2) {
        paintButton(g, 112, 118, 2);
      } else {
        paintButton(g, 112, 118, 1);
      }
      g.setClip(0, 0, 128, 128);
      g.setColor(0, 0, 0);
      g.drawRect(0, 0, 128, 128);
    }
  }

  public void keyPressed(int i) {
    int j = getGameAction(i);
    if (i == -7) {
      if (gamestate == -1 || gamestate == 2) {
        ( (BamboDance) midlet).destroyApp(true);
      } else {
        gamestate = -1;
      }
    } else
    if (i == -6) {
      switch (gamestate) {
        case 0: // '\0'
          selected = 0;
          con = true;
          gamestate = 2;
          break;

        case 2: // '\002'
          switch (selected) {
            case 0: // '\0'
              gamestate = 0;
              break;

            case 1: // '\001'
              reset();
              gamestate = 0;
              break;

            case 3: // '\003'
              ( (BamboDance) midlet).showForm();
              break;

            case 2: // '\002'
              if (ns.ok) {
                ns.ok = false;
              } else {
                ns.ok = true;
              }
              break;

            case 4: // '\004'
              ( (BamboDance) midlet).showScore();
              break;

            case 5: // '\005'
              ( (BamboDance) midlet).showAbout();
              break;
          }
          break;

        case -1:
          gamestate = 2;
          selected = 1;
          con = false;
          break;
      }
    } else {
    }
    switch (gamestate) {
      default:
        break;

      case 0: // '\0'
        switch (j) {
          case 1: // '\001'
            processArrow(0);
            break;

          case 6: // '\006'
            processArrow(1);
            break;

          case 2: // '\002'
            processArrow(3);
            break;

          case 5: // '\005'
            processArrow(2);
            break;
        }
        break;

      case 2: // '\002'
        switch (j) {
          default:
            break;

          case 1: // '\001'
            if (con) {
              if (selected > 0) {
                selected--;
              } else {
                selected = 5;
              }
              break;
            }
            if (selected > 1) {
              selected--;
            } else {
              selected = 5;
            }
            break;

          case 6: // '\006'
            break;
        }
        if (con) {
          if (selected < 5) {
            selected++;
          } else {
            selected = 0;
          }
          break;
        }
        if (selected < 5) {
          selected++;
        } else {
          selected = 1;
        }
        break;
    }
  }

  public void keyReleased(int i) {
  }

  Run r1;
  Thread t1;
  MIDlet midlet;
  Random rnd;
  Nsound ns;
  private static Image chImg;
  private static Image pandaImg;
  private static Image bgImg;
  private static Image bgpatternImg;
  private static Image arrowImg;
  private static Image btitle01Img;
  private static Image lifeImg;
  private static Image hitcloudImg;
  private static Image btitle02Img;
  private static Image buttonImg;
  private static Image pattern01Img;
  private static Image maintitleImg;
  private static Image menuwordImg;
  private static Image pattern02Img;
  private static Image lvImg;
  private static Image nosImg;
  private static Image swordImg;
  private static Image mbounce;
  private static boolean con = false;
  Ranking rank;
  static String rankName[] = new String[5];
  static int rankScore[] = {
      0, 0, 0, 0, 0
  };
  static int rankLevel[] = {
      0, 0, 0, 0, 0
  };
  private static int level = 0;
  private static int score = 0;
  Player player;
  private static int pandaFlag;
  private static int arrowSet[] = {
      0, 0, 0, 0, 0, 0
  };
  private static int arrowNum = 6;
  private static int currentArrow = 0;
  private static boolean stepOK = false;
  static int gamestate = -10;
  private static int frame = 0;
  private static int selected = 0;
  private static boolean fixing = false;

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -