X-Git-Url: https://de.git.xonotic.org/?p=xonotic%2Fxonotic-data.pk3dir.git;a=blobdiff_plain;f=qcsrc%2Fserver%2Fg_models.qc;h=bc996fd321647183b1824eb233d052dae33e69a9;hp=0f0bba6e6d36fb335a5afa4485d6b2fd79e373f2;hb=4fc59bbd7e2d4f25ba21952ed50ae754295a7faa;hpb=6af4e73de035e6bbed9ba2d60e0768c43dc66f2a diff --git a/qcsrc/server/g_models.qc b/qcsrc/server/g_models.qc index 0f0bba6e6..bc996fd32 100644 --- a/qcsrc/server/g_models.qc +++ b/qcsrc/server/g_models.qc @@ -57,6 +57,8 @@ float g_clientmodel_genericsendentity (entity to, float sf) sf |= 0x20; if(self.colormap != 0) sf |= 0x40; + if(self.lodmodelindex1) + sf |= 0x80; WriteByte(MSG_ENTITY, ENT_CLIENT_WALL); WriteByte(MSG_ENTITY, sf); @@ -86,7 +88,16 @@ float g_clientmodel_genericsendentity (entity to, float sf) if(sf & 8) { - WriteShort(MSG_ENTITY, self.modelindex); + if(sf & 0x80) + { + WriteShort(MSG_ENTITY, self.lodmodelindex0); + WriteShort(MSG_ENTITY, bound(0, self.loddistance1, 65535)); + WriteShort(MSG_ENTITY, self.lodmodelindex1); + WriteShort(MSG_ENTITY, bound(0, self.loddistance2, 65535)); + WriteShort(MSG_ENTITY, self.lodmodelindex2); + } + else + WriteShort(MSG_ENTITY, self.modelindex); WriteByte(MSG_ENTITY, self.solid); WriteShort(MSG_ENTITY, floor(self.scale * 256)); if(sf & 0x20) @@ -124,7 +135,7 @@ float g_clientmodel_genericsendentity (entity to, float sf) if(!self.solid) self.solid = (sol); else if(self.solid < 0) self.solid = SOLID_NOT; #define G_CLIENTMODEL_INIT(sol) \ - SetBrushEntityModelNoLOD(); \ + SetBrushEntityModel(); \ if(!self.scale) self.scale = self.modelscale; \ self.use = g_clientmodel_setcolormaptoactivator; \ InitializeEntity(self, g_clientmodel_dropbyspawnflags, INITPRIO_DROPTOFLOOR); \