Hmm. gave it a quick try, but it created a traceline facing upwards at 45 degrees, instead of outward (forward). I'll play with it some more when I have time (should be leaving for work already!).
btw: heres what the code looks like in RTCW:
Code:
vec3_t angles, forward, start;
trace_t tr;
VectorCopy(ent->s.angles, angles);
AngleVectors (angles, forward, NULL, NULL);
start[2] += ent->client->ps.viewheight;
forward[2] = 0;
forward[1] += 45;
if (forward[1] > 180)
forward[1] -= 360;
vectoangles(forward, right);
VectorMA(start, 100, right, end);
trap_Trace(&tr, start, NULL, NULL, end, ent->s.number, MASK_SHOT);