⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 item.java

📁 java程序源代码很好的东西啊,好的不的了啊,大家要下啊
💻 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 + -