📄 fruitmachinemidlet.java
字号:
// Copyright 2002 Nokia Corporation.//// THIS SOURCE CODE IS PROVIDED 'AS IS', WITH NO WARRANTIES WHATSOEVER,// EXPRESS OR IMPLIED, INCLUDING ANY WARRANTY OF MERCHANTABILITY, FITNESS// FOR ANY PARTICULAR PURPOSE, OR ARISING FROM A COURSE OF DEALING, USAGE// OR TRADE PRACTICE, RELATING TO THE SOURCE CODE OR ANY WARRANTY OTHERWISE// ARISING OUT OF ANY PROPOSAL, SPECIFICATION, OR SAMPLE AND WITH NO// OBLIGATION OF NOKIA TO PROVIDE THE LICENSEE WITH ANY MAINTENANCE OR// SUPPORT. FURTHERMORE, NOKIA MAKES NO WARRANTY THAT EXERCISE OF THE// RIGHTS GRANTED HEREUNDER DOES NOT INFRINGE OR MAY NOT CAUSE INFRINGEMENT// OF ANY PATENT OR OTHER INTELLECTUAL PROPERTY RIGHTS OWNED OR CONTROLLED// BY THIRD PARTIES//// Furthermore, information provided in this source code is preliminary,// and may be changed substantially prior to final release. Nokia Corporation// retains the right to make changes to this source code at// any time, without notice. This source code is provided for informational// purposes only.//// Nokia and Nokia Connecting People are registered trademarks of Nokia// Corporation.// Java and all Java-based marks are trademarks or registered trademarks of// Sun Microsystems, Inc.// Other product and company names mentioned herein may be trademarks or// trade names of their respective owners.//// A non-exclusive, non-transferable, worldwide, limited license is hereby// granted to the Licensee to download, print, reproduce and modify the// source code. The licensee has the right to market, sell, distribute and// make available the source code in original or modified form only when// incorporated into the programs developed by the Licensee. No other// license, express or implied, by estoppel or otherwise, to any other// intellectual property rights is granted herein.package example.fruitmachine;import javax.microedition.midlet.*;import javax.microedition.lcdui.*;import java.io.IOException;public class FruitMachineMIDlet extends MIDlet{ private final HttpPoster httpPoster; private final Image logoImage; private GameScreen gameScreen = null; private ChangeBetScreen changeBetScreen = null; private BuyCreditScreen buyCreditScreen = null; private Account account = null; public FruitMachineMIDlet() { String servletUrl = getAppProperty("Servlet-URL"); httpPoster = new HttpPoster(servletUrl); logoImage = createImage("/logo.png"); ErrorScreen.init(logoImage, Display.getDisplay(this)); WinScreen.init(logoImage, Display.getDisplay(this)); } public void startApp() { Displayable current = Display.getDisplay(this).getCurrent(); if (current == null) { // first time we've been called Alert splashScreen = new Alert(null, // no title "Fruit Machine\nNokia", logoImage, AlertType.INFO); splashScreen.setTimeout(2000); // 2 seconds LoginScreen loginScreen = new LoginScreen(this, httpPoster); // display splash screen, then login screen Display.getDisplay(this).setCurrent(splashScreen, loginScreen); } else { Display.getDisplay(this).setCurrent(current); } } public void pauseApp() { } public void destroyApp(boolean unconditional) { if (gameScreen != null) { gameScreen.abort(); // kill its animation thread } httpPoster.abort(); // stop the networking thread } public void loginScreenDone(Account account) { this.account = account; gameScreen = new GameScreen(this, httpPoster, account, Display.getDisplay(this), createImage("/bar.png"), createImage("/bell.png"), createImage("/orange.png"), createImage("/lemon.png"), createImage("/plum.png"), createImage("/cherry.png"), createImage("/hold.png"), createImage("/hold1.png"), createImage("/hold2.png"), createImage("/hold3.png")); Display.getDisplay(this).setCurrent(gameScreen); } public void loginScreenQuit() { quit(); } public void gameScreenChangeBet(boolean isHolding, int previousBet) { if (changeBetScreen == null) { changeBetScreen = new ChangeBetScreen(this, logoImage, account); } changeBetScreen.updateValues(isHolding, previousBet); Display.getDisplay(this).setCurrent(changeBetScreen); } public void gameScreenBuyCredit() { if (buyCreditScreen == null) { buyCreditScreen = new BuyCreditScreen(this, httpPoster, logoImage, account); } buyCreditScreen.updateValues(); Display.getDisplay(this).setCurrent(buyCreditScreen); } public void gameScreenQuit() { quit(); } public void changeBetScreenDone() { Display.getDisplay(this).setCurrent(gameScreen); } public void buyCreditScreenDone() { Display.getDisplay(this).setCurrent(gameScreen); } /* * On the exit command, cleanup and notify that the MIDlet has been destroyed. */ private void quit() { httpPoster.abort(); // terminate its independent thread destroyApp(false); notifyDestroyed(); } private Image createImage(String filename) { Image image = null; try { image = Image.createImage(filename); } catch (IOException e) { // just let return value be null } return image; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -