16#define MAX_ABILITY_LIMIT 20
17#define MAX_GEAR_LIMIT 20
18#define MAX_POTION_LIMIT 20
27 character_type_t type;
28 char name[MAX_NAME_LENGTH];
43 potion_t* potion_inventory[MAX_POTION_LIMIT];
46 gear_t* gear_inventory[MAX_GEAR_LIMIT];
49 gear_t* equipment[MAX_SLOT];
91void set_stats(
stats_t* stats,
int strength,
int intelligence,
int dexterity,
int constitution);
Exposes a forward struct for abilites.
void add_gear(character_t *character, gear_t *gear)
Adds gear to a character's inventory.
void equip_gear(character_t *character, gear_t *gear)
Equips a gear item to a character.
void update_character_resources(resources_t *current_resources, resources_t *max_resources, stats_t *base_stats)
Updates the character's resources based on their stats.
void set_character_stats(character_t *character, int strength, int intelligence, int dexterity, int constitution)
Sets the stats for a character.
void set_stats(stats_t *stats, int strength, int intelligence, int dexterity, int constitution)
Sets the stats for a character.
void add_potion(character_t *character, potion_t *potion)
Adds a potion to a character's inventory.
bool add_equipped_gear(character_t *character, gear_t *gear)
Adds an equipped gear in a specific slot of a character without updating stats and abilities.
void free_character(memory_pool_t *memory_pool, character_t *character)
Frees the memory allocated for a character.
void set_character_dmg_modifier(character_t *character, damage_type_t type, int value)
Sets the damage modifier for a character.
character_t * init_character(memory_pool_t *memory_pool, character_type_t type, const char *name)
Initializes a new character.
void reset_player_stats(character_t *player)
Resets the player stats to their base values.
void remove_gear(character_t *character, gear_t *gear)
Removes a gear item from a character's inventory.
void remove_potion(character_t *character, potion_t *potion)
Removes a potion from a character's inventory.
void set_skill_points(character_t *character, int skill_points)
Sets the skill points for a character.
void reset_current_stats(character_t *character)
Resets the current stats of a character to their base values.
void remove_equipped_gear(character_t *character, gear_slot_t slot)
Removes the gear equipped in a specific slot of a character.
void add_ability(character_t *character, ability_t *ability)
Adds an ability to a character.
void set_xp_reward(character_t *character, int xp_reward)
Sets the XP reward for a character.
void unequip_gear(character_t *character, gear_slot_t slot)
Unequips a gear item from a character and adds it to the character's inventory.
void remove_ability(character_t *character, const ability_t *ability)
Removes an ability from a character.
void set_level(character_t *character, int level)
Sets the level for a character.
void set_initial_xp(character_t *character, int xp)
sets initial xp for a character
Defines common macros, types, and global variables for color schemes and utilities.
Exposes functions for working with damage.
Exposes functions for working with gear.
Exposes functions for working with the memory management.
Exposes functions for working with potions.
Exposes functions for working with stats.