📄 item.java
字号:
// Decompiled by Jad v1.5.7g. Copyright 2000 Pavel Kouznetsov.
// Jad home page: http://www.geocities.com/SiliconValley/Bridge/8617/jad.html
// Decompiler options: packimports(3) fieldsfirst ansi
import java.util.Random;
import javax.microedition.lcdui.Graphics;
// Referenced classes of package game:
// MultiOutPut
public class Item
{
public static final int ARMOR = 2;
public static final int EMPTY = 0;
public static final int GOLD = 3;
static Item ItSw;
public static final int POTION = 4;
public static final int SWORD = 1;
public boolean bTemplate[] = {
false, false, false, false, false, false, false
};
int iArmorArmor[] = {
1, 2, 3, 4
};
int iBonus[][] = {
{
-1, 0, 0
}, {
-1, 1, 0
}, {
1, 0, 4
}, {
6, -2, 0
}, {
3, 1, 0
}, {
5, -1, -4
}, {
0, 2, 6
}
};
public int iBonusArmor;
public int iBonusDamage;
public int iBonusLifeMax;
public int iBonusSpeed;
private int _$425[][] = {
{
5, 5, 5, 45, 40
}, {
5, 20, 15, 40, 20
}, {
5, 20, 15, 35, 25
}, {
8, 16, 16, 30, 30
}, {
0, 100, 0, 0, 0
}
};
public int iGold;
private static int _$454[] = {
0, 3, 6, 12, 24, 50, 100, 200, 400, 800,
1600, 4000, 8000, 16000, 32000
};
public int iMaterial;
private static int _$455[] = {
0, 50, 200, 800
};
private int _$437[][] = {
{
100, 0, 0, 0
}, {
100, 20, 3, 1
}, {
100, 30, 30, 10
}, {
100, 50, 50, 50
}, {
0, 0, 0, 100
}
};
int iRatio[][] = {
{
50, 3, 0, 0, 0, 0, 0
}, {
5, 25, 5, 3, 1, 3, 0
}, {
0, 10, 8, 6, 7, 5, 0
}, {
0, 7, 9, 20, 20, 20, 0
}, {
0, 0, 0, 0, 0, 0, 100
}
};
int iSwordDamage[] = {
1, 2, 3, 4
};
public int iWhat;
static MultiOutPut mu = null;
static Random random;
private static final String _$273[] = {
"casse ", "du vent ", "de vie ", "lourd ", "de pouvoir ", "mauvais ", "de Dacrid"
};
private final String _$438[] = {
"de cuir", "en cuivre", "en metal", "Noir"
};
private final String _$439[] = {
"leger", "en cuivre", "en metal", "Noir"
};
public Item(MultiOutPut multioutput, Random random1)
{
iGold = 0;
iWhat = 0;
iBonusDamage = 0;
iBonusArmor = 0;
iBonusSpeed = 0;
iBonusLifeMax = 0;
iMaterial = 0;
Item _tmp = this;
random = random1;
Item _tmp1 = this;
mu = multioutput;
}
public Item(Random random1)
{
iGold = 0;
iWhat = 0;
iBonusDamage = 0;
iBonusArmor = 0;
iBonusSpeed = 0;
iBonusLifeMax = 0;
iMaterial = 0;
Item _tmp = this;
random = random1;
iWhat = 0;
}
static void Switch(Item item, Item item1)
{
ItSw._$449(item);
item._$449(item1);
item1._$449(ItSw);
}
boolean bTemplate(int i, int j)
{
return iRatio[j][i] > _$443();
}
private int _$443()
{
return Math.abs(random.nextInt() % 100);
}
String getSaveString()
{
String s = "";
s = s + (char)(65 + iWhat);
s = s + (char)(65 + iMaterial);
s = s + (char)(74 + iBonusArmor);
s = s + (char)(74 + iBonusDamage);
s = s + (char)(74 + iBonusLifeMax);
s = s + (char)(74 + iBonusSpeed);
for(int i = 0; i < bTemplate.length; i++)
if(bTemplate[i])
s = s + "T";
else
s = s + "F";
return s;
}
public int iValue(boolean flag)
{
if(iWhat == 0)
return 0;
if(iWhat == 4)
return 1;
int i = 0;
i = _$455[iMaterial];
int j = 0;
int k = 0;
int l = 0;
int i1 = 0;
int k1 = 0;
for(int j1 = 0; j1 < iRatio[0].length; j1++)
if(bTemplate[j1])
{
k1 += iBonus[j1][0];
l += iBonus[j1][1];
i1 += iBonus[j1][2];
}
if(iWhat == 1)
j = k1;
if(iWhat == 2)
k = k1;
if(k > 0)
i += _$454[k] * 20;
else
i -= _$454[-k] * 8;
if(j > 0)
i += _$454[j] * 20;
else
i -= _$454[-j] * 8;
if(l > 0)
i += _$454[l * 2] * 30;
else
i -= _$454[-l] * 10;
if(i1 > 0)
i += _$454[i1] * 8;
else
i -= _$454[-i1] * 2;
if(i <= 0)
i = 2;
if(i < 5 && !flag)
i = 5;
if(!flag)
i = i * 3 >> 1;
if(iWhat == 2 && !flag)
i = i * 3 >> 1;
return i;
}
public void newItem(int i)
{
iBonusDamage = 0;
iBonusArmor = 0;
iBonusSpeed = 0;
iBonusLifeMax = 0;
iMaterial = 0;
int j1 = _$443();
int k1 = 0;
for(int j = 0; j < _$425[0].length; j++)
{
k1 += _$425[i][j];
if(j1 < k1)
{
iWhat = j;
j = _$425[0].length;
}
}
if(iWhat == 3)
{
iGold = 1 + Math.abs(random.nextInt() % (7 * (i + 1) * (i + 1)));
return;
}
if(iWhat == 0 || iWhat == 4)
return;
iMaterial = 0;
for(int k = 1; k < _$437[0].length; k++)
if(_$443() < _$437[i][k])
iMaterial = k;
int l1 = iRatio[0].length;
for(int l = 0; l < l1; l++)
bTemplate[l] = bTemplate(l, i);
int i2 = 0;
for(int i1 = 0; i1 < l1; i1++)
if(bTemplate[i1])
{
i2 += iBonus[i1][0];
iBonusSpeed += iBonus[i1][1];
iBonusLifeMax += iBonus[i1][2];
}
if(iWhat == 1)
{
iBonusDamage += i2 + iSwordDamage[iMaterial];
iBonusArmor = 0;
}
if(iWhat == 2)
{
iBonusArmor += i2 + iArmorArmor[iMaterial];
iBonusDamage = 0;
}
}
public void print(Graphics g, int i, int j)
{
if(mu == null)
return;
Graphics _tmp = g;
mu.print(g, i, j, 337 + iWhat, 2);
if(iWhat == 2 || iWhat == 1)
{
j += mu.iCharSizeY;
if(iWhat == 2)
{
Graphics _tmp1 = g;
mu.print(g, i, j, 314 + iMaterial, 2);
} else
{
Graphics _tmp2 = g;
mu.print(g, i, j, 324 + iMaterial, 2);
}
for(int k = 0; k < iRatio[0].length; k++)
if(bTemplate[k])
{
j += mu.iCharSizeY;
Graphics _tmp3 = g;
mu.print(g, i, j, 304 + k, 2);
}
j += mu.iCharSizeY * 2;
i += 90;
byte byte0 = -18;
mu.print(g, i, j, 346);
mu.printValue(g, i + byte0, j, iBonusLifeMax);
j += mu.iCharSizeY;
mu.print(g, i, j, 347);
mu.printValue(g, i + byte0, j, iBonusSpeed);
j += mu.iCharSizeY;
mu.print(g, i, j, 348);
mu.printValue(g, i + byte0, j, iBonusDamage);
j += mu.iCharSizeY;
mu.print(g, i, j, 349);
mu.printValue(g, i + byte0, j, iBonusArmor);
j += mu.iCharSizeY;
}
}
void set(String s)
{
int i = 0;
iWhat = s.charAt(i++) - 65;
iMaterial = s.charAt(i++) - 65;
iBonusArmor = s.charAt(i++) - 74;
iBonusDamage = s.charAt(i++) - 74;
iBonusLifeMax = s.charAt(i++) - 74;
iBonusSpeed = s.charAt(i++) - 74;
for(int j = 0; j < bTemplate.length; j++)
if(s.charAt(i++) == 'T')
bTemplate[j] = true;
else
bTemplate[j] = false;
}
private void _$449(Item item)
{
iWhat = item.iWhat;
iBonusDamage = item.iBonusDamage;
iBonusArmor = item.iBonusArmor;
iBonusSpeed = item.iBonusSpeed;
iBonusLifeMax = item.iBonusLifeMax;
iMaterial = item.iMaterial;
iGold = item.iGold;
for(int i = 0; i < bTemplate.length; i++)
bTemplate[i] = item.bTemplate[i];
}
static
{
random = null;
ItSw = new Item(random);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -