generated from Persson-dev/Godot-Xmake
44 lines
802 B
C++
44 lines
802 B
C++
#pragma once
|
|
|
|
#include <godot_cpp/classes/animation_tree.hpp>
|
|
#include <godot_cpp/classes/character_body3d.hpp>
|
|
#include <godot_cpp/classes/node3d.hpp>
|
|
#include <blitz/common/Types.h>
|
|
|
|
namespace blitz {
|
|
|
|
class World;
|
|
|
|
class Player : public godot::CharacterBody3D {
|
|
|
|
GDCLASS(Player, godot::CharacterBody3D);
|
|
|
|
protected:
|
|
static void _bind_methods();
|
|
|
|
public:
|
|
Player();
|
|
~Player();
|
|
|
|
void _ready();
|
|
virtual void _physics_process(float delta);
|
|
void animate(float delta);
|
|
|
|
godot::Vector3 GetCameraRotation() const;
|
|
void SetCameraRotation(const godot::Vector3& a_Rotation);
|
|
|
|
PlayerID GetId() const {
|
|
return m_PeerId;
|
|
}
|
|
|
|
protected:
|
|
godot::Node3D* m_Mesh;
|
|
godot::AnimationTree* m_AnimationTree;
|
|
|
|
godot::Vector3 m_SnapVector;
|
|
PeerID m_PeerId;
|
|
|
|
friend class World;
|
|
};
|
|
} // namespace blitz
|