📄 gamecanvas.java
字号:
// Decompiled by DJ v3.9.9.91 Copyright 2005 Atanas Neshkov Date: 2005-11-26 11:41:10
// Home Page : http://members.fortunecity.com/neshkov/dj.html - Check often for new version!
// Decompiler options: packimports(3)
import java.io.IOException;
import java.io.PrintStream;
import java.util.Vector;
import javax.microedition.lcdui.*;
public class GameCanvas extends Canvas
{
public GameCanvas(CityKnights cityknights)
{
cheatLevel = 0;
page = -1;
keyTemp = 0;
loadCtr = 0;
totalgameData = 7;
timeCtr = 0;
assignKey = false;
waitforAssign = 0;
cheat = "";
loadCtr1 = 0;
totalData = 2;
cheatpos = 0;
midlet = cityknights;
WIDTH = getWidth();
HEIGHT = getHeight();
setFullScreenMode(true);
fireKey = getKeyCode(8);
leftKey = getKeyCode(2);
rightKey = getKeyCode(5);
upKey = getKeyCode(1);
downKey = getKeyCode(6);
Key1 = 49;
Key2 = 50;
Key3 = 51;
Key4 = 52;
Key5 = 53;
Key6 = 54;
Key7 = 55;
Key8 = 56;
Key9 = 57;
Key0 = 48;
KeyP = 35;
KeyS = 42;
strtScr = new startScreens(this);
game = new Game(this);
if(keySettings.getSettings("keyFire") == 8)
if(getKeyCode(8) == -5)
keySettings.setKeySettings("keyFire", -5);
else
keySettings.setKeySettings("keyFire", 20);
if(keySettings.getSettings("keyLeft") == 2)
if(getKeyCode(2) == -3)
keySettings.setKeySettings("keyLeft", -3);
else
keySettings.setKeySettings("keyLeft", 2);
if(keySettings.getSettings("keyRight") == 5)
if(getKeyCode(5) == -4)
keySettings.setKeySettings("keyRight", -4);
else
keySettings.setKeySettings("keyRight", 5);
if(keySettings.getSettings("keyUp") == 1)
if(getKeyCode(1) == -1)
keySettings.setKeySettings("keyUp", -1);
else
keySettings.setKeySettings("keyUp", 1);
if(keySettings.getSettings("keyDown") == 6)
if(getKeyCode(6) == -2)
keySettings.setKeySettings("keyDown", -2);
else
keySettings.setKeySettings("keyDown", 6);
try
{
getKeys();
}
catch(Exception exception)
{
System.out.println("jkewhrkewjhr" + exception);
}
Gc = this;
}
public String getDescription(int i)
{
try
{
int j = Math.abs(i);
if(i == 2 || i == -3)
return Gc.strtScr.Translate("Left");
if(i == 5 || i == -4)
return Gc.strtScr.Translate("Right");
if(i == 1 || i == -1)
return Gc.strtScr.Translate("Up");
if(i == 6 || i == -2)
return Gc.strtScr.Translate("Down");
if(i == 20 || i == -5)
return strtScr.Translate("Fire");
if(i == 49)
return "1";
if(i == 50)
return "2";
if(i == 51)
return "3";
if(i == 52)
return "4";
if(i == 53)
return "5";
if(i == 54)
return "6";
if(i == 55)
return "7";
if(i == 56)
return "8";
if(i == 57)
return "9";
if(i == 35)
return "#";
if(i == 42)
return "*";
if(i == 48 || i == Key0 || i == 48)
return Gc.strtScr.Translate("Unassigned");
if(i == 0)
return Gc.strtScr.Translate("Unassigned");
else
return Gc.strtScr.Translate("Special Key") + " " + j;
}
catch(Exception exception)
{
System.out.println("asdgjh " + exception);
}
return "[ " + i + " ]";
}
public void getKeys()
{
keyLeft = keySettings.getSettings("keyLeft");
keyRight = keySettings.getSettings("keyRight");
keyFire = keySettings.getSettings("keyFire");
keyUp = keySettings.getSettings("keyUp");
keyDown = keySettings.getSettings("keyDown");
keyWeapon = keySettings.getSettings("keyWeapon");
keyKick = keySettings.getSettings("keyKick");
keyBlock = keySettings.getSettings("keyBlock");
if(keyWeapon == 0 && keyKick == 0 && keyBlock == 0)
{
keySettings.setKeySettings("keyWeapon", 57);
keySettings.setKeySettings("keyKick", 49);
keySettings.setKeySettings("keyBlock", 55);
keyWeapon = 57;
keyKick = 49;
keyBlock = 55;
}
}
public void setKeys()
{
keySettings.setKeySettings("keyLeft", keyLeft);
keySettings.setKeySettings("keyRight", keyRight);
keySettings.setKeySettings("keyFire", keyFire);
keySettings.setKeySettings("keyUp", keyUp);
keySettings.setKeySettings("keyDown", keyDown);
keySettings.setKeySettings("keyWeapon", keyWeapon);
keySettings.setKeySettings("keyKick", keyKick);
keySettings.setKeySettings("keyBlock", keyBlock);
}
public void loadGamedata()
{
try
{
if(loadCtr == 0)
{
strtScr.title = Image.createImage("/title.png");
if(strtScr.title != null)
loadCtr++;
} else
if(loadCtr == 1)
loadCtr++;
else
if(loadCtr == 2)
{
game.playerIm = Image.createImage("/fight.png");
if(game.playerIm != null)
loadCtr++;
} else
if(loadCtr == 3)
{
game.dieIm = Image.createImage("/die.png");
if(game.dieIm != null)
loadCtr++;
} else
if(loadCtr == 4)
{
game.vanish = Image.createImage("/vanish.png");
if(game.vanish != null)
loadCtr++;
} else
if(loadCtr == 5)
{
game.building = Image.createImage("/buiding1.png");
game.fighterHit = Image.createImage("/bam.png");
if(game.building != null && game.fighterHit != null)
loadCtr++;
} else
if(loadCtr == 6)
{
game.wall = Image.createImage("/wall.png");
loadCtr++;
}
if(loadCtr >= totalgameData)
page = 0;
}
catch(IOException ioexception)
{
System.out.println(ioexception + " ------- " + loadCtr);
}
catch(Exception exception)
{
System.out.println("here" + exception);
}
}
public void loadLevelData()
{
try
{
if(loadCtr1 == 0)
loadCtr1++;
else
if(loadCtr1 == 1)
{
if(game.axeIm != null)
game.axeIm = null;
if(game.chainIm != null)
game.chainIm = null;
if(game.weapon2 == 39)
{
if(game.axeIm == null)
{
game.axeIm = Image.createImage("/axe-tile.png");
if(game.armsIm == null)
game.armsIm = Image.createImage("/weapons.png");
}
} else
if(game.weapon2 == 41 && game.chainIm == null)
{
game.chainIm = Image.createImage("/chain-tile.png");
if(game.armsIm == null)
game.armsIm = Image.createImage("/weapons.png");
}
loadCtr1++;
}
if(loadCtr1 >= totalData)
page = 10;
}
catch(Exception exception)
{
System.out.println("there =" + exception);
}
}
public void paint(Graphics g)
{
try
{
System.gc();
switch(page)
{
default:
break;
case -1:
loadGamedata();
strtScr.showLoader(g);
if(cheat.length() >= 1)
cheatLevel = Integer.parseInt(cheat.substring(0, 1));
break;
case 0: // '\0'
if(strtScr.dblogo == null)
{
page = 1;
break;
}
timeCtr++;
if(timeCtr > 15)
page = 1;
else
strtScr.showSplashScr(g);
break;
case 1: // '\001'
if(game.isSoundOn)
game.mp.playMid();
strtScr.showTitle(g);
break;
case 2: // '\002'
if(strtScr.title != null)
strtScr.title = null;
strtScr.logo = null;
strtScr.dblogo = null;
strtScr.showMenu(g);
break;
case 3: // '\003'
strtScr.showAbout(g);
break;
case 4: // '\004'
strtScr.showCredits(g);
break;
case 5: // '\005'
strtScr.keyB = null;
strtScr.showTopScores(g);
break;
case 10: // '\n'
game.lightening = false;
if(!game.GameOver)
{
game.Draw(g);
break;
}
if(game.score == 0)
{
page = 5;
} else
{
GameScore.openHighScores();
page = 100;
}
break;
case 15: // '\017'
strtScr.showGameOptionsMenu(g);
break;
case 16: // '\020'
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -