home *** CD-ROM | disk | FTP | other *** search
- #ifndef __Mech_h__
- #define __Mech_h__
-
- #include "Vehicle.h"
- #include "Model.h"
- #include "Game.h"
- #include "Animator.h"
-
- typedef struct mech_dlpcCombo_s{
- DynamicLightParticleCluster* dlpc;
- GLfloat** legsModel_colors;
- GLfloat** torsoModel_colors;
- GLfloat** weaponModel_colors[4];
- }mech_dlpcCombo_t;
-
- class Mech: public Vehicle{
- public:
- Mech(Client* client);
- virtual ~Mech();
-
- bool groundContact;
- bool jumpjetsActive;
- float jumpjetsEnergyConsumption;
-
- Model* torsoModel;
- Animator* torsoAnimator;
- Model* legsModel;
- Animator* legsAnimator;
-
- // void processInputArray(inputArray_t inputArray); we the std defined in Vehicle
-
- void moveForward(float deltaT);
- void moveBackward(float deltaT);
- void moveLeft(float deltaT);
- void moveRight(float deltaT);
- void moveUp(float deltaT);
- void moveDown(float deltaT);
-
- void move();
- float calcGroundContactRatio();
-
- vector<mech_dlpcCombo_t> dlpcs;
- GLfloat** legsModelSecondaryColors;
- GLfloat** torsoModelSecondaryColors;
- GLfloat** weaponModelSecondaryColors[4];
- void addDynamicLightParticleCluster(DynamicLightParticleCluster* dlpc);
- void removeDynamicLightParticleCluster(DynamicLightParticleCluster* dlpc);
- void render();
- };
-
- #endif /* __Mech_h__ */
-