feely_pona/feely_pona_entity.h

158 lines
3.4 KiB
C
Raw Normal View History

#if defined(_CLANGD)
#pragma once
#include "feely_pona_unity.h"
2023-09-24 08:16:14 +00:00
#endif
enum FP_EntityType
{
FP_EntityType_Nil,
2023-10-04 12:50:31 +00:00
FP_EntityType_AirportTerry,
2023-10-07 09:31:01 +00:00
FP_EntityType_AirportTerryPlane,
2023-10-04 12:50:31 +00:00
FP_EntityType_Catfish,
FP_EntityType_ChurchTerry,
FP_EntityType_Clinger,
FP_EntityType_ClubTerry,
FP_EntityType_Heart,
FP_EntityType_KennelTerry,
2023-09-30 09:14:35 +00:00
FP_EntityType_Map,
2023-10-01 06:50:32 +00:00
FP_EntityType_MerchantGraveyard,
FP_EntityType_MerchantGym,
FP_EntityType_MerchantPhoneCompany,
2023-10-04 12:50:31 +00:00
FP_EntityType_MerchantTerry,
2023-10-07 14:29:50 +00:00
FP_EntityType_MobSpawner,
FP_EntityType_PortalMonkey,
2023-10-04 12:50:31 +00:00
FP_EntityType_Smoochie,
FP_EntityType_Terry,
2023-10-21 05:30:15 +00:00
FP_EntityType_Perry,
2023-10-05 10:10:50 +00:00
FP_EntityType_PhoneMessageProjectile,
FP_EntityType_Billboard,
2023-09-29 05:58:03 +00:00
FP_EntityType_Count,
2023-09-24 08:16:14 +00:00
};
enum FP_EntityTerryState
{
FP_EntityTerryState_Idle,
FP_EntityTerryState_Attack,
2023-10-05 10:10:50 +00:00
FP_EntityTerryState_RangeAttack,
2023-09-24 08:16:14 +00:00
FP_EntityTerryState_Run,
FP_EntityTerryState_Dash,
2023-10-08 07:02:10 +00:00
FP_EntityTerryState_DeadGhost,
2023-09-24 08:16:14 +00:00
};
2023-10-21 05:30:15 +00:00
typedef FP_EntityTerryState FP_EntityPerryState;
2023-09-24 08:16:14 +00:00
2023-10-07 14:29:50 +00:00
enum FP_EntityMobSpawnerState
{
FP_EntityMobSpawnerState_Idle,
FP_EntityMobSpawnerState_Shutdown,
};
2023-09-24 08:16:14 +00:00
enum FP_EntitySmoochieState
{
FP_EntitySmoochieState_Idle,
FP_EntitySmoochieState_Attack,
FP_EntitySmoochieState_HurtSide,
FP_EntitySmoochieState_Death,
2023-09-24 08:16:14 +00:00
FP_EntitySmoochieState_Run,
};
2023-10-04 12:50:31 +00:00
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,
};
2023-10-01 06:50:32 +00:00
enum FP_EntityMerchantTerryState
2023-09-24 08:16:14 +00:00
{
2023-10-01 06:50:32 +00:00
FP_EntityMerchantTerryState_Idle,
};
enum FP_EntityMerchantGymState
{
FP_EntityMerchantGymState_Idle,
};
enum FP_EntityMerchantPhoneCompanyState
{
FP_EntityMerchantPhoneCompanyState_Idle,
};
enum FP_EntityMerchantGraveyardState
{
FP_EntityMerchantGraveyardState_Idle,
2023-09-24 08:16:14 +00:00
};
2023-09-29 07:42:58 +00:00
enum FP_EntityClubTerryState
{
FP_EntityClubTerryState_Idle,
2023-09-30 06:51:59 +00:00
FP_EntityClubTerryState_PartyTime,
2023-09-29 07:42:58 +00:00
};
2023-09-30 09:14:35 +00:00
2023-10-04 12:50:31 +00:00
enum FP_EntityAirportTerryState
{
FP_EntityAirportTerryState_Idle,
FP_EntityAirportTerryState_FlyPassenger,
};
2023-10-07 09:31:01 +00:00
enum FP_EntityAirportTerryPlaneState
{
FP_EntityAirportTerryPlaneState_Idle,
FP_EntityAirportTerryPlaneState_FlyPassenger,
};
2023-10-04 12:50:31 +00:00
enum FP_EntityChurchTerryState
{
FP_EntityChurchTerryState_Idle,
FP_EntityChurchTerryState_ConvertPatron,
};
enum FP_EntityKennelTerryState
{
FP_EntityKennelTerryState_Idle,
};
2023-09-30 09:14:35 +00:00
enum FP_EntityMapState
{
FP_EntityMapState_Idle,
};
enum FP_EntityHeartState
{
FP_EntityHeartState_Idle,
};
2023-10-02 11:38:36 +00:00
enum FP_EntityBillboardState
{
FP_EntityBillboardState_Attack,
FP_EntityBillboardState_Dash,
FP_EntityBillboardState_Monkey,
FP_EntityBillboardState_RangeAttack,
FP_EntityBillboardState_Strafe,
2023-10-23 11:13:03 +00:00
FP_EntityBillboardState_Build,
};
2023-10-02 11:38:36 +00:00
struct FP_EntityRenderData
{
FP_Meters height;
TELY_AssetFlip flip;
2023-10-24 12:41:15 +00:00
Dqn_Str8 anim_name;
2023-10-02 11:38:36 +00:00
TELY_AssetSpriteSheet *sheet;
Dqn_Rect sheet_rect;
Dqn_V2 render_size;
TELY_AssetAnimatedSprite sprite;
2023-10-22 06:24:40 +00:00
Dqn_V2 offset;
2023-10-02 11:38:36 +00:00
};
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;