if you want a gun+hand to be on screen then you want a first person camera, not third.
here's some pseudo code to make the bullets come out of the gun:
dim bullets(100)
'Array where we'll store how long each bullet has been alive
for b=1 to 100
'Adjust each bullet
bullets(b)=0
'all bullets start off "dead"
hide object b
'Hide all the bullets
next b
And then inside your game loop:
if control has been pressed then
for i = 1 to 100
'Here we search for an inactive bullet
if bullets(i)=0 then
'We've found one!
bullets(i)=1 'Here we activate it
position object i, object position x(gun), (then the same for Y and Z)
rotate object i, object angle x(gun), (so on)
exit for
end if
end if
for i = 1 to 100
'Weather the CTRL key is being pressed or not, we have to move all active bullets forward.
if bullet(i) then
move object i, bulletSpeed
'Move the bullet
inc bullet(i)
'Increase it's age
if bullet(i) > 500 then
bullet(i)=0
hide object i
end if
'if the bullet has been flying for too long, kill it
end if
next i