tag_index could later be found automatically by checking which models we
have... e.g. use "bip01 r hand" if a weapon model is attached to a player model
f &~= f * 65536;
return f;
}
f &~= f * 65536;
return f;
}
+
+#ifdef CSQC
+entity ReadCSQCEntity()
+{
+ float f;
+ f = ReadShort();
+ if(f == 0)
+ return world;
+ return findfloat(world, entnum, f);
+}
+#endif
#ifndef COMPAT_XON010_CHANNELS
#define sound(e,c,s,v,a) sound7(e,c,s,v,a,0,0)
#endif
#ifndef COMPAT_XON010_CHANNELS
#define sound(e,c,s,v,a) sound7(e,c,s,v,a,0,0)
#endif
+
+#ifdef CSQC
+entity ReadCSQCEntity()
+#endif
CSQCMODEL_PROPERTY(2, ReadShort, WriteShort, colormap) \
CSQCMODEL_PROPERTY(4, ReadInt24_t, WriteInt24_t, effects) \
CSQCMODEL_PROPERTY_SCALED(8, ReadByte, WriteByte, alpha, 255, 0, 255) \
CSQCMODEL_PROPERTY(2, ReadShort, WriteShort, colormap) \
CSQCMODEL_PROPERTY(4, ReadInt24_t, WriteInt24_t, effects) \
CSQCMODEL_PROPERTY_SCALED(8, ReadByte, WriteByte, alpha, 255, 0, 255) \
+ CSQCMODEL_ENDIF \
+ CSQCMODEL_IF(!isplayer) \
+ CSQCMODEL_PROPERTY(1, ReadCSQCEntity, WriteEntity, tag_entity) \
+// declare "odd" fields here
+.entity tag_entity;
+
// add hook function calls here
#define CSQCMODEL_HOOK_PREUPDATE
#define CSQCMODEL_HOOK_POSTUPDATE
// add hook function calls here
#define CSQCMODEL_HOOK_PREUPDATE
#define CSQCMODEL_HOOK_POSTUPDATE