SuperTuxKart
|
Implements a simple checkline that will score a point when the soccer ball crosses it. More...
#include <check_goal.hpp>
Public Types | |
enum | PointLocation { POINT_FIRST , POINT_CENTER , POINT_LAST } |
Used by AIs to test whether the ball is likely to goal. | |
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... | |
Public Member Functions | |
CheckGoal (const XMLNode &node, unsigned int index) | |
Constructor for a check goal line. | |
virtual void | update (float dt) OVERRIDE |
Checks the soccer balls to see if they crossed the line and trigger the goal accordingly. | |
virtual void | trigger (unsigned int kart_index) OVERRIDE |
Called when the goal line is triggered. | |
virtual bool | isTriggered (const Vec3 &old_pos, const Vec3 &new_pos, int indx) OVERRIDE |
True if going from old_pos to new_pos crosses this checkline. | |
virtual void | reset (const Track &track) OVERRIDE |
Initialises the 'previous positions' of all karts with the start position defined for this track. | |
bool | getTeam () const |
const Vec3 & | getPoint (PointLocation point) const |
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 | |
Vec3 | m_previous_ball_position |
Previois ball position. | |
bool | m_first_goal |
Which team is this goal for? | |
core::line2df | m_line |
The line that is tested for being crossed. | |
Vec3 | m_p1 |
Used by AIs to test whether the ball is likely to goal. | |
Vec3 | m_p2 |
Vec3 | m_p3 |
Additional Inherited Members | |
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. | |
Implements a simple checkline that will score a point when the soccer ball crosses it.
CheckGoal::CheckGoal | ( | const XMLNode & | node, |
unsigned int | index | ||
) |
Constructor for a check goal line.
node | XML node containing the parameters for this goal line. |
index | Index of this check structure in the check manager. |
|
inlinevirtual |
Clone to child process for server usage (atm no sound or scripting).
Implements CheckStructure.
True if going from old_pos to new_pos crosses this checkline.
This function is called from update (of the checkline structure).
old_pos | Position in previous frame. |
new_pos | Position in current frame. |
indx | Index of the kart, can be used to store kart specific additional data. |
Implements CheckStructure.
|
virtual |
Initialises the 'previous positions' of all karts with the start position defined for this track.
track | The track object defining the start positions. |
Reimplemented from CheckStructure.
|
virtual |
Called when the goal line is triggered.
Input any integer for i to use
Reimplemented from CheckStructure.
|
virtual |
Checks the soccer balls to see if they crossed the line and trigger the goal accordingly.
Reimplemented from CheckStructure.