07.12.2012 Views

Adobe Director Basics

Adobe Director Basics

Adobe Director Basics

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

ADOBE DIRECTOR BASICS<br />

3D: Controlling action<br />

Accessing a rigidBody<br />

There are three methods for obtaining a pointer to a rigidBody<br />

physicsMember.getRigidBody() returns a pointer to the rigidBody whose name you pass as a parameter, or VOID if<br />

no rigidBody with that name exists.<br />

physicsMember.getRigidBodies() returns a list of all the rigidBody objects in the Physics world.<br />

physicsMember.getSleepingBodies() returns a list of all the dynamic rigidBody objects in the Physics world which<br />

are currently not moving.<br />

Note: If you use an integer as the parameter to getRigidBody(), a script error occurs. To access a rigidBody by its integer<br />

index number, use the following syntax:<br />

vRB = physicsMember.getRigidBodies()[aIndex]<br />

-- Lingo syntax<br />

put member("Physics").getRigidBody("Ball")<br />

-- rigidBody("ball")<br />

put member("Physics").getRigidBody("non-existant")<br />

-- <br />

put member("Physics").getRigidBodies()<br />

-- [rigidBody("bat"), rigidBody("ball")]<br />

put member("Physics").getSleepingBodies()<br />

-- [rigidBody("ball")]<br />

// JavaScript syntax<br />

trace(member("Physics").getRigidBody("Ball"));<br />

// <br />

trace(member("Physics").getRigidBody("non-existant"));<br />

// undefined<br />

trace(member("Physics").getRigidBodies());<br />

// <br />

trace(member("Physics").getSleepingBodies());<br />

// <br />

Deleting a rigidBody<br />

To delete a rigidBody from a Physics member, you can use deleteRigidBody().<br />

-- Lingo syntax<br />

vRB = member("Physics").getRigidBody("bat")put put member("Physics").deleteRigidBody(vRB)<br />

-- 1<br />

put member("Physics").deleteRigidBody("ball")<br />

-- 0<br />

// JavaScript syntax<br />

vRB = member("Physics").getRigidBodies()[1];<br />

<br />

member("Physics").deleteRigidBody(vRB);<br />

1<br />

vName = member("Physics").getRigidBodies()[1].name;<br />

ball<br />

member("Physics").deleteRigidBody(vName);<br />

1<br />

Note: Calling deleteRigidBody("aNonExistantBodyName"), and then attempting to create a rigidBody with that<br />

name can lead to a script error.<br />

Last updated 8/26/2011<br />

310

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!