allora:
MOVABLE_UNIT.H:
codice:
#ifndef _MOVABLEUNIT_H_
#define _MOVABLEUNIT_H_
#include "Unit.h"
#include <OgreNewt.h>
class Application;
class Unit{};
class MovableUnit : public Unit{
public:
MovableUnit(Application* game,SceneManager* mSceneMgr,OgreNewt::World* m_World);
private:
protected:
};
#endif
Unit.h
codice:
#ifndef _UNIT_H_
#define _UNIT_H_
#include "Application.h"
#include <OgreNewt.h>
class Application;
class Unit : public FrameListener, public KeyListener {
public:
SceneManager* mSceneMgr;
OgreNewt::World* m_World;
Application* game;
Entity* unitEntity;
SceneNode* unitNode;
OgreNewt::Body* unitBody;
AnimationState* AnimState;
SkeletonPtr Skel;
Unit(Application* game,SceneManager* mSceneMgr,OgreNewt::World* m_World);
void Update();
bool frameStarted(const FrameEvent& evt);
void keyClicked(KeyEvent* e);
void keyPressed(KeyEvent* e) {}
void keyReleased(KeyEvent* e) {}
bool isSelected(){return selected;}
int getId(){return id;}
private:
void Init();
protected:
bool mouse0left, mouse1left;
int id;
bool hasLife;
bool showLifeBar;
CEGUI::StaticImage* lifeBar;
bool selected;
EventProcessor* mEventProcessor;
InputReader* mInputDevice;
};
#endif
Application.h:
codice:
#ifndef _APPLICATION_H_
#define _APPLICATION_H_
#pragma once
#include <Newton.h>
#include <OgreNewt.h>
#include "DeleteManager.h"
#include "ExampleApplication.h"
#include <string.h>
#include <fstream>
#include "Gui.h"
#include "Map.h"
#include "Unit.h"
#include "MovableUnit.h"
#define CAM_TRANSLATION_SPEED 200
using namespace std;
class AppFrameListener;
class GuiInterface;
class Map;
class MovableUnit;
class Application :
public ExampleApplication
{
public:
Application(void);
~Application(void);
OgreNewt::World* m_World;
const OgreNewt::MaterialID* mMatDefault;
const OgreNewt::MaterialID* mMatConveyor;
OgreNewt::MaterialPair* mMatPairDefaultConveyor;
Ogre::FrameListener* mNewtonListener;
AppFrameListener* mFrameListener;
void createFrameListener();
void createScene();
Ogre::SceneNode* msnCam;
RenderWindow* Window;
DeleteManager* deleteMgr;
float Time;
FrameEvent frameEvent;
//debug
ofstream out;
//
GuiInterface* gui;
Map* map;
MovableUnit* unit;
protected:
private:
};
#endif