📄 adseesaw.java
字号:
/*
adseesaw.java 僔乕僜乕僎乕儉
auth kaihatsu@ad2000-ltd.com
edit 2001/08/01
2001/09/11
*/
import java.util.*; //昁梫側儔僀僽儔儕偺僀儞億乕僩
import com.kddi.io.*;
import com.kddi.system.*;
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import java.lang.Object;
public class Adseesaw extends MIDlet implements CommandListener { //婲摦僋儔僗偺奐巒
static GameCvs MyCanvas; //僎乕儉梡僉儍儞僶僗偺梡堄
static Display MyDisplay; //帺暘帺恎偺昞帵僉儍儞僶僗
static Thread runner; //帺暘帺恎偺僞僗僋
public Adseesaw() { //僐儞僗僩儔僋僞
MyCanvas = new GameCvs(); //僎乕儉僉儍儞僶僗偺嶌惉
MyDisplay = Display.getDisplay(this); //梡堄偝傟偨僨傿僗僾儗僀僆僽僕僃僋僩傪庢摼
MyDisplay.setCurrent(MyCanvas); //偦傟傪僇儗儞僩偵愝掕
MyCanvas.setCommandListener(this); //僐儅儞僪儕僗僫乕傪僙僢僩
runner = new Thread(MyCanvas); //僎乕儉僉儍儞僶僗傪僞僗僋偵偟偰乧丄
runner.start(); //幚峴奐巒
MyCanvas.startTimer(); //僞僀儅乕僞僗僋傕婲摦
} //丂摿偵壗傕側偄
protected void destroyApp(boolean unconditional){ //廔椆帪偵昁梫側張棟
}
protected void pauseApp(){ //億乕僘帪偵昁梫側張棟
}
protected void startApp(){ //婲摦僄儞僩儕
} //拝怣妱崬偑偁偭偨応崌丄暅婣帪偵傕屇偽傟傞
//暅婣帪偺摦嶌傪丄偒偪傫偲峴偆偨傔偵偼丄
//攝椂偑昁梫偱偁傞丅
//---------------------- 僐儅儞僪儃僞儞偺張棟
private Command exitCommand = new Command("廔椆", Command.EXIT , 1); //廔椆儃僞儞傪EXIT儃僞儞偲偟偰嶌惉
private Command gameCommand = new Command("PLAY", Command.SCREEN , 1); //PLAY儃僞儞傪SCREEN儃僞儞偲偟偰嶌惉
public void commandAction(Command com, Displayable disp) { //SOFTKEY偑墴偝傟偨傜偙偙偵棃傞
if(com == exitCommand){ //廔椆儃僞儞偑墴偝傟偨傜丄
MyCanvas.gameMode = MyCanvas.gameMode_Exit; //丂偦偺巪婰偡
}
if(com == gameCommand){ //PLAY儃僞儞偑墴偝傟偨傜丄
if(MyCanvas.gameMode == MyCanvas.gameMode_StartWait){ //丂僎乕儉奐巒懸偪拞偱偁傞偙偲傪妋擣偟偰丄
MyCanvas.gameMode = MyCanvas.gameMode_Start; //丂丂偦偺巪婰偡
}
}
}
//----------------------- 僎乕儉僉儍儞僶僗
public class GameCvs extends Canvas //僎乕儉偺杮懱僋儔僗
implements Runnable { //摉慠幚峴偱偒傞傛偆偵偡傞
private Timer timer; //僞僀儅乕娭楢偺掕媊
private MyTimer timerTask; //
private int timerCounter; //
private Random rand; //棎悢敪惗梡
private Font fTime; //巊梡偡傞Font
//僎乕儉拞偱偺尰嵼偺忬懺傪暘椶偟偰偍偔
private final int gameMode_Top = 10; //丂奐巒懸偪傊偺堏峴忬懺
private final int gameMode_StartWait = 20; //丂奐巒懸偪忬懺
private final int gameMode_Start = 30; //丂僎乕儉奐巒傊偺堏峴忬懺
private final int gameMode_Play = 40; //丂僎乕儉僾儗僀拞
private final int gameMode_End = 50; //丂僎乕儉廔椆傊偺堏峴忬懺
private final int gameMode_EndWait = 60; //丂僾儗僀廔椆昞帵忬懺
private final int gameMode_Exit = -1; //丂僎乕儉廔椆
private final int keyLeft = KEY_NUM4; //僔乕僜乕傪嵍偵摦偐偡僉乕傪悢帤僉乕偺係偲偡傞
private final int keyRight = KEY_NUM6; //僔乕僜乕傪塃偵摦偐偡僉乕傪悢帤僉乕偺俇偲偡傞
private int gameMode; //僎乕儉偺忬懺傪曐娗偡傞曄悢
private int key; //墴偝傟偨僉乕傪曐娗偡傞曄悢
private final int grXWidth = 100; //僎乕儉夋柺偺墶暆傪100僪僢僩偲偡傞
private final int grYWidth = 100; //僎乕儉夋柺偺廲暆傪100僪僢僩偲偡傞
private int cvsGetWidth; //抂枛偺昞帵壜擻側墶暆
private int cvsGetHeight; //抂枛偺昞帵壜擻側廲暆
private int minimamX; //僎乕儉偵巊偆昞帵簇眰虓稄銈蘕抣
private int minimamY; //丂忋婰偺Y抣
private int maxmamX; //僎乕儉偵巊偆昞帵簇眰虊E壓偺X抣
private int maxmamY; //丂忋婰偺Y抣
private final int manOffsetX = -3; //恖娫僉儍儔僋僞昞帵帪偺懌尦傪婎弨偲偟偨昞帵僆僼僙僢僩偺X抣
private final int manOffsetY = -14; //丂忋婰偺Y抣
private final int seeSawOffsetX = -14; //僔乕僜乕昞帵帪偺昞帵僆僼僙僢僩偺X抣
private final int seeSawOffsetY = -9; //丂忋婰偺Y抣
private final int seeSawXLeftLimit = 14; //僔乕僜乕偺嵍堏摦偺尷奅抣
private final int seeSawXRightLimit = 86; //僔乕僜乕偺塃堏摦偺尷奅抣
private final int seeSawLeftBigin = -18; //僔乕僜乕偺嵍懌応偺僙乕僼椞堟偺奐巒僆僼僙僢僩抣
private final int seeSawLeftEnd = -4; //丂忋婰偺廔椆抣
private final int seeSawRightBigin = 4; //僔乕僜乕偺塃懌応偺僙乕僼椞堟偺奐巒僆僼僙僢僩抣
private final int seeSawRightEnd = 18; //丂忋婰偺廔椆抣
private final int seeSawHight = 8; //僔乕僜乕偺崅偝
private final int manLeftPos = -11; //僔乕僜乕偺嵍懌応偺恖娫昞帵埵抲
private final int manRightPos = 11; //僔乕僜乕偺塃懌応偺恖娫昞帵埵抲
private final int ismanLeft = 0; //旘傫偱偄傞恖娫偑嵍懌応偵拝抧偡傞傋偒恖娫偱偁傞
private final int ismanRight = 1; //丂忋婰偺塃懌応
private final int manFirstHight = 50; //弶婜忬懺偱偺旘傫偱偄傞恖娫偺崅偝
private final int manMerikomiHight = -8; //巰朣帪偺恖娫昞帵崅偝
private final int seeSawMoveSize = 5; //僔乕僜乕偺1夞偺堏摦検乮僪僢僩乯
private final int manJumpPower = 16; //懪偪忋偘弶懍搙
private final int gravity = 2; //壖憐廳椡偵傛傞棊壓検
//棊壓帪偵僙乕僼偐偳偆偐偺敾抐婎弨傪峔憿懱乮攝楍乯壔
private final int seeSawPedalDim = 4; //侾偮偺僙僢僩偺梫慺悢
private final int seeSawPedalDimMini= 0; //僙乕僼椞堟偺奐巒僆僼僙僢僩傊偺斣崋
private final int seeSawPedalDimMax = 1; //僙乕僼椞堟偺廔椆僆僼僙僢僩傊偺斣崋
private final int seeSawPedalDimJpos= 2; //旘傫偱偄傞恖娫偺懌応僆僼僙僢僩傊偺斣崋
private final int seeSawPedalDimOpos= 3; //旘傫偱偄側偄恖娫偺懌応僆僼僙僢僩傊偺斣崋
private final int [] seeSawPedal = { //忋婰梫慺傪弴偵暲傋偰傒側偟峔憿懱偲偡傞
seeSawLeftBigin, seeSawLeftEnd, manLeftPos, manRightPos, //丂嵍懌応娭楢
seeSawRightBigin, seeSawRightEnd, manRightPos, manLeftPos //丂塃懌応娭楢
};
private int seesawPosX; //僔乕僜乕偺X埵抲
private int manSwitch; //旘傫偱傞恖娫偑偳偪傜偺懌応偵拝抧偡傞傋偒恖娫偐
private int manX; //旘傫偱偄傞恖娫偺X埵抲
private int manY; //丂忋婰偺Y埵抲
private int manVectX; //丂忋婰偺墶曽岦偺堏摦検
private int manVectY; //丂忋婰偺廲曽岦偺堏摦検
private int score; //摼揰
private int loopCount; //幚峴儖乕僾偺僇僂儞僞
public GameCvs() { //僐儞僗僩儔僋僞
} //丂摿偵壗傕側偄
public void startTimer(){ //僞僀儅乕僞僗僋偺愝掕仌婲摦
timerTask = new MyTimer(this); //
timer = new Timer(); //
timer.schedule(timerTask, 0, 100); //100msec偺僞僀儅乕偲偡傞
}
//------------------------ 僞僀儅乕妱傝崬傒張棟
public void myTimerTask(){ //僞僀儅乕妱傝崬傒偑敪惗偟偨傜丄
timerCounter++; //丂曄悢傪僇僂儞僩傾僢僾
}
//------------------------ 僉乕張棟
public void keyPressed(int param){ //僉乕偑墴偝傟偨傜偙偙偵棃傞
key = param; //墴偝傟偨僉乕傪曐懚
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -