]> git.lizzy.rs Git - dragonblocks3d.git/blob - src/dragonblocks/player.hpp
Added player, refactored mesh code
[dragonblocks3d.git] / src / dragonblocks / player.hpp
1 #pragma once
2
3 #include <vector>
4 #include "gl.hpp"
5
6 namespace dragonblocks
7 {       
8         class Camera;
9         class InputHandler;
10         class Map;
11         
12         class Player
13         {
14                 public:
15                 static Player *createLocalplayer(Camera *, InputHandler *, Map *);
16
17                 glm::vec3 pos;
18                 bool pitch_move;
19                 double yaw, pitch;
20                 double speed;
21                 
22                 private:
23                 static Player *localplayer;
24                 
25                 static void staticMouseHandler(double, double, double);
26                 static void staticKeyHandler(double, std::set<int>);
27
28                 Camera *camera;
29                 InputHandler *input_handler;
30                 Map *map;
31                 
32                 void mouseHandler(double, double, double);
33                 void keyHandler(double, std::set<int>);
34                 void loadChunks();
35                 
36                 Player(Camera *, InputHandler *, Map *);
37         };
38 }