mirror of
https://github.com/blendogames/quadrilateralcowboy.git
synced 2024-11-23 20:43:05 +00:00
64 lines
1.1 KiB
C++
64 lines
1.1 KiB
C++
|
|
class idBluebox : public idAnimatedEntity
|
|
{
|
|
public:
|
|
CLASS_PROTOTYPE( idBluebox );
|
|
|
|
|
|
|
|
void Spawn( void );
|
|
void Save( idSaveGame *savefile ) const;
|
|
void Restore( idRestoreGame *savefile );
|
|
|
|
virtual void Think( void );
|
|
|
|
void OnFrob( void );
|
|
|
|
void OnDown( void );
|
|
void OnUp( void );
|
|
void OnNone( void );
|
|
void OnExecute( void );
|
|
void OnDrop( void );
|
|
|
|
void Reset( bool closeDoor );
|
|
|
|
private:
|
|
|
|
|
|
void WeevilOpen( void );
|
|
void GetOpenState( void );
|
|
|
|
|
|
enum { READY, PLUGTRANSITION, BLUEBOXTRANSITION, BLUEBOXHELD };
|
|
int state;
|
|
|
|
int blueboxTransitionTime;
|
|
idVec3 blueboxStartPos;
|
|
|
|
void OnUnplugDone( void );
|
|
void OnExecuteDone( void );
|
|
void PlugConnected( bool playEffects );
|
|
void DoPlug( void );
|
|
void HandleSelection( int delta );
|
|
void AttachBlueboxToCable();
|
|
|
|
|
|
jointHandle_t joint_W;
|
|
jointHandle_t joint_S;
|
|
jointHandle_t joint_execute;
|
|
|
|
int selectedIndex;
|
|
int maxIndex;
|
|
|
|
|
|
bool isOpen;
|
|
bool isPlugged;
|
|
bool canSelect;
|
|
|
|
idMover * plug;
|
|
idEntity * cable;
|
|
idEntity * bluebox;
|
|
|
|
|
|
|
|
};
|