e034082a2b
the menus. This simplifies the state manager (no more hidden side effects of pushScreen), less parameter to onGameStateChange, easier extend for new RaceResultGUI (which must not have calls to pause). Now the calls are done in the Screen base class (and can be disabled in the constructor). 2) Many cosmetic changes to make the code follow our coding standards. git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@5736 178a84e3-b1eb-0310-8ba1-8eac791a3b58
73 lines
2.2 KiB
C++
73 lines
2.2 KiB
C++
// SuperTuxKart - a fun racing game with go-kart
|
|
// Copyright (C) 2009 Marianne Gagnon
|
|
//
|
|
// 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 3
|
|
// 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 HEADER_CREDITS_HPP
|
|
#define HEADER_CREDITS_HPP
|
|
|
|
#include "irrlicht.h"
|
|
#include "guiengine/screen.hpp"
|
|
#include "utils/ptr_vector.hpp"
|
|
|
|
|
|
class CreditsSection;
|
|
|
|
/**
|
|
* \brief Screen where STK credits are shown
|
|
* \ingroup states_screens
|
|
*/
|
|
class CreditsScreen : public GUIEngine::Screen, public GUIEngine::ScreenSingleton<CreditsScreen>
|
|
{
|
|
float m_time_element;
|
|
|
|
ptr_vector<CreditsSection, HOLD> m_sections;
|
|
CreditsSection* getCurrentSection();
|
|
|
|
int x, y, w, h;
|
|
core::rect< s32 > m_section_rect;
|
|
|
|
int m_curr_section;
|
|
int m_curr_element;
|
|
|
|
float time_before_next_step;
|
|
|
|
friend class GUIEngine::ScreenSingleton<CreditsScreen>;
|
|
CreditsScreen();
|
|
|
|
public:
|
|
|
|
|
|
void setArea(const int x, const int y, const int w, const int h);
|
|
|
|
// start from beginning again
|
|
void reset();
|
|
|
|
/** \brief implement callback from parent class GUIEngine::Screen */
|
|
virtual void loadedFromFile();
|
|
|
|
/** \brief implement optional callback from parent class GUIEngine::Screen */
|
|
void onUpdate(float dt, irr::video::IVideoDriver*);
|
|
|
|
/** \brief implement callback from parent class GUIEngine::Screen */
|
|
void init();
|
|
|
|
/** \brief implement callback from parent class GUIEngine::Screen */
|
|
void eventCallback(GUIEngine::Widget* widget, const std::string& name, const int playerID);
|
|
};
|
|
|
|
#endif
|