static void Mod_Sprite_SharedSetup(const unsigned char *datapointer, int version, const unsigned int *palette, qboolean additive)
{
- int i, j, groupframes, realframes, x, y, origin[2], width, height, fullbright;
+ int i, j, groupframes, realframes, x, y, origin[2], width, height;
+ qboolean fullbright;
dspriteframetype_t *pinframetype;
dspriteframe_t *pinframe;
dspritegroup_t *pingroup;
Host_Error("Mod_Sprite_SharedSetup: invalid interval");
}
- sprintf(loadmodel->animscenes[i].name, "frame %i", i);
+ dpsnprintf(loadmodel->animscenes[i].name, sizeof(loadmodel->animscenes[i].name), "frame %i", i);
loadmodel->animscenes[i].firstframe = realframes;
loadmodel->animscenes[i].framecount = groupframes;
loadmodel->animscenes[i].framerate = 1.0f / interval;
{
if (groupframes > 1)
{
- sprintf (name, "%s_%i_%i", loadmodel->name, i, j);
- sprintf (fogname, "%s_%i_%ifog", loadmodel->name, i, j);
+ dpsnprintf (name, sizeof(name), "%s_%i_%i", loadmodel->name, i, j);
+ dpsnprintf (fogname, sizeof(fogname), "%s_%i_%ifog", loadmodel->name, i, j);
}
else
{
- sprintf (name, "%s_%i", loadmodel->name, i);
- sprintf (fogname, "%s_%ifog", loadmodel->name, i);
+ dpsnprintf (name, sizeof(name), "%s_%i", loadmodel->name, i);
+ dpsnprintf (fogname, sizeof(fogname), "%s_%ifog", loadmodel->name, i);
}
if (!(skinframe = R_SkinFrame_LoadExternal(name, texflags | TEXF_COMPRESS, false)))
{
- unsigned char *pixels = Mem_Alloc(loadmodel->mempool, width*height*4);
+ unsigned char *pixels = (unsigned char *) Mem_Alloc(loadmodel->mempool, width*height*4);
if (version == SPRITE32_VERSION)
{
for (x = 0;x < width*height;x++)
{
- pixels[i*4+2] = datapointer[i*4+0];
- pixels[i*4+1] = datapointer[i*4+1];
- pixels[i*4+0] = datapointer[i*4+2];
- pixels[i*4+3] = datapointer[i*4+3];
+ pixels[x*4+2] = datapointer[x*4+0];
+ pixels[x*4+1] = datapointer[x*4+1];
+ pixels[x*4+0] = datapointer[x*4+2];
+ pixels[x*4+3] = datapointer[x*4+3];
}
}
else //if (version == SPRITEHL_VERSION || version == SPRITE_VERSION)
}
extern void R_Model_Sprite_Draw(entity_render_t *ent);
-void Mod_IDSP_Load(model_t *mod, void *buffer, void *bufferend)
+void Mod_IDSP_Load(dp_model_t *mod, void *buffer, void *bufferend)
{
int version;
const unsigned char *datapointer;
else
Host_Error("Mod_IDSP_Load: %s has wrong version number (%i). Only %i (quake), %i (HalfLife), and %i (sprite32) supported",
loadmodel->name, version, SPRITE_VERSION, SPRITEHL_VERSION, SPRITE32_VERSION);
+
+ loadmodel->surfmesh.isanimated = loadmodel->numframes > 1 || loadmodel->animscenes[0].framecount > 1;
}
-void Mod_IDS2_Load(model_t *mod, void *buffer, void *bufferend)
+void Mod_IDS2_Load(dp_model_t *mod, void *buffer, void *bufferend)
{
- int i, version, fullbright;
+ int i, version;
+ qboolean fullbright;
const dsprite2_t *pinqsprite;
skinframe_t *skinframe;
float modelradius;
}
loadmodel->radius = modelradius;
loadmodel->radius2 = modelradius * modelradius;
+
+ loadmodel->surfmesh.isanimated = loadmodel->numframes > 1 || loadmodel->animscenes[0].framecount > 1;
}