List of usage examples for com.badlogic.gdx.graphics.g2d Sprite flip
public void flip(boolean x, boolean y)
From source file:com.bitfire.postprocessing.demo.ResourceFactory.java
License:Apache License
public static Sprite newSprite(String textureName) { Sprite s = new Sprite(newTexture(textureName, false)); s.flip(false, true); return s;//from w ww . j a va2 s .c om }
From source file:com.forerunnergames.peril.client.ui.screens.menus.MenuScreenWidgetFactory.java
License:Open Source License
private Sprite createBottomBackgroundShadowSprite() { final Sprite sprite = new Sprite(createTopBackgroundShadowSprite()); sprite.flip(false, true); return sprite; }
From source file:com.saltosion.gladiator.level.EntityFactory.java
License:Open Source License
private CRenderedObject createPlayerRenderedObject() { CRenderedObject renderedObject = new CRenderedObject(); // Sprite[x][y][flip] Sprite[][][] playerSprites = new Sprite[2][19][2]; for (int x = 0; x < 2; x++) { for (int y = 0; y < 19; y++) { Sprite noFlip = SpriteLoader.loadSprite(Name.PLAYERIMG, x, y, 128, 112); Sprite flip = new Sprite(noFlip); flip.flip(true, false); playerSprites[x][y][0] = noFlip; playerSprites[x][y][1] = flip; }/*from w w w .j a v a 2 s. c om*/ } renderedObject.setChannelName("default", "legs"); renderedObject.addChannel("torso"); // Idle animations SpriteSequence torsoIdleRightSequence = new SpriteSequence(IDLE_ANIMATION_SPEED) .addSprite(playerSprites[0][0][0]).addSprite(playerSprites[0][1][0]); renderedObject.addSequence("Torso-Idle-Right", torsoIdleRightSequence); SpriteSequence legsIdleRightSquence = new SpriteSequence(IDLE_ANIMATION_SPEED) .addSprite(playerSprites[1][0][0]).addSprite(playerSprites[1][1][0]); renderedObject.addSequence("Legs-Idle-Right", legsIdleRightSquence); SpriteSequence torsoIdleLeftSequence = new SpriteSequence(IDLE_ANIMATION_SPEED) .addSprite(playerSprites[0][0][1]).addSprite(playerSprites[0][1][1]); renderedObject.addSequence("Torso-Idle-Left", torsoIdleLeftSequence); SpriteSequence legsIdleLeftSquence = new SpriteSequence(IDLE_ANIMATION_SPEED) .addSprite(playerSprites[1][0][1]).addSprite(playerSprites[1][1][1]); renderedObject.addSequence("Legs-Idle-Left", legsIdleLeftSquence); // Running animations SpriteSequence torsoRunRightSequence = new SpriteSequence(RUN_ANIMATION_SPEED) .addSprite(playerSprites[0][2][0]).addSprite(playerSprites[0][3][0]) .addSprite(playerSprites[0][4][0]).addSprite(playerSprites[0][5][0]) .addSprite(playerSprites[0][6][0]).addSprite(playerSprites[0][5][0]) .addSprite(playerSprites[0][4][0]).addSprite(playerSprites[0][3][0]); renderedObject.addSequence("Torso-Run-Right", torsoRunRightSequence); SpriteSequence legsRunRightSequence = new SpriteSequence(RUN_ANIMATION_SPEED) .addSprite(playerSprites[1][2][0]).addSprite(playerSprites[1][3][0]) .addSprite(playerSprites[1][4][0]).addSprite(playerSprites[1][5][0]) .addSprite(playerSprites[1][6][0]).addSprite(playerSprites[1][7][0]) .addSprite(playerSprites[1][8][0]).addSprite(playerSprites[1][9][0]); renderedObject.addSequence("Legs-Run-Right", legsRunRightSequence); SpriteSequence torsoRunLeftSequence = new SpriteSequence(RUN_ANIMATION_SPEED) .addSprite(playerSprites[0][2][1]).addSprite(playerSprites[0][3][1]) .addSprite(playerSprites[0][4][1]).addSprite(playerSprites[0][5][1]) .addSprite(playerSprites[0][6][1]).addSprite(playerSprites[0][5][1]) .addSprite(playerSprites[0][4][1]).addSprite(playerSprites[0][3][1]); renderedObject.addSequence("Torso-Run-Left", torsoRunLeftSequence); SpriteSequence legsRunLeftSequence = new SpriteSequence(RUN_ANIMATION_SPEED) .addSprite(playerSprites[1][2][1]).addSprite(playerSprites[1][3][1]) .addSprite(playerSprites[1][4][1]).addSprite(playerSprites[1][5][1]) .addSprite(playerSprites[1][6][1]).addSprite(playerSprites[1][7][1]) .addSprite(playerSprites[1][8][1]).addSprite(playerSprites[1][9][1]); renderedObject.addSequence("Legs-Run-Left", legsRunLeftSequence); // Jumping animation SpriteSequence legsJumpRightSequence = new SpriteSequence(SWING_ANIMATION_SPEED) .addSprite(playerSprites[1][8][0]); renderedObject.addSequence("Legs-Jump-Right", legsJumpRightSequence); SpriteSequence legsJumpLeftSequence = new SpriteSequence(SWING_ANIMATION_SPEED) .addSprite(playerSprites[1][8][1]); renderedObject.addSequence("Legs-Jump-Left", legsJumpLeftSequence); // Combat animations SpriteSequence torsoCombatRightSequence = new SpriteSequence(SWING_ANIMATION_SPEED) .addSprite(playerSprites[0][7][0]).addSprite(playerSprites[0][8][0]) .addSprite(playerSprites[0][9][0]).addSprite(playerSprites[0][10][0]); renderedObject.addSequence("Torso-Combat-Right", torsoCombatRightSequence); SpriteSequence torsoCombatLeftSequence = new SpriteSequence(SWING_ANIMATION_SPEED) .addSprite(playerSprites[0][7][1]).addSprite(playerSprites[0][8][1]) .addSprite(playerSprites[0][9][1]).addSprite(playerSprites[0][10][1]); renderedObject.addSequence("Torso-Combat-Left", torsoCombatLeftSequence); SpriteSequence torsoCombatRightDownSequence = new SpriteSequence(SWING_ANIMATION_SPEED) .addSprite(playerSprites[0][11][0]).addSprite(playerSprites[0][12][0]) .addSprite(playerSprites[0][13][0]).addSprite(playerSprites[0][14][0]); renderedObject.addSequence("Torso-Combat-Right-Down", torsoCombatRightDownSequence); SpriteSequence torsoCombatRightUpSequence = new SpriteSequence(SWING_ANIMATION_SPEED) .addSprite(playerSprites[0][15][0]).addSprite(playerSprites[0][16][0]) .addSprite(playerSprites[0][17][0]).addSprite(playerSprites[0][18][0]); renderedObject.addSequence("Torso-Combat-Right-Up", torsoCombatRightUpSequence); SpriteSequence torsoCombatLeftDownSequence = new SpriteSequence(SWING_ANIMATION_SPEED) .addSprite(playerSprites[0][11][1]).addSprite(playerSprites[0][12][1]) .addSprite(playerSprites[0][13][1]).addSprite(playerSprites[0][14][1]); renderedObject.addSequence("Torso-Combat-Left-Down", torsoCombatLeftDownSequence); SpriteSequence torsoCombatLeftUpSequence = new SpriteSequence(SWING_ANIMATION_SPEED) .addSprite(playerSprites[0][15][1]).addSprite(playerSprites[0][16][1]) .addSprite(playerSprites[0][17][1]).addSprite(playerSprites[0][18][1]); renderedObject.addSequence("Torso-Combat-Left-Up", torsoCombatLeftUpSequence); renderedObject.playAnimation("torso", "Torso-Idle-Right"); renderedObject.playAnimation("legs", "Legs-Idle-Right"); return renderedObject; }
From source file:com.spaceapps.liftoffgame.screens.GameScreen.java
public void createButtons() { engineButton = new ButtonActor(LiftOffGame.getInstance().resources.getNewSprite("button")); engineButton.setBounds(0, 0, 150, 100); engineButton.setIcon(LiftOffGame.getInstance().resources.getNewSprite("engine")); engineButton.addListener(new ClickListener() { @Override/*from w w w . j av a2s. c o m*/ public void clicked(InputEvent event, float x, float y) { addProgressBar("engine", 10, "Starting engines", ProgressBar.ActionEvent.EngineOn); engineButton.setBlendColor(Color.BLUE); LiftOffGame.getInstance().resources.playSound(1); } }); stage.addActor(engineButton); cargoButton = new ButtonActor(LiftOffGame.getInstance().resources.getNewSprite("button")); cargoButton.setBounds(0, 100, 150, 100); cargoButton.setIcon(LiftOffGame.getInstance().resources.getNewSprite("cargo")); cargoButton.addListener(new ClickListener() { @Override public void clicked(InputEvent event, float x, float y) { addProgressBar("cargo", 6, "Loading cargo", ProgressBar.ActionEvent.None); cargoButton.setBlendColor(Color.RED); LiftOffGame.getInstance().resources.playSound(1); game.loadCargo(); } }); stage.addActor(cargoButton); fuelButton = new ButtonActor(LiftOffGame.getInstance().resources.getNewSprite("button")); fuelButton.setBounds(0, 200, 150, 100); fuelButton.setIcon(LiftOffGame.getInstance().resources.getNewSprite("fuel")); fuelButton.addListener(new ClickListener() { @Override public void clicked(InputEvent event, float x, float y) { addProgressBar("fuel", 15f, "Fueling rocket", ProgressBar.ActionEvent.None); rocketTankFullAnimation(); fuelButton.setBlendColor(Color.YELLOW); LiftOffGame.getInstance().resources.playSound(1); game.tankFuel(); } }); stage.addActor(fuelButton); crewButton = new ButtonActor(LiftOffGame.getInstance().resources.getNewSprite("button")); crewButton.setBounds(0, 300, 150, 100); crewButton.setIcon(LiftOffGame.getInstance().resources.getNewSprite("astronaut")); crewButton.addListener(new ClickListener() { @Override public void clicked(InputEvent event, float x, float y) { addProgressBar("astronaut", 12, "Boarding of crew", ProgressBar.ActionEvent.CrewIn); crewButton.setBlendColor(Color.ORANGE); LiftOffGame.getInstance().resources.playSound(1); game.loadCrew(); } }); stage.addActor(crewButton); radarButton = new ButtonActor(LiftOffGame.getInstance().resources.getNewSprite("button")); radarButton.setBounds(0, 400, 150, 100); radarButton.setIcon(LiftOffGame.getInstance().resources.getNewSprite("radar")); radarButton.addListener(new ClickListener() { @Override public void clicked(InputEvent event, float x, float y) { addProgressBar("radar", 2, "Radar check in progress", ProgressBar.ActionEvent.None); radarButton.setBlendColor(Color.GREEN); LiftOffGame.getInstance().resources.playSound(1); } }); stage.addActor(radarButton); platformButton = new ButtonActor(LiftOffGame.getInstance().resources.getNewSprite("button")); platformButton.setBounds(0, 500, 150, 100); platformButton.setIcon(LiftOffGame.getInstance().resources.getNewSprite("platform_on")); platformButton.addListener(new ClickListener() { @Override public void clicked(InputEvent event, float x, float y) { addProgressBar("platform_on", 10, "Platform", ProgressBar.ActionEvent.PlatformOff); platformButton.setBlendColor(Color.PURPLE); LiftOffGame.getInstance().resources.playSound(1); } }); stage.addActor(platformButton); Sprite buttonSprite = LiftOffGame.getInstance().resources.getNewSprite("button"); buttonSprite.flip(true, false); goButton = new ButtonActor(buttonSprite); goButton.setBounds(874, 300, 150, 100); goButton.setIcon(LiftOffGame.getInstance().resources.getNewSprite("gotext")); goButton.addListener(new ClickListener() { @Override public void clicked(InputEvent event, float x, float y) { LiftOffGame.getInstance().resources.playSound(3); LiftOffGame.getInstance().resources.playSound(4); Game.EndGameStory s = game.checkConditionsEndGame(); if (s != Game.EndGameStory.None) { System.out.println("Failure: " + s.toString()); rocketCrashAnimation(); } else game.launchRocket(); } }); stage.addActor(goButton); buttonSprite = LiftOffGame.getInstance().resources.getNewSprite("button"); buttonSprite.flip(true, false); nogoButton = new ButtonActor(buttonSprite); nogoButton.setBounds(874, 200, 150, 100); nogoButton.setIcon(LiftOffGame.getInstance().resources.getNewSprite("nogotext")); nogoButton.addListener(new ClickListener() { @Override public void clicked(InputEvent event, float x, float y) { LiftOffGame.getInstance().resources.playSound(5); game.postponeStart(30); } }); stage.addActor(nogoButton); }
From source file:com.trueMagic.object.creature.Creature.java
@Override public void draw(Batch batch, ShapeRenderer shapeRenderer) { for (Sprite sprite : sprites) { if (sprite != null) { sprite.setX(body.getPosition().x * 64 - sprite.getWidth() / 2); sprite.setY(body.getPosition().y * 64 - sprite.getHeight() / 2); sprite.setRotation((float) (body.getAngle() * 360 / (2 * Math.PI))); sprite.flip(facingRight, false); sprite.draw(batch);/*from w w w .j a va 2 s . c o m*/ } } }
From source file:group04.core.Renderer.java
private void drawSprite(GameData gameData, World world, Entity entity, Sprite sprite, boolean flip) { if (entity.getAngle() != 0) { sprite.setRotation((float) Math.toDegrees(entity.getAngle())); } else if (flip) { if (entity.getEntityType() == EntityType.PLAYER && ((gameData.getMouseX() < (entity.getX() - gameData.getCameraX()) && !sprite.isFlipX()) || (gameData.getMouseX() > (entity.getX() - gameData.getCameraX()) && sprite.isFlipX()))) { sprite.flip(true, false); }//from w w w.j a v a 2 s .c om if (entity.getEntityType() != EntityType.PLAYER && ((entity.getVelocity() < 0 && !sprite.isFlipX()) || (entity.getVelocity() > 0 && sprite.isFlipX()))) { sprite.flip(true, false); } } sprite.setX(entity.getDrawOffsetX() + entity.getX() - gameData.getCameraX()); sprite.setY(entity.getDrawOffsetY() + entity.getY() - gameData.getCameraY()); sprite.draw(batch); }
From source file:presentation.concretion.game.Character.java
License:Open Source License
/** * Load animation of hero./* w w w. j a v a 2 s . c om*/ * * @param stateHero * is the state of hero to load respective animation. * @return sprite to animate it. */ public Sprite loadAnimationHero(HeroState stateHero, boolean isFaceRight, GameState gameState) { Sprite s = null; switch (stateHero) { case INACTIVE: s = ResourceHeros.heroStance.getKeyFrame(stateTime, Animator.ANIMATION_LOOPING); attackTime = 0; break; case AIR: s = ResourceHeros.heroJump; attackTime = 0; break; case AIR_ATTACK: s = ResourceHeros.heroAirAttack.getKeyFrame(attackTime, Animator.ANIMATION_NONLOOPING); attackTime++; break; case AIR_SP1: s = ResourceHeros.heroAirSp1.getKeyFrame(attackTime, Animator.ANIMATION_NONLOOPING); attackTime++; break; case AIR_SP2: s = ResourceHeros.heroAirSp2.getKeyFrame(attackTime, Animator.ANIMATION_NONLOOPING); attackTime++; break; case AIR_SP3: s = ResourceHeros.heroAirSp3.getKeyFrame(attackTime, Animator.ANIMATION_NONLOOPING); attackTime++; break; case BEHIND_DAMAGE: s = ResourceHeros.heroBegindDamage; break; case FRONT_DAMAGE: s = ResourceHeros.heroFrontDamage; break; case DEAD: s = ResourceHeros.heroDead.getKeyFrame(deadTime, Animator.ANIMATION_NONLOOPING); deadTime++; break; case GR_ATTACK_STANCE: s = ResourceHeros.heroGrAttackStance.getKeyFrame(attackTime, Animator.ANIMATION_NONLOOPING); attackTime++; break; case GR_SP1: s = ResourceHeros.heroGrSp1.getKeyFrame(attackTime, Animator.ANIMATION_NONLOOPING); attackTime++; break; case GR_SP2: s = ResourceHeros.heroGrSp2.getKeyFrame(attackTime, Animator.ANIMATION_NONLOOPING); attackTime++; break; case GR_SP3: s = ResourceHeros.heroGrSp3.getKeyFrame(attackTime, Animator.ANIMATION_NONLOOPING); attackTime++; break; case WALK: s = ResourceHeros.heroRun.getKeyFrame(stateTime, Animator.ANIMATION_LOOPING); attackTime = 0; break; case WIN: s = ResourceHeros.heroWin.getKeyFrame(stateTime, Animator.ANIMATION_LOOPING); break; case LOSE: s = ResourceHeros.heroLose.getKeyFrame(stateTime, Animator.ANIMATION_LOOPING); break; } stateTime++; // Flip sprite if (stateHero == HeroState.DEAD) { if (isFaceRight && !s.isFlipX()) { s.flip(true, false); } else if (!isFaceRight && s.isFlipX()) { s.flip(true, false); } } else { if (!isFaceRight && !s.isFlipX()) { s.flip(true, false); } else if (isFaceRight && s.isFlipX()) { s.flip(true, false); } } // when game paused if (gameState == GameState.PAUSED) { attackTime--; stateTime--; } return s; }
From source file:presentation.concretion.game.Character.java
License:Open Source License
/** * Load animation enemy./* ww w. j a v a 2 s . co m*/ * * @param isFaceRight * determine if enemy is lock to right, false enemy lock to left. * @param state * is the state of enemy. * @param delta * is the time passed. * @param code * is the code of enemy. * @param toRemove * is true enemy is prepared to removed. * @param type * is the type of enemy. * @param gameState * is the state of game. * @return sprite to animate it. */ public Sprite loadAnimationEnemies(boolean isFaceRight, EnemyState state, float delta, int code, boolean toRemove, EnemyType type, GameState gameState) { Sprite s = null; EnemyUI enemySprite = null; // if is new create it and add to the map if (!enemies.containsKey(code)) { enemySprite = createEnemySprites(type); enemies.put(code, enemySprite); } else { enemySprite = enemies.get(code); } // next sprite for the frame switch (state) { case WALK: s = enemySprite.getWalk().getKeyFrame(enemySprite.stateTime, Animator.ANIMATION_LOOPING); if (gameState != GameState.PAUSED) { enemySprite.stateTime += delta; } break; case DEAD: s = enemySprite.getDead().getKeyFrame(enemySprite.deadTime, Animator.ANIMATION_NONLOOPING); if (gameState != GameState.PAUSED) { enemySprite.deadTime += delta; } if (toRemove) { enemies.remove(code); } break; case ATTACK: s = enemySprite.getAttack(); break; case INACTIVE: s = enemySprite.getInactive(); break; case KICKED: s = enemySprite.getKicked(); break; } // Flip image. if (isFaceRight && !s.isFlipX()) { s.flip(true, false); } else if (!isFaceRight && s.isFlipX()) { s.flip(true, false); } return s; }
From source file:presentation.concretion.game.Character.java
License:Open Source License
/** * Load animation ally//from w w w . j ava 2 s. com * * @param state * is the state of ally. * @param isFaceRight * determine if enemy is lock to right, false enemy lock to left. * @param delta * is the time passed. * @param gameState * is the state of game. * @return sprite to animate it. */ public Sprite loadAnimationAlly(AllyState state, boolean isFaceRight, float delta, GameState gameState) { if (gameState != GameState.PAUSED) { timeAlly += delta; } Sprite s = null; s = ResourceAlly.allyFront; // switch (state) { case BORN: s = ResourceAlly.allyCreated.getKeyFrame(timeAlly, Animator.ANIMATION_NONLOOPING); break; case FRONT: s = ResourceAlly.allyFront; break; case WALK: s = ResourceAlly.allyWalk.getKeyFrame(timeAlly, Animator.ANIMATION_LOOPING); break; case INACTIVE: s = ResourceAlly.allyFace; break; } // Flip image. if (!isFaceRight && !s.isFlipX()) { s.flip(true, false); } else if (isFaceRight && s.isFlipX()) { s.flip(true, false); } return s; }
From source file:seventh.client.gfx.effects.particle_system.Emitters.java
License:Open Source License
public static Emitter newWallCrumbleEmitter(Tile tile, Vector2f pos) { final int maxParticles = 44; final int timeToLive = 100_000; Emitter emitter = new Emitter(pos, timeToLive, maxParticles).setPersistent(true).setDieInstantly(false); Random rand = emitter.getRandom(); // TODO: fix the flipping business // in tiles, this is driving me nuts! Sprite image = new Sprite(tile.getImage()); image.flip(false, true); TextureRegion[] images = new TextureRegion[44]; int i = 0;//from www. j a v a 2s. c o m for (; i < images.length - 15; i++) { int x = rand.nextInt(image.getRegionWidth()); int y = rand.nextInt(image.getRegionHeight()); int width = rand.nextInt(image.getRegionWidth() / 2); int height = rand.nextInt(image.getRegionHeight() / 2); if (x + width > image.getRegionWidth()) { width = image.getRegionWidth() - x; } if (y + height > image.getRegionHeight()) { height = image.getRegionHeight() - y; } Sprite sprite = new Sprite(image); TextureUtil.setFlips(sprite, tile.isFlippedHorizontal(), tile.isFlippedVertical(), tile.isFlippedDiagnally()); sprite.setRegion(sprite, x, y, width, height); images[i] = sprite; } Sprite sprite = new Sprite(Art.BLACK_IMAGE, 0, 0, 2, 4); for (; i < images.length; i++) { images[i] = sprite; } BatchedParticleGenerator gen = new BatchedParticleGenerator(0, maxParticles) .addSingleParticleGenerator(new RandomPositionInRadiusSingleParticleGenerator(10)) .addSingleParticleGenerator(new RandomRotationSingleParticleGenerator()) //.addSingleParticleGenerator(new RandomScaleSingleParticleGenerator(0.15f, 1.9f)) .addSingleParticleGenerator(new RandomSpeedSingleParticleGenerator(250f, 250f)) .addSingleParticleGenerator(new RandomVelocitySingleParticleGenerator(new Vector2f(1, 0), 180)) .addSingleParticleGenerator(new RandomTimeToLiveSingleParticleGenerator(timeToLive, timeToLive)) .addSingleParticleGenerator(new RandomSpriteSingleParticleGenerator(images)); emitter.addParticleGenerator(gen); //emitter.addParticleUpdater(new KillUpdater()); emitter.addParticleUpdater(new MovementParticleUpdater(0, 40f)); //emitter.addParticleUpdater(new AlphaDecayUpdater(0f, 0.9878f)); emitter.addParticleRenderer(new SpriteParticleRenderer()); return emitter; }