no don't code on frames, try to get to classes as soon as possible!
but ya, better to do frames then actually on movieclips. but look into classes once you can program. thats when i took off and really started learning efficient, powerful coding techniques.
its weird to figure it out but all a class is is
class Bullet extends MovieClip{
var vx,vy:Number;//now every bullet has it's own property vx and vy
function Bullet(_xSpeed:Number, _ySpeed:Number){//this is called whenever a bullet is created
vx = _xSpeed;//sets stored variables to speed parameters
vy = _ySpeed;
}
function onEnterframe(){//called every frame
_x += vx;//move in direction of velocity
_y += vy;
if(_x > 550){
removeMovieClip(this);
}
}
}
this would go in a file called Bullet.as, separate from -but in the same folder as- the fla. and in the library, right click the bullet movieclip that you added, properties, click export for action script and put Bullet in the identifier and class field. and congratulations you've saved yourself tons of future code.
then to spawn a bullet just say
var myBulletMc:Bullet = this.attachMovie("Bullet", "b", this.getNextHighestDepth());
myBulletMc.vx = 5;//sets horizontal velocity of bullet
and it'll follow the structure of the class