SuperTuxKart
|
This class implements a check point like item, but used only for scripting or sound trigger. More...
#include <check_trigger.hpp>
Public Member Functions | |
CheckTrigger (const Vec3 ¢er, float distance, std::function< void(int)> triggering_function) | |
Constructor for a check trigger. | |
virtual bool | isTriggered (const Vec3 &old_pos, const Vec3 &new_pos, int kart_id) OVERRIDE |
Copied from item state. | |
virtual void | trigger (unsigned int kart_index) OVERRIDE |
Is called when this check structure is triggered. | |
virtual CheckStructure * | clone () OVERRIDE |
Clone to child process for server usage (atm no sound or scripting). | |
Public Member Functions inherited from CheckStructure | |
CheckStructure (const XMLNode &node, unsigned int index) | |
virtual void | update (float dt) |
Updates all check structures. | |
virtual void | resetAfterKartMove (unsigned int kart_index) |
virtual void | resetAfterRewind (unsigned int kart_index) |
virtual void | changeDebugColor (bool is_active) |
virtual bool | isTriggered (const Vec3 &old_pos, const Vec3 &new_pos, int indx)=0 |
True if going from old_pos to new_pos crosses this checkline. | |
virtual void | trigger (unsigned int kart_index) |
Is called when this check structure is triggered. | |
virtual void | reset (const Track &track) |
Initialises the 'previous positions' of all karts with the start position defined for this track. | |
CheckType | getType () const |
Returns the type of this check structure. | |
void | addSuccessor (unsigned int i) |
Adds the index of a successor check structure which will get triggered by this check structure. | |
virtual bool | triggeringCheckline () const |
virtual void | saveCompleteState (BareNetworkString *bns) |
virtual void | restoreCompleteState (const BareNetworkString &b) |
void | saveIsActive (int kart_id, BareNetworkString *bns) |
void | restoreIsActive (int kart_id, const BareNetworkString &b) |
int | getIndex () const |
virtual CheckStructure * | clone ()=0 |
Clone to child process for server usage (atm no sound or scripting). | |
Private Attributes | |
const Vec3 | m_center |
Center of the trigger. | |
const float | m_distance2 |
Squared of the triggering distance. | |
std::function< void(int)> | m_triggering_function |
Function to call when triggered. | |
uint64_t | m_last_triggered_time |
Time since last trigger, if any triggering between 2 seconds ignored (like items). | |
Additional Inherited Members | |
Public Types inherited from CheckStructure | |
enum | CheckType { CT_NEW_LAP , CT_ACTIVATE , CT_TOGGLE , CT_CANNON , CT_GOAL , CT_AMBIENT_SPHERE , CT_TRIGGER } |
Different types of check structures: ACTIVATE: Activates another check structure (independent of the state that check structure is in) TOGGLE: Switches (inverts) the state of another check structure. More... | |
Protected Member Functions inherited from CheckStructure | |
CheckStructure () | |
For CheckTrigger or CheckCylinder. | |
Protected Attributes inherited from CheckStructure | |
AlignedArray< Vec3 > | m_previous_position |
Stores the previous position of all karts. | |
std::vector< bool > | m_is_active |
Stores if this check structure is active (for a given kart). | |
bool | m_active_at_reset |
True if this check structure should be activated at a reset. | |
unsigned int | m_index |
Stores the index of this check structure. | |
This class implements a check point like item, but used only for scripting or sound trigger.
CheckTrigger::CheckTrigger | ( | const Vec3 & | center, |
float | distance, | ||
std::function< void(int)> | triggering_function | ||
) |
Constructor for a check trigger.
center | Center point of this trigger |
distance | Kart within it between center will trigger |
triggering_function | callback function to be used when triggered |
|
inlinevirtual |
Clone to child process for server usage (atm no sound or scripting).
Implements CheckStructure.
Copied from item state.
Implements CheckStructure.
|
inlinevirtual |
Is called when this check structure is triggered.
This then can cause a lap to be counted, animation to be started etc.
Reimplemented from CheckStructure.