X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Fscene.h;h=b8d55963cbad2fdc1d42f57f9b1250c680f6fade;hb=2fd963388c2dae6a30f82c99b679a73e8bc5917d;hp=caa87932c018be6a2f20cac999e6e70c8dbcbc52;hpb=43ae91e84ae574464a2ff634daa8a16e253b47fa;p=supertux.git diff --git a/src/scene.h b/src/scene.h index caa87932c..b8d55963c 100644 --- a/src/scene.h +++ b/src/scene.h @@ -1,54 +1,50 @@ +// $Id$ // -// C Interface: scene +// SuperTux - A Jump'n Run +// Copyright (C) 2003 Tobias Glaesser // -// Description: -// -// -// Author: Tobias Glaesser , (C) 2004 -// -// Copyright: See COPYING file that comes with this distribution +// 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 SUPERTUX_SCENE_H #define SUPERTUX_SCENE_H -#include "defines.h" -#include "gameloop.h" -#include "player.h" -#include "badguy.h" -#include "world.h" -#include "special.h" -#include "level.h" +#include "video/surface.h" +#include "timer.h" #define FRAME_RATE 10 // 100 Frames per second (10ms) -int score, highscore, distros, level, next_level, game_pause, -done, quit, score_multiplier, super_bkgd_time, endpos, -counting_distros, distro_counter; -float scroll_x; -int frame; -bouncy_distro_type *bouncy_distros; -broken_brick_type *broken_bricks; -bouncy_brick_type *bouncy_bricks; -bad_guy_type *bad_guys; -floating_score_type *floating_scores; -upgrade_type *upgrades; -bullet_type *bullets; -int num_bad_guys; -int num_bouncy_distros; -int num_broken_bricks; -int num_bouncy_bricks; -int num_floating_scores; -int num_upgrades; -int num_bullets; -player_type tux; -SDL_Rect src, dest; -texture_type img_box_full, img_box_empty, img_mints, img_coffee, img_super_bkgd, img_red_glow; -st_level current_level; - -void add_score(int x, int y, int s); -void set_defaults(void); -void arrays_init(void); -void arrays_free(void); + +// Player stats +struct PlayerStatus +{ + int distros; + int lives; + enum BonusType { NO_BONUS, GROWUP_BONUS, FLOWER_BONUS }; + BonusType bonus; + + int score_multiplier; + int max_score_multiplier; + + PlayerStatus(); + void reset(); + void incLives(); + void incCoins(); +}; + +std::string bonus_to_string(PlayerStatus::BonusType b); +PlayerStatus::BonusType string_to_bonus(const std::string& str); + +extern PlayerStatus player_status; #endif /*SUPERTUX_SCENE_H*/