Particle Game Maker Engine  1.0.0
Enables the user to create their own particle game using a simple and coherent api in the PongChamp scripting language
CollideFuncObjects.h
Go to the documentation of this file.
1 #ifndef COLLIDE_FUNC_OBJECTS_H
2 #define COLLIDE_FUNC_OBJECTS_H
3 
4 #include "ParticleGroupHandle.h"
5 
7 public:
8 
10 
15  virtual void hit(ParticleGroupHandle* from, int xf, int yf, ParticleGroupHandle* to, int xt, int yt) = 0;
16 };
17 
18 class Delete : public CollideFuncObject {
19 public:
20  Delete(bool deleteFrom, bool deleteTo);
21 
22  void hit(ParticleGroupHandle* from, int xf, int yf, ParticleGroupHandle* to, int xt, int yt);
23 
24 private:
25  int deleteFrom;
26  int deleteTo;
27 };
28 
29 class Create : public CollideFuncObject {
30 public:
31  Create(int createFrom, int createTo);
32 
33  void hit(ParticleGroupHandle* from, int xf, int yf, ParticleGroupHandle* to, int xt, int yt);
34 private:
35  int createFrom;
36  int createTo;
37 };
38 
39 class Move : public CollideFuncObject {
40  public:
44  Move(int xFromStep, int yFromStep, int xToStep, int yToStep);
45 
46  void hit(ParticleGroupHandle* from, int xf, int yf, ParticleGroupHandle* to, int xt, int yt);
47  private:
48  int xFromStep, yFromStep, xToStep, yToStep;
49 };
50 
51 class Convert : public CollideFuncObject {
52  public:
56  Convert(ParticleGroupHandle* newFromType, ParticleGroupHandle* newToType);
57 
58  void hit(ParticleGroupHandle* from, int xf, int yf, ParticleGroupHandle* to, int xt, int yt);
59  private:
60  ParticleGroupHandle* newFromType;
61  ParticleGroupHandle* newToType;
62 };
63 
64 class MoveRandom : public CollideFuncObject {
65  public:
69  MoveRandom(unsigned int radius);
70 
71  void hit(ParticleGroupHandle* from, int xf, int yf, ParticleGroupHandle* to, int xt, int yt);
72  private:
73  unsigned int radius;
74 };
75 
76 #endif
void hit(ParticleGroupHandle *from, int xf, int yf, ParticleGroupHandle *to, int xt, int yt)
Definition: CollideFuncObjects.cpp:66
MoveRandom(unsigned int radius)
Definition: CollideFuncObjects.cpp:62
Definition: CollideFuncObjects.h:64
void hit(ParticleGroupHandle *from, int xf, int yf, ParticleGroupHandle *to, int xt, int yt)
Definition: CollideFuncObjects.cpp:48
Definition: ParticleGroupHandle.h:29
CollideFuncObject()
Definition: CollideFuncObjects.cpp:7
virtual void hit(ParticleGroupHandle *from, int xf, int yf, ParticleGroupHandle *to, int xt, int yt) = 0
Definition: CollideFuncObjects.h:18
Definition: CollideFuncObjects.h:6
Delete(bool deleteFrom, bool deleteTo)
Definition: CollideFuncObjects.cpp:11
void hit(ParticleGroupHandle *from, int xf, int yf, ParticleGroupHandle *to, int xt, int yt)
Definition: CollideFuncObjects.cpp:13
Definition: CollideFuncObjects.h:29
void hit(ParticleGroupHandle *from, int xf, int yf, ParticleGroupHandle *to, int xt, int yt)
Definition: CollideFuncObjects.cpp:40
void hit(ParticleGroupHandle *from, int xf, int yf, ParticleGroupHandle *to, int xt, int yt)
Definition: CollideFuncObjects.cpp:26
Definition: CollideFuncObjects.h:39
Move(int xFromStep, int yFromStep, int xToStep, int yToStep)
Definition: CollideFuncObjects.cpp:37
Definition: CollideFuncObjects.h:51
Create(int createFrom, int createTo)
Definition: CollideFuncObjects.cpp:24
Convert(ParticleGroupHandle *newFromType, ParticleGroupHandle *newToType)
Definition: CollideFuncObjects.cpp:45