Thursday, July 23, 2009

Generic Body

AddSpringBox(12,8,2,.1,-.45)

////////////////////////
public function AddSpringBox(_x:Number,_y:Number,_halfwidth:Number,_halfheight:Number,ang:Number):void {
var bodyDef:b2BodyDef = new b2BodyDef();
bodyDef.position.Set(_x,_y);
var boxDef:b2PolygonDef = new b2PolygonDef();
boxDef.SetAsBox(_halfwidth,_halfheight);
bodyDef.angle=ang
boxDef.density = 0.0;
boxDef.restitution=1
var body:b2Body = m_world.CreateBody(bodyDef);
body.CreateShape(boxDef);
body.SetMassFromShapes();





red=new Red;
red.x=body.GetPosition().x* 30;
red.y=body.GetPosition().y* 30;
red.scaleX=_halfwidth;
red.scaleY=_halfheight*2
red.rotation = body.GetAngle() * (180/Math.PI);

m_dbgSprite.addChild(red);
body.m_userData = red;
}

Monday, July 20, 2009

ADD body to an existing one

var wallSd2l:b2PolygonDef = new b2PolygonDef();
var wallBd2l:b2BodyDef = new b2BodyDef();

var boxDef11:b2PolygonDef = new b2PolygonDef()
var wallB2l:b2Body;
wallBd2l.position.Set(12,5);//8.8
//wallSd2k.restitution=1

wallSd2l.SetAsBox(.1, 2);
//wallBd2l.angle=-.45
wallB2l = m_world.CreateBody(wallBd2l);
wallB2l.CreateShape(wallSd2l);
wallB2l.SetMassFromShapes();


////////

boxDef11.SetAsOrientedBox(2, 0.1, new b2Vec2(0, 0), 0);//w h x y angle
wallB2l.CreateShape(boxDef11);

Friday, July 10, 2009

Fly Up AND Left

var forcex=Math.round(body.GetPosition().x-bodya.GetPosition().x);
var forcey=Math.round(body.GetPosition().y-bodya.GetPosition().y);

var nullX=Math.sqrt((forcex)*(forcex) + (forcey)*(forcey))

//if (Math.abs(forcey)==0)///fly horizontal
if (Math.abs(forcex)==0)///fly up
//if(body.GetPosition().x>5 && body.GetPosition().x<7 && body.GetPosition().y<9)

{
trace("rt")
body.ApplyForce( new b2Vec2(-3, 0), body.GetWorldCenter());
}

Wednesday, July 8, 2009

Set Mass At run Time

To change the mass at run time just make desity=0 at the time of defining body
and in At run time Change its Mass


Update()
{
var massData = new b2MassData();
massData.mass = 1;

massData.center = new b2Vec2(-1,1);
massData.I=2
wallBd.SetMass(massData);//wallBd is a body
wallBd.WakeUp()
}

//////////////
bodyDef1.isSleeping = true; is used to make body active whenever its hit by anyobject

Thursday, July 2, 2009

Searching elements in ARRAY

package{
import flash.display.Sprite;

public class Main extends Sprite{
public function Main(){
var letters:Array = ["a", "b", "c", "d", "a", "b", "c", "d"];

var match:String = "b";

for (var i:int = 0; i < letters.length; i++) {
if (letters[i] == match) {
trace("Element with index " + i + " found to match " + match);
break;
}
}
}
}
}

FEEDJIT Live