mirror of
https://github.com/izzy2lost/Diddy-Kong-Racing.git
synced 2026-06-19 01:16:26 -07:00
* identify transition bug
* Document fog system
* Label fogchanger attributes
* and more
* anti aliasing
* name some object vars
* block the racer inputs
* Update unknown_0255E0.c
* Update README.md
* Update src/object_functions.c
* I just did thing I guess???
* me when I realise almost all the pass through discs are just copy and pasted code.
* YOU'RE PUSHING THEM?!?!
bruh bruh bruh bruh
* I guess I'm in the object naming rabbit hole now
wow maybe I'll actually get these looking good 😳
* i did frogs
* got it
* Quick fixes
210 lines
4.9 KiB
C
210 lines
4.9 KiB
C
#ifndef ENUMS_H
|
|
#define ENUMS_H
|
|
|
|
#include "sound_ids.h"
|
|
#include "sequence_ids.h"
|
|
#include "asset_enums.h"
|
|
|
|
/* All the enums defined here can be used in asset files */
|
|
|
|
// Alias for brevity.
|
|
typedef AssetLevelHeadersEnum MapId;
|
|
|
|
// There are a few instances of comparing MapId with special, negative values.
|
|
typedef enum SpecialMapId {
|
|
SPECIAL_MAP_ID_UNK_NEG10 = -10,
|
|
SPECIAL_MAP_ID_UNK_NEG2 = -2,
|
|
SPECIAL_MAP_ID_NO_LEVEL = -1,
|
|
} SpecialMapId;
|
|
|
|
typedef enum Vehicle {
|
|
VEHICLE_CAR,
|
|
VEHICLE_HOVERCRAFT,
|
|
VEHICLE_PLANE,
|
|
VEHICLE_FLYING_CAR,
|
|
VEHICLE_LOOPDELOOP,
|
|
VEHICLE_TRICKY,
|
|
VEHICLE_BLUEY,
|
|
VEHICLE_SMOKEY,
|
|
VEHICLE_PTERODACTYL,
|
|
VEHICLE_SNOWBALL,
|
|
VEHICLE_CARPET,
|
|
VEHICLE_BUBBLER,
|
|
VEHICLE_WIZPIG,
|
|
VEHICLE_ROCKET,
|
|
|
|
NUMBER_OF_VEHICLE_TYPES,
|
|
NUMBER_OF_PLAYER_VEHICLES = 3
|
|
} Vehicle;
|
|
|
|
typedef enum CameraMode {
|
|
CAMERA_CAR,
|
|
CAMERA_PLANE,
|
|
CAMERA_UNUSED,
|
|
CAMERA_FIXED,
|
|
CAMERA_HOVERCRAFT,
|
|
CAMERA_FINISH_CHALLENGE,
|
|
CAMERA_LOOP,
|
|
CAMERA_FINISH_RACE
|
|
} CameraMode;
|
|
|
|
typedef enum Language {
|
|
LANGUAGE_ENGLISH,
|
|
LANGUAGE_GERMAN,
|
|
LANGUAGE_FRENCH,
|
|
LANGUAGE_JAPANESE
|
|
} Language;
|
|
|
|
typedef enum World {
|
|
WORLD_NONE = -1, // This enum starts at -1 instead of 0.
|
|
WORLD_CENTRAL_AREA,
|
|
WORLD_DINO_DOMAIN,
|
|
WORLD_SHERBET_ISLAND,
|
|
WORLD_SNOWFLAKE_MOUNTAIN,
|
|
WORLD_DRAGON_FOREST,
|
|
WORLD_FUTURE_FUN_LAND
|
|
} World;
|
|
|
|
typedef enum RaceType {
|
|
RACETYPE_DEFAULT = 0,
|
|
RACETYPE_HORSESHOE_GULCH = 3,
|
|
RACETYPE_HUBWORLD = 5,
|
|
RACETYPE_CUTSCENE_1 = 6, // Not sure what the difference between these two are.
|
|
RACETYPE_CUTSCENE_2 = 7,
|
|
RACETYPE_BOSS = 8,
|
|
RACETYPE_CHALLENGE = 64, // For masking
|
|
RACETYPE_CHALLENGE_BATTLE = 64,
|
|
RACETYPE_CHALLENGE_BANANAS = 65,
|
|
RACETYPE_CHALLENGE_EGGS = 66
|
|
} RaceType;
|
|
|
|
typedef enum HorizontalAlignmentFlags {
|
|
HORZ_ALIGN_LEFT = 0,
|
|
HORZ_ALIGN_RIGHT = 1,
|
|
HORZ_ALIGN_CENTER = 4
|
|
} HorizontalAlignmentFlags;
|
|
|
|
typedef enum VerticalAlignmentFlags {
|
|
VERT_ALIGN_TOP = 0,
|
|
VERT_ALIGN_BOTTOM = 2,
|
|
VERT_ALIGN_MIDDLE = 8
|
|
} VerticalAlignmentFlags;
|
|
|
|
typedef enum AlignmentFlags {
|
|
ALIGN_TOP_LEFT = VERT_ALIGN_TOP | HORZ_ALIGN_LEFT,
|
|
ALIGN_TOP_CENTER = VERT_ALIGN_TOP | HORZ_ALIGN_CENTER,
|
|
ALIGN_TOP_RIGHT = VERT_ALIGN_TOP | HORZ_ALIGN_RIGHT,
|
|
ALIGN_MIDDLE_LEFT = VERT_ALIGN_MIDDLE | HORZ_ALIGN_LEFT,
|
|
ALIGN_MIDDLE_CENTER = VERT_ALIGN_MIDDLE | HORZ_ALIGN_CENTER,
|
|
ALIGN_MIDDLE_RIGHT = VERT_ALIGN_MIDDLE | HORZ_ALIGN_RIGHT,
|
|
ALIGN_BOTTOM_LEFT = VERT_ALIGN_BOTTOM | HORZ_ALIGN_LEFT,
|
|
ALIGN_BOTTOM_CENTER = VERT_ALIGN_BOTTOM | HORZ_ALIGN_CENTER,
|
|
ALIGN_BOTTOM_RIGHT = VERT_ALIGN_BOTTOM | HORZ_ALIGN_RIGHT
|
|
} AlignmentFlags;
|
|
|
|
typedef enum MiscAsset {
|
|
MISC_ASSET_UNK00,
|
|
MISC_ASSET_UNK01,
|
|
MISC_ASSET_UNK02,
|
|
MISC_ASSET_UNK03,
|
|
MISC_ASSET_UNK04,
|
|
MISC_ASSET_UNK05,
|
|
MISC_ASSET_UNK06,
|
|
MISC_ASSET_UNK07,
|
|
MISC_ASSET_UNK08,
|
|
MISC_RACER_WEIGHT,
|
|
MISC_RACER_HANDLING,
|
|
MISC_ASSET_UNK0B,
|
|
MISC_ASSET_UNK0C,
|
|
MISC_ASSET_UNK0D,
|
|
MISC_ASSET_UNK0E,
|
|
MISC_ASSET_UNK0F,
|
|
MISC_ASSET_UNK10,
|
|
MISC_ASSET_UNK11,
|
|
MISC_ASSET_UNK12,
|
|
MISC_ASSET_UNK13,
|
|
MISC_ASSET_UNK14,
|
|
MISC_ASSET_SHIELD_DATA,
|
|
MISC_ASSET_MAGNET_DATA,
|
|
MISC_ASSET_UNK17,
|
|
MISC_ASSET_UNK18,
|
|
MISC_ASSET_UNK19,
|
|
MISC_ASSET_UNK1A,
|
|
MISC_ASSET_UNK1B,
|
|
MISC_ASSET_UNK1C,
|
|
MISC_ASSET_UNK1D,
|
|
MISC_ASSET_UNK1E,
|
|
MISC_ASSET_UNK1F,
|
|
MISC_ASSET_UNK20,
|
|
MISC_ASSET_UNK21,
|
|
MISC_ASSET_UNK22,
|
|
MISC_ASSET_UNK23,
|
|
MISC_ASSET_UNK24,
|
|
MISC_ASSET_UNK25,
|
|
MISC_ASSET_UNK26,
|
|
MISC_ASSET_UNK27,
|
|
MISC_ASSET_UNK28,
|
|
MISC_ASSET_UNK29,
|
|
MISC_ASSET_UNK2A,
|
|
MISC_ASSET_UNK2B,
|
|
MISC_ASSET_UNK2C,
|
|
MISC_ASSET_UNK2D,
|
|
MISC_ASSET_UNK2E,
|
|
MISC_ASSET_UNK2F,
|
|
MISC_ASSET_UNK30,
|
|
MISC_ASSET_UNK31,
|
|
MISC_ASSET_UNK32,
|
|
MISC_ASSET_UNK33,
|
|
MISC_ASSET_UNK34,
|
|
MISC_ASSET_UNK35,
|
|
MISC_ASSET_UNK36,
|
|
MISC_ASSET_UNK37,
|
|
MISC_ASSET_RACER_HITBOX_SIZE,
|
|
MISC_ASSET_UNK39,
|
|
MISC_ASSET_UNK3A,
|
|
MISC_ASSET_UNK3B,
|
|
MISC_ASSET_UNK3C,
|
|
MISC_ASSET_UNK3D,
|
|
MISC_ASSET_UNK3E,
|
|
MISC_ASSET_UNK3F,
|
|
MISC_ASSET_UNK40,
|
|
MISC_ASSET_UNK41,
|
|
MISC_ASSET_UNK42,
|
|
MISC_ASSET_UNK43,
|
|
MISC_ASSET_UNK44,
|
|
MISC_ASSET_UNK45,
|
|
MISC_ASSET_UNK46,
|
|
MISC_ASSET_UNK47,
|
|
MISC_ASSET_UNK48,
|
|
MISC_ASSET_UNK49,
|
|
MISC_ASSET_UNK4A,
|
|
MISC_ASSET_UNK4B,
|
|
MISC_ASSET_UNK4C
|
|
} MiscAsset;
|
|
|
|
typedef enum SurfaceType {
|
|
SURFACE_DEFAULT,
|
|
SURFACE_GRASS,
|
|
SURFACE_SAND,
|
|
SURFACE_ZIP_PAD,
|
|
SURFACE_STONE,
|
|
SURFACE_EGG_SPAWN,
|
|
SURFACE_EGG_01,
|
|
SURFACE_EGG_02,
|
|
SURFACE_EGG_03,
|
|
SURFACE_EGG_04,
|
|
SURFACE_FROZEN_WATER,
|
|
SURFACE_UNK0B,
|
|
SURFACE_TAJ_PAD,
|
|
SURFACE_SNOW,
|
|
SURFACE_UNK0E,
|
|
SURFACE_UNK0F,
|
|
SURFACE_UNK10,
|
|
SURFACE_INVIS_WALL,
|
|
SURFACE_UNK12,
|
|
|
|
SURFACE_NONE = 255
|
|
} SurfaceType;
|
|
|
|
#endif
|