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

📄 b.java

📁 魂斗罗游戏的原码(j2me) 是学习j2me很好的方法
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
// 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 javax.microedition.lcdui.Graphics;
import javax.microedition.lcdui.Image;

// Referenced classes of package mdigi:
//            i, a, h, f

public class b extends i
{

    a b;
    public Image h;
    public boolean H;
    private int s;
    public int r;
    public int g[][] = {
        {
            44, 40, 16, 30
        }, {
            60, 40, 18, 29
        }, {
            77, 33, 16, 27
        }, {
            47, 0, 20, 39
        }, {
            67, 0, 24, 32
        }, {
            91, 0, 22, 31
        }, {
            23, 88, 21, 21
        }, {
            0, 0, 23, 23
        }, {
            23, 0, 24, 20
        }, {
            0, 69, 23, 23
        }, {
            23, 64, 20, 24
        }, {
            0, 23, 23, 23
        }, {
            23, 20, 24, 20
        }, {
            0, 46, 23, 23
        }, {
            23, 40, 20, 24
        }, {
            95, 103, 10, 12
        }, {
            22, 109, 17, 12
        }, {
            150, 24, 28, 8
        }, {
            65, 103, 15, 15
        }, {
            80, 103, 15, 15
        }, {
            123, 51, 17, 15
        }, {
            78, 61, 16, 31
        }, {
            60, 70, 18, 30
        }, {
            44, 71, 16, 28
        }, {
            94, 32, 20, 39
        }, {
            93, 71, 24, 32
        }, {
            0, 92, 22, 31
        }, {
            44, 99, 21, 21
        }, {
            0, 23, 23, 23
        }, {
            23, 20, 24, 20
        }, {
            0, 46, 23, 23
        }, {
            23, 40, 20, 24
        }, {
            0, 0, 23, 23
        }, {
            23, 0, 24, 20
        }, {
            0, 69, 23, 23
        }, {
            23, 64, 20, 24
        }, {
            95, 103, 10, 12
        }, {
            22, 109, 17, 12
        }, {
            150, 24, 28, 8
        }, {
            65, 103, 15, 15
        }, {
            80, 103, 15, 15
        }, {
            123, 51, 17, 15
        }
    };
    int w;
    int y;
    int k;

    public b(a a1)
    {
        super(a1);
        H = false;
        s = 0;
        r = 0;
        w = 0;
        y = 0;
        k = 0;
        b = a1;
    }

    public void b(Graphics g1)
    {
        i(g[o() + m() * 21][2]);
        e(g[o() + m() * 21][3]);
        b.a(g1, b.f, d(), (f() - r()) + 20, g[o() + g() + m() * 21][0], g[o() + g() + m() * 21][1], h(), r(), 20);
    }

    public void c(Graphics g1)
    {
        try
        {
            a(g1);
        }
        catch(Exception exception)
        {
            a(d() + 2);
            if(f() >= 180 || d() >= 180)
                i = false;
        }
    }

    protected void a(Graphics g1)
    {
        if(x)
        {
            if(s <= 3)
            {
                s++;
                if(r < 2)
                {
                    j(-2);
                    if(m() > 0)
                        p();
                    else
                        c();
                    b.a(g1, b.e, d(), (f() - g[o() + g() + m() * 20][3]) + 16, 0, 0, 19, 21, 20);
                }
            } else
            {
                i = false;
                x = false;
                s = 0;
                b.a(g1, b.e, d(), (f() - g[o() + g() + m() * 20][3]) + 16, 19, 0, 19, 21, 20);
            }
            return;
        }
        byte byte0 = 0;
        byte byte1 = 0;
        switch(r)
        {
        case 0: // '\0'
            if(e)
            {
                if(s <= 6)
                {
                    s++;
                    j(-2);
                    j(-2);
                } else
                {
                    for(int j = 0; j < 2; j++)
                    {
                        if(b.b(this))
                        {
                            s = 0;
                            f(0);
                            e = false;
                            return;
                        }
                        j(2);
                    }

                }
            } else
            if(b.b(this))
            {
                if(!b.a(this))
                    k();
                else
                    q();
            } else
            {
                b(2);
            }
            if(d() + h() <= -10 || d() >= 184 || f() >= 186)
                i = false;
            if(!b.b(this) && e())
            {
                for(int l = 0; l < 3; l++)
                    if(!b(2))
                        break;

            } else
            if(m() <= 0)
                p();
            else
                c();
            break;

        case 1: // '\001'
            if(b.t.d() > d())
                h(1);
            else
                h(0);
            if(b.j)
                return;
            byte byte2 = 0;
            int i1 = b.t.f();
            int j1 = f();
            if(i1 <= j1 - 32)
            {
                byte2 = 0;
                byte1 = -1;
            } else
            if(i1 > j1 - 32 && i1 < j1 + 32)
            {
                byte2 = 1;
                byte1 = 0;
            } else
            if(i1 >= j1 + 32)
            {
                byte2 = 2;
                byte1 = 1;
            }
            if(m() == 0)
                byte0 = -1;
            else
                byte0 = 1;
            if(!H && d() < 160)
                H = true;
            if(H && i() % 50 > 45)
                b.a(d() + (m() != 0 ? h() - 5 : 0), (j1 - 10) + (byte2 - 1) * 6, byte0 * 5, byte1 * 5, 0, 0);
            f(3 + byte2);
            if(d() + h() <= -6 || f() >= 186)
                i = false;
            break;

        case 2: // '\002'
            if(b.t.d() >= d())
                h(1);
            else
                h(0);
            if(b.j)
                return;
            byte byte3 = 0;
            int k1 = b.t.d();
            int i2 = b.t.f();
            int k2 = d();
            int l3 = f();
            if(i2 >= l3 - 32 && i2 <= l3 + 32)
            {
                byte3 = 1;
                if(m() == 0)
                {
                    byte0 = -1;
                } else
                {
                    byte0 = 1;
                    k2 += 24;
                }
                byte1 = 0;
            } else
            if(Math.abs(k1 - k2) > 10)
            {
                if(i2 > l3 + 32)
                {
                    byte3 = 0;
                    if(m() == 0)
                    {
                        byte0 = -1;
                    } else
                    {
                        byte0 = 1;
                        k2 += 20;
                    }
                    byte1 = 1;
                    l3 += 6;
                } else
                if(i2 < l3 - 32)
                {
                    byte3 = 2;
                    if(m() == 0)
                    {
                        byte0 = -1;
                    } else
                    {
                        byte0 = 1;
                        k2 += 20;
                    }
                    byte1 = -1;
                    l3 -= 12;
                }
            } else
            if(Math.abs(k1 - k2) <= 10)
            {
                if(i2 > l3 + 32)
                {
                    h(1);
                    byte1 = 1;
                    l3 += 8;
                } else
                if(i2 < l3 - 32)
                {
                    h(0);
                    byte1 = -1;
                    l3 -= 12;
                }
                k2 += 12;
                byte0 = 0;
                byte3 = 3;
            }
            f(7 + byte3);
            if(!H && d() < 160)
                H = true;
            if(H && i() % 50 > 45)
                b.a(k2 - 4, l3 + 4, byte0 * 5, byte1 * 5, 2, 0);
            if(d() + h() <= -6 || f() >= 186)
                i = false;
            break;

        case 3: // '\003'
            if(b.t.d() > d())
                h(1);
            else
                h(0);
            if(b.j)
                return;
            if(!H && d() < 160)
                H = true;
            if(H && i() % 50 > 45)
                b.a(d() + (m() != 0 ? h() - 5 : 0), f() - 3, (m() != 0 ? 1 : -1) * 5, 0, 1, 0);

⌨️ 快捷键说明

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