Files
2026-02-11 13:20:47 +01:00

38 lines
899 B
C

#ifndef DEMON_H
#define DEMON_H
#include "villager.h"
struct villager;
enum demon_category
{
PARASITE = 1,
THREAT,
NIGHTMARE,
CALAMITY,
TOM_NOOK
};
struct demon {
enum demon_category category;
char name[50];
int damage;
enum distance range;
int cur_HP;
int HP_max;
};
struct demon *init_demon(enum demon_category category, char name[50], int HP_max, int damage, enum distance range);
void pp_demon(struct demon *demon);
void destroy_demon(struct demon *demon);
void basic_attack(struct demon *demon, struct villager *target);
void draining_attack(struct demon *demon, struct villager *target);
void heavy_attack(struct demon *demon, struct villager *target);
void chase(struct demon *demon, struct villager *villager);
void update_demon_hp(struct demon *demon, int amount);
void demon_action(struct demon *demon, struct villager *villager);
#endif