147 lines
6.1 KiB
C
147 lines
6.1 KiB
C
#include "raylib.h"
|
|
#include "raymath.h"
|
|
|
|
#ifndef RAMENG_H
|
|
#define RAMENG_H
|
|
|
|
//player info-stats-limbs-data-Inv
|
|
//player data for storage ⌄⌄
|
|
typedef struct Player {
|
|
int x; //Player X Pos
|
|
int y; //Player y Pos
|
|
int width; //Player Width
|
|
int height; //player height
|
|
} Player;
|
|
|
|
typedef struct PlayerStat {
|
|
//--
|
|
//player basic stats
|
|
//--
|
|
float Health; //Player Health stat
|
|
int Attack; //Player Attack stat
|
|
int Defense; //Player defense stat
|
|
} PlayerStat;
|
|
|
|
typedef float Moral; //player Moral stat/sanity
|
|
typedef int Level; //Player Leveling stats / Player Level stat
|
|
typedef float XP; //points earned towards level // Player XP total
|
|
typedef float Money; //Amount of money
|
|
|
|
typedef struct PlayerData {
|
|
//player movement
|
|
float Speed; //Player Speed Stat
|
|
float SprintSpeed; //Speed the player sprints duh
|
|
float CrawlSpeed; //Speed while crawling
|
|
float CrouchSpeed; //Speed while crouching
|
|
float JumpHeight; //Player jump height
|
|
} PlayerData;
|
|
|
|
//--
|
|
// Player status effects
|
|
//--
|
|
typedef bool IsStanding; //is the player standing
|
|
typedef bool IsCrouching; //is the player crouched
|
|
typedef bool IsCrawling; //is the player crawling
|
|
typedef bool IsWet; //is the player Wet
|
|
typedef bool IsDry; //Is the player dry
|
|
typedef bool IsBurning; //is the player burning
|
|
typedef bool Isinteracting; //is the player interacting with something
|
|
typedef bool IsBleeding; //is the player bleeding?
|
|
typedef bool IsBagOpen; //is the bag/inv open
|
|
//--
|
|
//Bag
|
|
//--
|
|
typedef int BagSlotCount; //amount of slots in bag/inv
|
|
|
|
typedef struct ItemID {
|
|
int IDNUMBER; //id number for an item
|
|
int ID_SLOT; //which number slot this item is in IE: ItemSlot 1 = ID_SLOT
|
|
} ItemID;
|
|
typedef int ItemSlot; //the slot of which an item is under
|
|
|
|
|
|
typedef float BurnDamage; //Amount of damage burning inflicts
|
|
typedef int BurnTime; //how long burning will last
|
|
typedef int BurnTick;
|
|
typedef bool OnFire;
|
|
|
|
|
|
//--
|
|
typedef float BleedDamage; //Damage inflicted when bleeding
|
|
typedef int BleedTick; //how long bleeding will last
|
|
//--
|
|
typedef float FreezeDamage; //Freezing damage
|
|
typedef int FreezeTime; //how long till you freeze
|
|
|
|
typedef struct PlayerLimb {
|
|
float HeadHP; //player Head limb health
|
|
float TorsoHP; //Player Torso Health
|
|
float ArmRightHP; //Player Arm Right Health
|
|
float ArmLeftHP; //Player Arm Left Health
|
|
float PelvisHP; //Player Pelvis Health
|
|
float LegLeftHP; //Player Leg Left health
|
|
float LegRightHP; //Player Leg Right Health
|
|
} PlayerLimb;
|
|
//player data for storage ^^
|
|
//-----------------------------------------------------------------------------------
|
|
//Enemy data
|
|
typedef struct EnemyPosition {
|
|
int x; //Enemy x pos
|
|
int y; //Enemy y Pos
|
|
int width; //Enemy width
|
|
int height; //Enemy Height;
|
|
} EnemyPosition;
|
|
|
|
typedef struct EnemyStat {
|
|
float Health; //amount of health enemy has / health stat / hp
|
|
float Attack; //Amount of damage the enemy does
|
|
float Defense; //Amount of damage resisted
|
|
float Speed; //Enemy movement speed
|
|
float XpDropped; //Xp dropped on death
|
|
} EnemyStat;
|
|
|
|
typedef bool CanBurn; //Can the enemy burn player or objects
|
|
typedef bool CanBleed; //can the enemy inflict bleeding
|
|
typedef bool CanWet; //Can the enemy make things wet...
|
|
typedef bool IsRendered; //is enemy rendered
|
|
typedef bool IsHit; //is enemy hit
|
|
|
|
//-----------------------------------------------------------------
|
|
//Define states
|
|
//-----------------------------------------------------------------
|
|
|
|
|
|
typedef bool IsLiquid; //is object a liquid
|
|
typedef bool IsSolid; //is object a solid
|
|
typedef bool IsAir; //is object air/can phase through
|
|
typedef bool IsHot; //is object able inflict burn damage
|
|
typedef bool IsCold; //is Object cold
|
|
typedef bool IsWet; //is object wet
|
|
typedef bool IsDry; //is object dry, for what ever purpose
|
|
typedef bool IsSharp; //is object able to inflict bleed
|
|
typedef bool IsMoving; //is object moving
|
|
//---------------------------------------------------------------------------------
|
|
//Npc interactions
|
|
//---------------------------------------------------------------------------------
|
|
typedef struct Shop {
|
|
bool IsShop; //is it a shop?
|
|
bool IsShopOpen; //is the shop open?
|
|
//set your own items idk anymore
|
|
} Shop;
|
|
//--------------------------------------------------------------------------------
|
|
//object interactions
|
|
//--------------------------------------------------------------------------------
|
|
typedef bool IsObjectHit; //is object hit
|
|
typedef bool IsObjectDestroyed; //is object destroyed
|
|
typedef int ObjectHealth; //Object health, breaks on 0
|
|
typedef bool IsZonechange; //is object changing zone when hit/interacted
|
|
typedef bool CanMove; //can you move the object
|
|
typedef bool CanInteractWithObjects; //can the object interact with other objects
|
|
typedef bool IsRendered; //is object rendered
|
|
|
|
typedef struct ObjectStat {
|
|
float FallDamage; //basiclly how hard will it be if you fall on it
|
|
float Bounce; //how bouncy / boing boing :3
|
|
bool CanCrush; //can it crush player
|
|
} ObjectStat;
|
|
#endif //RAMENG
|