View difference between Paste ID: EqHTKxgm and jUK1yzcY
SHOW: | | - or go back to the newest paste.
1
///// body construction
2
		BodyDef bodyDef = new BodyDef();
3
		// We set our body to dynamic, for something like ground which doesnt move we would set it to StaticBody
4
		bodyDef.type = BodyType.DynamicBody;
5
		// Set our body's starting position in the world
6
		bodyDef.position.set(100, 200);
7
		
8
		// Create our body in the world using our body definition
9
		Body body = world.createBody(bodyDef);
10
11
		// Create a circle shape and set its radius to 6
12
		CircleShape circle = new CircleShape();
13
		circle.setRadius(20f);
14
15
		// Create a fixture definition to apply our shape to
16
		FixtureDef fixtureDef = new FixtureDef();
17
		fixtureDef.shape = circle;
18
		fixtureDef.density = 500f; 
19
		fixtureDef.friction = 0f;
20
		fixtureDef.restitution = 1f; 
21
		
22
		// Create our fixture and attach it to the body
23
		fixture = body.createFixture(fixtureDef);
24
25
//// apply force on press of keys
26
        Vector2 impulse = new Vector2();
27
        impulse.x = ( Gdx.input.isKeyPressed( Input.Keys.LEFT ) ? - 1000
28
                : ( Gdx.input.isKeyPressed( Input.Keys.RIGHT ) ? 1000 : 0 ) );
29
        impulse.y = ( Gdx.input.isKeyPressed( Input.Keys.UP ) ? 1000
30
                : ( Gdx.input.isKeyPressed( Input.Keys.DOWN ) ? - 1000 : 0 ) );
31
32
        fixture.getBody().applyLinearImpulse(impulse, fixture.getBody().getWorldCenter());
33
34
//// painting using the body pos
35
	Actor e = (Actor) b.getUserData();
36
	
37
	if (e != null) {
38
		// Update the entities/sprites position and angle
39
		e.setPosition(b.getPosition().x, b.getPosition().y);
40
		// We need to convert our angle from radians to degrees
41
		e.setRotation(MathUtils.radiansToDegrees * b.getAngle());
42
	}