// $Id: constants.h,v 1.5 2006/08/28 15:23:14 matthew Exp $ // Fish Supper // Copyright (C) 2006 Matthew Clarke // // This program is free software; you can redistribute it and/or // modify it under the terms of the GNU General Public License // as published by the Free Software Foundation; either version 2 // of the License, or (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA // 02111-1307, USA. #ifndef _CONSTANTS_H_ #define _CONSTANTS_H_ namespace FS { const int SCREEN_WIDTH = 800; const int SCREEN_HEIGHT = 600; const int BPP = 8; // i.e. Bits Per Pixel const int BLOCK_WIDTH = 50; const int BLOCK_HEIGHT = 50; // these two measured in blocks const int NUM_ROWS = 6; const int NUM_COLS = 16; const int MAX_CRYSTALS_HELD = 2; const int STARTING_NUM_LIVES = 3; const int NUM_LEVELS = 10; const int ALBERT_START_X = 375; const int ALBERT_START_Y = 520; const int ALBERT_Y_OFFSCREEN_TOLERANCE = 10; const float ALBERT_VELOCITY = 0.07; const float ALBERT_JUMPING_VELOCITY = 0.15; const int ALBERT_WIDTH = 85; const int ALBERT_HEIGHT = 85; const int ALBERT_DURATION = 100; // Albert's actions const int WALKING = 1; const int TURNING = 2; //const int GETTING_UP = 4; //const int SITTING_DOWN = 8; const int LEAVING_WITH_FISH = 4; const int LEAVING_IN_A_HUFF = 8; const int JUMPING = 16; const int FLOATING = 32; const int SPLASHING = 64; const int ZAPPING = 128; //const int TURNING_STRIP_NUM_FRAMES = 24; const int WALKING_STRIP_NUM_FRAMES = 8; const int JUMPING_STRIP_NUM_FRAMES = 12; const int SPLASHING_STRIP_NUM_FRAMES = 9; const int ZAPPING_STRIP_NUM_FRAMES = 6; const int AIRBORNE_START_FRAME = 5; const int AIRBORNE_END_FRAME = 9; const int UPPER_BANK_MAX_Y = 61; const int LOWER_BANK_MIN_Y = 537; const int CRYSTAL_X_OFFSET = 14; const int CRYSTAL_Y_OFFSET = 7; const int CRYSTAL_WIDTH = 22; const int CRYSTAL_HEIGHT = 36; const int CRYSTAL_COLLISION_PIXEL_X = 11; const int CRYSTAL_COLLISION_PIXEL_Y = 17; // 'Crystals held' displayed in bottom-left of screen in-game. const int CRYSTALS_HELD_Y = 550; const int CRYSTALS_HELD_X_OFFSET = 20; const int CRYSTALS_HELD_X_GAP = 10; const int FISH_X = 375; const int FISH_Y = 25; const int FISH_WIDTH = /*48*/60; const int FISH_HEIGHT = /*29*/28; // scoring system //const int PTS_CRYSTAL = 5; const int PTS_BROWN_LOG = 10; const int PTS_ONE_COLOR_LOG = 50; const int PTS_TWO_COLOR_LOG = 100; const int PTS_FISH = 500; // In-game layer system (for drawing sprites) const int NUM_LAYERS = 5; enum { LOGS_LAYER, CRYSTALS_LAYER, STARS_LAYER, CAT_LAYER, PAUSE_MENU_LAYER }; // These values determine the size of the 'my_blit_requests' arrays // in PlayDisplay. const int LAYER_MAX_BLITS[] = { 100, 50, 40, 1, 1 }; } // namespace FS #endif