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

📄 gamecanvas.java

📁 用J2ME写的手机游戏。“北京浮生记”是您工作学习之余消遣休闲理想的小游戏
💻 JAVA
📖 第 1 页 / 共 4 页
字号:
    }
    catch (Exception e) {}
    if (Base.postOfficeStatus == 0) {
      if (Base.lDebt > 0) {
        g.drawImage(Base.image011, 0, 0, Graphics.LEFT | Graphics.TOP);
        g.drawString("村长说:“狗蛋啊!\n你还欠我”" + Base.lDebt + "元呢!快还", 10, 65,
                     Graphics.LEFT | Graphics.TOP);
        g.drawString("你还欠我”" + Base.lDebt + "元呢!", 10, 80,
                     Graphics.LEFT | Graphics.TOP);
        g.drawString("快还!", 10, 95, Graphics.LEFT | Graphics.TOP);
        g.drawString("汇款", 0, 125, Graphics.LEFT | Graphics.BOTTOM);
        g.drawString("以后再说", 125, 125, Graphics.RIGHT | Graphics.BOTTOM);

      }
      else {
        g.drawImage(Base.image006, 0, 0, Graphics.LEFT | Graphics.TOP);
        g.drawString("混得不错,", 10, 40, Graphics.LEFT | Graphics.TOP);
        g.drawString("我来北京可要请我客", 10, 55, Graphics.LEFT | Graphics.TOP);
      }
    }
    else if (Base.postOfficeStatus == 1) {
      g.drawImage(Base.image006, 0, 0, Graphics.TOP | Graphics.LEFT);
      g.drawString("小子不错啊,有前途!", 10, 40, Graphics.LEFT | Graphics.TOP);
      Base.postOfficeStatus = 0;
    }
    else if (Base.postOfficeStatus == 2) {
      g.drawImage(Base.image006, 0, 0, Graphics.TOP | Graphics.LEFT);
      g.drawString("不赶快还钱", 10, 40, Graphics.LEFT | Graphics.TOP);
      g.drawString("就给我小心点!", 10, 55, Graphics.LEFT | Graphics.TOP);
      Base.postOfficeStatus = 0;
    }
    else if (Base.postOfficeStatus == 3) {
      g.drawImage(Base.image006, 0, 0, Graphics.TOP | Graphics.LEFT);
      g.drawString("小子真懂事,", 10, 40, Graphics.LEFT | Graphics.TOP);
      g.drawString("还知道应该还点!", 10, 55, Graphics.LEFT | Graphics.TOP);
      Base.postOfficeStatus = 0;
    }

    Base.image011 = null;
    Base.image006 = null;
  }

  //hospitalPaint()       医院界面
  protected void hospitalPaint(Graphics g) {
    try {
      Base.image006 = Image.createImage("/res/pic006.png");
      Base.image011 = Image.createImage("/res/pic011.png");
    }
    catch (Exception e) {}
    //需要根据现在拥有现金的数量来判断在屏幕上打印的信息的内容
    //1.没有病的时候
    //2.有病,但是没有钱
    //3.有病,有钱
    if (Base.hospitalStatus == 0) {
      if (Base.lCash >= 3000 && Base.nHealth < 100) {
        g.drawImage(Base.image011, 0, 0, Graphics.LEFT | Graphics.TOP);
        g.drawString("\"钱与健康\"医院", 50, 65, Graphics.LEFT | Graphics.TOP);
        g.drawString("1000块钱每点健康", 5, 85, Graphics.LEFT | Graphics.TOP);
        g.drawString("治病", 0, 125, Graphics.LEFT | Graphics.BOTTOM);
        g.drawString("再挺几天", 125, 125, Graphics.RIGHT | Graphics.BOTTOM);
      }
      else if (Base.nHealth == 100) {
        g.drawImage(Base.image006, 0, 0, Graphics.LEFT | Graphics.TOP);
        g.drawString("你有病 Y!", 10, 40, Graphics.LEFT | Graphics.TOP);
        g.drawString("没病来什么医院呀", 10, 55, Graphics.LEFT | Graphics.TOP);
      }
      else if (Base.lCash < 3000 && Base.nHealth < 100) {
        g.drawImage(Base.image006, 0, 0, Graphics.LEFT | Graphics.TOP);
        g.drawString("滚....!", 10, 40, Graphics.LEFT | Graphics.TOP);
        g.drawString("没钱也想看病?", 10, 55, Graphics.LEFT | Graphics.TOP);
      }
    }
    else if (Base.hospitalStatus == 1) {
      g.drawImage(Base.image006, 0, 0, Graphics.LEFT | Graphics.TOP);
      g.drawString("啊!感觉舒服多了", 10, 40, Graphics.LEFT | Graphics.TOP);
    }
    else if (Base.hospitalStatus == 2) {
      g.drawImage(Base.image006, 0, 0, Graphics.LEFT | Graphics.TOP);
      g.drawString("你的钱不够呀!", 10, 40, Graphics.LEFT | Graphics.TOP);
    }
    Base.image011 = null;
    Base.image006 = null;
  }

  //storehousePaint()     库房界面
  protected void storehousePaint(Graphics g) {
    try {
      Base.image006 = Image.createImage("/res/pic006.png");
    }
    catch (Exception e) {}
    g.drawImage(Base.image006, 0, 0, Graphics.LEFT | Graphics.TOP);
    g.drawString("库 房", 50, 8, Graphics.LEFT | Graphics.TOP);
    if (Base.roomPage == 0) {
      g.drawString("盗版VCD   " + Base.vcd_price + "元 " + Base.vcd_number + "个",
                   10, 25,
                   Graphics.LEFT | Graphics.TOP);
      g.drawString("走私香烟   " + Base.cigar_price + "元 " + Base.cigar_number +
                   "个", 10, 40,
                   Graphics.LEFT | Graphics.TOP);
      g.drawString("伪劣化妆品 " + Base.sk_price + "元 " + Base.sk_number + "个", 10,
                   55,
                   Graphics.LEFT | Graphics.TOP);
      g.drawString("进口玩具   " + Base.toy_price + "元 " + Base.toy_number + "个",
                   10, 70,
                   Graphics.LEFT | Graphics.TOP);
      g.drawString("假白酒     " + Base.wine_price + "元 " + Base.wine_number + "个",
                   10, 85,
                   Graphics.LEFT | Graphics.TOP);

    }
    else {
      g.drawString("水货手机   " + Base.phone_price + "元 " + Base.phone_number +
                   "个", 10, 25,
                   Graphics.LEFT | Graphics.TOP);
      g.drawString("上海小宝贝 " + Base.book_price + "元 " + Base.book_number + "个",
                   10, 40,
                   Graphics.LEFT | Graphics.TOP);
      g.drawString("走私汽车   " + Base.car_price + "元 " + Base.car_number + "个",
                   10, 55,
                   Graphics.LEFT | Graphics.TOP);

    }
    Base.image006 = null;
  }

  //intermediaryPaint()   中介界面
  protected void intermediaryPaint(Graphics g) {
    try {
      Base.image006 = Image.createImage("/res/pic006.png");
    }
    catch (Exception e) {}
//开始时中介的欢迎界面
//然后输入自己想要购买的仓库的空间
//情况有三
//1.现金足够
//2.现金不够
    if (Base.interStatus == 0) {
      g.drawImage(Base.image006, 0, 0, Graphics.LEFT | Graphics.TOP);
      g.drawString("中 介", 50, 8, Graphics.LEFT | Graphics.TOP);
      g.drawString("确定", 8, 120, Graphics.LEFT | Graphics.BOTTOM);
      g.drawString("取消", 120, 120, Graphics.RIGHT | Graphics.BOTTOM);
    }
    else if (Base.interStatus == 1) {
      g.drawImage(Base.image006, 0, 0, Graphics.LEFT | Graphics.TOP);
      g.drawString("库房大了一些", 10, 40, Graphics.LEFT | Graphics.TOP);
      g.drawString("不过感觉好象很亏!", 10, 55, Graphics.LEFT | Graphics.TOP);
    }
    else if (Base.interStatus == 2) {
      g.drawImage(Base.image006, 0, 0, Graphics.LEFT | Graphics.TOP);
      g.drawString("你的钱不够呀!", 10, 40, Graphics.LEFT | Graphics.TOP);
    }
    Base.image006 = null;
  }

  //systemPaint()         系统界面
  protected void systemPaint(Graphics g) {
    try {
      Base.image010 = Image.createImage("/res/pic010.png");
    }
    catch (Exception e) {}
    g.drawImage(Base.image010, 0, 0, Graphics.LEFT | Graphics.TOP);
    g.setClip(32, 38 + Base.sysDy * 16, 13, 21);
    g.drawImage(Base.image008, 32 - 16 * Base.index, 38 + Base.sysDy * 16,
                Graphics.TOP | Graphics.LEFT);
    g.setClip(0, 0, this.getWidth(), this.getHeight());
    Base.image010 = null;

  }

  /*
   * 各个游戏“功能界面键盘控制”的绘制方法函数
   *   gameControl()           游戏界面
   *   statusControl()         状态界面
   *   blackmarketControl()    黑市界面
   *   bankControl()           银行界面
   *   metroControl()          地铁界面
   *   postofficeControl()     邮局界面
   *   hospitalControl()       医院界面
   *   storehouseControl()     库房界面
   *   intermediaryControl()   中介界面
   *   systemControl()         系统界面
   */

//   gameControl()           游戏界面控制方法
  protected void gameControl(int keyCode) {
    int action = this.getGameAction(keyCode);
    switch (action) {
      case Canvas.UP:
        if (Base.dy > 0) {
          Base.dy--;
        }
        else {
          Base.dy = 2;
        }
        repaint();
        break;
      case Canvas.DOWN:
        if (Base.dy < 2) {
          Base.dy++;
        }
        else {
          Base.dy = 0;
        }
        repaint();
        break;
      case Canvas.LEFT:
        if (Base.dx > 0) {
          Base.dx--;
        }
        else {
          Base.dx = 2;
        }
        repaint();
        break;
      case Canvas.RIGHT:
        if (Base.dx < 2) {
          Base.dx++;
        }
        else {
          Base.dx = 0;
        }
        repaint();
        break;
      case Canvas.FIRE: //根据dx,dy的值得不同进入不同的画面
        if (Base.nDate >= 40) {}
        else if (Base.nDate < 40) {
          switch (Base.dx) {
            case 0:
              if (Base.dy == 0) { //状态
                Base.menuList = 1;
                Base.threadRunnable = false;
              }
              else if (Base.dy == 1) { //地铁
                Base.menuList = 4;
                Base.threadRunnable = false;
              }
              else if (Base.dy == 2) { //库房
                Base.menuList = 7;
                Base.threadRunnable = false;
              }
              repaint();
              break;
            case 1:
              if (Base.dy == 0) { //黑市
                Base.menuList = 2;
                Base.threadRunnable = false;
              }
              else if (Base.dy == 1) { //邮局
                Base.menuList = 5;
                Base.threadRunnable = false;
              }
              else if (Base.dy == 2) { //中介
                Base.menuList = 8;
                Base.threadRunnable = false;
              }
              repaint();
              break;
            case 2:
              if (Base.dy == 0) { //银行
                Base.menuList = 3;
                Base.threadRunnable = false;
              }
              else if (Base.dy == 1) { //医院
                Base.menuList = 6;
                Base.threadRunnable = false;
              }
              else if (Base.dy == 2) { //系统
                Base.menuList = 9;
              }
              repaint();
              break;
          }
        }
    }
    if (Base.nDate >= 40 && keyCode == -6) {
    display.setCurrent(new MenuListCanvas(display));
    }
  }

//   statusControl()        状态界面控制方法函数
  protected void statusControl(int keyCode) {
    int action = this.getGameAction(keyCode);
    switch (action) {
      case Canvas.GAME_B: //9键退出系统画面,回到游戏界面
        Base.menuList = 0;
        Base.threadRunnable = true;
        threadMan = new Thread(this);
        threadMan.start();

        repaint();
        break;
      default:
    }

  }

//   blackmarketControl()    黑市界面控制方法
  protected void blackmarketControl(int keyCode) {
    int action = this.getGameAction(keyCode);
    switch (action) {
      case Canvas.GAME_B: //9键退出系统画面,回到游戏界面
        Base.menuList = 0;
        threadMan = new Thread(this);
        Base.threadRunnable = true;
        threadMan.start();
        Base.goodsItem = 0;
        repaint();
        break;
      case Canvas.LEFT:
        if (Base.goodsItem > 0) {
          Base.goodsItem--;
        }
        else {
          Base.goodsItem = 7;
        }
        break;
      case Canvas.RIGHT:
        if (Base.goodsItem < 7) {
          Base.goodsItem++;
        }
        else {
          Base.goodsItem = 0;
        }
        break;
      default:
    }
    if (keyCode == -6) {
      display.setCurrent(new Ad_goodsBuy(display));
    }
    else if (keyCode == -7) {
      display.setCurrent(new Ad_goodsSell(display));
    }
  }

//   bankControl()           银行界面控制方法
  protected void bankControl(int keyCode) {
    int action = this.getGameAction(keyCode);

    switch (action) {
      case Canvas.GAME_B: //9键退出银行画面,回到游戏界面
        Base.menuList = 0;
        threadMan = new Thread(this);
        Base.threadRunnable = true;
        threadMan.start();
        repaint();
        break;
    }
    if (keyCode == -6) {
      display.setCurrent(new Ad_bankSave(display));
    }
    else if (keyCode == -7) {
      display.setCurrent(new Ad_bankWithdraw(display));
    }
  }

//   metroControl()          地铁界面控制方法
  protected void metroControl(int keyCode) {
    int action = this.getGameAction(keyCode);
    switch (action) {
      case Canvas.GAME_B: //9键退出系统画面,回到游戏界面
        Base.menuList = 0;
        threadMan = new Thread(this);
        Base.threadRunnable = true;
        threadMan.start();
        repaint();
        break;
      case Canvas.UP:
        if (Base.metro_dy > 0) {
          Base.metro_dy--;
          Base.addressID--;
        }
        else {
          Base.metro_dy = 3;
          Base.addressID += 3;
        }
        break;
      case Canvas.DOWN:
        if (Base.metro_dy < 3) {
          Base.metro_dy++;
          Base.addressID++;
        }
        else {
          Base.metro_dy = 0;
          Base.addressID -= 3;
        }
        break;
      case Canvas.LEFT:
        if (Base.metro_dx > 0) {
          Base.metro_dx--;
          Base.addressID -= 4;
        }
        else {
          Base.metro_dx = 1;
          Base.addressID += 4; ;
        }
        break;
      case Canvas.RIGHT:
        if (Base.metro_dx < 1) {
          Base.metro_dx++;
          Base.addressID += 4;
        }
        else {
          Base.metro_dx = 0;
          Base.addressID -= 4;
        }
        break;
      case Canvas.FIRE:
        Base.nDate++;
        Base.menuList = 0;
        display.setCurrent(new Randfile(display));
        Base.threadRunnable = true;
        threadMan = new Thread(this);

⌨️ 快捷键说明

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