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/blitz.h | 64 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 src/blitz.h (limited to 'src/blitz.h') diff --git a/src/blitz.h b/src/blitz.h new file mode 100644 index 0000000..df6e70e --- /dev/null +++ b/src/blitz.h @@ -0,0 +1,64 @@ +// blitz.h + +#ifndef _BLITZ_H_ +#define _BLITZ_H_ + + +class CInstanceManager; +class CD3DEngine; +class CTerrain; +class CCamera; +class CSound; + + + +#define BLITZPARA 200.0f // rayon de protection du paratonnerre +#define BLITZMAX 50 + +enum BlitzPhase +{ + BPH_WAIT, + BPH_BLITZ, +}; + + + +class CBlitz +{ +public: + CBlitz(CInstanceManager* iMan, CD3DEngine* engine); + ~CBlitz(); + + void Flush(); + BOOL EventProcess(const Event &event); + BOOL Create(float sleep, float delay, float magnetic); + BOOL GetStatus(float &sleep, float &delay, float &magnetic, float &progress); + BOOL SetStatus(float sleep, float delay, float magnetic, float progress); + void Draw(); + +protected: + BOOL EventFrame(const Event &event); + CObject* SearchObject(D3DVECTOR pos); + +protected: + CInstanceManager* m_iMan; + CD3DEngine* m_engine; + CTerrain* m_terrain; + CCamera* m_camera; + CSound* m_sound; + + BOOL m_bBlitzExist; + float m_sleep; + float m_delay; + float m_magnetic; + BlitzPhase m_phase; + float m_time; + float m_speed; + float m_progress; + D3DVECTOR m_pos; + FPOINT m_shift[BLITZMAX]; + float m_width[BLITZMAX]; +}; + + +#endif //_BLITZ_H_ -- cgit v1.2.3-1-g7c22