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

📄 maincanvas.java

📁 机器人大战MetalEN
💻 JAVA
📖 第 1 页 / 共 5 页
字号:
// 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 com.nokia.mid.ui.DeviceControl;
import com.nokia.mid.ui.FullCanvas;
import java.io.InputStream;
import javax.microedition.lcdui.*;

class MainCanvas extends FullCanvas
    implements Runnable
{

    static final int KEY_SOFT0 = 64;
    static final int KEY_SOFT1 = 128;
    static final int KEY_0 = 8192;
    static final int KEY_1 = 16384;
    static final int KEY_2 = 32768;
    static final int KEY_3 = 0x10000;
    static final int KEY_7 = 0x100000;
    static final int KEY_9 = 0x400000;
    static final int KEY_UP = 32770;
    static final int KEY_DOWN = 0x200004;
    static final int KEY_LEFT = 0x20008;
    static final int KEY_RIGHT = 0x80010;
    static final int KEY_SELECT = 0x40440;
    static final int KEY_DL = 12;
    static final int KEY_DR = 20;
    static final int FIX_1 = 0x10000;
    static final int FIX_2 = 0x20000;
    static final int FIX_3 = 0x30000;
    static final int FIX_4 = 0x40000;
    static final int FIX_5 = 0x50000;
    static final int FIX_6 = 0x60000;
    static final int FIX_7 = 0x70000;
    static final int FIX_8 = 0x80000;
    static final int FIX_9 = 0x90000;
    static final int FIX_01 = 6553;
    static final int FIX_02 = 13107;
    static final int FIX_03 = 19660;
    static final int FIX_04 = 26214;
    static final int FIX_05 = 32768;
    static final int FIX_06 = 39321;
    static final int FIX_07 = 45875;
    static final int FIX_08 = 52428;
    static final int FIX_09 = 58982;
    static final int FIX_001 = 655;
    static final int FIX_002 = 1310;
    static final int FIX_003 = 1966;
    static final int FIX_004 = 2621;
    static final int FIX_005 = 3276;
    static final int FIX_006 = 3932;
    static final int FIX_007 = 4587;
    static final int FIX_008 = 5242;
    static final int FIX_009 = 5898;
    public static final int GAME_WIDTH = 112;
    public static final int GAME_HEIGHT = 112;
    public static final int GAME_KEYSTOP = 1;
    public static final int GAME_WIPEOUT = 2;
    public static final int GAME_BACKLIGHT = 8;
    public static final int CHAPTER_LOGO = 0;
    public static final int CHAPTER_INIT = 1;
    public static final int CHAPTER_TITLE = 2;
    public static final int CHAPTER_SELECTINIT = 3;
    public static final int CHAPTER_SELECT = 4;
    public static final int CHAPTER_TARGETINIT = 5;
    public static final int CHAPTER_TARGET = 6;
    public static final int CHAPTER_GAMEINIT = 7;
    public static final int CHAPTER_MAINGAME = 8;
    public static final int CHAPTER_CLEARINIT = 9;
    public static final int CHAPTER_STAGECLEAR = 10;
    public static final int CHAPTER_GAMEOVERINIT = 11;
    public static final int CHAPTER_GAMEOVER = 12;
    public static final int CHAPTER_ALLCLEARINIT = 13;
    public static final int CHAPTER_ALLCLEAR = 14;
    public static final int CHAPTER_LOADIMAGE = 16;
    public static final int CHAPTER_LOADFIX = 17;
    public static final int CHAPTER_LOADIMAGEINIT = 18;
    public static final int CHAPTER_STORYINIT = 19;
    public static final int CHAPTER_STORY = 20;
    public static final int CHAPTER_MENUINIT = 21;
    public static final int CHAPTER_MENU = 22;
    public static final int CHAPTER_END = 23;
    public static final int MY_WIDTH = 32;
    public static final int MY_HEIGHT = 32;
    public static final int MY_HITWIDTH = 16;
    public static final int MY_HITHEIGHT = 32;
    public static final int MYSHOT_MAX = 8;
    public static final int CHAR_FLAG_LEFT = 1;
    public static final int CHAR_FLAG_WALK = 2;
    public static final int CHAR_FLAG_JUMP = 4;
    public static final int CHAR_FLAG_ACTION = 8;
    public static final int CHAR_FLAG_DESCENT = 16;
    public static final int CHAR_FLAG_GROUND = 32;
    public static final int CHAR_FLAG_DASH = 64;
    public static final int CHAR_FLAG_2JUMP = 128;
    public static final int CHAR_FLAG_ATTACK = 256;
    public static final int CHAR_FLAG_DAMAGE = 512;
    public static final int CHAR_FLAG_SHIELD = 1024;
    public static final int CHAR_FLAG_DEATH = 2048;
    public static final int MY_GTYPE_DESCENT = 4;
    public static final int MY_GTYPE_ATTACK = 5;
    public static final int EXP_MAX = 32;
    public static final int ENEMY_FLAG_AERIAL_L = 1;
    public static final int ENEMY_FLAG_AERIAL_R = 2;
    public static final int ENEMY_FLAG_HIT_LT = 4;
    public static final int ENEMY_FLAG_HIT_RT = 8;
    public static final int ENEMY_FLAG_HIT_LB = 16;
    public static final int ENEMY_FLAG_HIT_RB = 32;
    public static final int MAP_WIDTH_MAX = 64;
    public static final int MAP_HEIGHT_MAX = 64;
    public static final int CAMERA_SPEED_X = 0x50000;
    public static final int CAMERA_SPEED_Y = 0x50000;
    public static final int CAMERA_REST_X_R = 0xfff00000;
    public static final int CAMERA_REST_X_L = 0xffc00000;
    public static final int CAMERA_REST_Y = 0xffd80000;
    public static final int DRAW_MAINWIDTH = 112;
    public static final int DRAW_MAINHEIGHT = 104;
    public static final int DRAW_MY_SHIELD = 0;
    public static final int DRAW_MY_WALK0 = 1;
    public static final int DRAW_MY_WALK1 = 2;
    public static final int DRAW_MY_WALK2 = 3;
    public static final int DRAW_MY_JUMP = 4;
    public static final int DRAW_MY_DESCENT = 5;
    public static final int DRAW_MAP_WIDTH_MAX = 3;
    public static final int DRAW_MAP_HEIGHT_MAX = 3;
    private MetalEN app;
    private Thread thread;
    private Display display;
    private Runtime Run;
    private Font FontC;
    private static int ik;
    private static int RK;
    private static Graphics offGfx;
    public static long Mill;
    public static int Game_MainFlag = 0;
    public static byte Game_MainChapter = 0;
    public static byte Game_SubChapter = 0;
    public static int Game_MainTimer = 0;
    public static int Game_SubTimer = 0;
    public static int Game_Stage = 0;
    public static int Game_ClearCond;
    public static boolean Game_Pause = false;
    public static int Game_Font_W = 0;
    public static int Game_Font_H = 0;
    public static int nOld_Chapter = 0;
    public static int nCursor[] = new int[3];
    public static int nMenu[] = new int[2];
    public static int nMenuCount;
    public static int My_X;
    public static int My_Y;
    public static int My_XSpeed;
    public static int My_YSpeed;
    public static int My_ActFlag;
    public static int My_AP;
    public static int My_GType;
    public static int My_AnimeCount;
    public static int My_AttackCount;
    public static byte My_Weapon;
    public static byte My_DCount;
    public static int My_WSpeed;
    public static int Enemy_Max;
    public static int Enemy_X[];
    public static int Enemy_Y[];
    public static int Enemy_HitWidth[];
    public static int Enemy_HitHeight[];
    public static int Enemy_Speed[];
    public static int Enemy_XSpeed[];
    public static int Enemy_YSpeed[];
    public static int Enemy_Flag[];
    public static int Enemy_AP[];
    public static byte Enemy_GType[];
    public static int Enemy_AnimeCount[];
    public static int Enemy_AttackCount[];
    public static byte Enemy_AttackType[];
    public static byte Enemy_MoveType[];
    public static int Camera_X;
    public static int Camera_Y;
    public static int Draw_FullWidth;
    public static int Draw_FullHeight;
    public static int Draw_Zero_X;
    public static int Draw_Zero_Y;
    public static int MyBurst_X;
    public static int MyBurst_Y;
    public static int MyBurst_Flag;
    public static int MyBurst_Count;
    public static int MyShot_X[] = new int[8];
    public static int MyShot_Y[] = new int[8];
    public static int MyShot_XSpeed[] = new int[8];
    public static int MyShot_YSpeed[] = new int[8];
    public static int MyShot_HitWidth[] = new int[8];
    public static int MyShot_HitHeight[] = new int[8];
    public static byte MyShot_Attack[] = new byte[8];
    public static int MyShot_Flag[] = new int[8];
    public static int MyShot_Count[] = new int[8];
    public static int EnemyShot_Max;
    public static int EnemyShot_X[];
    public static int EnemyShot_Y[];
    public static int EnemyShot_XSpeed[];
    public static int EnemyShot_YSpeed[];
    public static byte EnemyShot_Width[];
    public static byte EnemyShot_Height[];
    public static byte EnemyShot_HitWidth[];
    public static byte EnemyShot_HitHeight[];
    public static byte EnemyShot_Attack[];
    public static int EnemyShot_Flag[];
    public static int EnemyShot_Count[];
    public static int EnemyShot_GType[];
    public static int Exp_X[] = new int[32];
    public static int Exp_Y[] = new int[32];
    public static int Exp_XSpeed[] = new int[32];
    public static int Exp_YSpeed[] = new int[32];
    public static byte Exp_GType[] = new byte[32];
    public static int Exp_Flag[] = new int[32];
    public static int Exp_Count[] = new int[32];
    public static byte Map_Front[][];
    public static byte Map_Front_G[][];
    public static int Map_Width;
    public static int Map_Height;
    public static int Map_GraWidth;
    public static int Map_GraHeight;
    public static byte Map_Back_G[][] = new byte[4][8];
    public static Image Img_My[][] = new Image[2][6];
    public static Image Img_MyParts[][] = new Image[2][3];
    public static Image Img_MyShot[] = new Image[2];
    public static Image Img_MapChip[] = new Image[7];
    public static Image Img_Enemy[][];
    public static Image Img_Exp[];
    public static Image Img_Gauge;
    public static Image Img_EnemyShot[];
    public static Image Img_Back;
    public static Image Img_Pilot[] = new Image[2];
    public static Image Img_No[] = new Image[10];
    public static Image Img_Title;
    public static Image Img_Mes[] = new Image[2];
    public static byte Buff[];
    public static int Point;
    public static int Table_Burst_Type_X[] = {
        0xfff80000, 0x180000
    };
    public static int Table_Burst_Type_Flag[] = {
        0, 1
    };
    public static byte Table_MyShot_Loop[] = {
        0, 2
    };
    public static byte Table_MyShot_Space[] = {
        3, 5
    };
    public static byte Table_MyShot_Attack[] = {
        16, 8
    };
    public static byte Table_MyShot_Hit_Width[] = {
        16, 4
    };
    public static byte Table_MyShot_Hit_Height[] = {
        8, 4
    };
    public static byte T_MyShot_Count[] = {
        6, 11
    };
    public static int Table_MyShot_Type_PointX[][] = {
        {
            0x100000, 0
        }, {
            0x1c0000, 0x40000
        }
    };
    public static int Table_MyShot_Type_PointY[] = {
        0x90000, 0x80000
    };
    public static int Table_MyShot_Type_XSpeed[][][] = {
        {
            {
                0xd0000, 0, 0
            }, {
                0xfff30000, 0, 0
            }
        }, {
            {
                0x59999, 0x80000, 0x5cccc
            }, {
                0xfffa6667, 0xfff80000, 0xfffa3334
            }
        }
    };
    public static int Table_MyShot_Type_YSpeed[][] = {
        {
            0, 0, 0
        }, {
            0xfffa6667, 0, 0x5cccc
        }
    };
    public static int Table_ExpGene_Rev_X[] = {
        0, 0x100000, 0xb0000, 0, 0xfff50000, 0xfff00000, 0xfff50000, 0, 0xb0000
    };
    public static int Table_ExpGene_Rev_Y[] = {
        0, 0, 0xb0000, 0x100000, 0xb0000, 0, 0xfff50000, 0xfff00000, 0xfff50000
    };
    public static int Table_AAiming[][] = {
        {
            0x10000, 0x10000, 0x10000, 0x10000, 0x10000, 0x10000, 0x10000
        }, {
            0, 46530, 58326, 62258, 63569, 64224, 64880
        }, {
            0, 29490, 46530, 54394, 58326, 60948, 62258
        }, {
            0, 20970, 36044, 46530, 52428, 56360, 58326
        }, {
            0, 15728, 29490, 39321, 46530, 51117, 54394
        }, {
            0, 13107, 24247, 33423, 40631, 46530, 50462
        }, {
            0, 10485, 20970, 29490, 36044, 41942, 46530
        }
    };
    public static int Table_Speed_X2[] = {
        0xfffa0000, 0xfffb0000, 0xfffc0000, 0xfffd0000, 0xfffe0000, 0xffff0000
    };
    public static byte TableD_My_Anime[][] = {
        {
            0, 0, 0, 0, 0, 0
        }, {
            3, 3, 1, 2, 2, 1
        }, {
            2, 2, 2, 2, 2, 2
        }, {
            3, 3, 3, 3, 3, 3
        }, {
            1, 1, 1, 1, 1, 1
        }, {
            3, 3, 3, 3, 3, 3
        }
    };
    public static int TableD_My_Arm_X[][][] = {
        {
            {
                0, 0, 0, 0xffff0000, 0, 0, 0, 0
            }, {
                0xfffb0000, 0xfffb0000, 0xfffb0000, 0xfffc0000, 0xfffb0000, 0xfffb0000, 0xfffb0000, 0xfffb0000
            }
        }, {
            {
                0, 0, 0, 0, 0, 0xffff0000, 0, 0
            }, {
                0xfffb0000, 0xfffb0000, 0xfffb0000, 0xfffb0000, 0xfffb0000, 0xfffc0000, 0xfffb0000, 0xfffb0000
            }
        }
    };
    public static int TableD_Burst_Type_X[] = {
        0xfff60000, 0x1a0000
    };
    public static byte TableD_Exp_Anime[][] = {
        {
            3, 2, 1, 0
        }, {
            4, 4, 4, 4
        }, {
            3, 3, 3, 3
        }, {
            8, 7, 6, 5
        }
    };
    public static byte TableD_Enemy_Anime[][] = {
        {
            0, 0, 0, 0, 0, 0, 0, 0
        }, {
            1, 1, 1, 1, 1, 1, 1, 1
        }, {
            2, 2, 2, 2, 2, 2, 2, 2
        }, {
            3
        }, {
            4, 4, 4, 4, 4, 4, 4, 4
        }, {
            5, 5, 5, 5, 5, 5, 5, 5
        }, {
            6, 6, 6, 6, 6, 6, 6, 6
        }, {
            7, 8, 8, 7, 7, 9, 9, 7
        }, {
            3, 3, 3, 3, 3, 3, 3, 3
        }, {
            0, 0, 0, 0, 0, 0, 0, 0
        }, {
            0, 1, 0, 1, 0, 1, 0, 1
        }, {
            2, 3, 2, 3, 2, 3, 2, 3
        }, {
            0, 0, 0, 0, 0, 0, 0, 0
        }
    };
    public static byte TableD_Back_Y[] = {
        40, 0, 0, 0, 0, 72
    };
    public static int Camera_Limit[] = {
        0, 0, 0, 0, 0, 0x100000
    };

    public MainCanvas(Display display1, MetalEN metalen)
    {
        thread = null;
        display = null;
        display = display1;
        app = metalen;
        Run = getRuntime();
        FontC = Font.getDefaultFont();
        Game_Font_W = FontC.stringWidth("0");
        Game_Font_H = FontC.getHeight();
        Draw_FullWidth = getWidth();
        Draw_FullHeight = getHeight();
        Draw_Zero_X = (Draw_FullWidth - 112) / 2;
        Draw_Zero_Y = (Draw_FullHeight - Game_Font_H - 112) / 2;
        Mill = System.currentTimeMillis();
        Game_MainFlag |= 0x8;
        DeviceControl.setLights(0, 100);
        Point = 0;

⌨️ 快捷键说明

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