SuperTuxKart
|
An abstract interface for the actual karts. More...
#include <abstract_kart.hpp>
Public Member Functions | |
AbstractKart (const std::string &ident, int world_kart_id, int position, const btTransform &init_transform, HandicapLevel handicap, std::shared_ptr< GE::GERenderInfo > ri) | |
Creates a kart. | |
const core::stringw & | getName () const |
Returns a name to be displayed for this kart. | |
virtual void | reset () |
The reset position must be set before calling reset. | |
virtual void | init (RaceManager::KartType type)=0 |
virtual float | getSteerPercent () const |
Returns the current steering value for this kart. | |
KartControl & | getControls () |
Returns all controls of this kart. | |
const KartControl & | getControls () const |
Returns all controls of this kart - const version. | |
const KartProperties * | getKartProperties () const |
Returns the kart properties of this kart. | |
virtual void | changeKart (const std::string &new_ident, HandicapLevel handicap, std::shared_ptr< GE::GERenderInfo > ri, const KartData &kart_data=KartData()) |
Change to new kart instancely (used in network live join). | |
const HandicapLevel | getHandicap () const |
Returns the handicap of this kart. | |
void | setHandicap (const HandicapLevel h) |
Sets the handicap. | |
virtual const std::string & | getIdent () const |
Returns a unique identifier for this kart (name of the directory the kart was loaded from). | |
virtual float | getMaxSteerAngle () const =0 |
Returns the maximum steering angle for this kart, which depends on the speed. | |
virtual float | getSpeedForTurnRadius (float radius) const =0 |
Returns the (maximum) speed for a given turn radius. | |
virtual float | getTimeFullSteer (float steer) const =0 |
Returns the time till full steering is reached for this kart. | |
const Attachment * | getAttachment () const |
Returns the current attachment. | |
Attachment * | getAttachment () |
Returns the current attachment, non-const version. | |
KartModel * | getKartModel () const |
Returns this kart's kart model. | |
float | getKartLength () const |
Returns the length of the kart. | |
float | getKartHeight () const |
Returns the height of the kart. | |
float | getKartWidth () const |
Returns the width of the kart. | |
float | getHighestPoint () const |
Returns the highest point of the kart (coordinate on up axis) | |
virtual void | kartIsInRestNow () |
Called after the kart comes to rest. | |
virtual float | getTimeForDistance (float distance) |
Returns the time at which the kart was at a given distance. | |
bool | isWheeless () const |
Returns true if this kart has no wheels. | |
virtual const Vec3 & | getFrontXYZ () const =0 |
Returns the coordinates of the front of the kart. | |
const Vec3 & | getWheelGraphicsPosition (int i) const |
Returns the position of a wheel relative to the kart. | |
AbstractKartAnimation * | getKartAnimation () |
Returns a kart animation (if any), or NULL if currently no kart animation is being shown. | |
const AbstractKartAnimation * | getKartAnimation () const |
virtual void | setKartAnimation (AbstractKartAnimation *ka) |
Sets a new kart animation. | |
unsigned int | getWorldKartId () const |
Returns the index of this kart in world. | |
virtual void | setController (Controller *controller)=0 |
Saves the old controller in m_saved_controller and stores a new controller. | |
virtual Controller * | getController ()=0 |
Returns the controller of this kart. | |
virtual const Controller * | getController () const =0 |
Returns the controller of this kart (const version). | |
virtual const Skidding * | getSkidding () const =0 |
Returns the skidding object for this kart (which can be used to query skidding related values). | |
virtual RaceManager::KartType | getType () const =0 |
virtual Skidding * | getSkidding ()=0 |
Returns the skidding object for this kart (which can be used to query skidding related values), non-const. | |
virtual bool | isEliminated () const =0 |
Returns true if the kart is eliminated. | |
virtual void | eliminate ()=0 |
Marks this kart to be eliminated. | |
virtual void | finishedRace (float time, bool from_server=false)=0 |
virtual float | getFinishTime () const =0 |
Returns the finished time for a kart. | |
virtual int | getBlockedByPlungerTicks () const =0 |
Returns true if the kart has a plunger attached to its face. | |
virtual void | blockViewWithPlunger ()=0 |
Sets that the view is blocked by a plunger. | |
virtual bool | isSquashed () const =0 |
Returns if the kart is currently being squashed. | |
virtual bool | setSquash (float time, float slowdown)=0 |
Squashes this kart: it will scale the kart in up direction, and causes a slowdown while this kart is squashed. | |
virtual void | unsetSquash ()=0 |
Makes the kart unsquashed again. | |
virtual float | getSpeed () const =0 |
Returns the speed of the kart in meters/second. | |
virtual float | getCurrentMaxSpeed () const =0 |
Returns the current maximum speed for this kart, this includes all bonus and maluses that are currently applied. | |
virtual int | getSpeedIncreaseTicksLeft (unsigned int category) const =0 |
Returns how much increased speed time is left over in the given category. | |
virtual void | setBoostAI (bool boosted)=0 |
Sets the kart AI boost state. | |
virtual bool | getBoostAI () const =0 |
Returns the kart AI boost state. | |
virtual void | increaseMaxSpeed (unsigned int category, float add_speed, float engine_force, int duration, int fade_out_time)=0 |
Sets an increased maximum speed for a category. | |
virtual void | instantSpeedIncrease (unsigned int category, float add_max_speed, float speed_boost, float engine_force, int duration, int fade_out_time)=0 |
This adjusts the top speed using increaseMaxSpeed, but additionally causes an instant speed boost, which can be smaller than add-max-speed. | |
virtual void | setSlowdown (unsigned int category, float max_speed_fraction, int fade_in_time)=0 |
Defines a slowdown, which is in fraction of top speed. | |
virtual float | getEnergy () const =0 |
Returns the remaining collected energy. | |
virtual void | collectedItem (ItemState *item_state)=0 |
Called when an item is collected. | |
virtual int | getPosition () const =0 |
Returns the current position of this kart in the race. | |
virtual void | setPosition (int p)=0 |
Returns the current position of this kart in the race. | |
virtual int | getInitialPosition () const =0 |
Returns the initial position of this kart. | |
virtual bool | isOnGround () const =0 |
True if the wheels are touching the ground. | |
virtual const SlipStream * | getSlipstream () const =0 |
Returns the slipstream object of this kart. | |
virtual SlipStream * | getSlipstream ()=0 |
Returns the slipstream object of this kart. | |
virtual void | setSlipstreamEffect (float f)=0 |
Activates a slipstream effect, atm that is display some nitro. | |
virtual void | beep ()=0 |
Plays a beep sfx. | |
virtual bool | playCustomSFX (unsigned int type)=0 |
This function will play a particular character voice for this kart. | |
virtual void | showZipperFire ()=0 |
Show fire to go with a zipper. | |
virtual void | handleZipper (const Material *m=NULL, bool play_sound=false)=0 |
Sets zipper time, and apply one time additional speed boost. | |
virtual bool | hasFinishedRace () const =0 |
Returns true if this kart has finished the race. | |
virtual void | setEnergy (float val)=0 |
virtual bool | isOnMinNitroTime () const =0 |
Return whether nitro is being used despite the nitro button not being pressed due to minimal use time requirements. | |
virtual const Material * | getMaterial () const =0 |
Returns the current material the kart is on. | |
virtual const Material * | getLastMaterial () const =0 |
Returns the previous material the kart was one (which might be the same as getMaterial() ). | |
virtual const Powerup * | getPowerup () const =0 |
Returns the current powerup. | |
virtual Powerup * | getPowerup ()=0 |
Returns the current powerup. | |
virtual PowerupManager::PowerupType | getLastUsedPowerup ()=0 |
Returns the last used powerup type. | |
virtual int | getNumPowerup () const =0 |
Returns the number of powerups. | |
virtual KartGFX * | getKartGFX ()=0 |
Returns a points to this kart's graphical effects. | |
virtual void | setPowerup (PowerupManager::PowerupType t, int n)=0 |
virtual btKart * | getVehicle () const =0 |
Returns the bullet vehicle which represents this kart. | |
virtual btQuaternion | getVisualRotation () const =0 |
virtual bool | isInRest () const =0 |
Returns true if the kart is 'resting', i.e. | |
virtual void | startEngineSFX ()=0 |
Starts the engine sound effect. | |
virtual void | adjustSpeed (float f)=0 |
Multiplies the velocity of the kart by a factor f (both linear and angular). | |
virtual void | setSpeed (float s)=0 |
This is used on the client side only to set the speed of the kart from the server information. | |
virtual bool | isInvulnerable () const =0 |
Returns if the kart is invulnerable. | |
virtual void | setInvulnerableTicks (int ticks)=0 |
virtual bool | isShielded () const =0 |
Returns if the kart is protected by a shield. | |
virtual void | setShieldTime (float t)=0 |
virtual float | getShieldTime () const =0 |
virtual void | decreaseShieldTime ()=0 |
Decreases the kart's shield time. | |
virtual void | showStarEffect (float t)=0 |
Shows the star effect for a certain time. | |
virtual const TerrainInfo * | getTerrainInfo () const =0 |
Returns the terrain info oject. | |
virtual void | crashed (AbstractKart *k, bool update_attachments)=0 |
Called when the kart crashes against another kart. | |
virtual void | crashed (const Material *m, const Vec3 &normal)=0 |
virtual const Vec3 & | getNormal () const =0 |
Returns the normal of the terrain the kart is over atm. | |
virtual const Vec3 & | getPreviousXYZ () const =0 |
Returns the position 0.25s before. | |
virtual const Vec3 & | getRecentPreviousXYZ () const =0 |
Returns the most recent different previous position. | |
virtual const float | getRecentPreviousXYZTime () const =0 |
Returns the time at which the recent previous position occured. | |
virtual float | getHoT () const =0 |
Returns the height of the terrain. | |
virtual float | getTerrainPitch (float heading) const =0 |
Returns the pitch of the terrain depending on the heading. | |
virtual btTransform | getAlignedTransform (const float customPitch=-1)=0 |
Returns a bullet transform object located at the kart's position and oriented in the direction the kart is going. | |
virtual void | setOnScreenText (const core::stringw &text)=0 |
Set a text that is displayed on top of a kart. | |
virtual bool | getRaceResult () const =0 |
Returns whether this kart wins or loses. | |
virtual bool | isGhostKart () const =0 |
Returns whether this kart is a ghost (replay) kart. | |
virtual bool | isJumping () const =0 |
Returns whether this kart is jumping. | |
virtual void | playSound (SFXBuffer *buffer)=0 |
virtual bool | isVisible () const =0 |
virtual void | makeKartRest () |
Called before go phase to make sure all karts start at the same position in case there is a slope. | |
virtual void | setStartupBoost (float val)=0 |
virtual float | getStartupBoost () const =0 |
virtual float | getStartupBoostFromStartTicks (int ticks) const =0 |
virtual Stars * | getStarsEffect () const =0 |
int | getLiveJoinUntilTicks () const |
void | setLiveJoinKart (int util_ticks) |
virtual int | getNetworkConfirmedFinishTicks () const =0 |
Return the confirmed finish ticks (sent by the server) indicating that this kart has really finished the race. | |
Public Member Functions inherited from Moveable | |
scene::ISceneNode * | getNode () const |
Returns the scene node of this moveable. | |
void | setNode (scene::ISceneNode *n) |
Sets the mesh for this model. | |
virtual const btVector3 & | getVelocity () const |
const btVector3 & | getVelocityLC () const |
virtual void | setVelocity (const btVector3 &v) |
const Vec3 & | getXYZ () const |
float | getHeading () const |
Returns the heading between -pi and pi. | |
float | getPitch () const |
Returns the pitch of the kart, restricted to between -pi/2 and pi/2. | |
float | getRoll () const |
Returns the roll of the kart between -pi and pi. | |
const btQuaternion | getRotation () const |
virtual void | flyUp () |
Enter flying mode. | |
virtual void | flyDown () |
virtual void | stopFlying () |
virtual void | setXYZ (const Vec3 &a) |
Sets the XYZ coordinates of the moveable. | |
void | setRotation (const btMatrix3x3 &m) |
Sets the rotation of the physical body this moveable. | |
void | setRotation (const btQuaternion &q) |
Sets the rotation of the physical body this moveable. | |
virtual void | reset () |
The reset position must be set before calling reset. | |
virtual void | update (int ticks) |
Updates the current position and rotation from the corresponding physics body, and then calls updateGraphics to position the model correctly. | |
btRigidBody * | getBody () const |
void | createBody (float mass, btTransform &trans, btCollisionShape *shape, float restitution) |
Creates the bullet rigid body for this moveable. | |
const btTransform & | getTrans () const |
void | setTrans (const btTransform &t) |
Places this moveable at a certain location and stores this transform in this Moveable, so that it can be accessed easily. | |
void | updatePosition () |
Updates the current position and rotation. | |
virtual void | updateGraphics (float dt)=0 |
Called once per rendered frame. | |
void | prepareSmoothing () |
void | checkSmoothing () |
const btTransform & | getSmoothedTrans () const |
const Vec3 & | getSmoothedXYZ () const |
virtual const std::string & | getIdent () const |
Public Member Functions inherited from SmoothNetworkBody | |
SmoothNetworkBody (bool enable=false) | |
void | reset () |
void | setEnable (bool val) |
bool | isEnabled () const |
void | setSmoothRotation (bool val) |
void | setAdjustVerticalOffset (bool val) |
void | prepareSmoothing (const btTransform ¤t_transform, const Vec3 ¤t_velocity) |
void | checkSmoothing (const btTransform ¤t_transform, const Vec3 ¤t_velocity) |
Adds a new error between graphical and physical position/rotation. | |
void | updateSmoothedGraphics (const btTransform ¤t_transform, const Vec3 ¤t_velocity, float dt) |
void | setSmoothedTransform (const btTransform &t) |
const btTransform & | getSmoothedTrans () const |
const Vec3 & | getSmoothedXYZ () const |
void | setMinAdjustLength (float val) |
void | setMaxAdjustLength (float val) |
void | setMinAdjustSpeed (float val) |
void | setMaxAdjustTime (float val) |
void | setAdjustLengthThreshold (float val) |
Protected Attributes | |
btTransform | m_starting_transform |
int | m_live_join_util |
std::unique_ptr< KartProperties > | m_kart_properties |
The kart properties. | |
HandicapLevel | m_handicap |
The handicap level of this kart. | |
std::unique_ptr< KartModel > | m_kart_model |
This stores a copy of the kart model. | |
std::unique_ptr< Attachment > | m_attachment |
Handles the attachment the kart might have. | |
KartControl | m_controls |
The kart controls (e.g. | |
AbstractKartAnimation * | m_kart_animation |
A kart animation object to handle rescue, explosion etc. | |
irr::scene::IDummyTransformationSceneNode * | m_wheel_box |
Node between wheels and kart. | |
Protected Attributes inherited from Moveable | |
btTransform | m_transform |
The bullet transform of this rigid body. | |
UserPointer | m_user_pointer |
scene::ISceneNode * | m_node |
std::unique_ptr< btRigidBody > | m_body |
std::unique_ptr< KartMotionState > | m_motion_state |
Private Member Functions | |
void | loadKartProperties (const std::string &new_ident, HandicapLevel handicap, std::shared_ptr< GE::GERenderInfo > ri, const KartData &kart_data=KartData()) |
Private Attributes | |
float | m_kart_length |
Length of the kart, copy of the data from KartModel. | |
float | m_kart_width |
Width of the kart, copy of the data from KartModel. | |
float | m_kart_height |
Height of the kart, copy of the data from KartModel. | |
float | m_kart_highest_point |
Coordinate on up axis. | |
const Vec3 * | m_wheel_graphics_position |
The position of all four wheels in the 3d model. | |
unsigned int | m_world_kart_id |
Index of kart in world. | |
core::stringw | m_name |
Name of the kart with translation. | |
Additional Inherited Members | |
Protected Member Functions inherited from Moveable | |
void | updateSmoothedGraphics (float dt) |
virtual void | updateGraphics (const Vec3 &off_xyz=Vec3(0.0f, 0.0f, 0.0f), const btQuaternion &off_rotation=btQuaternion(0.0f, 0.0f, 0.0f, 1.0f)) |
Updates the graphics model. | |
An abstract interface for the actual karts.
Some functions are actually implemented here in order to allow inlining.
AbstractKart::AbstractKart | ( | const std::string & | ident, |
int | world_kart_id, | ||
int | position, | ||
const btTransform & | init_transform, | ||
HandicapLevel | handicap, | ||
std::shared_ptr< GE::GERenderInfo > | ri | ||
) |
Creates a kart.
ident | The identifier of the kart. |
world_kart_id | The world index of this kart. |
position | The start position of the kart (1<=position<=n). |
init_transform | The start position of the kart. |
|
pure virtual |
Multiplies the velocity of the kart by a factor f (both linear and angular).
This is used by anvils, which suddenly slow down the kart when they are attached.
Implemented in Kart.
|
pure virtual |
Plays a beep sfx.
Implemented in Kart.
|
pure virtual |
Sets that the view is blocked by a plunger.
The duration depends on the difficulty, see KartPorperties getPlungerInFaceTime.
Implemented in Kart.
|
virtual |
Change to new kart instancely (used in network live join).
Reimplemented in Kart.
|
pure virtual |
Called when an item is collected.
It will either adjust the collected energy, or update the attachment or powerup for this kart.
item | The item that was hit. |
Implemented in Kart, and KartWithStats.
|
pure virtual |
Called when the kart crashes against another kart.
k | The kart that was hit. |
update_attachments | If true the attachment of this kart and the other kart hit will be updated (e.g. bombs will be moved). |
Implemented in Kart.
Implemented in Kart.
|
pure virtual |
Decreases the kart's shield time.
Implemented in Kart.
|
pure virtual |
Marks this kart to be eliminated.
Implemented in Kart.
|
pure virtual |
Implemented in Kart.
|
pure virtual |
Returns a bullet transform object located at the kart's position and oriented in the direction the kart is going.
Can be useful e.g. to calculate the starting point and direction of projectiles.
Implemented in Kart.
|
pure virtual |
Returns true if the kart has a plunger attached to its face.
Implemented in Kart.
|
pure virtual |
Returns the kart AI boost state.
Not pure abstract, since there is no need to implement this e.g. in Ghost.
Implemented in Kart.
|
pure virtual |
Returns the controller of this kart (const version).
Implemented in Kart.
|
pure virtual |
Returns the controller of this kart.
Implemented in Kart.
|
pure virtual |
Returns the current maximum speed for this kart, this includes all bonus and maluses that are currently applied.
Implemented in Kart.
|
pure virtual |
Returns the remaining collected energy.
Implemented in Kart.
|
pure virtual |
Returns the finished time for a kart.
Implemented in Kart.
|
pure virtual |
Returns the coordinates of the front of the kart.
This is used for determining when the lap line is crossed.
Implemented in Kart.
|
pure virtual |
|
virtual |
Returns a unique identifier for this kart (name of the directory the kart was loaded from).
Reimplemented from Moveable.
|
pure virtual |
Returns the initial position of this kart.
Implemented in Kart.
|
pure virtual |
Returns a points to this kart's graphical effects.
Implemented in Kart.
|
pure virtual |
Returns the previous material the kart was one (which might be the same as getMaterial() ).
Implemented in Kart.
|
pure virtual |
Returns the last used powerup type.
Implemented in Kart.
|
pure virtual |
Returns the current material the kart is on.
Implemented in Kart.
|
pure virtual |
Returns the maximum steering angle for this kart, which depends on the speed.
Implemented in Kart.
|
pure virtual |
Return the confirmed finish ticks (sent by the server) indicating that this kart has really finished the race.
Implemented in Kart.
|
pure virtual |
Returns the normal of the terrain the kart is over atm.
This is defined even if the kart is flying.
Implemented in Kart.
|
pure virtual |
Returns the number of powerups.
Implemented in Kart.
|
pure virtual |
Returns the current position of this kart in the race.
Implemented in Kart.
|
pure virtual |
Returns the current powerup.
Implemented in Kart.
|
pure virtual |
Returns the current powerup.
Implemented in Kart.
|
pure virtual |
Returns the position 0.25s before.
Implemented in Kart.
|
pure virtual |
Returns whether this kart wins or loses.
Implemented in Kart.
|
pure virtual |
Returns the most recent different previous position.
Implemented in Kart.
|
pure virtual |
Returns the time at which the recent previous position occured.
Implemented in Kart.
|
pure virtual |
Implemented in Kart.
|
pure virtual |
Returns the skidding object for this kart (which can be used to query skidding related values).
Implemented in Kart.
|
pure virtual |
Returns the skidding object for this kart (which can be used to query skidding related values), non-const.
Implemented in Kart.
|
pure virtual |
Returns the slipstream object of this kart.
Implemented in Kart.
|
pure virtual |
Returns the slipstream object of this kart.
Implemented in Kart.
|
pure virtual |
|
pure virtual |
Returns the (maximum) speed for a given turn radius.
radius | The radius for which the speed needs to be computed. |
Implemented in Kart.
|
pure virtual |
Returns how much increased speed time is left over in the given category.
category | Which category to report on. |
Implemented in Kart.
|
pure virtual |
Implemented in Kart.
|
inlinevirtual |
Returns the current steering value for this kart.
Reimplemented in KartRewinder.
|
pure virtual |
Returns the terrain info oject.
Implemented in Kart.
|
pure virtual |
Returns the pitch of the terrain depending on the heading.
Implemented in Kart.
|
virtual |
Returns the time at which the kart was at a given distance.
Returns -1.0f if none
Reimplemented in GhostKart.
|
pure virtual |
Returns the time till full steering is reached for this kart.
This can depend on the current steering value, which must be >= 0.
Implemented in Kart.
|
pure virtual |
Returns the bullet vehicle which represents this kart.
Implemented in Kart.
|
inline |
Returns the position of a wheel relative to the kart.
i | Index of the wheel: 0=front right, 1 = front left, 2 = rear right, 3 = rear left. |
|
pure virtual |
Sets zipper time, and apply one time additional speed boost.
It can be used with a specific material, in which case the zipper parmaters are taken from this material (parameters that are <0 will be using the kart-specific values from kart-properties.
Implemented in Kart.
|
pure virtual |
Returns true if this kart has finished the race.
Implemented in Kart.
|
pure virtual |
Sets an increased maximum speed for a category.
category | The category for which to set the higher maximum speed. |
add_speed | How much speed (in m/s) is added to the maximum speed. |
engine_force | Additional engine force to affect the kart. |
duration | How long the speed increase will last. |
fade_out_time | How long the maximum speed will fade out linearly. |
Implemented in Kart.
|
pure virtual |
Implemented in Kart.
|
pure virtual |
This adjusts the top speed using increaseMaxSpeed, but additionally causes an instant speed boost, which can be smaller than add-max-speed.
(e.g. a zipper can give an instant boost of 5 m/s, but over time would allow the speed to go up by 10 m/s).
category | The category for which the speed is increased. |
add_max_speed | Increase of the maximum allowed speed. |
speed_boost | An instant speed increase for this kart. |
engine_force | Additional engine force. |
duration | Duration of the increased speed. |
fade_out_time | How long the maximum speed will fade out linearly. |
Implemented in Kart.
|
pure virtual |
Returns true if the kart is eliminated.
Implemented in Kart.
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
Returns whether this kart is jumping.
Implemented in Kart.
|
pure virtual |
True if the wheels are touching the ground.
Implemented in Kart.
|
pure virtual |
Return whether nitro is being used despite the nitro button not being pressed due to minimal use time requirements.
Implemented in Kart.
|
pure virtual |
Returns if the kart is protected by a shield.
Implemented in Kart.
|
pure virtual |
Returns if the kart is currently being squashed.
Implemented in Kart.
|
virtual |
Called after the kart comes to rest.
Moves the current physical transform into this kart's position.
It can be used to e.g. compute differences between graphical and physical chassis. Note that overwriting this function is possible, but this implementation must be called.
|
virtual |
Called before go phase to make sure all karts start at the same position in case there is a slope.
Reimplemented in GhostKart.
|
pure virtual |
This function will play a particular character voice for this kart.
It returns whether or not a character voice sample exists for the particular event. If there is no voice sample, a default can be played instead.
Implemented in Kart.
|
virtual |
The reset position must be set before calling reset.
Reimplemented from Moveable.
Reimplemented in GhostKart, Kart, KartRewinder, and KartWithStats.
|
pure virtual |
Sets the kart AI boost state.
Not pure abstract, since there is no need to implement this e.g. in Ghost.
boosted | True if a boost should be applied. |
Implemented in Kart.
|
pure virtual |
Saves the old controller in m_saved_controller and stores a new controller.
The save controller is needed in case of a reset.
controller | The new controller to use (atm it's always an end controller). |
Implemented in Kart.
|
pure virtual |
Implemented in Kart.
|
pure virtual |
Implemented in Kart.
|
virtual |
Sets a new kart animation.
This function should either be called to remove an existing kart animation (ka=NULL), or to set a new kart animation, in which case the current kart animation must be NULL.
ka | The new kart animation, or NULL if the current kart animation is to be stopped. |
Reimplemented in KartWithStats.
|
pure virtual |
Set a text that is displayed on top of a kart.
Implemented in Kart.
|
pure virtual |
Returns the current position of this kart in the race.
Implemented in Kart.
|
pure virtual |
Implemented in Kart.
|
pure virtual |
Implemented in Kart.
|
pure virtual |
Activates a slipstream effect, atm that is display some nitro.
Implemented in Kart.
|
pure virtual |
Defines a slowdown, which is in fraction of top speed.
category | The category for which the speed is increased. |
max_speed_fraction | Fraction of top speed to allow only. |
fade_in_time | How long till maximum speed is capped. |
Implemented in Kart.
|
pure virtual |
This is used on the client side only to set the speed of the kart from the server information.
Implemented in Kart.
|
pure virtual |
Squashes this kart: it will scale the kart in up direction, and causes a slowdown while this kart is squashed.
Returns true if the squash is successful, false otherwise.
time | How long the kart will be squashed. |
slowdown | Reduction of max speed. |
Implemented in Kart.
|
pure virtual |
Shows the star effect for a certain time.
Implemented in Kart.
|
pure virtual |
Show fire to go with a zipper.
Implemented in Kart.
|
pure virtual |
|
pure virtual |
Makes the kart unsquashed again.
Implemented in Kart.
|
protected |
The kart controls (e.g.
steering, fire, ...).
|
protected |
This stores a copy of the kart model.
It has to be a copy since otherwise incosistencies can happen if the same kart is used more than once.
|
protected |
Node between wheels and kart.
Allows kart to be scaled independent of wheels, when being squashed.