亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? starassault.java

?? 大量j2me源代碼
?? JAVA
字號:

import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import javax.microedition.rms.*;
import java.io.*;

/**
 * The application class for the game StarAssault.
 */

public class StarAssault extends MIDlet
{
   private static StarAssault theApp;
   private static Image generalGraphics;		// static graphics pack (used by many classes)

   // options
   private boolean optionAutoFire = false;
   private boolean optionVibrate = true;
   private boolean optionStarField = true;
   private int leftKeyNum = 4;
   private int rightKeyNum = 6;
   private int fireKeyNum = 5;

   private GameScreen gs;
   private boolean hasAGameRunning;
   private Displayable currentDisplay;

   public StarAssault()
   {
      theApp = this;

      loadSettings();	// this can fail if they have never saved anything
      currentDisplay = new Splash(this);

      // start the init of the graphics
      Ship.setup();
      Bullet.setup(getGeneralGraphics());

      // init the gamescreen
      gs = new GameScreen(this);
   }

   public static StarAssault getApp()
   {
      return theApp;
   }

   public static Image getGeneralGraphics()
   {
      if (generalGraphics == null)
         generalGraphics = ImageSet.loadClippedImage("/general.png", 0, 0);
      return generalGraphics;
   }


   public void startApp() throws MIDletStateChangeException
   {
      activateDisplayable(currentDisplay);

      if (gs != null)
      {
         if (gs.getState() == GameScreen.PAUSED)
            gs.resume();
      }
   }

   public void pauseApp()
   {
      if (gs != null)
      {
         gs.pause();
      }
   }

   public void destroyApp(boolean unconditional) throws MIDletStateChangeException
   {
   }

   public void close()
   {
      try
      {
         destroyApp(true);
         notifyDestroyed();
      }

      catch (MIDletStateChangeException e)
      {
      }
   }

   public GameScreen getGS()
   {
      return gs;
   }

   public void activateMenu()
   {
      currentDisplay = new DynaMenu();
      activateDisplayable(currentDisplay);
   }

   public void createNewGame()
   {
      if (gs == null)
         gs = new GameScreen(getApp());
      gs.startNewGame();
      activateGameScreen();
   }

   public void loadGame()
   {
      if (gs == null)
         gs = new GameScreen(getApp());
      gs.loadGame();
      activateGameScreen();
   }

   public void activateGameScreen()
   {
      if (gs == null || gs.getState() == GameScreen.GAME_DONE)
         createNewGame();

      hasAGameRunning = true;
      gs.resume();
      currentDisplay = gs;
      activateDisplayable(gs);
   }

   public boolean hasAGameRunning()
   {
      if (!hasAGameRunning) return false;

      if (gs.getState() != GameScreen.GAME_DONE)
         return true;
      else
         return false;
   }

   public static void activateDisplayable(Displayable s)
   {
      try
      {
         Display.getDisplay(getApp()).setCurrent(s);
      }
      catch (Exception e)
      {
         System.out.println("App exception: " + e);
         e.printStackTrace();
      }
   }

   public static void activateAlert(Alert a, Displayable fallBackTo)
   {
      try
      {
         Display.getDisplay(getApp()).setCurrent(a, fallBackTo);
      }
      catch (Exception e)
      {
         System.out.println("App exception: " + e);
         e.printStackTrace();
      }
   }

   public boolean isOptionAutoFire()
   {
      return optionAutoFire;
   }

   public void setOptionAutoFire(boolean optionAutoFire)
   {
      this.optionAutoFire = optionAutoFire;
   }

   public boolean isOptionStarField()
   {
      return optionStarField;
   }

   public void setOptionStarField(boolean optionStarField)
   {
      this.optionStarField = optionStarField;
   }

   public boolean isOptionVibrate()
   {
      return optionVibrate;
   }

   public void setOptionVibrate(boolean optionVibrate)
   {
      this.optionVibrate = optionVibrate;
   }

   /**
    * Write the options and other settings to RMS. Returns false if an
    * error occured.
    */
   public boolean saveSettings()
   {
      RecordStore settings = null;
      try
      {
         try
         {
            RecordStore.deleteRecordStore("Settings");
         }
         catch (RecordStoreNotFoundException rse)
         {
         }

         settings = RecordStore.openRecordStore("Settings", true);

         ByteArrayOutputStream byteOutputStream = new ByteArrayOutputStream();
         DataOutputStream dataOutputStream = new DataOutputStream(byteOutputStream);
         dataOutputStream.writeBoolean(optionAutoFire);
         dataOutputStream.writeBoolean(optionVibrate);
         dataOutputStream.writeBoolean(optionStarField);
         dataOutputStream.writeInt(leftKeyNum);
         dataOutputStream.writeInt(rightKeyNum);
         dataOutputStream.writeInt(fireKeyNum);

         dataOutputStream.flush();

         byte[] recordOut = byteOutputStream.toByteArray();
         try
         {
            settings.setRecord(1, recordOut, 0, recordOut.length);
         }
         catch (InvalidRecordIDException ir)
         {
            settings.addRecord(recordOut, 0, recordOut.length);
         }
         dataOutputStream.close();
         byteOutputStream.close();

         return true;
      }

      catch (IOException io)
      {
         System.out.println("IOException: " + io);
         return false;
      }
      catch (RecordStoreException rse)
      {
         System.out.println("RSException: " + rse);
         return false;
      }

      finally
      {
         try
         {
            if (settings != null) settings.closeRecordStore();
         }

         catch (RecordStoreNotOpenException e)
         {
         }

         catch (RecordStoreException e)
         {
         }
      }
   }


   /**
    * Read all the current user settings and option (if any) from rms.
    * Returns false if a problem occurred.
    */
   public boolean loadSettings()
   {
      RecordStore settings = null;
      try
      {
         settings = RecordStore.openRecordStore("Settings", true);

         ByteArrayInputStream byteInputStream = new ByteArrayInputStream(settings.getRecord(1));
         DataInputStream dataInputStream = new DataInputStream(byteInputStream);

         setOptionAutoFire(dataInputStream.readBoolean());
         setOptionVibrate(dataInputStream.readBoolean());
         setOptionStarField(dataInputStream.readBoolean());
         setLeftKeyNum(dataInputStream.readInt());
         setRightKeyNum(dataInputStream.readInt());
         setFireKeyNum(dataInputStream.readInt());

         dataInputStream.close();
         byteInputStream.close();

         settings.closeRecordStore();
         return true;
      }

      catch (IOException io)
      {
         System.out.println("IOException: " + io);
         return false;
      }
      catch (RecordStoreException rse)
      {
         System.out.println("RSException: " + rse);
         return false;
      }

      finally
      {
         try
         {
            if (settings != null) settings.closeRecordStore();
         }

         catch (RecordStoreNotOpenException e)
         {
         }

         catch (RecordStoreException e)
         {
         }
      }

   }

   public static final int getKeyCodeFromNum(int n)
   {
      switch (n)
      {
         case 0:
            return Canvas.KEY_NUM0;
         case 1:
            return Canvas.KEY_NUM1;
         case 2:
            return Canvas.KEY_NUM2;
         case 3:
            return Canvas.KEY_NUM3;
         case 4:
            return Canvas.KEY_NUM4;
         case 5:
            return Canvas.KEY_NUM5;
         case 6:
            return Canvas.KEY_NUM6;
         case 7:
            return Canvas.KEY_NUM7;
         case 8:
            return Canvas.KEY_NUM8;
         case 9:
            return Canvas.KEY_NUM9;
      }
      return Canvas.KEY_NUM0;
   }


   public int getFireKeyNum()
   {
      return fireKeyNum;
   }

   public void setFireKeyNum(int fireKeyNum)
   {
      this.fireKeyNum = fireKeyNum;
      if (gs != null) gs.setKeyBindings();
   }

   public int getLeftKeyNum()
   {
      return leftKeyNum;
   }

   public void setLeftKeyNum(int leftKeyNum)
   {
      this.leftKeyNum = leftKeyNum;
      if (gs != null) gs.setKeyBindings();
   }

   public int getRightKeyNum()
   {
      return rightKeyNum;
   }

   public void setRightKeyNum(int rightKeyNum)
   {
      this.rightKeyNum = rightKeyNum;
      if (gs != null) gs.setKeyBindings();
   }
}




?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
粉嫩一区二区三区在线看| 午夜成人免费电影| 成人激情综合网站| 日本一区二区综合亚洲| 国产成人免费在线| 1024成人网色www| 在线精品视频小说1| 亚洲国产精品精华液网站| 欧美日韩情趣电影| 日韩av成人高清| 精品对白一区国产伦| 成人免费毛片app| 亚洲黄色性网站| 日韩视频在线观看一区二区| 国产精品影音先锋| 亚洲日本在线观看| 555夜色666亚洲国产免| 久久97超碰色| 亚洲女女做受ⅹxx高潮| 欧美一区二区三区视频在线 | 亚洲国产一区二区三区青草影视| 欧美日韩一级片在线观看| 极品销魂美女一区二区三区| 国产精品久久久久四虎| 8v天堂国产在线一区二区| 国产精品资源在线| 亚洲国产日韩a在线播放性色| 日韩欧美成人午夜| 色综合天天综合网天天狠天天| 日韩电影在线免费| 18欧美亚洲精品| 日韩欧美成人激情| 色一情一伦一子一伦一区| 日韩av在线发布| 亚洲欧洲国产日韩| 日韩欧美在线不卡| 欧美性生交片4| 黄一区二区三区| 一区二区三区四区在线播放| 精品国产乱码久久久久久蜜臀 | 欧美激情中文不卡| 欧美福利一区二区| 波多野结衣91| 狠狠色丁香九九婷婷综合五月| 亚洲午夜三级在线| 国产精品久久福利| 久久综合狠狠综合| 欧美肥妇free| 91老师片黄在线观看| 韩国v欧美v日本v亚洲v| 视频一区欧美精品| 一区二区三区在线免费视频| 国产欧美日韩三区| 日韩视频在线永久播放| 欧美日韩视频在线第一区 | 不卡视频一二三| 蜜臀av性久久久久av蜜臀妖精| 亚洲女同一区二区| 国产精品丝袜在线| 国产午夜三级一区二区三| 日韩精品一区二区三区中文不卡| 在线精品视频一区二区| 色菇凉天天综合网| 97se狠狠狠综合亚洲狠狠| 国产v日产∨综合v精品视频| 国产一区二区三区美女| 久久精品国产99国产精品| 日韩精品欧美精品| 日韩极品在线观看| 天天影视网天天综合色在线播放| 亚洲动漫第一页| 五月婷婷久久丁香| 日韩二区三区在线观看| 午夜不卡av在线| 青青国产91久久久久久 | 久久aⅴ国产欧美74aaa| 奇米色777欧美一区二区| 五月婷婷综合网| 日韩成人av影视| 久久精品国产在热久久| 麻豆精品精品国产自在97香蕉| 久久av老司机精品网站导航| 久久99精品国产91久久来源| 国产一区视频导航| 成人综合激情网| 97aⅴ精品视频一二三区| 色妞www精品视频| 欧美视频中文字幕| 欧美久久一区二区| 欧美videos中文字幕| 精品99一区二区三区| 国产精品欧美久久久久一区二区| 自拍偷拍亚洲激情| 五月激情六月综合| 极品少妇一区二区| eeuss鲁一区二区三区| 日本道色综合久久| 欧美日韩成人一区二区| 欧美成人r级一区二区三区| 国产情人综合久久777777| 久久久久久电影| 一区2区3区在线看| 蜜桃av噜噜一区二区三区小说| 国产精品18久久久久久久久| 波多野结衣中文字幕一区 | 久久99国产乱子伦精品免费| 国产91精品免费| 欧美调教femdomvk| 精品国产成人系列| 国产精品国产三级国产普通话蜜臀| 依依成人精品视频| 经典一区二区三区| 91麻豆国产福利精品| 欧美成人精品高清在线播放| 国产精品第一页第二页第三页| 午夜精品久久久久久久蜜桃app| 国产一区欧美一区| 色哟哟在线观看一区二区三区| 日韩一级大片在线观看| 亚洲三级电影全部在线观看高清| 蜜臀av性久久久久蜜臀av麻豆| 91在线播放网址| 精品国产一区a| 亚洲一区二区视频在线| 狠狠色丁香久久婷婷综合_中| 91国产视频在线观看| 亚洲精品一区二区三区香蕉| 一区二区三区免费| 懂色av噜噜一区二区三区av| 欧美一区二区三区在线电影| 日韩一区在线免费观看| 国模大尺度一区二区三区| 欧美色涩在线第一页| 国产精品免费久久| 久久99精品久久久久久| 欧美综合亚洲图片综合区| 久久久不卡网国产精品一区| 日产国产高清一区二区三区| 一本色道亚洲精品aⅴ| 国产欧美日韩不卡| 经典三级视频一区| 欧美一区二区三区四区五区 | 日韩欧美一区在线| 一区二区三国产精华液| av爱爱亚洲一区| 精品国产乱码久久久久久图片 | 亚洲精品一二三| 高清shemale亚洲人妖| 日韩午夜av一区| 石原莉奈在线亚洲三区| 91福利在线观看| 亚洲欧美偷拍卡通变态| av午夜一区麻豆| 国产精品三级在线观看| 国产一区二区不卡在线| 欧美电影免费提供在线观看| 午夜av区久久| 欧美精选午夜久久久乱码6080| 一区二区三区四区精品在线视频 | 亚洲第一会所有码转帖| 在线看日本不卡| 亚洲国产一区二区视频| 在线视频欧美区| 一二三四区精品视频| 欧美制服丝袜第一页| 亚洲精品v日韩精品| 91亚洲大成网污www| 亚洲美女免费在线| 欧美午夜在线观看| 午夜久久久影院| 欧美另类高清zo欧美| 免费观看30秒视频久久| 日韩免费视频一区二区| 国内精品嫩模私拍在线| 久久久久久久久久久久久女国产乱| 蜜臀av在线播放一区二区三区| 欧美变态凌虐bdsm| 国产精品18久久久久| 国产精品污网站| 色哟哟一区二区| 午夜视频在线观看一区二区三区 | 在线精品视频一区二区三四| 亚洲福利电影网| 欧美成人综合网站| 国产一区 二区 三区一级| 国产视频一区不卡| 94-欧美-setu| 亚洲福利视频三区| 精品少妇一区二区三区在线播放 | 亚洲精品在线免费播放| 国产91精品入口| 亚洲午夜精品在线| 日韩欧美国产小视频| 成人黄色片在线观看| 亚洲无人区一区| 精品国产乱码91久久久久久网站| 大陆成人av片| 性欧美疯狂xxxxbbbb| 久久久久久一二三区| 色中色一区二区|