Mercurial > projects > chipmunkd
diff trunk/tests/ChipmunkDemos/samples/ChipmunkDemo.d @ 16:af2f61a96318
ported chipmunk demos
author | Extrawurst |
---|---|
date | Sat, 04 Dec 2010 02:02:29 +0100 |
parents | |
children | ee7fa417266b |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/trunk/tests/ChipmunkDemos/samples/ChipmunkDemo.d Sat Dec 04 02:02:29 2010 +0100 @@ -0,0 +1,33 @@ + +// written in the D programming language + +module samples.ChipmunkDemo; + +import chipmunkd.chipmunk; + +import drawSpace; + +import core.stdc.stdlib; + +alias cpSpace *function() demoInitFunc; +alias void function(int ticks) demoUpdateFunc; +alias void function()demoDestroyFunc; + +struct chipmunkDemo { + string name; + + const drawSpaceOptions *drawOptions; + + demoInitFunc initFunc; + demoUpdateFunc updateFunc; + demoDestroyFunc destroyFunc; +} + +static cpFloat +frand() +{ + return cast(cpFloat)rand()/cast(cpFloat)RAND_MAX; +} + +enum GRABABLE_MASK_BIT = (1<<31); +enum NOT_GRABABLE_MASK = (~GRABABLE_MASK_BIT);