SuperTuxKart
Public Member Functions | Private Attributes | List of all members
GhostController Class Reference

A class for Ghost controller. More...

#include <ghost_controller.hpp>

Inheritance diagram for GhostController:
Inheritance graph
[legend]

Public Member Functions

 GhostController (AbstractKart *kart, core::stringw display_name)
 
virtual void reset () OVERRIDE
 
virtual void update (int ticks) OVERRIDE
 
virtual bool disableSlipstreamBonus () const OVERRIDE
 
virtual void crashed (const Material *m) OVERRIDE
 
virtual void crashed (const AbstractKart *k) OVERRIDE
 
virtual void handleZipper (bool play_sound) OVERRIDE
 
virtual void finishedRace (float time) OVERRIDE
 Called whan this controller's kart finishes the last lap. More...
 
virtual void collectedItem (const ItemState &item, float previous_energy=0) OVERRIDE
 
virtual void setPosition (int p) OVERRIDE
 
virtual bool isPlayerController () const OVERRIDE
 This function checks if this player is not an AI, i.e. More...
 
virtual bool isLocalPlayerController () const OVERRIDE
 This function checks if this is a local player. More...
 
virtual bool action (PlayerAction action, int value, bool dry_run=false) OVERRIDE
 Default: ignore actions. More...
 
virtual void skidBonusTriggered () OVERRIDE
 
virtual void newLap (int lap) OVERRIDE
 Callback whenever a new lap is triggered. More...
 
virtual bool saveState (BareNetworkString *buffer) const OVERRIDE
 
virtual void rewindTo (BareNetworkString *buffer) OVERRIDE
 
void addReplayTime (float time)
 
bool isReplayEnd () const
 
float getReplayDelta () const
 
unsigned int getCurrentReplayIndex () const
 
float getTimeAtIndex (unsigned int index) const
 
core::stringw getName (bool include_handicap_string=true) const OVERRIDE
 Return the display name; if not set, use default display name (kart name)
 
- Public Member Functions inherited from Controller
 Controller (AbstractKart *kart)
 Constructor, saves the kart pointer and a pointer to the KartControl of the kart.
 
virtual void setControllerName (const std::string &name)
 Sets the controller name for this controller. More...
 
const std::string & getControllerName () const
 Returns the name of this controller. More...
 
virtual KartControlgetControls ()
 Get a pointer on the kart controls. More...
 
void setControls (KartControl *kc)
 
virtual bool canGetAchievements () const
 Only local players can get achievements. More...
 
AbstractKartgetKart () const
 Returns the kart controlled by this controller. More...
 

Private Attributes

unsigned int m_current_index
 Pointer to the last index in m_all_times that is smaller than the current world time. More...
 
float m_current_time
 The current world time. More...
 
core::stringw m_display_name
 Player name of the ghost kart. More...
 
std::vector< float > m_all_times
 The list of the times at which the events of kart were reached. More...
 

Additional Inherited Members

- Protected Attributes inherited from Controller
AbstractKartm_kart
 Pointer to the kart that is controlled by this controller. More...
 
KartControlm_controls
 A pointer to the main controller, from which the kart takes it commands. More...
 
std::string m_controller_name
 The name of the controller, mainly used for debugging purposes. More...
 

Detailed Description

A class for Ghost controller.

Member Function Documentation

◆ action()

bool GhostController::action ( PlayerAction  action,
int  value,
bool  dry_run = false 
)
virtual

Default: ignore actions.

Only PlayerController get them.

Implements Controller.

◆ finishedRace()

virtual void GhostController::finishedRace ( float  time)
inlinevirtual

Called whan this controller's kart finishes the last lap.

Implements Controller.

◆ isLocalPlayerController()

virtual bool GhostController::isLocalPlayerController ( ) const
inlinevirtual

This function checks if this is a local player.

A local player will get special graphical effects enabled, has a camera, and sound effects will be played with normal volume.

Implements Controller.

◆ isPlayerController()

virtual bool GhostController::isPlayerController ( ) const
inlinevirtual

This function checks if this player is not an AI, i.e.

it is either a a local or a remote/networked player. This is tested e.g. by the AI for rubber-banding.

Implements Controller.

◆ newLap()

virtual void GhostController::newLap ( int  lap)
inlinevirtual

Callback whenever a new lap is triggered.

Used by the AI to trigger a recomputation of the way to use.

Implements Controller.

Member Data Documentation

◆ m_all_times

std::vector<float> GhostController::m_all_times
private

The list of the times at which the events of kart were reached.

◆ m_current_index

unsigned int GhostController::m_current_index
private

Pointer to the last index in m_all_times that is smaller than the current world time.

◆ m_current_time

float GhostController::m_current_time
private

The current world time.

◆ m_display_name

core::stringw GhostController::m_display_name
private

Player name of the ghost kart.


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