SuperTuxKart
Classes | Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
FeatureUnlockedCutScene Class Reference

Screen shown when a feature has been unlocked. More...

#include <feature_unlocked.hpp>

Inheritance diagram for FeatureUnlockedCutScene:
Inheritance graph
[legend]

Classes

struct  UnlockedThing
 Whichever of these is non-null decides what comes out of the chest. More...
 

Public Member Functions

virtual void onCutsceneEnd () OVERRIDE
 
void onUpdate (float dt) OVERRIDE
 implement optional callback from parent class GUIEngine::Screen
 
virtual void loadedFromFile () OVERRIDE
 implement callback from parent class GUIEngine::Screen
 
void init () OVERRIDE
 implement callback from parent class GUIEngine::Screen
 
void tearDown () OVERRIDE
 implement callback from parent class GUIEngine::Screen
 
void eventCallback (GUIEngine::Widget *widget, const std::string &name, const int playerID) OVERRIDE
 will be called everytime something happens. More...
 
void findWhatWasUnlocked (RaceManager::Difficulty difficulty, std::vector< const ChallengeData * > &unlocked)
 
void addUnlockedKart (const KartProperties *unlocked_kart)
 Call before showing up the screen to make a kart come out of the chest. More...
 
void addUnlockedPicture (irr::video::ITexture *picture, float w, float h, const irr::core::stringw &msg)
 Call before showing up the screen to make a picture come out of the chest 'addUnlockedThings' will invoke this, so you generally don't need to call this directly. More...
 
void addUnlockedPictures (std::vector< irr::video::ITexture * > pictures, float w, float h, irr::core::stringw msg)
 Call before showing up the screen to make a picture slideshow come out of the chest 'addUnlockedThings' will invoke this, so you generally don't need to call this directly. More...
 
void addUnlockedTrack (const Track *track)
 
void addUnlockedGP (const GrandPrixData *gp)
 
void addTrophy (RaceManager::Difficulty difficulty, bool is_grandprix)
 Call before showing up the screen to make whatever the passed challenges unlocked come out of the chest.
 
virtual bool onEscapePressed () OVERRIDE
 override from base class to handle escape press
 
virtual MusicInformationgetInGameMenuMusic () const OVERRIDE
 
- Public Member Functions inherited from GUIEngine::CutsceneScreen
 CutsceneScreen (const char *name)
 
- Public Member Functions inherited from GUIEngine::Screen
 Screen (bool pause_race=true)
 Creates a dummy incomplete object; only use to override behaviour in sub-class.
 
 Screen (const char *filename, bool pause_race=true)
 Creates a screen populated by the widgets described in a STK GUI file. More...
 
bool operator== (const char *filename) const
 
void loadFromFile ()
 loads this Screen from the file passed to the constructor
 
bool isLoaded () const
 
bool throttleFPS () const
 
void addWidgets ()
 Adds the IrrLicht widgets corresponding to this screen to the IGUIEnvironment.
 
void calculateLayout ()
 Called after all widgets have been added. More...
 
void manualAddWidget (Widget *w)
 Can be used for custom purposes for which the load-screen-from-XML code won't make it.
 
void manualRemoveWidget (Widget *w)
 Can be used for custom purposes for which the load-screen-from-XML code won't make it. More...
 
void setUpdateInBackground (bool value)
 When set to true it updates the screen even if modal dialog is opened.
 
bool getUpdateInBackground ()
 
const std::string & getName () const
 
virtual void unload ()
 Next time this menu needs to be shown, don't use cached values, re-calculate everything. More...
 
bool needs3D ()
 Will be called to determine if the 3D scene must be rendered when at this screen.
 
void setNeeds3D (bool needs3D)
 Invoke this method for screens that use a 3D scene as background. More...
 
virtual void unloaded ()
 Callback invoked when this screen is being unloaded. More...
 
virtual void beforeAddingWidget ()
 Optional callback invoked very early, before widgets have been added (contrast with init(), which is invoked afer widgets were added)
 
void push ()
 Displays this screen bu pushing it onto the stack of screen in the state manager. More...
 
virtual void onDraw (float dt)
 optional callback you can override to be notified at every frame.
 
virtual MusicInformationgetMusic () const
 
virtual int getWidth ()
 Implementing method from AbstractTopLevelContainer.
 
virtual int getHeight ()
 Implementing method from AbstractTopLevelContainer.
 
virtual EventPropagation filterActions (PlayerAction action, int deviceID, const unsigned int value, Input::InputType type, int playerId)
 Override this if you need to be notified of player actions in subclasses.
 
virtual void onDisabledItemClicked (const std::string &item)
 Callback you can use if you want to know when the user pressed on a disabled ribbon item. More...
 
virtual void filterInput (Input::InputType type, int deviceID, int btnID, int axisDir, int value)
 Override this if you need to be notified of raw input in subclasses.
 
virtual void onDialogClose ()
 Callback that gets called when a dialog is closed. More...
 
virtual void onFocusChanged (Widget *previous, Widget *focus, int playerID)
 Callback called when focus changes.
 
- Public Member Functions inherited from GUIEngine::AbstractTopLevelContainer
WidgetgetWidget (const char *name)
 This function returns a widget by name if that widget is found. More...
 
WidgetgetWidget (const int id)
 This function returns a widget by irrlicht ID if that widget is found. More...
 
template<typename T >
T * getWidget (const char *name)
 This function searches and returns a widget by name, cast as specified type, if that widget is found and the type is correct. More...
 
WidgetgetFirstWidget (PtrVector< Widget > *within_vector=NULL)
 This function returns the first widget found in within_vector. More...
 
WidgetgetLastWidget (PtrVector< Widget > *within_vector=NULL)
 This function returns the last widget found in within_vector. More...
 
void elementsWereDeleted (PtrVector< Widget > *within_vector=NULL)
 This function is called when screen is removed. More...
 
bool isMyChild (Widget *widget) const
 This function checks if a widget is a child of the container. More...
 

Private Member Functions

void continueButtonPressed ()
 

Private Attributes

PtrVector< UnlockedThing, HOLD > m_unlocked_stuff
 The list of all unlocked things. More...
 
PtrVector< KartModelm_all_kart_models
 To store the copy of the KartModel for each unlocked kart. More...
 
float m_global_time
 Global evolution of time.
 
float m_key_pos
 Key position from origin (where the chest is)
 
float m_key_angle
 Angle of the key (from 0 to 1, simply traces progression)
 

Friends

class GUIEngine::ScreenSingleton< FeatureUnlockedCutScene >
 

Additional Inherited Members

- Static Public Member Functions inherited from GUIEngine::Screen
static void parseScreenFileDiv (irr::io::IXMLReader *xml, PtrVector< Widget > &append_to, irr::gui::IGUIElement *parent=NULL)
 Loads a GUI screen from its XML file. More...
 
- Static Public Member Functions inherited from GUIEngine::AbstractTopLevelContainer
static WidgetgetWidget (const char *name, PtrVector< Widget > *within_vector)
 This function returns a widget by name if that widget is found in within_vector. More...
 
static WidgetgetWidget (const int id, PtrVector< Widget > *within_vector)
 This function returns a widget by irrlicht ID if that widget is found. More...
 
- Static Public Member Functions inherited from GUIEngine::ScreenSingleton< FeatureUnlockedCutScene >
static FeatureUnlockedCutScenegetInstance ()
 
- Protected Member Functions inherited from GUIEngine::AbstractTopLevelContainer
void addWidgetsRecursively (PtrVector< Widget > &widgets, Widget *parent=NULL)
 This function adds a list of widgets recursively, effectively creating the hierarchy of widgets. More...
 
- Protected Attributes inherited from GUIEngine::Screen
bool m_throttle_FPS
 
- Protected Attributes inherited from GUIEngine::AbstractTopLevelContainer
PtrVector< Widget, HOLD > m_widgets
 the widgets in this screen
 
Widgetm_first_widget
 AbstractTopLevelContainer is generally able to determine its first widget just fine, but in highly complex screens (e.g. More...
 
Widgetm_last_widget
 AbstractTopLevelContainer is generally able to determine its last widget just fine, but in highly complex screens (e.g. More...
 
- Static Protected Attributes inherited from GUIEngine::ScreenSingleton< FeatureUnlockedCutScene >
static FeatureUnlockedCutScenesingleton
 

Detailed Description

Screen shown when a feature has been unlocked.

Member Function Documentation

◆ addUnlockedKart()

void FeatureUnlockedCutScene::addUnlockedKart ( const KartProperties unlocked_kart)

Call before showing up the screen to make a kart come out of the chest.

'addUnlockedThings' will invoke this, so you generally don't need to call this directly.

◆ addUnlockedPicture()

void FeatureUnlockedCutScene::addUnlockedPicture ( irr::video::ITexture *  picture,
float  w,
float  h,
const irr::core::stringw &  msg 
)

Call before showing up the screen to make a picture come out of the chest 'addUnlockedThings' will invoke this, so you generally don't need to call this directly.

◆ addUnlockedPictures()

void FeatureUnlockedCutScene::addUnlockedPictures ( std::vector< irr::video::ITexture * >  pictures,
float  w,
float  h,
irr::core::stringw  msg 
)

Call before showing up the screen to make a picture slideshow come out of the chest 'addUnlockedThings' will invoke this, so you generally don't need to call this directly.

◆ eventCallback()

void FeatureUnlockedCutScene::eventCallback ( GUIEngine::Widget widget,
const std::string &  name,
const int  playerID 
)
virtual

will be called everytime something happens.

Events are generally a widget state change. In this case, a pointer to the said widget is passed along its name, so you get its new state and/or act. There are two special events, passed with a NULL widget, and which bear the names "init" and "tearDown", called respectively when a screen is being made visible and when it's being left, allowing for setup/clean-up.

Implements GUIEngine::Screen.

◆ getInGameMenuMusic()

MusicInformation * FeatureUnlockedCutScene::getInGameMenuMusic ( ) const
virtual
Returns
which music to play at this screen, if accessed in "in-game-menu" mode

Reimplemented from GUIEngine::Screen.

Member Data Documentation

◆ m_all_kart_models

PtrVector<KartModel> FeatureUnlockedCutScene::m_all_kart_models
private

To store the copy of the KartModel for each unlocked kart.

◆ m_unlocked_stuff

PtrVector<UnlockedThing, HOLD> FeatureUnlockedCutScene::m_unlocked_stuff
private

The list of all unlocked things.


The documentation for this class was generated from the following files: