From a4c804b49ec872b71bd5a0167c3ad45704a3cc30 Mon Sep 17 00:00:00 2001 From: adiblol Date: Thu, 8 Mar 2012 19:32:05 +0100 Subject: Initial commit, Copyright (C) 2001-2008, Daniel ROUX & EPSITEC SA, www.epsitec.ch --- src/autosafe.h | 66 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 src/autosafe.h (limited to 'src/autosafe.h') diff --git a/src/autosafe.h b/src/autosafe.h new file mode 100644 index 0000000..66d5573 --- /dev/null +++ b/src/autosafe.h @@ -0,0 +1,66 @@ +// autosafe.h + +#ifndef _AUTOSAFE_H_ +#define _AUTOSAFE_H_ + + +class CInstanceManager; +class CD3DEngine; +class CParticule; +class CTerrain; +class CCamera; +class CObject; + + + +enum AutoSafePhase +{ + ASAP_WAIT = 1, + ASAP_OPEN = 2, + ASAP_FINISH = 3, +}; + + + +class CAutoSafe : public CAuto +{ +public: + CAutoSafe(CInstanceManager* iMan, CObject* object); + ~CAutoSafe(); + + void DeleteObject(BOOL bAll=FALSE); + + void Init(); + BOOL EventProcess(const Event &event); + Error RetError(); + + BOOL CreateInterface(BOOL bSelect); + + BOOL Write(char *line); + BOOL Read(char *line); + +protected: + int CountKeys(); + void LockKeys(); + void DownKeys(float progress); + void DeleteKeys(); + CObject* SearchVehicle(); + +protected: + AutoSafePhase m_phase; + float m_progress; + float m_speed; + float m_timeVirus; + float m_lastParticule; + int m_channelSound; + BOOL m_bLock; + int m_countKeys; + float m_actualAngle; + float m_finalAngle; + BOOL m_bKey[4]; + D3DVECTOR m_keyPos[4]; + int m_keyParti[4]; +}; + + +#endif //_AUTOSAFE_H_ -- cgit v1.2.3-1-g7c22