X-Git-Url: http://de.git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fserver%2Fg_models.qc;h=46ebe5ed89476348bc9411ba75c207153389d2b0;hb=6f4c7132e635c0150e3894f2f9958b361ce0c238;hp=8bb2b1b6afd5d4688a4d781d90aa89c9d02303e6;hpb=ef74e1ba8e890befb4a4892a96d244a66c05fd48;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/server/g_models.qc b/qcsrc/server/g_models.qc index 8bb2b1b6a..46ebe5ed8 100644 --- a/qcsrc/server/g_models.qc +++ b/qcsrc/server/g_models.qc @@ -1,15 +1,21 @@ -#include "_all.qh" +#include "g_subs.qh" #include "../common/triggers/subs.qh" +#include "../common/triggers/triggers.qh" -#include "../client/bgmscript.qh" +entityclass(BGMScript); +class(BGMScript) .string bgmscript; +class(BGMScript) .float bgmscriptattack; +class(BGMScript) .float bgmscriptdecay; +class(BGMScript) .float bgmscriptsustain; +class(BGMScript) .float bgmscriptrelease; #include "../common/constants.qh" -#include "../csqcmodellib/sv_model.qh" +#include "../lib/csqcmodel/sv_model.qh" .float modelscale; -void g_model_setcolormaptoactivator (void) +void g_model_setcolormaptoactivator () {SELFPARAM(); if(teamplay) { @@ -20,16 +26,16 @@ void g_model_setcolormaptoactivator (void) } else self.colormap = floor(random() * 256); - self.colormap |= 1024; // RENDER_COLORMAPPED + self.colormap |= BIT(10); // RENDER_COLORMAPPED } -void g_clientmodel_setcolormaptoactivator (void) +void g_clientmodel_setcolormaptoactivator () {SELFPARAM(); g_model_setcolormaptoactivator(); - self.SendFlags |= (8 | 1); + self.SendFlags |= (BIT(3) | BIT(0)); } -void g_clientmodel_use(void) +void g_clientmodel_use() {SELFPARAM(); if (self.antiwall_flag == 1) { @@ -72,8 +78,8 @@ void g_clientmodel_dropbyspawnflags() self.SendFlags |= 2; } -float g_clientmodel_genericsendentity (entity to, int sf) -{SELFPARAM(); +bool g_clientmodel_genericsendentity(entity this, entity to, int sf) +{ sf = sf & 0x0F; if(self.angles != '0 0 0') sf |= 0x10; @@ -84,23 +90,23 @@ float g_clientmodel_genericsendentity (entity to, int sf) if(self.lodmodelindex1) sf |= 0x80; - WriteByte(MSG_ENTITY, ENT_CLIENT_WALL); + WriteHeader(MSG_ENTITY, ENT_CLIENT_WALL); WriteByte(MSG_ENTITY, sf); - if(sf & 1) + if(sf & BIT(0)) { if(sf & 0x40) WriteShort(MSG_ENTITY, self.colormap); } - if(sf & 2) + if(sf & BIT(1)) { WriteCoord(MSG_ENTITY, self.origin.x); WriteCoord(MSG_ENTITY, self.origin.y); WriteCoord(MSG_ENTITY, self.origin.z); } - if(sf & 4) + if(sf & BIT(2)) { if(sf & 0x10) { @@ -110,7 +116,7 @@ float g_clientmodel_genericsendentity (entity to, int sf) } } - if(sf & 8) + if(sf & BIT(3)) { if(sf & 0x80) { @@ -177,15 +183,15 @@ float g_clientmodel_genericsendentity (entity to, int sf) self.default_solid = sol; // non-solid model entities: -void spawnfunc_misc_gamemodel() { SELFPARAM(); self.angles_x = -self.angles.x; G_MODEL_INIT (SOLID_NOT) } // model entity -void spawnfunc_misc_clientmodel() { SELFPARAM(); self.angles_x = -self.angles.x; G_CLIENTMODEL_INIT(SOLID_NOT) } // model entity -void spawnfunc_misc_models() { SELFPARAM(); self.angles_x = -self.angles.x; G_MODEL_INIT (SOLID_NOT) } // DEPRECATED old compat entity with confusing name, do not use +spawnfunc(misc_gamemodel) { self.angles_x = -self.angles.x; G_MODEL_INIT (SOLID_NOT) } // model entity +spawnfunc(misc_clientmodel) { self.angles_x = -self.angles.x; G_CLIENTMODEL_INIT(SOLID_NOT) } // model entity +spawnfunc(misc_models) { self.angles_x = -self.angles.x; G_MODEL_INIT (SOLID_NOT) } // DEPRECATED old compat entity with confusing name, do not use // non-solid brush entities: -void spawnfunc_func_illusionary() { SELFPARAM(); G_MODEL_INIT (SOLID_NOT) } // Q1 name (WARNING: MISPREDICTED) -void spawnfunc_func_clientillusionary() { SELFPARAM(); G_CLIENTMODEL_INIT(SOLID_NOT) } // brush entity -void spawnfunc_func_static() { SELFPARAM(); G_MODEL_INIT (SOLID_NOT) } // DEPRECATED old alias name from some other game +spawnfunc(func_illusionary) { G_MODEL_INIT (SOLID_NOT) } // Q1 name (WARNING: MISPREDICTED) +spawnfunc(func_clientillusionary) { G_CLIENTMODEL_INIT(SOLID_NOT) } // brush entity +spawnfunc(func_static) { G_MODEL_INIT (SOLID_NOT) } // DEPRECATED old alias name from some other game // solid brush entities -void spawnfunc_func_wall() { SELFPARAM(); G_MODEL_INIT (SOLID_BSP) } // Q1 name -void spawnfunc_func_clientwall() { SELFPARAM(); G_CLIENTMODEL_INIT(SOLID_BSP) } // brush entity (WARNING: MISPREDICTED) +spawnfunc(func_wall) { G_MODEL_INIT (SOLID_BSP) } // Q1 name +spawnfunc(func_clientwall) { G_CLIENTMODEL_INIT(SOLID_BSP) } // brush entity (WARNING: MISPREDICTED)