Move the duties of hlmaterials.txt into surfaceproperties.txt, since Source has a 'gamematerial' keyword we should use instead.

This commit is contained in:
Marco Cawthorne 2022-10-16 00:36:18 -07:00
parent f01e90ad2e
commit dcfdf531ce
Signed by: eukara
GPG Key ID: CE2032F0A2882A22
3 changed files with 39 additions and 25 deletions

View File

@ -1,18 +0,0 @@
// define which surface properties (right) are used for
// which material ids (letters on the left side)
B,gs_material_flesh
C,gs_material_concrete
D,gs_material_dirt
F,gs_material_flesh
G,gs_material_grate
H,gs_material_alien
K,gs_material_snow
M,gs_material_metal
N,gs_material_sand
O,gs_material_foliage
P,gs_material_computer
S,gs_material_slosh
T,gs_material_tile
V,gs_material_vent
W,gs_material_wood
Y,gs_material_glass

View File

@ -8,6 +8,7 @@ default
gs_material_glass gs_material_glass
{ {
gamematerial Y
fx_bulletimpact "fx_impact.glass" fx_bulletimpact "fx_impact.glass"
bulletimpact "sfx_impact.glass" bulletimpact "sfx_impact.glass"
stepleft "step_glass.left" stepleft "step_glass.left"
@ -16,6 +17,7 @@ gs_material_glass
gs_material_wood gs_material_wood
{ {
gamematerial W
fx_bulletimpact "fx_impact.wood" fx_bulletimpact "fx_impact.wood"
bulletimpact "sfx_impact.wood" bulletimpact "sfx_impact.wood"
stepleft "step_wood.left" stepleft "step_wood.left"
@ -24,6 +26,7 @@ gs_material_wood
gs_material_metal gs_material_metal
{ {
gamematerial M
fx_bulletimpact "fx_impact.metal" fx_bulletimpact "fx_impact.metal"
bulletimpact "sfx_impact.metal" bulletimpact "sfx_impact.metal"
stepleft "step_metal.left" stepleft "step_metal.left"
@ -32,6 +35,7 @@ gs_material_metal
gs_material_flesh gs_material_flesh
{ {
gamematerial F
fx_bulletimpact "fx_impact.flesh" fx_bulletimpact "fx_impact.flesh"
bulletimpact "sfx_impact.flesh" bulletimpact "sfx_impact.flesh"
stepleft "step_flesh.left" stepleft "step_flesh.left"
@ -48,6 +52,7 @@ gs_material_cinderblock
gs_material_tile gs_material_tile
{ {
gamematerial T
fx_bulletimpact "fx_impact.tile" fx_bulletimpact "fx_impact.tile"
bulletimpact "sfx_impact.tile" bulletimpact "sfx_impact.tile"
stepleft "step_tile.left" stepleft "step_tile.left"
@ -56,6 +61,7 @@ gs_material_tile
gs_material_computer gs_material_computer
{ {
gamematerial P
fx_bulletimpact "fx_impact.computer" fx_bulletimpact "fx_impact.computer"
bulletimpact "sfx_impact.computer" bulletimpact "sfx_impact.computer"
stepleft "step_computer.left" stepleft "step_computer.left"
@ -80,6 +86,7 @@ gs_material_rock
gs_material_flesh gs_material_flesh
{ {
gamematerial F
fx_bulletimpact "fx_impact.flesh" fx_bulletimpact "fx_impact.flesh"
bulletimpact "sfx_impact.flesh" bulletimpact "sfx_impact.flesh"
stepleft "step_flesh.left" stepleft "step_flesh.left"
@ -88,6 +95,7 @@ gs_material_flesh
gs_material_concrete gs_material_concrete
{ {
gamematerial C
fx_bulletimpact "fx_impact.concrete" fx_bulletimpact "fx_impact.concrete"
bulletimpact "sfx_impact.concrete" bulletimpact "sfx_impact.concrete"
stepleft "step_concrete.left" stepleft "step_concrete.left"
@ -96,6 +104,7 @@ gs_material_concrete
gs_material_dirt gs_material_dirt
{ {
gamematerial D
fx_bulletimpact "fx_impact.dirt" fx_bulletimpact "fx_impact.dirt"
bulletimpact "sfx_impact.dirt" bulletimpact "sfx_impact.dirt"
stepleft "step_dirt.left" stepleft "step_dirt.left"
@ -104,6 +113,7 @@ gs_material_dirt
gs_material_grate gs_material_grate
{ {
gamematerial G
fx_bulletimpact "fx_impact.grate" fx_bulletimpact "fx_impact.grate"
bulletimpact "sfx_impact.grate" bulletimpact "sfx_impact.grate"
stepleft "step_grate.left" stepleft "step_grate.left"
@ -112,6 +122,7 @@ gs_material_grate
gs_material_alien gs_material_alien
{ {
gamematerial H
fx_bulletimpact "fx_impact.alien" fx_bulletimpact "fx_impact.alien"
bulletimpact "sfx_impact.alien" bulletimpact "sfx_impact.alien"
stepleft "step_alien.left" stepleft "step_alien.left"
@ -120,6 +131,7 @@ gs_material_alien
gs_material_snow gs_material_snow
{ {
gamematerial K
fx_bulletimpact "fx_impact.snow" fx_bulletimpact "fx_impact.snow"
bulletimpact "sfx_impact.snow" bulletimpact "sfx_impact.snow"
stepleft "step_snow.left" stepleft "step_snow.left"
@ -128,6 +140,7 @@ gs_material_snow
gs_material_sand gs_material_sand
{ {
gamematerial N
fx_bulletimpact "fx_impact.sand" fx_bulletimpact "fx_impact.sand"
bulletimpact "sfx_impact.sand" bulletimpact "sfx_impact.sand"
stepleft "step_sand.left" stepleft "step_sand.left"
@ -136,6 +149,7 @@ gs_material_sand
gs_material_foliage gs_material_foliage
{ {
gamematerial O
fx_bulletimpact "fx_impact.foliage" fx_bulletimpact "fx_impact.foliage"
bulletimpact "sfx_impact.foliage" bulletimpact "sfx_impact.foliage"
stepleft "step_slosh.left" stepleft "step_slosh.left"
@ -144,6 +158,7 @@ gs_material_foliage
gs_material_slosh gs_material_slosh
{ {
gamematerial S
fx_bulletimpact "fx_impact.slosh" fx_bulletimpact "fx_impact.slosh"
bulletimpact "sfx_impact.slosh" bulletimpact "sfx_impact.slosh"
stepleft "step_slosh.left" stepleft "step_slosh.left"
@ -152,6 +167,7 @@ gs_material_slosh
gs_material_vent gs_material_vent
{ {
gamematerial V
fx_bulletimpact "fx_impact.snow" fx_bulletimpact "fx_impact.snow"
bulletimpact "sfx_impact.snow" bulletimpact "sfx_impact.snow"
stepleft "step_vent.left" stepleft "step_vent.left"

View File

@ -77,6 +77,10 @@ Materials_LoadFromMat(string filename)
} }
} }
/** FIXME: all this should be done exclusively in surfaceproperties.qc, however that
is currently server-side only. Make it shared and then we can get rid of this
whole file! */
/** loads a temporary mapper so we can map letters to class names. */ /** loads a temporary mapper so we can map letters to class names. */
static void static void
Materials_Mapper_Init(void) Materials_Mapper_Init(void)
@ -84,15 +88,18 @@ Materials_Mapper_Init(void)
string sTemp; string sTemp;
int c = 0; int c = 0;
filestream fileLUT; filestream fileLUT;
string spname;
bool inbrace = false;
fileLUT = fopen("scripts/hlmaterials.txt", FILE_READ); fileLUT = fopen("scripts/surfaceproperties.txt", FILE_READ);
g_hlmlut_count = 0; g_hlmlut_count = 0;
/* count valid entries. */ /* count valid entries. */
if (fileLUT >= 0) { if (fileLUT >= 0) {
while ((sTemp = fgets(fileLUT))) { while ((sTemp = fgets(fileLUT))) {
if (tokenizebyseparator(sTemp, ",") == 2) { if (tokenize_console(sTemp) == 2) {
g_hlmlut_count++; if (argv(0) == "gamematerial")
g_hlmlut_count++;
} }
} }
} }
@ -105,11 +112,20 @@ Materials_Mapper_Init(void)
if (fileLUT >= 0) { if (fileLUT >= 0) {
while ((sTemp = fgets(fileLUT))) { while ((sTemp = fgets(fileLUT))) {
/* tokenize and just parse this stuff in */ /* tokenize and just parse this stuff in */
if (tokenizebyseparator(sTemp, ",") == 2) { if (tokenize_console(sTemp) == 2) {
g_hlmlut[c].id = argv(0); if (argv(0) == "gamematerial") {
g_hlmlut[c].matclass = argv(1); g_hlmlut[c].id = argv(1);
c++; g_hlmlut[c].matclass = spname;
c++;
}
} }
if (argv(0) == "{")
inbrace = true;
else if (argv(0) == "}")
inbrace = false;
else if (inbrace == false)
spname = argv(0);
} }
} }
} }