I've been working with AUM's Shooter code (issue 103) and the crosshair for the machine gun won't work.

It starts with a string:
STRING* crosshair_tga = "crosshair.tga";

then a panel:
PANEL* t_crosshair_pan;

Then in an action, when the player picks up the machinegun, this is used:
t_crosshair_pan = pan_create(NULL, 30);
t_crosshair_pan.bmap = bmap_create(crosshair_tga);

This is used at the start:
if (t_crosshair_pan)
{
t_crosshair_pan.pos_x = (screen_size.x - bmap_width(t_crosshair_pan.bmap)) / 2;
t_crosshair_pan.pos_y = (screen_size.y - bmap_height(t_crosshair_pan.bmap)) / 2;

Any ideas why this won't work?