Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package sidescroller.gamestates;
- import static sidescroller.manager.B2DVars.PPM;
- import sidescroller.game.Game;
- import sidescroller.manager.GameKeys;
- import sidescroller.manager.GameStateManager;
- import sidescroller.manager.MapBodyManager;
- import sidescroller.manager.MyContactListener;
- import com.badlogic.gdx.Gdx;
- import com.badlogic.gdx.graphics.GL20;
- import com.badlogic.gdx.graphics.OrthographicCamera;
- import com.badlogic.gdx.maps.tiled.TiledMap;
- import com.badlogic.gdx.maps.tiled.TmxMapLoader;
- import com.badlogic.gdx.maps.tiled.renderers.OrthogonalTiledMapRenderer;
- import com.badlogic.gdx.math.Vector2;
- import com.badlogic.gdx.physics.box2d.Body;
- import com.badlogic.gdx.physics.box2d.BodyDef;
- import com.badlogic.gdx.physics.box2d.Box2DDebugRenderer;
- import com.badlogic.gdx.physics.box2d.CircleShape;
- import com.badlogic.gdx.physics.box2d.FixtureDef;
- import com.badlogic.gdx.physics.box2d.PolygonShape;
- import com.badlogic.gdx.physics.box2d.World;
- import com.badlogic.gdx.physics.box2d.joints.RevoluteJoint;
- import com.badlogic.gdx.physics.box2d.joints.RevoluteJointDef;
- import com.badlogic.gdx.physics.box2d.joints.WeldJointDef;
- public class Play extends GameState {
- private World world;
- private Box2DDebugRenderer b2Ddr;
- private OrthographicCamera b2dCam;
- private Body playerBody;
- private FixtureDef feetFixture, bodyFixture;
- private int remainingJumpSteps;
- private boolean jumping;
- private MyContactListener cl;
- private MapBodyManager mbm;
- private TiledMap tileMap;
- private OrthogonalTiledMapRenderer tmr;
- public Play(GameStateManager gsm) {
- super(gsm);
- init();
- remainingJumpSteps = 5;
- }
- public void init() {
- world = new World(new Vector2(0, -9.81f), true);
- cl = new MyContactListener();
- world.setContactListener(cl);
- b2Ddr = new Box2DDebugRenderer();
- // TileMap
- tileMap = new TmxMapLoader().load("map/test.tmx");
- tmr = new OrthogonalTiledMapRenderer(tileMap);
- mbm = new MapBodyManager(world, PPM,
- Gdx.files.internal("res/map/materials.json"));
- mbm.createPhysics(tileMap, "physics");
- b2dCam = new OrthographicCamera();
- b2dCam.setToOrtho(false, Game.getWidth() / PPM, Game.getHeight() / PPM);
- b2dCam.update();
- createPlayer();
- }
- [...]
- public void draw() {
- Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
- // draw tile map
- tmr.setView(cam);
- tmr.render();
- cam.position.set(playerBody.getPosition().x, playerBody.getPosition().y, 0);
- cam.update();
- b2Ddr.render(world, b2dCam.combined);
- b2dCam.position.set(playerBody.getPosition().x, playerBody.getPosition().y, 0);
- b2dCam.update();
- }
- [...]
- }
Advertisement
Add Comment
Please, Sign In to add comment