Files
enter_the_fog/source_code/player_module/player/player.h
2026-03-26 14:46:39 -05:00

58 lines
1.4 KiB
C

#ifndef player_h
#define player_h
#include "chunk.h"
#include "inventory.h"
#include "raylib.h"
#include <stdbool.h>
#include <stdint.h>
struct world_struct;
typedef struct player_struct
{
Vector3 position;
Vector3 velocity;
float yaw;
float pitch;
float mouse_sensitivity;
Camera3D camera;
Vector3 corner_of_watched_block;
Vector3 block_being_watched;
float reach;
float breaking_block_progress;
bool should_highlight_block;
bool is_breaking_block;
bool has_entered_new_chunk;
float movement_speed;
struct chunk_position_struct occupied_chunks_position;
struct chunk_position_struct negative_borders;
struct chunk_position_struct positive_borders;
struct
{
bool below, above;
bool left, right;
bool front, back;
} is_making_contact_with;
uint8_t health;
uint8_t fortitude;
uint8_t selected_hotbar_slot;
struct chunk_struct* nearby_chunks[3][3][3];
struct inventory_struct inventory;
} player_struct;
uint8_t create_player(struct player_struct** player);
void destroy_player(struct player_struct** player);
void update_player_controller(struct player_struct *player);
void update_players_known_chunks(struct player_struct* player,
struct world_struct *world);
#endif