R_Mesh_State(&m);
GL_Color(cr * r_colorscale, cg * r_colorscale, cb * r_colorscale, ca);
- varray_texcoord[0][ 0] = 0;varray_texcoord[0][ 1] = 0;
- varray_texcoord[0][ 4] = 0;varray_texcoord[0][ 5] = 1;
- varray_texcoord[0][ 8] = 1;varray_texcoord[0][ 9] = 1;
- varray_texcoord[0][12] = 1;varray_texcoord[0][13] = 0;
- varray_vertex[0] = origin[0] - vright[0] * scale - vup[0] * scale;
- varray_vertex[1] = origin[1] - vright[1] * scale - vup[1] * scale;
- varray_vertex[2] = origin[2] - vright[2] * scale - vup[2] * scale;
- varray_vertex[4] = origin[0] - vright[0] * scale + vup[0] * scale;
- varray_vertex[5] = origin[1] - vright[1] * scale + vup[1] * scale;
- varray_vertex[6] = origin[2] - vright[2] * scale + vup[2] * scale;
- varray_vertex[8] = origin[0] + vright[0] * scale + vup[0] * scale;
- varray_vertex[9] = origin[1] + vright[1] * scale + vup[1] * scale;
- varray_vertex[10] = origin[2] + vright[2] * scale + vup[2] * scale;
- varray_vertex[12] = origin[0] + vright[0] * scale - vup[0] * scale;
- varray_vertex[13] = origin[1] + vright[1] * scale - vup[1] * scale;
- varray_vertex[14] = origin[2] + vright[2] * scale - vup[2] * scale;
- R_Mesh_Draw(4, 2, polygonelements);
+ R_DrawSpriteMesh(origin, vright, vup, scale, -scale, -scale, scale);
}
void R_GetCrosshairColor(float *out)
return;
if (!cl.viewentity || !cl_entities[cl.viewentity].state_current.active)
return;
- pic = Draw_CachePic(va("gfx/crosshair%i.tga", num + 1));
+ pic = Draw_CachePic(va("gfx/crosshair%i.tga", num));
if (!pic)
return;
R_GetCrosshairColor(color);
-
+
// trace the shot path up to a certain distance
VectorCopy(cl_entities[cl.viewentity].render.origin, v1);
v1[2] += 16; // HACK: this depends on the QC
-
+
// get the forward vector for the gun (not the view)
AngleVectors(cl.viewangles, v2, NULL, NULL);
//VectorCopy(r_origin, v1);
num = crosshair.integer;
if (num < 1 || num > NUMCROSSHAIRS || cl.intermission)
return;
- R_GetCrosshairColor(color);
- pic = Draw_CachePic(va("gfx/crosshair%i.tga", num + 1));
+ if (!cl.viewentity || !cl_entities[cl.viewentity].state_current.active)
+ return;
+ pic = Draw_CachePic(va("gfx/crosshair%i.tga", num));
if (pic)
+ {
+ R_GetCrosshairColor(color);
DrawQ_Pic((vid.conwidth - pic->width * crosshair_size.value) * 0.5f, (vid.conheight - pic->height * crosshair_size.value) * 0.5f, pic->name, pic->width * crosshair_size.value, pic->height * crosshair_size.value, color[0], color[1], color[2], color[3], 0);
+ }
}