Mercurial > projects > openmelee
comparison orz.d @ 6:eb6059f7035a
Added planet
author | zzzzrrr <mason.green@gmail.com> |
---|---|
date | Sat, 21 Mar 2009 16:42:08 -0400 |
parents | 6f455ef24063 |
children | 2217fd1fe384 |
comparison
equal
deleted
inserted
replaced
5:6f455ef24063 | 6:eb6059f7035a |
---|---|
27 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS | 27 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS |
28 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 28 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
29 */ | 29 */ |
30 module openmelee.orz; | 30 module openmelee.orz; |
31 | 31 |
32 import tango.io.Stdout; | |
33 | |
34 import blaze.dynamics.bzBody : bzBody; | 32 import blaze.dynamics.bzBody : bzBody; |
35 import blaze.bzWorld: bzWorld; | 33 import blaze.bzWorld: bzWorld; |
36 import blaze.dynamics.bzBodyDef; | 34 import blaze.dynamics.bzBodyDef; |
37 import blaze.collision.shapes.bzPolygon : bzPolyDef; | 35 import blaze.collision.shapes.bzPolygon : bzPolyDef; |
38 import blaze.common.bzMath: bzVec2, PI; | 36 import blaze.common.bzMath: bzVec2, PI; |
41 | 39 |
42 // UrQuan Dreadnought | 40 // UrQuan Dreadnought |
43 class Orz : Ship | 41 class Orz : Ship |
44 { | 42 { |
45 | 43 |
46 float scale = 0.01; | 44 float scale = 0.025; |
47 | 45 |
48 this(bzWorld world) { | 46 this(bzWorld world) { |
49 | 47 |
50 super.engineForce = bzVec2(5, 0); | 48 super(world); |
51 super.turnForce = bzVec2(0, 300); | 49 super.engineForce = bzVec2(300, 0); |
50 super.turnForce = bzVec2(0, 10000); | |
52 super.rightTurnPoint = bzVec2(-0.1, 0); | 51 super.rightTurnPoint = bzVec2(-0.1, 0); |
53 super.leftTurnPoint = bzVec2(0.1, 0); | 52 super.leftTurnPoint = bzVec2(0.1, 0); |
54 | 53 |
55 auto bodyDef = new bzBodyDef; | 54 auto bodyDef = new bzBodyDef; |
56 bodyDef.position = bzVec2(10,10); | 55 bodyDef.position = bzVec2(10,10); |
57 bodyDef.angle = PI/2; | 56 bodyDef.angle = PI/2; |
58 bodyDef.allowFreeze = false; | 57 bodyDef.allowFreeze = false; |
59 | 58 |
60 auto rBody = world.createBody(bodyDef); | 59 rBody = world.createBody(bodyDef); |
61 super(rBody); | |
62 float density = 2.0f; | 60 float density = 2.0f; |
63 | 61 |
64 // Body | 62 // Body |
65 auto b = new bzPolyDef(density); | 63 auto b = new bzPolyDef(density); |
66 b.vertices.length = 4; | 64 b.vertices.length = 4; |
89 bWing.vertices[3] = bzVec2(70,-21) * scale; | 87 bWing.vertices[3] = bzVec2(70,-21) * scale; |
90 bWing.vertices[4] = bzVec2(42,-21) * scale; | 88 bWing.vertices[4] = bzVec2(42,-21) * scale; |
91 shapes.add(rBody.createShape(bWing)); | 89 shapes.add(rBody.createShape(bWing)); |
92 | 90 |
93 rBody.setMassFromShapes(); | 91 rBody.setMassFromShapes(); |
94 | 92 setGravity(); |
95 } | 93 } |
96 } | 94 } |