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

📄 gamescreen.java

📁 j2me游戏Global星球文明,是国外的游戏,45度视角.
💻 JAVA
📖 第 1 页 / 共 4 页
字号:
     {
         drawString(gw.st.get("HI-SCORES"), scrW >> 1, 6, 17, 0x2d0c01);
         drawString(gw.st.get("Loading..."), scrW >> 1, 39, 17, 0x2d0c01);
         repaint();
         serviceRepaints();
         hiscoresConnection();
         drawCanva();
     }
     byte byte0 = 10;
     byte byte1 = 14;
     byte byte2 = 39;
     char c = '\211';
     drawString(gw.st.get("HI-SCORES"), scrW >> 1, 6, 17, 0x2d0c01);
     int i = 39;
     if(localhiscores || gw.gm.gameover && noconnection)
     {
         if(gw.gm.gameover && noconnection)
             gw.hiScores.printScores(winners, winscores);
         for(int j = 0; j < winners.length; j++)
         {
             drawString(winners[j], byte2, i, 20, 0x2d0c01);
             drawString(winscores[j], c, i, 24, 0x2d0c01);
             i += byte1;
         }

     } else
     if(noconnection)
         drawString(gw.st.get("Connection is not available"), scrW >> 1, i, 17, 0x2d0c01);
     else
     if(emptytable)
     {
         drawString(gw.st.get("Empty"), scrW >> 1, i, 17, 0x2d0c01);
     } else
     {
         for(int k = 0; k < winners.length; k++)
         {
             drawString(winnumbers[k], byte2, i, 24, 0x2d0c01);
             drawString(winners[k], byte2 + 6, i, 20, 0x2d0c01);
             drawString(winscores[k], c, i, 24, 0x2d0c01);
             i += byte1;
         }

     }
     drawButton(1, xbuttons, ybuttons);
     mode = 8;
     repaint();
     serviceRepaints();
 }

 public void drawMap()
 {
     if(needmap)
     {
         int i = scrW >> 1;
         char c = '\344';
         drawCanva();
         drawString(gw.st.get("Map"), scrW >> 1, 6, 17, 0x2d0c01);
         for(int i2 = 0; i2 < 32; i2++)
         {
             int j1 = 32 - i2;
             int k1 = 32 + i2;
             for(int j2 = j1; j2 < k1; j2++)
                 if((gw.lv.flags[i2][j2] & 1) == 0)
                 {
                     scrGr.setColor(clMap[gw.lv.map[i2][j2]]);
                     int j = i + (j2 - i2 << 1);
                     int l = c - (j2 + i2 << 1);
                     scrGr.fillRect(j, l, 3, 3);
                 }

             int l1 = 64 - i2 - 1;
             for(int k2 = j1; k2 < k1; k2++)
                 if((gw.lv.flags[l1][k2] & 1) == 0)
                 {
                     scrGr.setColor(clMap[gw.lv.map[l1][k2]]);
                     int k = i + (k2 - l1 << 1);
                     int i1 = c - (k2 + l1 << 1);
                     scrGr.fillRect(k, i1, 3, 3);
                 }

         }

         drawButton(1, xbuttons, ybuttons);
         needmap = false;
     }
 }

 public void drawMenu()
 {
     int i = scrW >> 1;
     menulen = menu[menumode].length;
     int j = scrH - menulen * fnsh >> 1;
     drawCanva();
     scrGr.setFont(fns);
     drawString(gw.st.get(menutitle), scrW >> 1, 6, 17, 0x2d0c01);
     if(menumode == 0 && newGame && !hassave)
         menui0 = 1;
     else
         menui0 = 0;
     for(int k = menui0; k < menulen; k++)
     {
         String s;
         if(menumode != 1 || k != 2)
             s = gw.st.get(menu[menumode][k]);
         else
         if(gw.st.locint == 0)
             s = "\u0420\u0443\u0441\u0441\u043A\u0438\u0439";
         else
             s = "English";
         if(k == selecteditem)
         {
             scrGr.setClip(i - 42, j, 84, 14);
             scrGr.drawImage(menubar, i, j - 14, 17);
             scrGr.setFont(fnsb);
             drawString(s, i, j + 1, 17, anicolors[gw.gt.cnt]);
         } else
         {
             scrGr.setClip(i - 42, j, 84, 14);
             scrGr.drawImage(menubar, i, j, 17);
             scrGr.setFont(fns);
             drawString(s, i, j + 1, 17, 0x2d0c01);
         }
         if(menumode == 1)
         {
             scrGr.setClip(i - 42 - 14, j, 14, 14);
             if(k == 0)
             {
                 if(sound)
                     scrGr.drawImage(check, i - 42 - 14 - 14, j, 20);
                 else
                     scrGr.drawImage(check, i - 42 - 14, j, 20);
             } else
             if(k == 1)
             {
                 if(vibration)
                     scrGr.drawImage(check, i - 42 - 14 - 14, j, 20);
                 else
                     scrGr.drawImage(check, i - 42 - 14, j, 20);
             } else
             {
                 scrGr.drawImage(check, i - 42 - 14, j, 20);
             }
         }
         j += fnsh;
     }

     drawButton(1, xbuttons, ybuttons);
     if(menumode != 0)
         drawButton(2, scrW - xbuttons - 16, ybuttons);
     scrGr.setFont(fns);
     repaint();
     serviceRepaints();
 }

 public void drawPeople(int i, int j, int k)
 {
     int l = 0;
     int i1 = 0;
     byte byte0 = 0;
     j -= 6;
     k -= 2;
     scrGr.setClip(j + deltaOff, k + deltaOff, 12, 12);
     if(gw.gm.people[i][9] == 5)
     {
         i1 = 4;
         if(gw.gm.people[i][8] == 0)
             l = gw.gt.phase;
         else
             l = 2 + gw.gt.phase;
     } else
     {
         l = gw.gm.people[i][7];
         if(l == 4)
             l = 0;
         if(gw.gm.people[i][2] > 0)
             byte0 = 2;
         i1 = byte0 + (gw.gt.cnt & 1);
     }
     scrGr.drawImage(people, (j - 12 * l) + deltaOff, (k - 12 * i1) + deltaOff, 20);
 }

 public void drawPlayerName()
 {
     drawCanva();
     drawString(gw.st.get("Enter Name"), scrW >> 1, 6, 17, 0x2d0c01);
     int j = 39;
     drawString(gw.st.get("You have ") + gw.gm.scores + gw.st.get(" scores."), scrW >> 1, j, 17, 0x2d0c01);
     j += fnsh << 1;
     drawString(gw.st.get("Enter your name:"), scrW >> 1, j, 17, 0x2d0c01);
     j += fnsh << 1;
     int i = (scrW >> 1) - 42;
     scrGr.setClip(i, j, 84, 14);
     scrGr.drawImage(menubar, i, j - 14, 20);
     i += 2;
     j++;
     drawString(playerName, i, j, 20, 0x2d0c01);
     int k = fns.substringWidth(playerName, 0, cursorpos);
     int l;
     if(cursorpos >= playerName.length())
         l = fns.charWidth('O');
     else
         l = fns.charWidth(playerName.charAt(cursorpos));
     scrGr.setColor(anicolors[gw.gt.cnt]);
     scrGr.fillRect(i + k, j + 11, l, 2);
     drawButton(1, xbuttons, ybuttons);
     mode = 9;
     repaint();
     serviceRepaints();
 }

 public void drawResIcon(int i, int j, int k)
 {
     if(i > 0)
     {
         i--;
         scrGr.setClip(j, k, 32, 32);
         scrGr.drawImage(resourcesbig, j - 32 * (i & 3), k - 32 * (i >> 2), 20);
     }
 }

 public void drawResource(int i, int j, int k, int l)
 {
     try
     {
         l -= 20;
         int i1 = k - 8;
         int j1 = k + 2;
         int k1 = l - 2;
         scrGr.setClip(i1 + deltaOff, l + deltaOff, 8, 8);
         scrGr.drawImage(resources, (i1 - 8 * i) + deltaOff, l + deltaOff, 20);
         scrGr.setClip(j1 + deltaOff, k1 + deltaOff, 32, 16);
         scrGr.setFont(fns);
         scrGr.setColor(0);
         scrGr.drawString(String.valueOf(j), j1 + 1 + deltaOff, k1 + 1 + deltaOff, 20);
         scrGr.setColor(0xffffff);
         scrGr.drawString(String.valueOf(j), j1 + deltaOff, k1 + deltaOff, 20);
     }
     catch(Exception exception) { }
 }

 public void drawSplash()
 {
     drawCanva();
     drawString(spTitle, scrW >> 1, 6, 17, 0x2d0c01);
     scrGr.drawImage(anisplash[aniseq[splashPhase] - 1], 24, 54, 20);
     drawButton(1, xbuttons, ybuttons);
     scrGr.setClip(24, 158, 128, 14);
     drawString(spText, xTicker, 158, 20, 0x2d0c01);
     repaint();
     serviceRepaints();
 }

 public void drawStock()
 {
     drawCanva();
     scrGr.setColor(0x2d0c01);
     scrGr.setFont(fns);
     drawString(gw.st.get("Warehouse"), scrW >> 1, 6, 17, 0x2d0c01);
     int i = ((scrW >> 1) - 32 - 32) + 8;
     int k = 4 + stockicony + 32 + 8;
     int j = k;
     for(int l = 1; l <= gw.gm.resNum; l++)
     {
         if(l == 9)
         {
             i += 64;
             j = k;
         }
         if(j > 42 && j < 136)
         {
             drawResIcon(l, i, j);
             scrGr.setClip(0, 0, scrW, scrH);
             drawString(String.valueOf(gw.gm.stock[l]), i + 40, j + 14, 20, 0x2d0c01);
         }
         j += 40;
     }

     if(stockicony < 0)
         drawButton(5, (scrW >> 1) - 18, ybuttons);
     else
         drawButton(0, (scrW >> 1) - 18, ybuttons);
     if(stockicony > -(400 - scrH))
         drawButton(6, scrW >> 1, ybuttons);
     else
         drawButton(0, scrW >> 1, ybuttons);
     drawButton(1, xbuttons, ybuttons);
 }

 public void drawString(String s, int i, int j, int k, int l)
 {
     j -= 2;
     scrGr.setColor(0xc49942);
     scrGr.drawString(s, i + 1, j, k);
     scrGr.setColor(l);
     scrGr.drawString(s, i, j, k);
 }

 public void drawSymbol(int i, int j, int k, boolean flag)
 {
     int i1 = 0;
     byte byte0;
     int l;
     byte byte1;
     Image image;
     if(i <= 40)
     {
         byte0 = 32;
         image = land;
         l = 0;
         byte1 = 21;
     } else
     {
         if(i > 60)
         {
             i1 = i - 60;
             i = 55;
         }
         byte0 = 44;
         image = objects;
         i -= 40;
         l = animation[i];
         byte1 = 33;
     }
     j -= 22;
     k -= byte1;
     scrGr.setClip(j + deltaOff, k + deltaOff, 44, byte0);
     scrGr.drawImage(image, (j - 44 * (i - 1 & 3)) + deltaOff, (k - byte0 * (i - 1 >> 2)) + deltaOff, 20);
     if(i1 > 0)
         scrGr.drawImage(anim, (j - 44 * (i1 - 1)) + deltaOff, (k - byte0 * 3) + deltaOff, 20);
     if(l > 0)
     {
         if(flag)
             l += gw.gt.phase;
         scrGr.drawImage(anim, (j - 44 * (l - 1 & 3)) + deltaOff, (k - byte0 * (l - 1 >> 2)) + deltaOff, 20);
     }
 }

 public void drawTicker()
 {
     xsTicker -= dticker;
     if(xsTicker < endsTicker)
     {
         sticker = false;
     } else
     {
         scrGr.setClip(lsticker + deltaOff, (scrH - 15) + deltaOff, 172 - lsticker, 16);
         scrGr.setColor(0);
         scrGr.drawString(stText, xsTicker + deltaOff, scrH + deltaOff, 36);
         scrGr.setColor(0xffffff);
         scrGr.drawString(stText, (xsTicker - 1) + deltaOff, (scrH - 1) + deltaOff, 36);
     }
 }

 public void drawUragan()
 {
     if(uraganvisible)
     {
         cursori = uragani;
         cursorj = uraganj;
         int i = getVX(uraganx, uragany);
         int j = getVY(uraganx, uragany);
         int k = gw.gt.cnt & 3;
         i -= 44;
         j -= 72;
         scrGr.setClip(i, j, 88, 88);
         scrGr.drawImage(uraganImg, i - 88 * (k & 1), j - 88 * (k >> 1), 20);
     }
 }

 public void drawlogo()
 {
     scrGr.setClip(0, 0, scrW, scrH);
     scrGr.setColor(0);
     scrGr.fillRect(0, 0, scrW, scrH);
     scrGr.drawImage(logo, scrW >> 1, (scrH >> 1) + logoy, 3);
     repaint();
     serviceRepaints();
 }

 public void endEarthQuake()
 {
     earthQuake = false;
     deltaScrX = 4;
     deltaScrY = 4;
     gw.gm.calculateBuilds();
 }

 public void enterPlayerName()
 {
     mode = 6;
     if(playerName.length() > 0 && (localhiscores || gw.gm.gameover) && addscores && gw.gm.scores > 0)
         gw.hiScores.addScore(gw.gm.scores, playerName);
     drawHiScores();
 }

 public void free()
 {
     land = null;
     objects = null;
     resources = null;
     anim = null;
     uraganImg = null;
     buttons = null;
     resourcesbig = null;
     people = null;
     canvatop = null;
     canvaleft = null;
     canvaright = null;
     canvabottom = null;
     gc();
 }

 public void gc()
 {
     System.gc();
     try
     {
         Thread.sleep(30L);
     }
     catch(Exception exception) { }
 }

 public int getVX(int i, int j)
 {
     return centerx + (i - cursorx - (j - cursory));
 }

 public int getVY(int i, int j)
 {
     return centery - (((i - cursorx) + j) - cursory >> 1);
 }

 public void help()
 {
     helpy = 0;
     mode = 5;
 }

 public void hiscoresConnection()
 {
     int i = 0;
     HttpConnection httpconnection = null;
     DataInputStream datainputstream = null;
     String s1 = gw.getAppProperty("HiScoresURL");
     for(int l1 = 0; l1 < winners.length; l1++)
     {
         winnumbers[l1] = "";
         winners[l1] = "";
         winscores[l1] = "";
     }

     noconnection = true;
     if(s1 == null)
         s1 = "http://62.85.77.5/jds/hiscores.php?gid=751291&did=241873";
     if(!addscores || gw.gs.playerName.length() == 0 || gw.gm.scores == 0)
         s1 = s1 + "&userid=" + gw.gm.userid;
     else
         s1 = s1 + "&userid=" + gw.gm.userid + "&scores=" + gw.gm.scores + "&name=" + gw.gs.playerName;
     try
     {
         httpconnection = (HttpConnection)Connector.open(s1);
         datainputstream = httpconnection.openDataInputStream();
         int i2 = (int)httpconnection.getLength();
         if(i2 > 0)
         {
             byte abyte0[] = new byte[i2];
             datainputstream.read(abyte0);
             String s2 = new String(abyte0);
             int l = 0;
             int j2 = 0;
             do
             {
                 int i1 = s2.indexOf(")", l);
                 int j1 = s2.indexOf("=", l);
                 int k1 = s2.indexOf("\n", l);
                 int j = Integer.parseInt(s2.substring(l, i1));
                 String s = s2.substring(i1 + 1, j1);
                 int k = Integer.parseInt(s2.substring(j1 + 1, k1));
                 winnumbers[j2] = String.valueOf(j) + ".";
                 winners[j2] = s;
                 winscores[j2] = String.valueOf(k);
                 l = k1 + 1;
                 i++;
                 j2++;
             } while(l < i2 && s2.charAt(l) != 0);
             emptytable = false;
         } else
         {
             emptytable = true;
         }
         noconnection = false;
     }
     catch(Exception exception)
     {
         noconnection = true;
     }
     try
     {
         if(datainputstream != null)
             datainputstream.close();
         if(httpconnection != null)
             httpconnection.close();
     }
     catch(Exception exception1) { }
 }

 public void keyPressed(int i)
 {
     if(mode != 9)
     {
         if(i == -6)
         {
             keycode = i;
             return;
         }
         if(i == -7)

⌨️ 快捷键说明

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