You could try scaleing everything up. It sounds like the rifle is only a couple of units big and if the camera range is set to 1 then it will cover up half of the rifle. If the rifle is around 100 units big then the camera range will mean that you only lose 1/100th of the rifle, which should be unoticable.
make camera 1
load object "enfieldshoot.x",1
load image "enfield.bmp",1
` remember - default scale is 100% - therefore 1000% is 10 times bigger
SCALE OBJECT 1,1000,1000,1000
texture object 1,1
set camera range 1,1,1000
set object speed 1,15
lock object on 1
position object 1,2.5,-1.5,10
do
if mouseclick()=1 then play object 1,1,20
loop