List of usage examples for com.badlogic.gdx.math Vector2 X
Vector2 X
To view the source code for com.badlogic.gdx.math Vector2 X.
Click Source Link
From source file:com.gamejolt.mikykr5.ceidecpong.ecs.entities.PongEntityInitializer.java
License:Open Source License
@Override public void setLoadableAssets(PooledEngine engine) throws IllegalStateException { if (!entitiesCreated) throw new IllegalStateException("Entities have not been created before setting assets."); // Some variables used to initialize the ball. Vector2 randomVector = new Vector2().set(Vector2.X).setAngle(MathUtils.random(-60, 60)); int randomSign = MathUtils.random(-1, 1) >= 0 ? 1 : -1; // Fetch the assets. TextureAtlas atlas = loader.getAsset("data/gfx/textures/pong_atlas.atlas", TextureAtlas.class); Texture bckg = loader.getAsset("data/gfx/textures/bckg.png", Texture.class); // Add the sound effects to the entities. Mappers.soundMapper.get(victorySound).path = "data/sfx/oh_yeah_wav_cut.ogg"; Mappers.soundMapper.get(defeatSound).path = "data/sfx/atari_boom.ogg"; // Set up the background. Mappers.spriteMapper.get(background).sprite = new Sprite(bckg); Mappers.positionMapper.get(background).setXY(-(ProjectConstants.FB_WIDTH / 2.0f), -(ProjectConstants.FB_HEIGHT / 2.0f)); // Set up the ball. Mappers.spriteMapper.get(ball).sprite = atlas.createSprite("ball"); Mappers.positionMapper.get(ball).setXY(-(Mappers.spriteMapper.get(ball).sprite.getWidth() / 2), -(Mappers.spriteMapper.get(ball).sprite.getHeight() / 2)); Mappers.velocityMapper.get(ball).setXY(randomVector.x * 475.0f * randomSign, randomVector.y * 475.0f * randomSign); Mappers.bboxMapper.get(ball).bbox.set(Mappers.spriteMapper.get(ball).sprite.getBoundingRectangle()); Mappers.soundMapper.get(ball).path = "data/sfx/BounceYoFrankie.ogg"; // Set up the human player. Mappers.spriteMapper.get(paddleUser).sprite = atlas.createSprite("glasspaddle2"); Mappers.positionMapper.get(paddleUser).setXY(-(ProjectConstants.FB_WIDTH / 2) + 100, -(Mappers.spriteMapper.get(paddleUser).sprite.getHeight() / 2)); Mappers.bboxMapper.get(paddleUser).bbox .set(Mappers.spriteMapper.get(paddleUser).sprite.getBoundingRectangle()); Mappers.playerMapper.get(paddleUser).id = PlayerComponent.HUMAN_PLAYER; // Set up the computer player. Mappers.spriteMapper.get(paddleComp).sprite = atlas.createSprite("paddle"); Mappers.positionMapper.get(paddleComp) .setXY(((ProjectConstants.FB_WIDTH / 2) - 1) - 100 - Mappers.spriteMapper.get(paddleComp).sprite.getWidth(), -(Mappers.spriteMapper.get(paddleComp).sprite.getHeight() / 2)); Mappers.bboxMapper.get(paddleComp).bbox .set(Mappers.spriteMapper.get(paddleComp).sprite.getBoundingRectangle()); Mappers.playerMapper.get(paddleComp).id = PlayerComponent.COMPUTER_PLAYER; // Release the assets loader instance and mark the flag. AsyncAssetLoader.freeInstance();//from ww w .j av a2s . c o m assetsLoaded = true; }
From source file:com.gamejolt.mikykr5.ceidecpong.ecs.systems.CollisionDetectionSystem.java
License:Open Source License
private void resetEntity(Entity entity) { PositionComponent position = Mappers.positionMapper.get(entity); SpriteComponent sprite = Mappers.spriteMapper.get(entity); VelocityComponent velocity = Mappers.velocityMapper.get(entity); int randomSign = MathUtils.random(-1, 1) >= 0 ? 1 : -1; randomVector.set(Vector2.X).setAngle(MathUtils.random(-60, 60)); velocity.setXY(randomVector.x * -475 * randomSign, randomVector.y * 475 * randomSign); if (position != null) { if (sprite != null) { position.setXY(-(sprite.sprite.getWidth() / 2), -(sprite.sprite.getHeight() / 2)); } else {//from ww w. j a v a2 s.c o m position.setXY(0, 0); } } }
From source file:com.github.unluckyninja.defenseofhuman.model.entity.Rope.java
License:Open Source License
public Rope(GameWorld gameWorld, Body body, Vector2 direction) { this.gameWorld = gameWorld; world = body.getWorld();// ww w .j ava2 s . c om bodyA = body; // ??? Vector2 oriPosition = new Vector2(body.getPosition()); if (direction.equals(Vector2.Zero)) { direction = Vector2.X; } Vector2 dir = new Vector2(direction); dir.nor(); Vector2 distance = dir.scl(width / 2 * 1.25f); // ,?1/4,? // ?body bodyDef.angle = (float) Math.toRadians(dir.angle()); bodyDef.position.set(distance.add(oriPosition)); bodyDef.linearDamping = 0.3f; bodyDef.type = BodyDef.BodyType.DynamicBody; Body piece = body.getWorld().createBody(bodyDef); piece.setGravityScale(0.1f); // ? // ??,???? fixtureDef.isSensor = true; fixtureDef.density = 0.001f; polygonShape.setAsBox(width / 2, height / 2); fixtureDef.shape = polygonShape; piece.createFixture(fixtureDef); // ? RevoluteJointDef rjDef = new RevoluteJointDef(); rjDef.bodyA = body; rjDef.bodyB = piece; rjDef.localAnchorA.x = 0; rjDef.localAnchorA.y = 0; rjDef.localAnchorB.x = -width / 2 * 1.25f; rjDef.localAnchorB.y = 0; joints.add(body.getWorld().createJoint(rjDef)); pieces.add(piece); piece.setUserData(this); }
From source file:com.github.unluckyninja.defenseofhuman.model.entity.Rope.java
License:Open Source License
private Rope append(Vector2 direction) { //TODO //from w w w . j a v a2 s. co m Body body = pieces.get(pieces.size - 1); // ??? oriPosition.set(body.getWorldPoint(temp1.set(width / 2 * 1.25f, 0))); if (direction.equals(Vector2.Zero)) { direction = Vector2.X; } dir.set(direction); dir.nor(); dir.scl(width / 2 * 1.25f); // ?body bodyDef.angle = (float) Math.toRadians(dir.angle()); bodyDef.position.set(dir.add(oriPosition)); Body piece = body.getWorld().createBody(bodyDef); piece.setGravityScale(0.1f); // ? fixtureDef.isSensor = true; fixtureDef.density = 0.001f; polygonShape.setAsBox(width / 2, height / 2); fixtureDef.shape = polygonShape; piece.createFixture(fixtureDef); // ?? RevoluteJointDef rjDef = new RevoluteJointDef(); rjDef.bodyA = body; rjDef.bodyB = piece; rjDef.localAnchorA.x = width / 2 * 1.25f; rjDef.localAnchorA.y = 0; rjDef.localAnchorB.x = -width / 2 * 1.25f; rjDef.localAnchorB.y = 0; joints.add(body.getWorld().createJoint(rjDef)); pieces.add(piece); body.setUserData(this); return this; }
From source file:com.github.unluckyninja.defenseofhuman.model.GameWorld.java
License:Open Source License
public GameWorld() { this.world = new World(new Vector2(0, -10), true); entities = new Array<Entity>(); toremove = new Array<Entity>(); // for test/*from ww w . jav a 2s.com*/ Vector2 position = new Vector2(0, 0); BodyDef def = new BodyDef(); def.position.set(0, 0); EdgeShape edge = new EdgeShape(); edge.set(-50, -2, 50, -2); world.createBody(def).createFixture(edge, 0); edge.set(-10, 4, 10, 3); world.createBody(def).createFixture(edge, 0); localPlayer = createPlayer(position); edge.dispose(); def.position.set(-5, 0); def.type = BodyDef.BodyType.StaticBody; Body body1 = world.createBody(def); def.position.set(5, 1); Body body2 = world.createBody(def); CircleShape circle = new CircleShape(); circle.setRadius(0.4f); body1.createFixture(circle, 1); body2.createFixture(circle, 1); new Rope(this, body2, Vector2.X).append(10, Vector2.X); circle.dispose(); }
From source file:vault.clockwork.actors.HandActor.java
License:Open Source License
/** * Wystrzeliwuje kulke, gdy ta nie jest jeszcze wystrzelona. *///from w w w . ja va 2 s.com public void shootPaperBall() { if (paperBall != null) { return; } // kierunek i sila wystrzalu Vector2 force = Vector2.X.cpy().setAngle(getRotation()).scl(staminaLevel * 500.f); // stworz kulke paperBall = new PaperBallActor(0); paperBall.setPosition(position); paperBall.applyForce(force); Game.scene.ACTION_1.add(paperBall); }
From source file:vault.clockwork.actors.HandActor.java
License:Open Source License
/** * Calculate angle difference of hand by a given vector. * @param by// w w w .ja va 2s . co m * @return */ private float angleDifference(Vector2 by) { return by.angle(Vector2.X.cpy().setAngle(sprHand.getRotation())); }