feely_pona/feely_pona.h

179 lines
8.5 KiB
C

#if defined(_CLANGD)
#pragma once
#include "feely_pona_unity.h"
#endif
enum FP_ProfileZone
{
FP_ProfileZone_FPUpdate = TELY_ProfileZone_Count,
FP_ProfileZone_FPUpdate_EntityLoop,
FP_ProfileZone_FPUpdate_PathFinding,
FP_ProfileZone_FPUpdate_AStar,
FP_ProfileZone_FPUpdate_AStarEnumerateCollidables,
FP_ProfileZone_FPUpdate_AStarExpand,
FP_ProfileZone_FPUpdate_AStarExploreNeighbours,
FP_ProfileZone_FPUpdate_Attacks,
FP_ProfileZone_FPRender,
};
struct FP_Meters
{
Dqn_f32 meters;
};
struct FP_GlobalAnimations
{
Dqn_Str8 airport_terry = DQN_STR8("airport_terry");
Dqn_Str8 airport_terry_plane = DQN_STR8("airport_terry_plane");
Dqn_Str8 catfish_attack_down = DQN_STR8("catfish_attack_down");
Dqn_Str8 catfish_attack_side = DQN_STR8("catfish_attack_side");
Dqn_Str8 catfish_attack_up = DQN_STR8("catfish_attack_up");
Dqn_Str8 catfish_death = DQN_STR8("catfish_death");
Dqn_Str8 catfish_walk_up = DQN_STR8("catfish_walk_up");
Dqn_Str8 catfish_walk_side = DQN_STR8("catfish_walk_side");
Dqn_Str8 catfish_walk_down = DQN_STR8("catfish_walk_down");
Dqn_Str8 clinger_attack_down = DQN_STR8("clinger_attack_down");
Dqn_Str8 clinger_attack_side = DQN_STR8("clinger_attack_side");
Dqn_Str8 clinger_attack_up = DQN_STR8("clinger_attack_up");
Dqn_Str8 clinger_death = DQN_STR8("clinger_death");
Dqn_Str8 clinger_walk_up = DQN_STR8("clinger_walk_up");
Dqn_Str8 clinger_walk_down = DQN_STR8("clinger_walk_down");
Dqn_Str8 church_terry_alive = DQN_STR8("church_terry_alive");
Dqn_Str8 church_terry_dark = DQN_STR8("church_terry_dark");
Dqn_Str8 club_terry_alive = DQN_STR8("club_terry_alive");
Dqn_Str8 club_terry_dark = DQN_STR8("club_terry_dark");
Dqn_Str8 end_screen = DQN_STR8("end_screen");
Dqn_Str8 heart = DQN_STR8("heart");
Dqn_Str8 heart_bleed = DQN_STR8("heart_bleed");
Dqn_Str8 icon_attack = DQN_STR8("icon_attack");
Dqn_Str8 icon_health = DQN_STR8("icon_health");
Dqn_Str8 icon_money = DQN_STR8("icon_money");
Dqn_Str8 icon_phone = DQN_STR8("icon_phone");
Dqn_Str8 icon_stamina = DQN_STR8("icon_stamina");
Dqn_Str8 intro_screen_arrows = DQN_STR8("intro_screen_arrows");
Dqn_Str8 intro_screen_subtitle = DQN_STR8("intro_screen_subtitle");
Dqn_Str8 intro_screen_terry = DQN_STR8("intro_screen_terry");
Dqn_Str8 intro_screen_title = DQN_STR8("intro_screen_title");
Dqn_Str8 intro_screen_perry_joins_the_fight = DQN_STR8("intro_screen_perry_joins_the_fight");
Dqn_Str8 kennel_terry = DQN_STR8("kennel_terry");
Dqn_Str8 map = DQN_STR8("map");
Dqn_Str8 map_billboard_attack = DQN_STR8("map_billboard_attack");
Dqn_Str8 map_billboard_dash = DQN_STR8("map_billboard_dash");
Dqn_Str8 map_billboard_monkey = DQN_STR8("map_billboard_monkey");
Dqn_Str8 map_billboard_range_attack = DQN_STR8("map_billboard_range_attack");
Dqn_Str8 map_billboard_strafe = DQN_STR8("map_billboard_strafe");
Dqn_Str8 map_billboard_build = DQN_STR8("map_billboard_build");
Dqn_Str8 map_police = DQN_STR8("map_police");
Dqn_Str8 merchant_button_a = DQN_STR8("merchant_button_a");
Dqn_Str8 merchant_button_b = DQN_STR8("merchant_button_b");
Dqn_Str8 merchant_button_x = DQN_STR8("merchant_button_x");
Dqn_Str8 merchant_button_y = DQN_STR8("merchant_button_y");
Dqn_Str8 merchant_graveyard = DQN_STR8("merchant_graveyard");
Dqn_Str8 merchant_graveyard_menu = DQN_STR8("merchant_graveyard_menu");
Dqn_Str8 merchant_gym = DQN_STR8("merchant_gym");
Dqn_Str8 merchant_gym_menu = DQN_STR8("merchant_gym_menu");
Dqn_Str8 merchant_phone_company = DQN_STR8("merchant_phone_company");
Dqn_Str8 merchant_phone_company_menu = DQN_STR8("merchant_phone_company_menu");
Dqn_Str8 merchant_terry = DQN_STR8("merchant_terry");
Dqn_Str8 merchant_terry_menu = DQN_STR8("merchant_terry_menu");
Dqn_Str8 particle_church_halo = DQN_STR8("particle_church_halo");
Dqn_Str8 particle_church_cross = DQN_STR8("particle_church_cross");
Dqn_Str8 particle_drunk = DQN_STR8("particle_drunk");
Dqn_Str8 particle_drunk_bottle = DQN_STR8("particle_drunk_bottle");
Dqn_Str8 particle_drunk_martini = DQN_STR8("particle_drunk_martini");
Dqn_Str8 particle_heart = DQN_STR8("particle_heart");
Dqn_Str8 particle_hit_1 = DQN_STR8("particle_hit_1");
Dqn_Str8 particle_hit_2 = DQN_STR8("particle_hit_2");
Dqn_Str8 particle_hit_3 = DQN_STR8("particle_hit_3");
Dqn_Str8 particle_purchase = DQN_STR8("particle_purchase");
Dqn_Str8 portal = DQN_STR8("portal");
Dqn_Str8 portal_break = DQN_STR8("portal_break");
Dqn_Str8 portal_monk = DQN_STR8("portal_monk");
Dqn_Str8 shadow_long_circle = DQN_STR8("shadow_long_circle");
Dqn_Str8 shadow_tight_circle = DQN_STR8("shadow_tight_circle");
Dqn_Str8 shrubbery_bush_1 = DQN_STR8("shrubbery_bush_1");
Dqn_Str8 shrubbery_bush_2 = DQN_STR8("shrubbery_bush_2");
Dqn_Str8 shrubbery_island_1 = DQN_STR8("shrubbery_island_1");
Dqn_Str8 shrubbery_island_2 = DQN_STR8("shrubbery_island_2");
Dqn_Str8 shrubbery_island_3 = DQN_STR8("shrubbery_island_3");
Dqn_Str8 smoochie_walk_up = DQN_STR8("smoochie_walk_up");
Dqn_Str8 smoochie_walk_down = DQN_STR8("smoochie_walk_down");
Dqn_Str8 smoochie_walk_left = DQN_STR8("smoochie_walk_left");
Dqn_Str8 smoochie_walk_right = DQN_STR8("smoochie_walk_right");
Dqn_Str8 smoochie_attack_down = DQN_STR8("smoochie_attack_down");
Dqn_Str8 smoochie_hurt_side = DQN_STR8("smoochie_hurt_side");
Dqn_Str8 smoochie_attack_heart = DQN_STR8("smoochie_attack_heart");
Dqn_Str8 smoochie_death = DQN_STR8("smoochie_death");
Dqn_Str8 terry_attack_up = DQN_STR8("terry_attack_up");
Dqn_Str8 terry_attack_side = DQN_STR8("terry_attack_side");
Dqn_Str8 terry_attack_down = DQN_STR8("terry_attack_down");
Dqn_Str8 terry_attack_phone_up = DQN_STR8("terry_attack_phone_up");
Dqn_Str8 terry_attack_phone_side = DQN_STR8("terry_attack_phone_side");
Dqn_Str8 terry_attack_phone_down = DQN_STR8("terry_attack_phone_down");
Dqn_Str8 terry_attack_phone_message = DQN_STR8("terry_attack_phone_message");
Dqn_Str8 terry_death = DQN_STR8("terry_death");
Dqn_Str8 terry_pat_dog = DQN_STR8("terry_pat_dog");
Dqn_Str8 terry_ghost = DQN_STR8("terry_ghost");
Dqn_Str8 terry_walk_idle = DQN_STR8("terry_walk_idle");
Dqn_Str8 terry_walk_up = DQN_STR8("terry_walk_up");
Dqn_Str8 terry_walk_down = DQN_STR8("terry_walk_down");
Dqn_Str8 terry_walk_left = DQN_STR8("terry_walk_left");
Dqn_Str8 terry_walk_right = DQN_STR8("terry_walk_right");
Dqn_Str8 perry_attack_up = DQN_STR8("perry_attack_up");
Dqn_Str8 perry_attack_side = DQN_STR8("perry_attack_side");
Dqn_Str8 perry_attack_down = DQN_STR8("perry_attack_down");
Dqn_Str8 perry_attack_phone_up = DQN_STR8("perry_attack_phone_up");
Dqn_Str8 perry_attack_phone_side = DQN_STR8("perry_attack_phone_side");
Dqn_Str8 perry_attack_phone_down = DQN_STR8("perry_attack_phone_down");
Dqn_Str8 perry_death = DQN_STR8("perry_death");
Dqn_Str8 perry_pat_dog = DQN_STR8("perry_pat_dog");
Dqn_Str8 perry_ghost = DQN_STR8("perry_ghost");
Dqn_Str8 perry_walk_idle = DQN_STR8("perry_walk_idle");
Dqn_Str8 perry_walk_up = DQN_STR8("perry_walk_up");
Dqn_Str8 perry_walk_down = DQN_STR8("perry_walk_down");
Dqn_Str8 perry_walk_right = DQN_STR8("perry_walk_right");
}
g_anim_names;
struct FP_ParticleDescriptor
{
Dqn_Str8 anim_name;
Dqn_V2 pos;
Dqn_V2 velocity;
Dqn_V2 velocity_variance;
Dqn_V4 colour_begin;
Dqn_V4 colour_end;
Dqn_usize duration_ms;
};
struct FP_ListenForNewPlayerResult
{
bool yes;
bool tutorial_requested;
};
#if defined(DQN_PLATFORM_EMSCRIPTEN)
#define FP_DEVELOPER_MODE 0
#else
#define FP_DEVELOPER_MODE 1
#endif