📄 multioutput.java
字号:
// FrontEnd Plus GUI for JAD
// DeCompiled : MultiOutPut.class
package game;
import java.io.*;
import javax.microedition.lcdui.Graphics;
import javax.microedition.lcdui.Image;
import javax.microedition.media.*;
public class MultiOutPut
{
static final int MAXNOFMIDIWAVES = 6;
static final int MAXNOFTRADS = 52;
int SCREENHEIGHT;
int SCREENWIDTH;
int _curMusic;
int iCharSizeX;
int iCharSizeY;
int iCharSpacingX;
int iCharSpacingY;
int iDrawCharDeltaSizeX;
int iDrawCharDeltaSizeY;
int iNofTrads;
int iSpaceSize;
int iTradSize[];
Image imFont;
InputStream in[];
static final String sGfx = "/gfx/";
static String sLanguage = null;
String sName;
public String sTrad[];
Player sp[];
public MultiOutPut(int i, int j, int k, int l, int i1)
{
iDrawCharDeltaSizeX = 0;
iDrawCharDeltaSizeY = 0;
iSpaceSize = 0;
iNofTrads = 0;
imFont = null;
in = null;
sp = null;
_curMusic = -1;
SCREENWIDTH = i;
SCREENHEIGHT = j;
iDrawCharDeltaSizeX = l;
sTrad = new String[52];
iTradSize = new int[52];
if(i1 == 0)
sLanguage = "fr";
else
if(i1 == 1)
sLanguage = "de";
else
if(i1 == 2)
sLanguage = "en";
else
if(i1 == 3)
sLanguage = "es";
else
if(i1 == 4)
sLanguage = "it";
else
if(i1 == 5)
sLanguage = "pt";
else
sLanguage = "en";
try
{
imFont = Image.createImage("/gfx/RegularFont" + k + ".png");
}
catch(IOException ioexception)
{
System.out.println("Didnt find the font file RegularFont" + k + ".png)");
}
iCharSizeX = imFont.getWidth() / 13;
iCharSizeY = imFont.getHeight() / 6;
iCharSpacingX = iCharSizeX + iDrawCharDeltaSizeX;
iCharSpacingY = iCharSizeY + iDrawCharDeltaSizeY;
iSpaceSize = iCharSpacingX / 2 + 1;
loadTrad();
boolean flag = false;
for(int j1 = 0; j1 < iNofTrads; j1++)
{
iTradSize[j1] = 0;
for(int k1 = 0; k1 < sTrad[j1].length(); k1++)
{
flag = false;
if(sTrad[j1].charAt(k1) == ' ')
{
iTradSize[j1] += iSpaceSize;
} else
{
flag = true;
iTradSize[j1] += iCharSpacingX;
}
}
if(flag)
iTradSize[j1] -= iDrawCharDeltaSizeX;
}
sp = new Player[6];
in = new InputStream[6];
System.gc();
}
boolean bFileExists(String s)
{
InputStream inputstream = getClass().getResourceAsStream(s);
if(inputstream == null)
{
return false;
} else
{
Object obj = null;
return true;
}
}
void cheatPrint(Graphics g, int i, int j, String s)
{
print(g, i, j, s);
}
void freeMusic()
{
for(byte byte0 = 0; byte0 < 6; byte0++)
sp[byte0] = null;
System.gc();
}
void loadMidiWaveFile(String s, boolean flag, boolean flag1, int i)
{
try
{
in[i] = getClass().getResourceAsStream(s);
if(flag)
sp[i] = Manager.createPlayer(in[i], "audio/midi");
else
sp[i] = Manager.createPlayer(in[i], "audio/midi");
sp[i].realize();
if(flag1)
sp[i].setLoopCount(-1);
else
sp[i].setLoopCount(1);
sp[i].prefetch();
}
catch(MediaException mediaexception) { }
catch(IOException ioexception) { }
}
boolean loadTrad()
{
int j = sLanguage.length();
byte abyte0[] = new byte[1];
byte abyte1[] = sLanguage.getBytes();
iNofTrads = 0;
InputStream inputstream = getClass().getResourceAsStream("/level/trad.txt");
boolean flag = false;
try
{
while(!flag)
{
inputstream.read(abyte0);
if(abyte0[0] == 91)
{
flag = true;
for(int i = 0; i < j; i++)
{
inputstream.read(abyte0);
if(abyte0[0] != abyte1[i])
{
i = j;
flag = false;
}
}
while(abyte0[0] != 93)
inputstream.read(abyte0);
}
}
String s = "";
StringBuffer stringbuffer = new StringBuffer();
inputstream.read(abyte0);
inputstream.read(abyte0);
while(abyte0[0] != 91)
{
inputstream.read(abyte0);
if(abyte0[0] == 13)
{
inputstream.read(abyte0);
inputstream.read(abyte0);
sTrad[iNofTrads] = s;
s = "";
iNofTrads++;
}
if(abyte0[0] != 91)
s = s + (char)abyte0[0];
}
}
catch(IOException ioexception)
{
System.out.println("ERROR: chargement trad.txt");
return false;
}
return true;
}
public void print(Graphics g, int i, int j, int k, int l)
{
int i1 = 0;
int j1 = 0;
Graphics _tmp = g;
if((l & 8) != 0)
i1 = SCREENWIDTH - iTradSize[k];
Graphics _tmp1 = g;
if((l & 0x20) != 0)
j1 = SCREENHEIGHT - iCharSizeY;
Graphics _tmp2 = g;
if((l & 2) != 0)
i1 = SCREENWIDTH - iTradSize[k] >> 1;
Graphics _tmp3 = g;
if((l & 1) != 0)
j1 = SCREENHEIGHT - iCharSizeY >> 1;
print(g, i1 + i, j1 + j, k);
}
public void print(Graphics g, int i, int j, int k)
{
print(g, i, j, sTrad[k]);
}
void print(Graphics g, int i, int j, String s)
{
int k = s.length();
for(int l = 0; l < k; l++)
{
int i1 = s.charAt(l);
boolean flag;
if(i1 != 32)
flag = false;
else
flag = true;
int l1 = 0;
if(i1 >= 97 && i1 <= 122)
{
if(i1 == 102 || i1 == 103 || i1 == 112 || i1 == 113 || i1 == 121)
l1 = 1;
i1 -= 97;
} else
if(i1 == 35)
i1 = 62;
else
if(i1 == 42)
i1 = 63;
else
if(i1 == 63)
i1 = 64;
else
if(i1 == 33)
i1 = 65;
else
if(i1 == 46)
i1 = 66;
else
if(i1 == 44)
i1 = 67;
else
if(i1 == 58)
i1 = 68;
else
if(i1 == 47)
i1 = 69;
else
if(i1 == 45)
i1 = 70;
else
if(i1 == 43)
i1 = 71;
else
if(i1 == 40)
i1 = 72;
else
if(i1 == 41)
i1 = 73;
else
if(i1 == 61)
i1 = 76;
else
if(i1 == 34)
i1 = 77;
else
if(i1 >= 65 && i1 <= 90)
i1 -= 39;
else
if(i1 >= 48 && i1 <= 57)
i1 += 4;
if(l1 > 0)
j += 2;
int j1 = (i1 % 13) * iCharSizeX;
int k1 = (i1 / 13) * iCharSizeY;
if(!flag)
{
g.setClip(i, j, iCharSizeX, iCharSizeY);
g.drawImage(imFont, i - j1, j - k1, 0);
i += iCharSpacingX;
} else
{
i += iSpaceSize;
}
if(l1 > 0)
j -= 2;
}
}
public void printValue(Graphics g, int i, int j, int k, int l)
{
int i1 = 0;
int j1 = 0;
int k1 = k;
int l1;
for(l1 = iCharSizeX; k1 > 9; l1 += iCharSpacingX)
k1 /= 10;
Graphics _tmp = g;
if((l & 8) != 0)
i1 = SCREENWIDTH - l1;
Graphics _tmp1 = g;
if((l & 0x20) != 0)
j1 = SCREENHEIGHT - iCharSizeY;
Graphics _tmp2 = g;
if((l & 2) != 0)
i1 = SCREENWIDTH - l1 >> 1;
Graphics _tmp3 = g;
if((l & 1) != 0)
j1 = SCREENHEIGHT - iCharSizeY >> 1;
cheatPrint(g, i1 + i, j1 + j, "" + k);
}
public void printValue(Graphics g, int i, int j, int k)
{
print(g, i, j, "" + k);
}
void startMusic(int i)
{
_curMusic = i;
try
{
sp[i].start();
}
catch(MediaException mediaexception) { }
}
void stopMusic(int i)
{
_curMusic = -1;
try
{
if(sp[i] != null)
sp[i].stop();
}
catch(MediaException mediaexception) { }
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -