feely_pona/feely_pona_entity.h
2023-10-08 18:02:10 +11:00

144 lines
3.0 KiB
C

#if defined(__clang__)
#pragma once
#include "feely_pona_unity.h"
#endif
enum FP_EntityType
{
FP_EntityType_Nil,
FP_EntityType_AirportTerry,
FP_EntityType_AirportTerryPlane,
FP_EntityType_Catfish,
FP_EntityType_ChurchTerry,
FP_EntityType_Clinger,
FP_EntityType_ClubTerry,
FP_EntityType_Heart,
FP_EntityType_KennelTerry,
FP_EntityType_Map,
FP_EntityType_MerchantGraveyard,
FP_EntityType_MerchantGym,
FP_EntityType_MerchantPhoneCompany,
FP_EntityType_MerchantTerry,
FP_EntityType_MobSpawner,
FP_EntityType_PortalMonkey,
FP_EntityType_Smoochie,
FP_EntityType_Terry,
FP_EntityType_PhoneMessageProjectile,
FP_EntityType_Count,
};
enum FP_EntityTerryState
{
FP_EntityTerryState_Idle,
FP_EntityTerryState_Attack,
FP_EntityTerryState_RangeAttack,
FP_EntityTerryState_Run,
FP_EntityTerryState_Dash,
FP_EntityTerryState_DeadGhost,
};
enum FP_EntityMobSpawnerState
{
FP_EntityMobSpawnerState_Idle,
FP_EntityMobSpawnerState_Shutdown,
};
enum FP_EntitySmoochieState
{
FP_EntitySmoochieState_Idle,
FP_EntitySmoochieState_Attack,
FP_EntitySmoochieState_HurtSide,
FP_EntitySmoochieState_Death,
FP_EntitySmoochieState_Run,
};
enum FP_EntityCatfishState
{
FP_EntityCatfishState_Idle,
FP_EntityCatfishState_Attack,
FP_EntityCatfishState_Death,
FP_EntityCatfishState_Run,
};
enum FP_EntityClingerState
{
FP_EntityClingerState_Idle,
FP_EntityClingerState_Attack,
FP_EntityClingerState_Death,
FP_EntityClingerState_Run,
};
enum FP_EntityMerchantTerryState
{
FP_EntityMerchantTerryState_Idle,
};
enum FP_EntityMerchantGymState
{
FP_EntityMerchantGymState_Idle,
};
enum FP_EntityMerchantPhoneCompanyState
{
FP_EntityMerchantPhoneCompanyState_Idle,
};
enum FP_EntityMerchantGraveyardState
{
FP_EntityMerchantGraveyardState_Idle,
};
enum FP_EntityClubTerryState
{
FP_EntityClubTerryState_Idle,
FP_EntityClubTerryState_PartyTime,
};
enum FP_EntityAirportTerryState
{
FP_EntityAirportTerryState_Idle,
FP_EntityAirportTerryState_FlyPassenger,
};
enum FP_EntityAirportTerryPlaneState
{
FP_EntityAirportTerryPlaneState_Idle,
FP_EntityAirportTerryPlaneState_FlyPassenger,
};
enum FP_EntityChurchTerryState
{
FP_EntityChurchTerryState_Idle,
FP_EntityChurchTerryState_ConvertPatron,
};
enum FP_EntityKennelTerryState
{
FP_EntityKennelTerryState_Idle,
};
enum FP_EntityMapState
{
FP_EntityMapState_Idle,
};
enum FP_EntityHeartState
{
FP_EntityHeartState_Idle,
};
struct FP_EntityRenderData
{
FP_Meters height;
TELY_AssetFlip flip;
Dqn_String8 anim_name;
TELY_AssetSpriteSheet *sheet;
Dqn_Rect sheet_rect;
Dqn_V2 render_size;
TELY_AssetAnimatedSprite sprite;
};
Dqn_usize const FP_TERRY_MOBILE_DATA_PER_RANGE_ATTACK = DQN_KILOBYTES(5);
uint16_t const FP_TERRY_DASH_STAMINA_COST = 33;
uint16_t const FP_DEFAULT_DAMAGE = 30;