mirror of
https://github.com/KartKrewDev/RingRacers.git
synced 2025-10-30 08:01:28 +00:00
Save your best GP stats across sessions.
- Saved into gamedata
- Deliniated per difficulty option
- Draw onto cupgrid in GP cup select
- Best grade
- Whether you've ever gotten the Emerald
- TODO: Always shows Chaos Emerald, will need updating when Super Emerald graphics are created
- Monitor status changes depending on recorded position
- 1st: Gold, shiny
- 2nd: Silver, shiny
- 3rd: Bronze, shiny
- 4th and downwards: Beige, barely different
- Wiped with G_ClearRecords
Also, to avoid circular dependencies:
- KARTSPEED/KARTGP constants moved from command.h to doomstat.h
- gp_rank_e enums moved from k_rank.h to doomstat.h
424 lines
7.5 KiB
C
424 lines
7.5 KiB
C
// SONIC ROBO BLAST 2
|
|
//-----------------------------------------------------------------------------
|
|
// Copyright (C) 2022 by Kart Krew.
|
|
//
|
|
// This program is free software distributed under the
|
|
// terms of the GNU General Public License, version 2.
|
|
// See the 'LICENSE' file for more details.
|
|
//-----------------------------------------------------------------------------
|
|
/// \file typedef.h
|
|
/// \brief Universally accessible type definitions. This
|
|
/// file exists so these types can be used anywhere
|
|
/// without needing to include specific headers.
|
|
|
|
#ifndef __TYPEDEF_H__
|
|
#define __TYPEDEF_H__
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
#define TYPEDEF2(struct_id, new_type) \
|
|
typedef struct struct_id new_type
|
|
|
|
#define TYPEDEF(id) TYPEDEF2 (id, id)
|
|
|
|
// am_map.h
|
|
TYPEDEF (fpoint_t);
|
|
TYPEDEF (fline_t);
|
|
TYPEDEF (minigen_t);
|
|
|
|
// command.h
|
|
TYPEDEF (vsbuf_t);
|
|
TYPEDEF (CV_PossibleValue_t);
|
|
TYPEDEF (consvar_t);
|
|
|
|
// d_netcmd.h
|
|
TYPEDEF (changeteam_packet_t);
|
|
TYPEDEF (changeteam_value_t);
|
|
TYPEDEF (scheduleTask_t);
|
|
|
|
// discord.h
|
|
TYPEDEF (discordRequest_t);
|
|
|
|
// d_player.h
|
|
TYPEDEF (respawnvars_t);
|
|
TYPEDEF (botvars_t);
|
|
TYPEDEF (roundconditions_t);
|
|
TYPEDEF (skybox_t);
|
|
TYPEDEF (itemroulette_t);
|
|
TYPEDEF (altview_t);
|
|
TYPEDEF (player_t);
|
|
|
|
// d_clisrv.h
|
|
TYPEDEF (clientcmd_pak);
|
|
TYPEDEF (client2cmd_pak);
|
|
TYPEDEF (client3cmd_pak);
|
|
TYPEDEF (client4cmd_pak);
|
|
TYPEDEF (servertics_pak);
|
|
TYPEDEF (serverconfig_pak);
|
|
TYPEDEF (filetx_pak);
|
|
TYPEDEF (fileacksegment_t);
|
|
TYPEDEF (fileack_pak);
|
|
TYPEDEF (clientconfig_pak);
|
|
TYPEDEF (serverinfo_pak);
|
|
TYPEDEF (serverrefuse_pak);
|
|
TYPEDEF (askinfo_pak);
|
|
TYPEDEF (msaskinfo_pak);
|
|
TYPEDEF (plrinfo);
|
|
TYPEDEF (plrconfig);
|
|
TYPEDEF (filesneededconfig_pak);
|
|
TYPEDEF (doomdata_t);
|
|
TYPEDEF (serverelem_t);
|
|
TYPEDEF (rewind_t);
|
|
|
|
// d_event.h
|
|
TYPEDEF (event_t);
|
|
|
|
// d_netfil.h
|
|
TYPEDEF (fileneeded_t);
|
|
TYPEDEF (HTTP_login);
|
|
TYPEDEF (luafiletransfer_t);
|
|
|
|
// d_think.h
|
|
TYPEDEF (thinker_t);
|
|
|
|
// d_ticcmd.h
|
|
TYPEDEF (ticcmd_t);
|
|
|
|
// deh_tables.h
|
|
TYPEDEF (actionpointer_t);
|
|
|
|
// dehacked.h
|
|
TYPEDEF (MYFILE);
|
|
|
|
// domdata.h
|
|
TYPEDEF (mapvertex_t);
|
|
TYPEDEF (mapsidedef_t);
|
|
TYPEDEF (maplinedef_t);
|
|
TYPEDEF (mapsector_t);
|
|
TYPEDEF (mapsubsector_t);
|
|
TYPEDEF (mapseg_t);
|
|
TYPEDEF (mapnode_t);
|
|
TYPEDEF (mapthing_t);
|
|
|
|
// doomdef.h
|
|
TYPEDEF (skincolor_t);
|
|
|
|
// doomstat.h
|
|
TYPEDEF (precipprops_t);
|
|
TYPEDEF (recorddata_t);
|
|
TYPEDEF (cupwindata_t);
|
|
TYPEDEF (scene_t);
|
|
TYPEDEF (cutscene_t);
|
|
TYPEDEF (textpage_t);
|
|
TYPEDEF (textprompt_t);
|
|
TYPEDEF (mappoint_t);
|
|
TYPEDEF (customoption_t);
|
|
TYPEDEF (gametype_t);
|
|
TYPEDEF (staffbrief_t);
|
|
TYPEDEF (mapheader_t);
|
|
TYPEDEF (tolinfo_t);
|
|
TYPEDEF (cupheader_t);
|
|
|
|
// font.h
|
|
TYPEDEF (font_t);
|
|
|
|
// g_demo.h
|
|
TYPEDEF (democharlist_t);
|
|
TYPEDEF (menudemo_t);
|
|
TYPEDEF (demoghost);
|
|
|
|
// g_game.h
|
|
TYPEDEF (mapsearchfreq_t);
|
|
|
|
// hu_stuff.h
|
|
TYPEDEF (playersort_t);
|
|
|
|
// i_joy.h
|
|
TYPEDEF (JoyType_t);
|
|
|
|
// i_net.h
|
|
TYPEDEF (doomcom_t);
|
|
TYPEDEF (holepunch_t);
|
|
TYPEDEF (bannednode_t);
|
|
|
|
// i_system.h
|
|
TYPEDEF (JoyFF_t);
|
|
TYPEDEF (CPUInfoFlags);
|
|
|
|
// i_time.h
|
|
TYPEDEF (timestate_t);
|
|
|
|
// info.h
|
|
TYPEDEF (state_t);
|
|
TYPEDEF (mobjinfo_t);
|
|
|
|
// k_bheap.h
|
|
TYPEDEF (bheapitem_t);
|
|
TYPEDEF (bheap_t);
|
|
|
|
// k_boss.h
|
|
TYPEDEF (weakspot_t);
|
|
|
|
// k_bot.h
|
|
TYPEDEF (botprediction_t);
|
|
|
|
// k_brightmap.h
|
|
TYPEDEF (brightmapStorage_t);
|
|
|
|
// k_follower.h
|
|
TYPEDEF (follower_t);
|
|
TYPEDEF (followercategory_t);
|
|
|
|
// k_hud.h
|
|
TYPEDEF (trackingResult_t);
|
|
|
|
// k_menu.h
|
|
TYPEDEF (menucolor_t);
|
|
TYPEDEF (menuitem_t);
|
|
TYPEDEF (menu_t);
|
|
TYPEDEF (menucmd_t);
|
|
TYPEDEF (setup_player_t);
|
|
TYPEDEF (modedesc_t);
|
|
|
|
// k_pathfind.h
|
|
TYPEDEF (pathfindnode_t);
|
|
TYPEDEF (path_t);
|
|
TYPEDEF (pathfindsetup_t);
|
|
|
|
// k_profiles.h
|
|
TYPEDEF (profile_t);
|
|
|
|
// k_terrain.h
|
|
TYPEDEF (t_splash_t);
|
|
TYPEDEF (t_footstep_t);
|
|
TYPEDEF (t_overlay_t);
|
|
TYPEDEF (terrain_t);
|
|
TYPEDEF (t_floor_t);
|
|
|
|
// k_waypoint.h
|
|
TYPEDEF (waypoint_t);
|
|
|
|
// k_rank.h
|
|
TYPEDEF (gpRank_t);
|
|
|
|
// lua_hudlib_drawlist.h
|
|
typedef struct huddrawlist_s *huddrawlist_h;
|
|
|
|
// m_aatree.h
|
|
TYPEDEF (aatree_t);
|
|
|
|
// m_cond.h
|
|
TYPEDEF (condition_t);
|
|
TYPEDEF (conditionset_t);
|
|
TYPEDEF (emblem_t);
|
|
TYPEDEF (unlockable_t);
|
|
TYPEDEF (gamedata_t);
|
|
TYPEDEF (challengegridextradata_t);
|
|
|
|
// m_dllist.h
|
|
TYPEDEF (mdllistitem_t);
|
|
|
|
// m_fixed.h
|
|
TYPEDEF (vector2_t);
|
|
TYPEDEF (vector3_t);
|
|
TYPEDEF (matrix_t);
|
|
|
|
// m_perfstats.h
|
|
TYPEDEF (ps_hookinfo_t);
|
|
TYPEDEF (ps_botinfo_t);
|
|
|
|
// m_queue.h
|
|
TYPEDEF (mqueueitem_t);
|
|
TYPEDEF (mqueue_t);
|
|
|
|
// mserv.h
|
|
TYPEDEF (msg_server_t);
|
|
TYPEDEF (msg_ban_t);
|
|
|
|
// p_local.h
|
|
TYPEDEF (camera_t);
|
|
TYPEDEF (jingle_t);
|
|
TYPEDEF (tm_t);
|
|
TYPEDEF (TryMoveResult_t);
|
|
TYPEDEF (BasicFF_t);
|
|
|
|
// p_maputl.h
|
|
TYPEDEF (divline_t);
|
|
TYPEDEF (intercept_t);
|
|
|
|
// p_mobj.h
|
|
TYPEDEF (mobj_t);
|
|
TYPEDEF (precipmobj_t);
|
|
TYPEDEF (actioncache_t);
|
|
|
|
// p_polyobj.h
|
|
TYPEDEF (polyobj_t);
|
|
TYPEDEF (polymaplink_t);
|
|
TYPEDEF (polyrotate_t);
|
|
TYPEDEF (polymove_t);
|
|
TYPEDEF (polywaypoint_t);
|
|
TYPEDEF (polyslidedoor_t);
|
|
TYPEDEF (polyswingdoor_t);
|
|
TYPEDEF (polydisplace_t);
|
|
TYPEDEF (polyrotdisplace_t);
|
|
TYPEDEF (polyfade_t);
|
|
TYPEDEF (polyrotdata_t);
|
|
TYPEDEF (polymovedata_t);
|
|
TYPEDEF (polywaypointdata_t);
|
|
TYPEDEF (polydoordata_t);
|
|
TYPEDEF (polydisplacedata_t);
|
|
TYPEDEF (polyrotdisplacedata_t);
|
|
TYPEDEF (polyflagdata_t);
|
|
TYPEDEF (polyfadedata_t);
|
|
|
|
// p_saveg.h
|
|
TYPEDEF (savedata_t);
|
|
TYPEDEF (savebuffer_t);
|
|
|
|
// p_setup.h
|
|
TYPEDEF (levelflat_t);
|
|
|
|
// p_slopes.h
|
|
TYPEDEF (dynlineplanethink_t);
|
|
TYPEDEF (dynvertexplanethink_t);
|
|
|
|
// p_spec.h
|
|
TYPEDEF (thinkerdata_t);
|
|
TYPEDEF (fireflicker_t);
|
|
TYPEDEF (lightflash_t);
|
|
TYPEDEF (laserthink_t);
|
|
TYPEDEF (strobe_t);
|
|
TYPEDEF (glow_t);
|
|
TYPEDEF (lightlevel_t);
|
|
TYPEDEF (ceiling_t);
|
|
TYPEDEF (floormove_t);
|
|
TYPEDEF (elevator_t);
|
|
TYPEDEF (crumble_t);
|
|
TYPEDEF (noenemies_t);
|
|
TYPEDEF (continuousfall_t);
|
|
TYPEDEF (bouncecheese_t);
|
|
TYPEDEF (mariothink_t);
|
|
TYPEDEF (mariocheck_t);
|
|
TYPEDEF (thwomp_t);
|
|
TYPEDEF (floatthink_t);
|
|
TYPEDEF (eachtime_t);
|
|
TYPEDEF (raise_t);
|
|
TYPEDEF (executor_t);
|
|
TYPEDEF (scroll_t);
|
|
TYPEDEF (friction_t);
|
|
TYPEDEF (pusher_t);
|
|
TYPEDEF (disappear_t);
|
|
TYPEDEF (fade_t);
|
|
TYPEDEF (fadecolormap_t);
|
|
TYPEDEF (planedisplace_t);
|
|
TYPEDEF (activator_t);
|
|
|
|
// r_data.h
|
|
TYPEDEF (lumplist_t);
|
|
|
|
// r_defs.h
|
|
TYPEDEF (cliprange_t);
|
|
TYPEDEF (vertex_t);
|
|
TYPEDEF (degenmobj_t);
|
|
TYPEDEF (light_t);
|
|
TYPEDEF (node_t);
|
|
TYPEDEF (post_t);
|
|
TYPEDEF (drawseg_t);
|
|
TYPEDEF (rotsprite_t);
|
|
TYPEDEF (patch_t);
|
|
TYPEDEF (softwarepatch_t);
|
|
TYPEDEF (pic_t);
|
|
TYPEDEF (spriteframe_t);
|
|
TYPEDEF (spritedef_t);
|
|
TYPEDEF (extracolormap_t);
|
|
TYPEDEF (ffloor_t);
|
|
TYPEDEF (lightlist_t);
|
|
TYPEDEF (r_lightlist_t);
|
|
TYPEDEF (pslope_t);
|
|
TYPEDEF (sector_t);
|
|
TYPEDEF (line_t);
|
|
TYPEDEF (side_t);
|
|
TYPEDEF (subsector_t);
|
|
TYPEDEF (msecnode_t);
|
|
TYPEDEF (mprecipsecnode_t);
|
|
TYPEDEF (lightmap_t);
|
|
TYPEDEF (seg_t);
|
|
|
|
// r_draw.h
|
|
TYPEDEF (floatv3_t);
|
|
|
|
// r_fps.h
|
|
TYPEDEF (viewvars_t);
|
|
TYPEDEF (interpmobjstate_t);
|
|
TYPEDEF (levelinterpolator_t);
|
|
|
|
// r_picformats.h
|
|
TYPEDEF (spriteframepivot_t);
|
|
TYPEDEF (spriteinfo_t);
|
|
|
|
// r_plane.h
|
|
TYPEDEF (visplane_t);
|
|
TYPEDEF (visffloor_t);
|
|
|
|
// r_portal.h
|
|
TYPEDEF (portal_t);
|
|
|
|
// r_skins.h
|
|
TYPEDEF (skin_t);
|
|
|
|
// r_splats.h
|
|
TYPEDEF (floorsplat_t);
|
|
|
|
// r_state.h
|
|
TYPEDEF (sprcache_t);
|
|
|
|
// r_textures.h
|
|
TYPEDEF (texpatch_t);
|
|
TYPEDEF (texture_t);
|
|
|
|
// r_things.h
|
|
TYPEDEF (maskcount_t);
|
|
TYPEDEF (vissprite_t);
|
|
TYPEDEF (drawnode_t);
|
|
|
|
// s_sound.h
|
|
TYPEDEF (listener_t);
|
|
TYPEDEF (channel_t);
|
|
TYPEDEF (caption_t);
|
|
TYPEDEF (musicdef_t);
|
|
TYPEDEF (musicstack_t);
|
|
|
|
// screen.h
|
|
TYPEDEF (viddef_t);
|
|
TYPEDEF (vesa_extra_t);
|
|
TYPEDEF (vmode_t);
|
|
|
|
// sounds.h
|
|
TYPEDEF (sfxinfo_t);
|
|
|
|
// taglist.h
|
|
TYPEDEF (taglist_t);
|
|
TYPEDEF (taggroup_t);
|
|
|
|
// v_video.h
|
|
TYPEDEF (colorlookup_t);
|
|
TYPEDEF (cliprect_t);
|
|
|
|
// w_wad.h
|
|
TYPEDEF (filelump_t);
|
|
TYPEDEF (wadinfo_t);
|
|
TYPEDEF (lumpinfo_t);
|
|
TYPEDEF (virtlump_t);
|
|
TYPEDEF (virtres_t);
|
|
TYPEDEF (wadfile_t);
|
|
|
|
#undef TYPEDEF
|
|
#undef TYPEDEF2
|
|
|
|
#ifdef __cplusplus
|
|
} // extern "C"
|
|
#endif
|
|
|
|
#endif // __TYPEDEF_H__
|