📄 engine.java
字号:
public static final int Y = 1; // y-base of image, top side.
public static final int WIDTH = 2; // width of sprite.
public static final int HEIGHT = 3; // height of sprite.
public static final int IMAGE_ID = 0; // index of image id.
public static final int IMAGE_X_OFFSET = 1; // index of an image's x offset.
public static final int IMAGE_Y_OFFSET = 2; // index of an image's y offset.
public static final int IMAGE_INDECES = 3; // index-count of images.
public static final int TOP_LEFT = Graphics.TOP |
Graphics.LEFT; // top-left anchor.
public static short MAX_SHAKE; // maximum shake for any component.
//#ifndef NO_SCREEN_SHAKING
public static final int UNIFORM_SHAKE = 2; // bool value index that indicates whether shakes are uniform.
public static final int SHAKE_TIME = 3; // amount of time that the shake is turned on for.
public static final int SHAKE_SCREEN = 0; // index of shake magnitude for the entire screen.
public static final int SHAKE_BIGGS = 1; // index of shake magnitude for Biggs.
public static final int SHAKE_CRITTERS = 2; // index of shake magnitude for all Critter.
public static final int SHAKE_BOSSES = 3; // index of shake magnitude for all bosses.
public static final int SHAKE_BGS = 4; // index of shake magnitude for level backgrounds/foregrounds.
public static final int SHAKE_HUD = 5; // index of shake magnitude for game HUD.
public static final int SHAKE_W = 6; // width of shake array.
public static final int SHAKE_H = 4; // size of shake array.
public static final int [][] S_SHAKES = new int[SHAKE_H]
[SHAKE_W]; // array of all shake magnitudes.
//#endif
public static final Image [] S_IMAGES = new Image[IMAGE_COUNT]; // array of all Image objects.
public static final int ASSETS_IMAGES = IMAGE_BG_TITLE; // assets count for up-to images.
public static final int ASSETS_ANIMS = ASSETS_IMAGES + 0; // animations data file.
public static final int ASSETS_ADVENTURES = ASSETS_IMAGES + 1; // adventure levels data file.
public static final int ASSETS_PUZZLES = ASSETS_IMAGES + 2; // puzzle levels data file.
public static final int ASSETS_TIMETRIALS = ASSETS_IMAGES + 3; // puzzle levels data file.
public static final int ASSETS_TUTORIALS = ASSETS_IMAGES + 4; // tutorial levels data file.
public static final int ASSETS_LOCALE = ASSETS_IMAGES + 5; // locale data file.
//#if DefaultConfiguration || Nokia_6600 || Nokia_6600_Unobfuscated || Nokia_3220 || Nokia_3220_Unobfuscated || Razr
// public static final int ASSETS_TOTAL = ASSETS_IMAGES + 6; // total number of assets to load at startup.
//#else
public static final int ASSETS_SOUNDS = ASSETS_IMAGES + 6; // total number of assets to load at startup.
public static final int ASSETS_TOTAL = ASSETS_IMAGES + 7; // total number of assets to load at startup.
//#endif
public static int LOADING_BAR_WIDTH; // width of main loading bar.
public static int LOADING_BAR_HEIGHT; // height of main loading bar.
public static int LOADING_BAR_DIVISOR; // size of each interval of the loading bar.
public static int LOADING_BAR_X; // x anchor of main loading bar.
public static int LOADING_BAR_Y; // y anchor of main loading bar.
public static int LOADING_BAR_TEXT_ANCHOR; // y anchor of "loading" text.
public static int LOADING_BIGGS_Y; // y anchor of biggs loading graphic
public static int LOADING_WINDOW_Y; // y anchor of loading bar window
public static short SCREEN_WIDTH; // screen-width as according to device.
public static short SCREEN_HEIGHT; // screen-height as according to device.
public static short SCREEN_HALF_WIDTH; // 50% screen-width.
public static short SCREEN_HALF_HEIGHT; // 50% screen-height.
public static short SOFTKEY_MARGIN_BOTTOM; // y anchor of softkey labels
public static short SOFTKEY_MARGIN_LEFT; // left anchor of left softkey label
public static short SOFTKEY_MARGIN_RIGHT; // right anchor of right softkey label
public static short BOARD_MARGIN_LEFT;
public static short BOARD_MARGIN_RIGHT;
//#ifdef MANUAL_BUFFER
//# public static Image s_screen_image; // buffered representation of the screen.
//# public static Graphics s_screen_graphic; // Graphics object inerface to the screen.
//#endif
// setup screen parameters.
public void setScreen() {
if(SCREEN_WIDTH != getWidth() || SCREEN_HEIGHT != getHeight()) {
SCREEN_WIDTH = (short)getWidth();
SCREEN_HEIGHT = (short)getHeight();
SCREEN_HALF_WIDTH = (short)(SCREEN_WIDTH / 2);
SCREEN_HALF_HEIGHT = (short)(SCREEN_HEIGHT / 2);
//#if DefaultConfiguration || Nokia_6600 || Nokia_6600_Unobfuscated || Razr
MAX_SHAKE = (short)(4);
LOADING_BAR_WIDTH = 118;
LOADING_BAR_HEIGHT = 3;
LOADING_BAR_X = 20;
LOADING_BAR_Y = 22;
LOADING_BAR_TEXT_ANCHOR = 3;
LOADING_BIGGS_Y = 55;
LOADING_WINDOW_Y = SCREEN_HEIGHT - 70;
SOFTKEY_MARGIN_BOTTOM = (short)(SCREEN_HEIGHT - 2);
SOFTKEY_MARGIN_LEFT = (short)(2);
SOFTKEY_MARGIN_RIGHT = (short)(SCREEN_WIDTH - 2);
BOARD_MARGIN_LEFT = 26;
BOARD_MARGIN_RIGHT = 10;
Level.GAME_BOARD_W = (short)(6);
Level.GAME_BOARD_H = (short)(9);
Level.GAME_SQUARE_W = (short)(23);
Level.GAME_SQUARE_H = (short)(22);
Level.LEFT_X = (short)(3);
Level.RIGHT_X = (short)(SCREEN_WIDTH - 3);
Level.TOP_Y = (short)(3);
Level.BOTTOM_Y = (short)(SCREEN_HEIGHT - 15);
// Level.POWERUP_Y = (short)(SCREEN_HEIGHT - 30);
//tira CRC-25
//smudrievky
Level.POWERUP_Y = (short)(SCREEN_HEIGHT - 41);
//<-
Level.PADDING = (short)(3);
Level.FOOD_BAR_X = (short)(9);
Level.FOOD_BAR_Y = (short)(7);
Level.FOOD_BAR_WIDTH = (short)(6);
Level.FOOD_BAR_HEIGHT = (short)(160);
Level.FOOD_BAR_MULTIPLYER = 2;
Level.GROUND = (short)(Engine.SCREEN_HEIGHT - 13);
//#ifndef NO_BOARD_BUMPS
Level.BUMP_OFFSET = (byte)3;
Level.MAX_BUMP_OFFSET = (byte)3;
//#endif
Critter.TIME_COIN_DIVISOR = (COORDS[Coords.COIN_IDLE_4][HEIGHT] << FP_SHIFT) / Critter.TIME_COIN_DURATION;
Critter.S_BOX = new byte [] { (byte)-9, (byte)-6, (byte)18, (byte)12, };
Avatar.TONGUE_X = (byte)(0);
Avatar.TONGUE_Y = (byte)(-10);
Avatar.TONGUE_W = (byte)(5);
Avatar.BIGGS_BOARD_Y = (short)(Engine.SCREEN_HEIGHT - 60);
Avatar.BIGGS_GROUND_Y = (short)(Engine.SCREEN_HEIGHT - 23);
Avatar.BIGGS_SKY_Y = (byte)(45);
Avatar.S_BOX = new byte [] { (byte)-10, (byte)-14, (byte)20, (byte)35 };
Avatar.BIGGS_TONGUE_Y = (byte)(4);
Menus.MENU_MAIN_Y_MID = SCREEN_HALF_HEIGHT + 30;
Menus.MENU_STATS_Y_MID = SCREEN_HALF_HEIGHT + 30;
Menus.MENU_WIDTH = Engine.COORDS[Coords.MENU_TOP][Engine.WIDTH];
Menus.MENU_ITEM_TOGGLE_WIDTH = COORDS[Coords.MENU_TOP][WIDTH] - 50;
Menus.MENU_ITEM_STAT_WIDTH = COORDS[Coords.MENU_TOP][WIDTH] - 30;
Menus.MENU_ITEM_TEXT_WIDTH = COORDS[Coords.MENU_TOP][WIDTH] - 30;
Menus.MENU_ITEM_TEXT_HEIGHT = SCREEN_HALF_HEIGHT - 40;
Menus.MENU_ITEM_TEXT_FULL_WIDTH = SCREEN_WIDTH - 10;
Menus.MENU_ITEM_TEXT_FULL_HEIGHT = SCREEN_HEIGHT - 50;
Menus.MENU_ITEM_TEXT_END_WIDTH = Menus.MENU_ITEM_TEXT_FULL_WIDTH;
Menus.MENU_ITEM_TEXT_END_HEIGHT = Menus.MENU_ITEM_TEXT_HEIGHT + Menus.MENU_ITEM_TEXT_HEIGHT/2;
//#elif Nokia_3220 || Nokia_3220_Unobfuscated
//# MAX_SHAKE = (short)(0);
//# LOADING_BAR_WIDTH = 75;
//# LOADING_BAR_HEIGHT = 2;
//# LOADING_BAR_X = 16;
//# LOADING_BAR_Y = 15;
//# LOADING_BAR_TEXT_ANCHOR = 3;
//# LOADING_BIGGS_Y = 30;
//# LOADING_WINDOW_Y = SCREEN_HEIGHT - 40;
//# SOFTKEY_MARGIN_BOTTOM = (short)(SCREEN_HEIGHT - 1);
//# SOFTKEY_MARGIN_LEFT = (short)(1);
//# SOFTKEY_MARGIN_RIGHT = (short)(SCREEN_WIDTH - 1);
//# BOARD_MARGIN_LEFT = 16;
//# BOARD_MARGIN_RIGHT = 6;
//# Level.GAME_BOARD_W = (short)(6);
//# Level.GAME_BOARD_H = (short)(8);
//# Level.GAME_SQUARE_W = (short)(18);
//# Level.GAME_SQUARE_H = (short)(16);
//# Level.LEFT_X = (short)(2);
//# Level.RIGHT_X = (short)(SCREEN_WIDTH - 1);
//# Level.TOP_Y = (short)(1);
//# Level.BOTTOM_Y = (short)(SCREEN_HEIGHT - 10);
//# Level.POWERUP_Y = (short)(SCREEN_HEIGHT - 17);
//# Level.PADDING = (short)(1);
//# Level.FOOD_BAR_X = (short)(7);
//# Level.FOOD_BAR_Y = (short)(4);
//# Level.FOOD_BAR_WIDTH = (short)(3);
//# Level.FOOD_BAR_HEIGHT = (short)(74);
//# Level.FOOD_BAR_MULTIPLYER = 1;
//# Level.GROUND = (short)(Engine.SCREEN_HEIGHT - 9);
//#ifndef NO_BOARD_BUMPS
//# Level.BUMP_OFFSET = (byte)2;
//# Level.MAX_BUMP_OFFSET = (byte)2;
//#endif
//# Critter.TIME_COIN_DIVISOR = (COORDS[Coords.COIN_IDLE_4][HEIGHT] << FP_SHIFT) / Critter.TIME_COIN_DURATION;
//# Critter.S_BOX = new byte [] { (byte)-6, (byte)-4, (byte)12, (byte)8, };
//# Avatar.TONGUE_X = (byte)(-2);
//# Avatar.TONGUE_Y = (byte)(-7);
//# Avatar.TONGUE_W = (byte)(4);
//# Avatar.BIGGS_BOARD_Y = (short)(Engine.SCREEN_HEIGHT - 40);
//# Avatar.BIGGS_GROUND_Y = (short)(Engine.SCREEN_HEIGHT - 18);
//# Avatar.BIGGS_SKY_Y = (byte)(30);
//# Avatar.S_BOX = new byte [] { (byte)-5, (byte)-10, (byte)10, (byte)22 };
//# Avatar.BIGGS_TONGUE_Y = (byte)(2);
//# Menus.MENU_MAIN_Y_MID = SCREEN_HALF_HEIGHT + 20;
//# Menus.MENU_STATS_Y_MID = SCREEN_HALF_HEIGHT + 10;
//# Menus.MENU_WIDTH = Engine.COORDS[Coords.MENU_TOP][Engine.WIDTH];
//# Menus.MENU_ITEM_TOGGLE_WIDTH = SCREEN_WIDTH - 40;
//# Menus.MENU_ITEM_STAT_WIDTH = SCREEN_WIDTH - 26;
//# Menus.MENU_ITEM_TEXT_WIDTH = SCREEN_WIDTH - 30;
//# Menus.MENU_ITEM_TEXT_HEIGHT = (CUSTOM_FONT_NEWLINE_HEIGHT * Menus.NUM_TEXT_LINES)+1;
//# Menus.MENU_ITEM_TEXT_FULL_WIDTH = SCREEN_WIDTH - 10;
//# Menus.MENU_ITEM_TEXT_FULL_HEIGHT = SCREEN_HEIGHT - 20;
//# Menus.MENU_ITEM_TEXT_END_WIDTH = Menus.MENU_ITEM_TEXT_FULL_WIDTH;
//# Menus.MENU_ITEM_TEXT_END_HEIGHT = Menus.MENU_ITEM_TEXT_HEIGHT + Menus.MENU_ITEM_TEXT_HEIGHT/2;
//#elif Nokia_3100 || Nokia_3100_Unobfuscated
//# MAX_SHAKE = (short)(0);
//# LOADING_BAR_WIDTH = SCREEN_WIDTH;
//# LOADING_BAR_HEIGHT = 5;
//# LOADING_BAR_X = 0;
//# LOADING_BAR_Y = SCREEN_HEIGHT - LOADING_BAR_HEIGHT;
//# SOFTKEY_MARGIN_BOTTOM = (short)(SCREEN_HEIGHT - 1);
//# SOFTKEY_MARGIN_LEFT = (short)(1);
//# SOFTKEY_MARGIN_RIGHT = (short)(SCREEN_WIDTH - 1);
//# BOARD_MARGIN_LEFT = 16;
//# BOARD_MARGIN_RIGHT = 6;
//# Level.GAME_BOARD_W = (short)(6);
//# Level.GAME_BOARD_H = (short)(8);
//# Level.GAME_SQUARE_W = (short)(17);
//# Level.GAME_SQUARE_H = (short)(17);
//# Level.LEFT_X = (short)(2);
//# Level.RIGHT_X = (short)(SCREEN_WIDTH - 1);
//# Level.TOP_Y = (short)(2);
//# Level.BOTTOM_Y = (short)(SCREEN_HEIGHT - 10);
//# Level.POWERUP_Y = (short)(SCREEN_HEIGHT - 17);
//# Level.PADDING = (short)(1);
//# Level.FOOD_BAR_X = (short)(7);
//# Level.FOOD_BAR_Y = (short)(4);
//# Level.FOOD_BAR_WIDTH = (short)(3);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -