OSDN Git Service

最初のコミット
[shooting3/s2001.git] / project / s2001 / explosion.h
1 //@STATE=\8dì\90¬\92\86
2 //@DESCRIPTION ---------------------------------------------------------------
3 // Explosion.h: Explosion \83N\83\89\83X\82Ì\83C\83\93\83^\81[\83t\83F\83C\83X
4 //      \97\9a\97ð\81F
5 // $Log: explosion.h,v $
6 // Revision 1.1  2001/10/28 21:40:37  fujiwara
7 // DLL\82É\95ª\8a\84
8 //
9 // Revision 1.5  2001/07/09 20:38:48  fujiwara
10 // \97á\8aO\8f\88\97\9d\82Ì\91g\82Ý\8d\9e\82Ý
11 //
12 // Revision 1.4  2001/07/01 01:03:45  fujiwara
13 // const \82Ì\8c©\92¼\82µ
14 // \94z\92u\83G\83f\83B\83^\82Í\93r\92\86\8co\89ß
15 //
16 // Revision 1.3  2001/05/17 12:34:11  fujiwara
17 // \92n\8fã\93G\83T\83\93\83v\83\8b\8dì\90¬
18 //
19 // Revision 1.2  2001/05/12 00:50:33  fujiwara
20 // \82b\82u\82r\82ð\93±\93ü\82µ\81A\83\8d\83O\95\\8e¦\82ð\92Ç\89Á
21 //
22 //@DESCRIPTION_END -----------------------------------------------------------
23 //@AUTHOR=S.F.
24 ///////////////////////////////////////////////////////////////////////////////
25
26 #if !defined(AFX_Explosion_H__D088B903_844F_405A_8167_A0667765D4A8__INCLUDED_)
27 #define AFX_Explosion_H__D088B903_844F_405A_8167_A0667765D4A8__INCLUDED_
28
29 #if _MSC_VER > 1000
30 #pragma once
31 #endif // _MSC_VER > 1000
32
33 #include "AbstractCharacter.h"
34 namespace sf {
35         namespace application {
36                 namespace effect {
37
38
39                         const int MAX_EXPLOSION = 2;
40 class Explosion : public sf::application::AbstractCharacter  
41 {
42 public:
43         // LIFECYCLE //
44         Explosion();
45         virtual ~Explosion();
46         // OPERATIONS //
47         void initialize();
48         // \83L\83\83\83\89\83N\83^\81[\88Ú\93®
49         void move(void);
50         void hit(Character * const pDest);
51         // \83e\83N\83X\83`\83\83\82È\82Ç\82Ì\83\8d\81[\83h
52         static void load(void);
53         static Character * const create(float x,float y ,float z,sf::application::scene::Game * const pGame,sf::application::Character * const pCharacter,int index);
54         // ACCESS //
55         sf::application::hit::Interface * const hitObj(void){return &mHitRect;};
56         
57         const float scaling(void) {return mScaling;};
58         void scaling(const float value)
59         {       mScaling = value;
60                 mObj.scalingX(mScaling);
61                 mObj.scalingY(mScaling);
62         };
63
64 private:
65         float mRadian;
66         float mDx;
67         float mDy;
68         float mScaling;
69         int mCount;
70         sf::application::hit::HitRect mHitRect;
71         sf::system::console::ObjRectangle mObj;
72         static sf::system::console::sprite::PSprite mspSprite[MAX_EXPLOSION];
73         static const sf::system::console::sprite::Info msSpriteInfo[MAX_EXPLOSION];
74         static int msSoundID;
75         bool mbHit;
76         float mSpeed;
77 };
78                 }
79         }
80 }
81
82 #endif // !defined(AFX_Explosion_H__D088B903_844F_405A_8167_A0667765D4A8__INCLUDED_)