Hope you don't mind all these suggestions, but could you possably add a bullet spread variable?
and also, could you add animation capabilities?
For this, I don't know anything about model animation at all.Might look it up.
ShootOnClick_muzzleFlash[1]=gunFlashEmitter";ShootOnClick_Debris[1]=gunDebris;