Simple problem

I have the code for a side scrolling shooter and I was wondering if someone could help me with a problem i have. I need help witht he ducking crawling. It wont play the anim corectly. What am I doing wrong?

 onClipEvent (load) {
//Variables
this.vel = 0;
this.falling = true;
this.gravity = 2;
this.speed = 8;
this.shooting = false;
this.bulletspeed = 30;
this.bulletspeed2 = 30;
this.duck = false;
this.aimup = false;
}
onClipEvent (enterFrame) {
//movement
if (Key.isDown(Key.RIGHT)) {
this.gotoAndStop("running");
this._xscale = 100;
_x += this.speed;
}
if (Key.isDown(Key.LEFT)) {
this.gotoAndStop("running");
this._xscale = -100;
_x -= this.speed;
}
if (Key.isDown(Key.DOWN)) {
this.gotoAndStop("ducked");
this.duck = true;
} else {
this.duck = false;
}
if (Key.isDown(Key.DOWN) && Key.isDown(Key.RIGHT)) {
this.gotoAndStop("crawlin");
this.duck = true;
} else {
this.duck = false;
}
if (Key.isDown(Key.UP)) {
this.gotoAndStop("shootin up");
this.aimup = true;
} else {
this.aimup = false;
}
if (this.aimup == true) {
this.rotation = 0;
} else {
this.aimup = false;
}
if (Key.isDown(Key.UP) && Key.isDown(Key.RIGHT)) {
this.gotoAndStop("running-shootingup");
}
if (Key.isDown(Key.UP) && Key.isDown(Key.LEFT)) {
this.gotoAndStop("running-shootingup");
}
//Jumping
if (Key.isDown(83) && this.falling == false) {
this.falling = true;
this.vel = -15;
}
//Shoot
if (Key.isDown(65)) {
this.shooting = true;
} else {
this.shooting = false;
}
//Drop when off ground
if (this.falling == true) {
vel += this.gravity;
_y += this.vel;
}
//Landing
if (_root.ground.hitTest(this._x, this._y+30, true)) {
this.falling = false;
this.vel = 0;
} else {
this.falling = true;
}
//Left and Right hitTest
if (Key.isDown(Key.RIGHT)) {
if (_root.ground.hitTest(getBounds(_root).xMax, _y, true)) {
_x -= this.speed;
}
}
if (Key.isDown(Key.LEFT)) {
if (_root.ground.hitTest(getBounds(_root).xMin, _y, true)) {
_x += this.speed;
}
}
//-------------------------------------------------------------------//
//---------------------------start shooting--------------------------//
//-------------------------------------------------------------------//
//What makes him shoot
if (this.shooting == true) {
if (_root.ammo>0) {
i++;
_root.attachMovie("bullet", "bullet"+i, i);
//takes ammo away
_root.ammo -= 1;
//which direction to shoot Left or Right
if (_xscale == 100) {
	_root["bullet"+i]._rotation = 90;
	_root["bullet"+i]._x = _root.guy._x+60;
} else if (_xscale == -100) {
	_root["bullet"+i]._rotation = 270;
	_root["bullet"+i]._x = _root.guy._x-60;
}
if (this.aimup == true) {
	_root["bullet"+i]._rotation = 0;
	_root["bullet"+i]._x = _root.guy._x;
	_root["bullet"+i]._y = _root.guy._y+30;
}
_root["bullet"+i].xmove = ((this.bulletspeed)*Math.sin(Math.PI/180*(_root["bullet"+i]._rotation)));
_root["bullet"+i].ymove = ((-this.bulletspeed)*Math.cos(Math.PI/180*(_root["bullet"+i]._rotation)));
//makes the bullet go to the y co-ord--Ducking or no Ducking
if (_root.guy.duck == true) {
	_root["bullet"+i]._y = _root.guy._y-30;
} else if (_root.guy.duck == false) {
	_root["bullet"+i]._y = _root.guy._y-45;
}
//starts bullets onEnterFrame
_root["bullet"+i].onEnterFrame = function() {
	//Removes bullet when touches ground MC
	with (this) {
	 if (_root.ground.hitTest(getBounds(_root).xMax, _y, true)) {
	 this.removeMovieClip();
	 }
	 if (_root.ground.hitTest(getBounds(_root).xMin, _y, true)) {
	 this.removeMovieClip();
	 }
	 if (_root.ground.hitTest(_x, getBounds(_root).yMax, true)) {
	 this.removeMovieClip();
	 }
	 if (_root.ground.hitTest(_x, getBounds(_root).yMin, true)) {
	 this.removeMovieClip();
	 }
	}
	//Moves the bullet
	this._x += this.xmove;
	this._y += this.ymove;
};
}
}
}
onClipEvent (keyUp) {
if (Key.getCode() == Key.RIGHT) {
gotoAndStop(1);
}
if (Key.getCode() == Key.LEFT) {
gotoAndStop(1);
}
if (Key.getCode() == Key.UP) {
gotoAndStop(1);
}
if (Key.getCode() == Key.DOWN) {
gotoAndStop(1);
}
}
on (keyPress "q") {
_root.guy.standin.body.gun.prevFrame();
_root.guy.shootin-up.gun.prevFrame();
_root.guy.shootin-up2.gun.prevFrame();
_root.guy.runnin.body.gun.prevFrame();
_root.guy.crawlin.body.gun.prevFrame();
}
on (keyPress "w") {
_root.guy.standin.body.gun.nextFrame();
_root.guy.shootin-up.gun.nextFrame();
_root.guy.shootin-up2.gun.nextFrame();
_root.guy.runnin.body.gun.nextFrame();
_root.guy.crawlin.body.gun.nextFrame();
}