2013-11-28 08:33:29 +01:00
|
|
|
//////////////////////////////////////////////////
|
|
|
|
//Created by Erik and Linda of the GameLogic team
|
|
|
|
//////////////////////////////////////////////////
|
2013-11-19 11:07:14 +01:00
|
|
|
#ifndef PLAYER_H
|
|
|
|
#define PLAYER_H
|
2013-12-10 09:57:05 +01:00
|
|
|
#include "GameLogicStates.h"
|
2013-12-21 17:37:30 +01:00
|
|
|
#include "GameLogicDef.h"
|
2013-12-10 11:17:25 +01:00
|
|
|
#include "OysterMath.h"
|
2013-12-12 09:36:14 +01:00
|
|
|
#include "Object.h"
|
2013-12-21 17:37:30 +01:00
|
|
|
|
2013-11-19 11:07:14 +01:00
|
|
|
|
|
|
|
namespace GameLogic
|
|
|
|
{
|
2013-12-14 22:04:42 +01:00
|
|
|
class DANBIAS_GAMELOGIC_DLL Player : public Object
|
2013-11-19 11:07:14 +01:00
|
|
|
{
|
|
|
|
|
|
|
|
public:
|
2013-12-05 11:50:39 +01:00
|
|
|
Player(void);
|
2013-11-19 11:07:14 +01:00
|
|
|
~Player(void);
|
2013-12-18 08:30:58 +01:00
|
|
|
|
|
|
|
/********************************************************
|
|
|
|
* Moves the player based on input
|
|
|
|
* @param movement: enum value on what kind of action is to be taken
|
|
|
|
********************************************************/
|
2013-12-10 09:57:05 +01:00
|
|
|
void Move(const PLAYER_MOVEMENT &movement);
|
2013-12-18 08:30:58 +01:00
|
|
|
|
2013-12-20 09:42:02 +01:00
|
|
|
void MoveForward();
|
|
|
|
void MoveBackwards();
|
|
|
|
void MoveRight();
|
|
|
|
void MoveLeft();
|
|
|
|
|
2013-12-18 08:30:58 +01:00
|
|
|
/********************************************************
|
|
|
|
* Uses the weapon based on input
|
|
|
|
* @param fireInput: enum value on what kind of action is to be taken
|
|
|
|
********************************************************/
|
2013-12-12 09:36:14 +01:00
|
|
|
void UseWeapon(const WEAPON_FIRE &fireInput);
|
2013-12-10 09:57:05 +01:00
|
|
|
|
2013-12-18 08:30:58 +01:00
|
|
|
/********************************************************
|
|
|
|
* Respawns the player, this resets several stats and settings on the player
|
|
|
|
* @param spawnPoint: the coordinate in the world where the player is to spawn
|
|
|
|
********************************************************/
|
|
|
|
void Respawn(Oyster::Math::Float3 spawnPoint);
|
|
|
|
|
|
|
|
|
2013-12-10 09:57:05 +01:00
|
|
|
bool IsWalking();
|
|
|
|
bool IsJumping();
|
|
|
|
bool IsIdle();
|
|
|
|
|
2013-12-10 11:17:25 +01:00
|
|
|
Oyster::Math::Float3 GetPos();
|
2013-12-12 12:16:13 +01:00
|
|
|
Oyster::Math::Float3 GetLookDir();
|
2013-12-18 08:30:58 +01:00
|
|
|
int GetTeamID();
|
2013-12-10 09:57:05 +01:00
|
|
|
|
2013-12-12 12:16:13 +01:00
|
|
|
void DamageLife(int damage);
|
|
|
|
|
2013-12-18 08:30:58 +01:00
|
|
|
private:
|
|
|
|
|
|
|
|
void Jump();
|
2013-11-19 18:35:35 +01:00
|
|
|
private:
|
2013-12-05 11:50:39 +01:00
|
|
|
struct PrivateData;
|
|
|
|
PrivateData *myData;
|
2013-11-19 11:07:14 +01:00
|
|
|
};
|
|
|
|
}
|
|
|
|
#endif
|