50 lines
1.4 KiB
C++
Executable File
50 lines
1.4 KiB
C++
Executable File
#ifndef PLAYER_H__
|
|
#define PLAYER_H__
|
|
#include "define.h"
|
|
#include "transformation.h"
|
|
#include "vertexbuffer.h"
|
|
#include "blockinfo.h"
|
|
struct Mob;
|
|
class Player{
|
|
public:
|
|
Player ( const Vector3f & position , float rotX = 0 , float rotY = 0);
|
|
void TurnCamera(float x, float y);
|
|
void SetPosition(Vector3f delta);
|
|
Vector3f SimulateMove ( bool front , bool back , bool left , bool right , bool run , float elapsedTime );
|
|
float SimulateJump( bool jump, bool& InJump, float& deltay, bool OnGround, float& jumpsize);
|
|
void ApplyTransformation ( Transformation & transformation ) const;
|
|
Vector3f Position();
|
|
void Damage(Mob& mob);
|
|
float Health();
|
|
void setHealth(float health);
|
|
private:
|
|
float m_rotx = 0;
|
|
float m_roty = 0;
|
|
float m_health;
|
|
float m_damage = 50.f;
|
|
Vector3f m_pos;
|
|
};
|
|
|
|
class Mob{
|
|
public:
|
|
Mob();
|
|
Mob(const Vector3f & position, float Damage, int Armour);
|
|
void SetPosition(Vector3f delta);
|
|
void Move(Player p1);
|
|
Vector3f Position();
|
|
void Damage(Player& p1);
|
|
void RenderMob();
|
|
float GetDamage();
|
|
float Health();
|
|
void setHealth(float health);
|
|
int GetArmour();
|
|
bool isNull();
|
|
bool isEqual(Mob mob);
|
|
private:
|
|
float m_health;
|
|
int m_armour;
|
|
float m_damage;
|
|
Vector3f m_pos;
|
|
};
|
|
|
|
#endif |