X-Git-Url: http://git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fcommon%2Fcsqcmodel_settings.qh;h=983df24039cc9fe4b9c3858156624abfa896747e;hb=95ed1de5ec246281554c992977d206b4c2bc2c32;hp=a9ed986deef9e774a4a3c38b0eaaf50a30dfce82;hpb=5b29399384bd98a213c977f6fe0542f4f5f249e1;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/common/csqcmodel_settings.qh b/qcsrc/common/csqcmodel_settings.qh index a9ed986de..983df2403 100644 --- a/qcsrc/common/csqcmodel_settings.qh +++ b/qcsrc/common/csqcmodel_settings.qh @@ -1,3 +1,6 @@ +#ifndef CSQCMODEL_SETTINGS_H +#define CSQCMODEL_SETTINGS_H + // define this if svqc code wants to use .frame2 and .lerpfrac //#define CSQCMODEL_HAVE_TWO_FRAMES @@ -22,11 +25,11 @@ // add properties you want networked to CSQC here #define CSQCMODEL_EXTRAPROPERTIES \ - CSQCMODEL_PROPERTY(1, float, ReadShort, WriteShort, colormap) \ - CSQCMODEL_PROPERTY(2, float, ReadInt24_t, WriteInt24_t, effects) \ - CSQCMODEL_PROPERTY(4, float, ReadByte, WriteByte, modelflags) \ + CSQCMODEL_PROPERTY(1, int, ReadShort, WriteShort, colormap) \ + CSQCMODEL_PROPERTY(2, int, ReadInt24_t, WriteInt24_t, effects) \ + CSQCMODEL_PROPERTY(4, int, ReadByte, WriteByte, modelflags) \ CSQCMODEL_PROPERTY_SCALED(8, float, ReadByte, WriteByte, alpha, 254, -1, 254) \ - CSQCMODEL_PROPERTY(16, float, ReadByte, WriteByte, skin) \ + CSQCMODEL_PROPERTY(16, int, ReadByte, WriteByte, skin) \ CSQCMODEL_PROPERTY(32, float, ReadApproxPastTime, WriteApproxPastTime, death_time) \ CSQCMODEL_PROPERTY(64, float, ReadByte, WriteByte, solid) \ CSQCMODEL_IF(!isplayer) \ @@ -34,9 +37,12 @@ CSQCMODEL_PROPERTY_SCALED(256, float, ReadByte, WriteByte, glowmod_x, 255, 0, 255) \ CSQCMODEL_PROPERTY_SCALED(256, float, ReadByte, WriteByte, glowmod_y, 255, 0, 255) \ CSQCMODEL_PROPERTY_SCALED(256, float, ReadByte, WriteByte, glowmod_z, 255, 0, 255) \ + CSQCMODEL_PROPERTY_SCALED(256, float, ReadByte, WriteByte, colormod_x, 255, 0, 255) \ + CSQCMODEL_PROPERTY_SCALED(256, float, ReadByte, WriteByte, colormod_y, 255, 0, 255) \ + CSQCMODEL_PROPERTY_SCALED(256, float, ReadByte, WriteByte, colormod_z, 255, 0, 255) \ CSQCMODEL_ENDIF \ CSQCMODEL_IF(isplayer) \ - CSQCMODEL_PROPERTY(128, float, ReadByte, WriteByte, anim_state) \ + CSQCMODEL_PROPERTY(128, int, ReadByte, WriteByte, anim_state) \ CSQCMODEL_PROPERTY(128, float, ReadApproxPastTime, WriteApproxPastTime, anim_time) \ CSQCMODEL_IF(!islocalplayer) \ CSQCMODEL_PROPERTY(256, float, ReadChar, WriteChar, anim_lower_action) \ @@ -44,9 +50,10 @@ CSQCMODEL_ENDIF \ CSQCMODEL_PROPERTY(512, float, ReadChar, WriteChar, anim_upper_action) \ CSQCMODEL_PROPERTY(512, float, ReadApproxPastTime, WriteApproxPastTime, anim_upper_time) \ - CSQCMODEL_PROPERTY(1024, float, ReadAngle, WriteAngle, v_angle_x) \ - CSQCMODEL_ENDIF -// TODO get rid of colormod/glowmod here, find good solution for nex charge glowmod hack; also get rid of some useless properties on non-players that only exist for CopyBody + CSQCMODEL_ENDIF \ + CSQCMODEL_PROPERTY(1024, float, ReadAngle, WriteAngle, v_angle_x) \ + CSQCMODEL_PROPERTY_SCALED(4096, float, ReadByte, WriteByte, scale, 16, 0, 255) +// TODO get rid of colormod/glowmod here, find good solution for vortex charge glowmod hack; also get rid of some useless properties on non-players that only exist for CopyBody // add hook function calls here #define CSQCMODEL_HOOK_PREUPDATE \ @@ -58,7 +65,7 @@ #define CSQCPLAYER_HOOK_POSTCAMERASETUP // force updates of player entities that often even if unchanged -#define CSQCPLAYER_FORCE_UPDATES 0.25 +const float CSQCPLAYER_FORCE_UPDATES = 0.25; // mod must define: //vector PL_MIN = ...; @@ -74,3 +81,4 @@ #endif #define CSQCMODEL_EF_RESPAWNGHOST EF_SELECTABLE +#endif \ No newline at end of file