An abstract base class for the two race guis (race_gui and race_result gui)
More...
#include <race_gui_base.hpp>
|
virtual | ~RaceGUIBase () |
| The destructor removes the marker texture and the referee scene node.
|
|
virtual void | renderGlobal (float dt) |
| Updates lightning related information.
|
|
virtual void | init () |
| This is a second initialisation call (after the constructor) for the race gui.
|
|
virtual void | reset () |
| This is called when restarting a race.
|
|
virtual void | renderPlayerView (const Camera *camera, float dt) |
|
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) |
| Adds a message to the message queue.
|
|
virtual void | update (float dt) |
| Update, called once per frame.
|
|
virtual void | preRenderCallback (const Camera *camera) |
| This function is called just before rendering the view for each kart.
|
|
virtual const core::dimension2du | getMiniMapSize () const =0 |
| Returns the size of the texture on which to render the minimap to.
|
|
virtual void | calculateMinimapSize () |
|
virtual void | clearAllMessages () |
|
void | drawGlobalPlayerIcons (int bottom_margin) |
| Draw players icons and, depending on the current mode, their time or their score (battle lives, egg collected, etc.).
|
|
void | drawPlayerIcon (AbstractKart *kart, int x, int y, int w, bool is_local) |
| Draw one player icon Takes care of icon looking different due to plumber, squashing, ...
|
|
virtual void | drawEnergyMeter (int x, int y, const AbstractKart *kart, const core::recti &viewport, const core::vector2df &scaling) |
|
void | cleanupMessages (const float dt) |
| Removes messages which have been displayed long enough.
|
|
void | removeReferee () |
|
RaceGUIMultitouch * | getMultitouchGUI () |
|
void | recreateGUI () |
|
virtual void | initSize () |
| Called when loading the race gui or screen resized.
|
|
|
enum | PlungerState { PLUNGER_STATE_INIT
, PLUNGER_STATE_SLOW_1
, PLUNGER_STATE_SLOW_2
, PLUNGER_STATE_FAST
} |
| State of the plunger: From the 'init' states the plunger switches between two slow moving states ('shakily moving') till the end of the plunger time is nearly reached, then it goes to a very fast moving state ('plunger blown off').
|
|
|
void | createRegularPolygon (unsigned int n, float radius, const core::vector2df ¢er, const video::SColor &color, video::S3DVertex *v, unsigned short int *index) |
| Creates the 2D vertices for a regular polygon.
|
|
void | drawAllMessages (const AbstractKart *kart, const core::recti &viewport, const core::vector2df &scaling) |
| Displays all messages in the message queue.
|
|
void | drawPowerupIcons (const AbstractKart *kart, const core::recti &viewport, const core::vector2df &scaling) |
| Draws the powerup icons on the screen (called once for each player).
|
|
void | drawGlobalMusicDescription () |
| Displays the description given for the music currently being played.
|
|
void | drawGlobalReadySetGo () |
| Draws the ready-set-go message on the screen.
|
|
void | drawGlobalGoal () |
|
void | drawPlungerInFace (const Camera *camera, float dt) |
| Draws the plunger-in-face if necessary.
|
|
void | ignoreUnimportantMessages () |
| Instructs the base gui to ignore unimportant messages (like item messages).
|
|
|
enum RaceGUIBase::PlungerState | m_plunger_state |
|
float | m_plunger_move_time |
| How long the plunger should stay in the current state.
|
|
core::vector2di | m_plunger_offset |
| Offset of the plunger.
|
|
core::vector2df | m_plunger_speed |
|
video::ITexture * | m_gauge_empty |
| The size of a single marker in pixels, must be a power of 2.
|
|
video::ITexture * | m_gauge_full |
| Default texture for nitro gauge.
|
|
video::ITexture * | m_gauge_full_bright |
| Highlight gauge, used when a kart uses nitro.
|
|
video::ITexture * | m_gauge_goal |
|
video::ITexture * | m_icons_frame |
| The frame around player karts in the mini map.
|
|
video::ITexture * | m_icons_kart_list |
| The frame around player karts in the kart list.
|
|
video::ITexture * | m_lap_flag |
| Texture for the lap icon.
|
|
RaceGUIMultitouch * | m_multitouch_gui |
|
float | m_dist_show_overlap |
| Distance on track to begin showing overlap in drawGlobalPlayerIcons.
|
|
float | m_icons_inertia |
| can be zero
|
|
std::vector< core::vector2d< s32 > > | m_previous_icons_position |
| can be zero
|
|
std::vector< KartIconDisplayInfo > | m_kart_display_infos |
| This vector is passed to world to be filled with the current race data information.
|
|
|
bool | m_ignore_unimportant_messages |
| True if unimportant messags (like item messages) should not be displayed.
|
|
AllMessageType | m_messages |
|
int | m_small_font_max_height |
|
int | m_max_font_height |
| Used to display messages without overlapping.
|
|
video::ITexture * | m_music_icon |
| Musical notes icon (for music description and credits)
|
|
video::ITexture * | m_plunger_face |
| Texture for the 'plunger in the face' texture.
|
|
core::stringw | m_string_ready |
| Translated strings 'ready', 'set', 'go'.
|
|
core::stringw | m_string_set |
|
core::stringw | m_string_go |
|
core::stringw | m_string_goal |
|
core::stringw | m_string_waiting_for_others |
|
core::stringw | m_string_waiting_for_the_server |
|
std::vector< Vec3 > | m_referee_pos |
| The position of the referee for all karts.
|
|
std::vector< Vec3 > | m_referee_rotation |
| The actual rotation to use for the referee for each kart.
|
|
float | m_referee_height |
| The height of the referee.
|
|
Referee * | m_referee |
| The referee scene node.
|
|
bool | m_enabled_network_spectator |
|
bool | m_showing_kart_colors |
|
An abstract base class for the two race guis (race_gui and race_result gui)
◆ addMessage()
void RaceGUIBase::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 |
|
) |
| |
|
virtual |
Adds a message to the message queue.
The message is displayed for a certain amount of time (unless time<0, then the message is displayed once).
Reimplemented in RaceResultGUI.
◆ cleanupMessages()
void RaceGUIBase::cleanupMessages |
( |
const float |
dt | ) |
|
Removes messages which have been displayed long enough.
This function must be called after drawAllMessages, otherwise messages which are only displayed once will not be drawn!
◆ createRegularPolygon()
void RaceGUIBase::createRegularPolygon |
( |
unsigned int |
n, |
|
|
float |
radius, |
|
|
const core::vector2df & |
center, |
|
|
const video::SColor & |
color, |
|
|
video::S3DVertex * |
v, |
|
|
unsigned short int * |
index |
|
) |
| |
|
protected |
Creates the 2D vertices for a regular polygon.
Adopted from Irrlicht.
- Parameters
-
n | Number of vertices to use. |
radius | Radius of the polygon. |
center | The center point of the polygon. |
v | Pointer to the array of vertices. |
◆ drawEnergyMeter()
virtual void RaceGUIBase::drawEnergyMeter |
( |
int |
x, |
|
|
int |
y, |
|
|
const AbstractKart * |
kart, |
|
|
const core::recti & |
viewport, |
|
|
const core::vector2df & |
scaling |
|
) |
| |
|
inlinevirtual |
◆ drawGlobalMusicDescription()
void RaceGUIBase::drawGlobalMusicDescription |
( |
| ) |
|
|
protected |
Displays the description given for the music currently being played.
This is usually the title and composer.
◆ drawPlungerInFace()
void RaceGUIBase::drawPlungerInFace |
( |
const Camera * |
camera, |
|
|
float |
dt |
|
) |
| |
|
protected |
Draws the plunger-in-face if necessary.
Does nothing if there is no plunger in face atm.
◆ drawPowerupIcons()
void RaceGUIBase::drawPowerupIcons |
( |
const AbstractKart * |
kart, |
|
|
const core::recti & |
viewport, |
|
|
const core::vector2df & |
scaling |
|
) |
| |
|
protected |
Draws the powerup icons on the screen (called once for each player).
- Parameters
-
kart | The kart for which to draw the powerup icons. |
viewport | The viewport into which to draw the icons. |
scaling | The scaling to use when drawing the icons. |
◆ getMiniMapSize()
virtual const core::dimension2du RaceGUIBase::getMiniMapSize |
( |
| ) |
const |
|
pure virtual |
◆ init()
void RaceGUIBase::init |
( |
| ) |
|
|
virtual |
This is a second initialisation call (after the constructor) for the race gui.
This is called after the world has been initialised, e.g. all karts do exist (while the constructor is called before the karts are created). In the base gui this is used to initialise the referee data (which needs the start positions of the karts). Note that this function is (and must be called only once, after its constructor).
- Precondition
- All karts must be created, since this object defines the positions for the referees based on the karts.
Reimplemented in RaceGUI, and RaceResultGUI.
◆ initSize()
void RaceGUIBase::initSize |
( |
| ) |
|
|
virtual |
◆ preRenderCallback()
void RaceGUIBase::preRenderCallback |
( |
const Camera * |
camera | ) |
|
|
virtual |
This function is called just before rendering the view for each kart.
This is used here to display the referee during the ready-set-go phase.
- Parameters
-
kart | The kart whose view is rendered next. |
◆ renderGlobal()
void RaceGUIBase::renderGlobal |
( |
float |
dt | ) |
|
|
virtual |
◆ renderPlayerView()
void RaceGUIBase::renderPlayerView |
( |
const Camera * |
camera, |
|
|
float |
dt |
|
) |
| |
|
virtual |
◆ reset()
void RaceGUIBase::reset |
( |
| ) |
|
|
virtual |
This is called when restarting a race.
In the race gui base it resets height of the referee, so that it can start flying down again.
Reimplemented in RaceGUI.
◆ update()
void RaceGUIBase::update |
( |
float |
dt | ) |
|
|
virtual |
Update, called once per frame.
This updates the height of the referee (to create a flying down animation).
- Parameters
-
◆ m_gauge_empty
video::ITexture* RaceGUIBase::m_gauge_empty |
|
protected |
The size of a single marker in pixels, must be a power of 2.
A texture with all mini dots to be displayed in the minimap for all karts.
◆ m_previous_icons_position
std::vector< core::vector2d<s32> > RaceGUIBase::m_previous_icons_position |
|
protected |
can be zero
previous position of icons
◆ m_referee_height
float RaceGUIBase::m_referee_height |
|
private |
The height of the referee.
This is used to make the referee fly into view. This is the same Y-offset for all karts, so only a single value needs to be used.
The documentation for this class was generated from the following files: