re3-wiiu/src/core/SurfaceTable.h

108 lines
1.6 KiB
C
Raw Normal View History

2019-05-15 16:52:37 +02:00
#pragma once
enum
{
SURFACE_0,
SURFACE_1,
SURFACE_2,
SURFACE_3,
SURFACE_4,
SURFACE_5,
SURFACE_6,
SURFACE_7,
SURFACE_8,
SURFACE_9,
SURFACE_10,
SURFACE_11,
SURFACE_12,
SURFACE_13,
SURFACE_14,
SURFACE_15,
SURFACE_16,
SURFACE_17,
SURFACE_18,
SURFACE_19,
SURFACE_20,
SURFACE_21,
SURFACE_22,
SURFACE_23,
SURFACE_24,
SURFACE_25,
SURFACE_26,
SURFACE_27,
SURFACE_28,
SURFACE_29,
SURFACE_30,
SURFACE_31,
SURFACE_32,
NUMSURFACETYPES
};
// From nick
// TODO: check and use this
enum eSurfaceType
{
2019-05-28 08:39:36 +02:00
SURFACE_DEFAULT,
SURFACE_TARMAC,
2019-05-15 16:52:37 +02:00
SURFACE_GRASS,
SURFACE_DIRT,
2019-05-28 08:39:36 +02:00
SURFACE_DIRTTRACK,
2019-05-15 16:52:37 +02:00
SURFACE_PAVEMENT,
SURFACE_METAL6,
SURFACE_GLASS,
2019-05-28 08:39:36 +02:00
SURFACE_SCAFFOLD,
SURFACE_METAL_DOOR, // garage door
SURFACE_BILLBOARD,
SURFACE_STEEL, //?
SURFACE_METAL_POLE, // ?
SURFACE_STREET_LIGHT,
2019-05-15 16:52:37 +02:00
SURFACE_METAL14,
SURFACE_METAL15,
SURFACE_METAL_FENCE,
SURFACE_FLESH,
2019-05-28 08:39:36 +02:00
SURFACE_SAND,
SURFACE_PUDDLE,
2019-05-15 16:52:37 +02:00
SURFACE_WOOD,
SURFACE_WOOD_BOX,
SURFACE_WOOD_PLANK,
SURFACE_TIRE,
SURFACE_HARD24,
SURFACE_HEDGE,
SURFACE_STONE,
SURFACE_METAL27,
SURFACE_METAL28,
SURFACE_RUBBER29,
SURFACE_LOOSE30,
SURFACE_BOLLARD,
SURFACE_GATE,
2019-07-19 13:58:19 +02:00
// These are illegal
2019-05-15 16:52:37 +02:00
SURFACE_SAND33,
SURFACE_ROAD34,
};
enum
{
ADHESIVE_RUBBER,
ADHESIVE_HARD,
ADHESIVE_ROAD,
ADHESIVE_LOOSE,
ADHESIVE_WET,
NUMADHESIVEGROUPS
};
2019-05-18 12:39:39 +02:00
struct CColPoint;
2019-05-15 16:52:37 +02:00
class CSurfaceTable
{
2020-04-17 07:54:14 +02:00
static float ms_aAdhesiveLimitTable[NUMADHESIVEGROUPS][NUMADHESIVEGROUPS];
2019-05-15 16:52:37 +02:00
public:
2020-05-12 01:24:57 +02:00
static void Initialise(Const char *filename);
2019-05-15 16:52:37 +02:00
static int GetAdhesionGroup(uint8 surfaceType);
2019-05-18 12:39:39 +02:00
static float GetWetMultiplier(uint8 surfaceType);
static float GetAdhesiveLimit(CColPoint &colpoint);
2019-05-15 16:52:37 +02:00
};