1 // $Id$ 2 3 // Fish Supper 4 // Copyright 2006, 2007, 2009, 2010 Matthew Clarke <mafferyew@googlemail.com> 5 // 6 // This file is part of Fish Supper. 7 // 8 // Fish Supper is free software: you can redistribute it and/or modify 9 // it under the terms of the GNU General Public License as published by 10 // the Free Software Foundation, either version 3 of the License, or 11 // (at your option) any later version. 12 // 13 // Fish Supper is distributed in the hope that it will be useful, 14 // but WITHOUT ANY WARRANTY; without even the implied warranty of 15 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 // GNU General Public License for more details. 17 // 18 // You should have received a copy of the GNU General Public License 19 // along with Fish Supper. If not, see <http://www.gnu.org/licenses/>. 20 21 22 23 24 #ifndef FS_gfx_h 25 #define FS_gfx_h 26 27 #include "Gfx_engine.h" 28 29 30 31 32 namespace FS 33 { 34 35 class FS_gfx : public Mafferyew::Gfx_engine 36 { 37 38 public: 39 40 FS_gfx(); 41 ~FS_gfx(); 42 43 static const int NUM_SPRITES = 99; 44 enum Image_name 45 { 46 NONE = -1, 47 LOWER_LIMIT, 48 MIDDLE, 49 UPPER_LIMIT, 50 LOG_RED_1, 51 LOG_RED_2, 52 LOG_RED_3, 53 LOG_RED_4, 54 LOG_RED_5, 55 LOG_YELLOW_1, 56 LOG_YELLOW_2, 57 LOG_YELLOW_3, 58 LOG_YELLOW_4, 59 LOG_YELLOW_5, 60 LOG_BLUE_1, 61 LOG_BLUE_2, 62 LOG_BLUE_3, 63 LOG_BLUE_4, 64 LOG_BLUE_5, 65 LOG_ORANGE_1, 66 LOG_ORANGE_2, 67 LOG_ORANGE_3, 68 LOG_ORANGE_4, 69 LOG_ORANGE_5, 70 LOG_GREEN_1, 71 LOG_GREEN_2, 72 LOG_GREEN_3, 73 LOG_GREEN_4, 74 LOG_GREEN_5, 75 LOG_PURPLE_1, 76 LOG_PURPLE_2, 77 LOG_PURPLE_3, 78 LOG_PURPLE_4, 79 LOG_PURPLE_5, 80 LOG_BROWN_1, 81 LOG_BROWN_2, 82 LOG_BROWN_3, 83 LOG_BROWN_4, 84 LOG_BROWN_5, 85 CRYSTAL_RED, 86 CRYSTAL_YELLOW, 87 CRYSTAL_BLUE, 88 CRYSTAL_WHITE, 89 FISH, 90 SPRING, 91 LEAF, 92 ARROWS, 93 SNAIL, 94 LIGHTNING, 95 STAR, 96 PLATE, 97 PAUSE_MENU_CONTINUE, 98 PAUSE_MENU_QUIT, 99 JOYSTICK, 100 KEYBOARD, 101 SOUND_ON, 102 SOUND_OFF, 103 TICK, 104 MESSAGE_BOARD, 105 WALKING_0, 106 WALKING_1, 107 WALKING_2, 108 WALKING_3, 109 WALKING_4, 110 WALKING_5, 111 WALKING_6, 112 WALKING_7, 113 JUMPING_0, 114 JUMPING_1, 115 JUMPING_2, 116 JUMPING_3, 117 JUMPING_4, 118 JUMPING_5, 119 JUMPING_6, 120 JUMPING_7, 121 JUMPING_8, 122 JUMPING_9, 123 JUMPING_10, 124 JUMPING_11, 125 SPLASHING_0, 126 SPLASHING_1, 127 SPLASHING_2, 128 SPLASHING_3, 129 SPLASHING_4, 130 SPLASHING_5, 131 SPLASHING_6, 132 SPLASHING_7, 133 ZAPPING_0, 134 ZAPPING_1, 135 ZAPPING_2, 136 ZAPPING_3, 137 ZAPPING_4, 138 WALKING_E_WITH_FISH_0, 139 WALKING_E_WITH_FISH_1, 140 WALKING_E_WITH_FISH_2, 141 WALKING_E_WITH_FISH_3, 142 WALKING_E_WITH_FISH_4, 143 WALKING_E_WITH_FISH_5, 144 WALKING_E_WITH_FISH_6, 145 WALKING_E_WITH_FISH_7, 146 }; // enum Image_name 147 148 static const int NUM_BACKGROUNDS = 5; 149 enum { GET_READY, CATS_WHISKERS, BACKGROUND, SETTINGS_BG, INTRO_SCREEN, }; 150 151 static const int NUM_FONTS = 6; 152 enum Font_name 153 { 154 SMALL_FONT, 155 SMALL_FONT_FAINT, 156 LARGE_FONT, 157 LARGE_FONT_FAINT, 158 WHITE_FONT, 159 TUTORIAL_FONT, // DejaVu Sans Mono black 20pt 160 }; // enum Font_name 161 162 // extra functionality 163 void clear_screen(); 164 165 protected: 166 167 // Definition of pure virtual function inherited from 168 // Gfx_engine. 169 void init(); 170 171 }; // class FS_gfx 172 173 } // namespace FS 174 175 176 177 178 #endif 179 180