X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Fscene.h;h=b8d55963cbad2fdc1d42f57f9b1250c680f6fade;hb=e4d4375bf4b6802321d956f5f3886320b7275cf0;hp=4be33a160d789865e3c510d1894fc6f969c3d479;hpb=c8ad8bb328dd90c0ab00e4c375b9a4b8f8df6e73;p=supertux.git diff --git a/src/scene.h b/src/scene.h index 4be33a160..b8d55963c 100644 --- a/src/scene.h +++ b/src/scene.h @@ -1,67 +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 "particlesystem.h" +#include "video/surface.h" +#include "timer.h" #define FRAME_RATE 10 // 100 Frames per second (10ms) -extern int score; -extern int distros; -extern int level; -extern int next_level; -extern int game_pause; -extern bool quit; -extern int score_multiplier; -extern int endpos; -extern bool counting_distros; -extern int distro_counter; +// 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; -extern timer_type super_bkgd_timer; -extern float scroll_x; -extern unsigned int global_frame_counter; -extern std::vector bouncy_distros; -extern std::vector broken_bricks; -extern std::vector bouncy_bricks; -extern std::vector bad_guys; -extern std::vector floating_scores; -extern std::vector upgrades; -extern std::vector bullets; -extern std::vector particle_systems; -extern Player tux; -extern texture_type img_box_full, img_box_empty, img_mints, img_coffee, img_super_bkgd, img_red_glow; -extern timer_type time_left; -extern double frame_ratio; + PlayerStatus(); + void reset(); + void incLives(); + void incCoins(); +}; -void add_score(float x, float y, int s); -void set_defaults(void); -void arrays_init(void); -void arrays_free(void); +std::string bonus_to_string(PlayerStatus::BonusType b); +PlayerStatus::BonusType string_to_bonus(const std::string& str); -void add_bouncy_distro(float x, float y); -void add_broken_brick(float x, float y); -void add_broken_brick_piece(float x, float y, float xm, float ym); -void add_bouncy_brick(float x, float y); -void add_bad_guy(float x, float y, BadGuyKind kind); -void add_upgrade(float x, float y, int dir, int kind); -void add_bullet(float x, float y, float xm, int dir); +extern PlayerStatus player_status; #endif /*SUPERTUX_SCENE_H*/