19#ifndef HEADER_RACE_RESULT_GUI_HPP
20#define HEADER_RACE_RESULT_GUI_HPP
23#include "guiengine/screen.hpp"
24#include "states_screens/dialogs/message_dialog.hpp"
25#include "states_screens/race_gui_base.hpp"
26#include "states_screens/state_manager.hpp"
175 bool m_started_race_over_music;
189 unsigned int m_width_all_points;
198 static const int SSHOT_SEPARATION = 10;
201 unsigned int n,
bool display_points);
205 void enableGPProgress();
207 void displayGPProgress();
208 void displayPostRaceInfo();
209 void displayCTFResults();
210 void displaySoccerResults();
211 void displayScreenShots();
213 int getFontHeight ()
const;
223 virtual void init() OVERRIDE;
226 virtual
void unload() OVERRIDE;
229 Input::InputType type,
int playerId) OVERRIDE;
231 const
int playerID) OVERRIDE;
236 {
return core::dimension2du(0, 0); }
241 virtual void onUpdate(
float dt) OVERRIDE;
242 virtual void onDraw(
float dt) OVERRIDE;
251 const video::SColor &color=
252 video::SColor(255, 255, 0, 255),
255 bool outline=
false) OVERRIDE { }
272 void cleanupGPProgress();
An abstract interface for the actual karts.
Definition: abstract_kart.hpp:62
This is the base class for all cameras.
Definition: camera.hpp:49
Declares a class to be a singleton.
Definition: screen.hpp:59
Represents a single GUI screen.
Definition: screen.hpp:97
Listener interface to get notified of whether the user chose to confirm or cancel.
Definition: message_dialog.hpp:39
Definition: ptr_vector.hpp:44
An abstract base class for the two race guis (race_gui and race_result gui)
Definition: race_gui_base.hpp:50
Definition: race_result_gui.hpp:77
core::stringw m_finish_time_string
The times of all karts in the right order.
Definition: race_result_gui.hpp:109
video::ITexture * m_kart_icon
The kart icons.
Definition: race_result_gui.hpp:107
core::stringw m_kart_name
The names of all karts in the right order.
Definition: race_result_gui.hpp:95
float m_kart_color
The kart color.
Definition: race_result_gui.hpp:111
int m_new_gp_rank
New GP rank after this race.
Definition: race_result_gui.hpp:101
float m_centre_point
The center point when sorting the entries.
Definition: race_result_gui.hpp:93
float m_radius
The radius to use when sorting the entries.
Definition: race_result_gui.hpp:91
unsigned int m_laps
Number of laps that kart finished.
Definition: race_result_gui.hpp:113
bool m_is_player_kart
True if kart is a player kart.
Definition: race_result_gui.hpp:88
float m_y_pos
Currenct Y position.
Definition: race_result_gui.hpp:86
int m_new_overall_points
New overall points after this race.
Definition: race_result_gui.hpp:99
unsigned int m_kart_id
Kart ID in World.
Definition: race_result_gui.hpp:80
float m_start_at
Start time for each line of the animation.
Definition: race_result_gui.hpp:82
float m_x_pos
Currenct X position.
Definition: race_result_gui.hpp:84
float m_current_displayed_points
When updating the number of points in the display, this is the currently displayed number of points.
Definition: race_result_gui.hpp:105
float m_new_points
Points earned in this race.
Definition: race_result_gui.hpp:97
Displays the results (while the end animation is shown).
Definition: race_result_gui.hpp:51
virtual void unload() OVERRIDE
Next time this menu needs to be shown, don't use cached values, re-calculate everything.
Definition: race_result_gui.cpp:788
virtual void addMessage(const irr::core::stringw &m, const AbstractKart *kart, float time, const video::SColor &color=video::SColor(255, 255, 0, 255), bool important=true, bool big_font=false, bool outline=false) OVERRIDE
No more messages need to be displayed, but the function might still be called (e.g.
Definition: race_result_gui.hpp:248
unsigned int m_width_finish_time
Width of the finish time column.
Definition: race_result_gui.hpp:150
virtual void onDraw(float dt) OVERRIDE
Called once a frame, this now triggers the rendering of the actual race result gui.
Definition: race_result_gui.cpp:1078
void displayOneEntry(unsigned int x, unsigned int y, unsigned int n, bool display_points)
Displays the race results for a single kart.
Definition: race_result_gui.cpp:1385
float m_timer
Timer variable for animations.
Definition: race_result_gui.hpp:54
void eventCallback(GUIEngine::Widget *widget, const std::string &name, const int playerID) OVERRIDE
will be called everytime something happens.
Definition: race_result_gui.cpp:361
virtual void renderGlobal(float dt) OVERRIDE
Render all global parts of the race gui, i.e.
Definition: race_result_gui.cpp:1089
virtual void renderPlayerView(const Camera *camera, float dt) OVERRIDE
No kart specific view needs to be rendered in the result gui.
Definition: race_result_gui.hpp:239
bool m_gp_position_was_changed
True if a GP position was changed.
Definition: race_result_gui.hpp:173
unsigned int m_table_width
The overall width of the table.
Definition: race_result_gui.hpp:166
gui::ScalableFont * m_font
The font to use.
Definition: race_result_gui.hpp:169
void clearHighscores()
Show no highscore.
Definition: race_result_gui.cpp:1714
float m_time_rotation
Time to rotate the GP entries.
Definition: race_result_gui.hpp:127
unsigned int m_top
Top-most pixel for first row.
Definition: race_result_gui.hpp:160
unsigned int m_distance_between_meta_rows
Distance between each row of the highscore, race data, etc.
Definition: race_result_gui.hpp:141
virtual GUIEngine::EventPropagation filterActions(PlayerAction action, int deviceID, const unsigned int value, Input::InputType type, int playerId) OVERRIDE
This is called before an event is sent to a widget.
Definition: race_result_gui.cpp:1034
float m_time_for_points
The time for inreasing the points by one during the point update phase.
Definition: race_result_gui.hpp:131
void enableAllButtons()
Makes the correct buttons visible again, and gives them the right label.
Definition: race_result_gui.cpp:247
void nextPhase()
This function is called when one of the player presses 'fire'.
Definition: race_result_gui.cpp:1013
unsigned int m_width_new_points
Width of the new points columns.
Definition: race_result_gui.hpp:153
unsigned int m_distance_between_rows
Distance between each row of the race results.
Definition: race_result_gui.hpp:138
const core::dimension2du getMiniMapSize() const OVERRIDE
Should not be called anymore.
Definition: race_result_gui.hpp:235
void determineTableLayout()
This determines the layout, i.e.
Definition: race_result_gui.cpp:815
virtual void init() OVERRIDE
Besides calling init in the base class this makes all buttons of this screen invisible.
Definition: race_result_gui.cpp:86
virtual bool onEscapePressed() OVERRIDE
If escape is pressed, don't do the default option (close the screen), but advance to the next animati...
Definition: race_result_gui.cpp:1023
std::vector< RowInfo > m_all_row_infos
The team icons.
Definition: race_result_gui.hpp:118
virtual void onConfirm() OVERRIDE
Implement to be notified of dialog confirmed.
Definition: race_result_gui.cpp:795
float m_time_between_rows
Time to wait till the next row starts to be animated.
Definition: race_result_gui.hpp:121
unsigned int m_width_kart_name
Width of the kart name column.
Definition: race_result_gui.hpp:147
MusicInformation * m_race_over_music
Music to be played after race ended.
Definition: race_result_gui.hpp:184
enum RaceResultGUI::@18 m_animation_state
Finite state machine for the animations: INIT: Set up data structures.
int m_highscore_rank
For highscores.
Definition: race_result_gui.hpp:187
unsigned int m_width_column_space
Size of space between columns.
Definition: race_result_gui.hpp:163
SFXBase * m_finish_sound
The previous monospace state of the font.
Definition: race_result_gui.hpp:181
virtual void loadedFromFile() OVERRIDE
Implement callback from parent class GUIEngine::Screen.
Definition: race_result_gui.hpp:221
void determineGPLayout()
Determine the layout and fields for the GP table based on the previous GP results.
Definition: race_result_gui.cpp:1292
RaceResultGUI()
Constructor, initialises internal data structures.
Definition: race_result_gui.cpp:76
float m_time_single_scroll
The time a single line scrolls into place.
Definition: race_result_gui.hpp:124
unsigned int m_width_icon
The size of the kart icons.
Definition: race_result_gui.hpp:144
float m_time_overall_scroll
The overall time the first phase (scrolling) is displayed.
Definition: race_result_gui.hpp:135
void setHighscore(int rank)
To call if the user got a new highscore.
Definition: race_result_gui.cpp:1721
unsigned int m_leftmost_column
Position of left end of table (so that the whole table is aligned.
Definition: race_result_gui.hpp:157
virtual void onUpdate(float dt) OVERRIDE
Called once a frame.
Definition: race_result_gui.cpp:1053
virtual void tearDown() OVERRIDE
Callback invoked before leaving this menu.
Definition: race_result_gui.cpp:231
The base class for sound effects.
Definition: sfx_base.hpp:43
Definition: scalable_font.hpp:35
Contains all GUI engine related classes and functions.
Definition: abstract_state_manager.hpp:33