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

📄 e.java

📁 魂斗罗游戏的原码(j2me) 是学习j2me很好的方法
💻 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 

package mdigi;

import java.io.IOException;
import javax.microedition.lcdui.*;

// Referenced classes of package mdigi:
//            c, a, MdigiMIDlet

public class e extends Canvas
    implements Runnable
{

    private MdigiMIDlet x;
    private boolean y;
    private Image f;
    private Graphics q;
    int c;
    boolean v;
    boolean s;
    boolean m;
    private int i;
    private Image e;
    private int r;
    private int k;
    private boolean b;
    private int z;
    private int o;
    private int w;
    private int a;
    private String n;
    private String l[] = {
        "『游戏简介』", "来自精英世界的特种兵", "孤身勇闯敌军基地,凭", "借强大的火力和敏捷的", "身手所向无敌。本款游", "戏肯定能让喜欢横版过", "关的你大呼过瘾,打倒", "所有出现的敌人,拯救", "世界的使命必能完成!", "【操作说明】", 
        "左软键:用来显示菜单", "左右方向键或数字键4/6:", "       左右移动", "上方向键或数字键 2:", "       向上", "下方向键或数字键 8:", "       趴下", "", "数字键 1:左上方向", "数字键 3:右上方向", 
        "数字键 7:左下方向", "数字键 9:右下方向", "数字键 0:开 枪", "# 键 :   跳 跃", "", "", "", "", "", ""
    };
    private String t[] = {
        "【关于】", "  魂斗神罗", "  版本 v1.0.0", "【发行商】", " 联动世纪科技公司", "   www.unimoco.cn", " 客服电话:", "  010-96096908", " 客服信箱:", "   unija@unimoco.cn", 
        "", " 【游戏提供】", " 瑞虹科技", "  www.mdigi.net", "", "", "", "", "", ""
    };
    private int j;
    private Image h;
    private Image g;
    private c p;
    private a d;
    Thread u;

    public e(MdigiMIDlet mdigimidlet)
    {
        y = false;
        v = true;
        s = true;
        m = true;
        i = 0;
        r = 176;
        k = 188;
        b = false;
        z = 9;
        o = 0;
        w = 100;
        a = 0;
        n = "魂斗神罗 v1.0.0";
        x = mdigimidlet;
        f = Image.createImage(getWidth(), getHeight());
        q = f.getGraphics();
        b();
        u = new Thread(this);
        u.start();
    }

    protected void showNotify()
    {
        y = true;
        if(z == 7 && v)
            d.e(1);
    }

    protected void hideNotify()
    {
        y = false;
    }

    public void b()
    {
        try
        {
            h = Image.createImage("/icons/bg.png");
            e = Image.createImage("/icons/logo.png");
            g = Image.createImage("/icons/mdigi.png");
        }
        catch(IOException ioexception) { }
    }

    public void run()
    {
        do
        {
            switch(z)
            {
            case 4: // '\004'
            case 5: // '\005'
            case 6: // '\006'
            default:
                break;

            case 9: // '\t'
                a += 2;
                if(a == 20)
                {
                    p = new c();
                    p.a(0);
                }
                if(a == 50)
                    d = new a(this);
                if(a >= 100)
                    z = 10;
                break;

            case 8: // '\b'
                i++;
                if(i >= 20)
                {
                    i = 0;
                    z = 10;
                }
                break;

            case 10: // '\n'
                i++;
                if(i >= 20)
                {
                    i = 0;
                    z = 0;
                }
                break;

            case 0: // '\0'
                if(!b)
                {
                    b = true;
                    e = null;
                    h = null;
                    g = null;
                    System.gc();
                    x.d();
                }
                break;

            case 1: // '\001'
                a();
                break;

            case 2: // '\002'
                e();
                break;

            case 3: // '\003'
                m();
                break;

            case 7: // '\007'
                d.i();
                break;
            }
            a(w);
        } while(true);
    }

    public void a(int i1)
    {
        repaint();
        try
        {
            Thread _tmp = u;
            Thread.sleep(i1);
        }
        catch(InterruptedException interruptedexception) { }
    }

    public void paint(Graphics g1)
    {
        switch(z)
        {
        case 9: // '\t'
            q.setColor(255, 255, 255);
            q.fillRect(0, 0, 176, 188);
            q.drawImage(e, 30, 10, 20);
            q.setColor(0, 0, 0);
            q.drawString("加载中。。。", 60, 130, 20);
            q.drawString("" + a + "%", 80, 145, 20);
            q.setColor(248, 9, 20);
            q.fillRect(37, 160, a, 6);
            break;

        case 8: // '\b'
            q.drawImage(e, 30, 30, 20);
            q.setColor(0, 0, 0);
            q.drawString(n, 10, 5, 20);
            break;

        case 10: // '\n'
            q.setColor(0, 0, 0);
            q.fillRect(0, 0, 176, 188);
            a(q, h, 11, 43, 0, 0, 140, 74, 20);
            a(q, g, 38, 145, 0, 0, 88, 31, 20);
            break;

        case 0: // '\0'
            q.setColor(88, 80, 120);
            q.fillRect(0, 0, 176, 188);
            p.c(q);
            break;

        case 1: // '\001'
            f();
            break;

        case 2: // '\002'
            k();
            break;

        case 3: // '\003'
            c();
            break;

        case 7: // '\007'
            d.a(q);
            break;

        case 6: // '\006'
            q.setColor(74, 84, 96);
            q.fillRect(0, 0, 176, 188);
            p.c(q);
            break;
        }
        g1.drawImage(f, 0, 0, 20);
    }

    public void keyPressed(int i1)
    {
        switch(z)
        {
        case 10: // '\n'
            z = 0;
            break;

        case 0: // '\0'
            e(i1);
            break;

        case 1: // '\001'
            c(i1);
            break;

        case 2: // '\002'
            f(i1);
            break;

        case 3: // '\003'
            d(i1);
            break;

        case 7: // '\007'
            d.a(i1);
            break;

        case 6: // '\006'
            b(i1);
            break;
        }
    }

    public void keyReleased(int i1)
    {
        switch(z)
        {
        case 7: // '\007'
            d.c(i1);
            break;
        }
    }

    protected void e(int i1)
    {
        if(b)
            b(i1);
    }

    public void d()
    {
        if(p.j[0] == 0)
            z = 0;
        else
            z = 6;
        x.d();
    }

    public void n()
    {
        switch(c)
        {
        case 0: // '\0'
            v = !v;
            break;

        case 1: // '\001'
            d.m = !d.m;
            break;
        }
    }

    public void h()
    {
        p.a(6);
        z = 6;
        o = 0;
        p.b(o);
        d.a();
        x.d();
    }

    protected void c(int i1)
    {
        switch(i1)
        {
        default:
            break;

        case -1: 
        case 50: // '2'
            c--;
            if(c < 0)
                c = 1;
            break;

        case -2: 
        case 56: // '8'
            c++;
            if(c > 1)
                c = 0;
            break;
        }
    }

    protected void f(int i1)
    {
        switch(i1)
        {
        default:
            break;

        case -1: 
        case 50: // '2'
            j--;
            if(j < 0)
                j = 2;
            break;

        case -2: 
        case 56: // '8'
            j++;
            if(j > 2)
                j = 0;
            break;
        }
    }

    protected void d(int i1)
    {
        switch(i1)
        {
        default:
            break;

        case -1: 
        case 50: // '2'
            j--;
            if(j < 0)
                j = 1;
            break;

        case -2: 
        case 56: // '8'
            j++;
            if(j > 1)
                j = 0;
            break;
        }
    }

    public void j()
    {
        switch(p.j[o])
        {
        case 5: // '\005'
        default:
            break;

        case 0: // '\0'
            System.gc();
            d.d();
            z = 7;
            x.a();
            break;

        case 1: // '\001'
            z = 1;
            x.c();
            break;

        case 2: // '\002'
            z = 2;
            j = 0;
            x.b();
            break;

        case 3: // '\003'
            z = 3;
            j = 0;
            x.b();
            break;

        case 4: // '\004'
            MdigiMIDlet _tmp = x;
            MdigiMIDlet.g();
            break;

        case 6: // '\006'
            z = 7;
            if(v)
                d.e(0);
            x.a();
            break;
        }
    }

    public void g()
    {
        if(p.j[0] == 0)
            z = 0;
        else
            z = 6;
        x.d();
    }

    protected void b(int i1)
    {
        switch(i1)
        {
        case -6: 
        case -5: 
        case 53: // '5'
        default:
            break;

        case -1: 
        case 50: // '2'
            o--;
            if(o < 0)
                o = p.j.length - 1;
            p.b(o);
            break;

        case -2: 
        case 56: // '8'
            o++;
            if(o >= p.j.length)
                o = 0;
            p.b(o);
            break;
        }
    }

    protected void m()
    {
    }

    protected void a()
    {
    }

    protected void e()
    {
    }

    private void f()
    {
        q.setColor(88, 80, 120);
        q.fillRect(0, 0, 176, 208);
        q.setColor(0xffffff);
        q.setFont(Font.getFont(32, 0, 16));
        Graphics _tmp = q;
        Graphics _tmp1 = q;
        q.drawString("设置", 90, 32, 0x1 | 0x10);
        if(v)
        {
            Graphics _tmp2 = q;
            Graphics _tmp3 = q;
            q.drawString("开", 120, 65, 0x10 | 0x4);
        } else
        {
            Graphics _tmp4 = q;
            Graphics _tmp5 = q;
            q.drawString("关", 120, 65, 0x10 | 0x4);
        }
        if(d.m)
        {
            Graphics _tmp6 = q;
            Graphics _tmp7 = q;
            q.drawString("开", 120, 105, 0x10 | 0x4);
        } else
        {
            Graphics _tmp8 = q;
            Graphics _tmp9 = q;
            q.drawString("关", 120, 105, 0x10 | 0x4);
        }
        Graphics _tmp10 = q;
        Graphics _tmp11 = q;
        q.drawString("游戏音效", 84, 65, 0x10 | 0x8);
        Graphics _tmp12 = q;
        Graphics _tmp13 = q;
        q.drawString("自动开枪", 84, 105, 0x10 | 0x8);
        q.drawRect(15, 63 + c * 40, 144, 20);
    }

    private void k()
    {
        q.setColor(51, 68, 85);
        q.fillRect(0, 0, 176, 202);
        q.setColor(0xffffff);
        q.setFont(Font.getFont(32, 0, 16));
        for(int i1 = 0; i1 < 9; i1++)
            if(i1 + j * 9 < 42)
                q.drawString(l[i1 + j * 9], 5, 5 + 20 * i1, 20);

    }

    private void c()
    {
        q.setColor(51, 68, 85);
        q.fillRect(0, 0, 176, 202);
        q.setColor(0xffffff);
        q.setFont(Font.getFont(32, 0, 16));
        for(int i1 = 0; i1 < 9; i1++)
            if(i1 + j * 9 < 42)
                q.drawString(t[i1 + j * 9], 5, 5 + 20 * i1, 20);

    }

    private void a(Graphics g1, Image image, int i1, int j1, int k1, int l1, int i2, 
            int j2, int k2)
    {
        g1.setClip(i1, j1, i2, j2);
        Graphics _tmp = g1;
        g1.drawImage(image, i1 - k1, j1 - l1, 0x4 | k2);
        g1.setClip(0, 0, 176, 188);
    }

    public void i()
    {
        x.e();
        addCommand(x.a[5]);
        setCommandListener(x);
    }

    public void l()
    {
        z = 0;
        p.a(0);
        d.a();
        o = 0;
        p.b(o);
        System.gc();
        x.d();
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -