I feel i'm to dumb for this so imma you guys for some help pls..
I'm trying to make an arm fold, imagine an archer pulling on a bow string, that's what i'm trying to do
heres my test program
http://www.newgrounds.com/dump/item/fade888bdd5edc337d4f02fb7f8f636e
and here's the code
xC = 0; yC = 0;
dist_ = 11.6; dist = dist_;
angle = 0;
onMove = false;
strafe = false;
this.onEnterFrame = function() {
// action
if(strafe && dist>0) { dist -= (dist_*0.20); } else { strafe = false; dist = dist_; }
// animation
if(onMove) { gotoAndStop("run"); } else { gotoAndStop("idle"); }
if(_xmouse < mc._x) { mc._xscale = -100; } else { mc._xscale = 100; }
// bow arm
bA1 = mc.bowArm1; bA2 = mc.bowArm2;
bA1._rotation = Math.atan2(_ymouse-mc._y-bA1._y,_xmouse-mc._x-bA1._x)*(180/Math.PI);
if(mc._xscale == -100) {
bA1._xscale = -100; bA1._yscale = -100;
bA1._rotation = -bA1._rotation;
} else { bA1._xscale = 100; bA1._yscale = 100; }
bA2._rotation = bA1._rotation;
if(mc._xscale == -100) { bA2._xscale = -100; bA2._yscale = -100;
} else { bA2._xscale = 100; bA2._yscale = 100; }
// arrow arm
aA = mc.arrowArm; angle = -bA1._rotation-90;
xD = Math.sin(angle * Math.PI/180)*dist;
yD = Math.cos(angle * Math.PI/180)*dist;
if(mc._xscale == -100) { xC = (mc._x+bA1._x)+xD; yC = (mc._y+bA1._y)+yD;
} else { xC = (mc._x+bA1._x)-xD; yC = (mc._y+bA1._y)-yD; }
aA._rotation = Math.atan2(yC-mc._y-aA._y,xC-mc._x-aA._x)*(180/Math.PI);
// get hypoteneus
px = mc._x+aA._x; py = mc._y+aA._y;
px = (px-Math.abs(xD))*(px-Math.abs(xD)); py = (py-Math.abs(yD))*(py-Math.abs(yD))
hypo = Math.sqrt(px+py); trace(hypo);
// 14 bicep length, 17 for arm length, Hypo
// arrrow arm, arm 1 (bicep)
// aA.arm1 // insert code here
// arrow arm, arm 2 (fore arm)
// aA.arm2 // insert code here
// movement
if(keyDown_W) { _parent._y -= 3; }
if(keyDown_S) { _parent._y += 3; }
if(keyDown_A) { _parent._x -= 3; }
if(keyDown_D) { _parent._x += 3; }
if(keyDown_W || keyDown_S || keyDown_A || keyDown_D) { onMove = true; } else { onMove = false; }
}
//**Player Controls General**//
//control variables
var keyDown_W:Boolean = false; //Up
var keyDown_S:Boolean = false; //Down
var keyDown_A:Boolean = false; //Left
var keyDown_D:Boolean = false; //Right
var keyDown_SPACE:Boolean = false; //Attack
//key listener/detect pressed keys
var playerKeys = new Object();
playerKeys.onKeyDown = function() {
//movement
if(Key.getCode()==87 && !keyDown_W) { keyDown_W = true; keyDown_S = false; }
if(Key.getCode()==83 && !keyDown_S) { keyDown_S = true; keyDown_W = false; }
if(Key.getCode()==65 && !keyDown_A) { keyDown_D = false; keyDown_A = true; }
if(Key.getCode()==68 && !keyDown_D) { keyDown_A = false; keyDown_D = true; }
//attack
if(Key.getCode()==Key.SPACE && !keyDown_SPACE) { keyDown_SPACE = true; strafe = true; }
}
playerKeys.onKeyUp = function() {
//movement
if(Key.getCode()==87) { keyDown_W = false; }
if(Key.getCode()==83) { keyDown_S = false; }
if(Key.getCode()==65) { keyDown_A = false; }
if(Key.getCode()==68) { keyDown_D = false; }
//attack
if(Key.getCode()==Key.SPACE) { keyDown_SPACE = false; }
}
Key.addListener(playerKeys);