List of usage examples for com.badlogic.gdx.scenes.scene2d.actions SequenceAction SequenceAction
public SequenceAction(Action action1, Action action2)
From source file:actors.BasicSkel.java
public BasicSkel(float hlth, float dmg, float x, float y, int lvl, int pth, Stage stg, PlayScreen scrn) { this.setName("skeleton"); level = lvl;/*from w w w .j av a 2s.c o m*/ path = pth; stage = stg; screen = scrn; health = hlth; damage = dmg; slowTimer = -1; slowed = false; reset = false; poisoned = false; notmoving = false; if (damage < 220) texture = new Texture("skelsword1.png"); if (damage < 240 && damage >= 220) texture = new Texture("skelsword2.png"); if (damage >= 240) texture = new Texture("skelsword3.png"); sprite = new Sprite(texture); sprite.setScale(0.65f); setBounds(sprite.getX(), sprite.getY(), sprite.getWidth(), sprite.getHeight()); fireEffect = new ParticleEffect(); fireEffect.load(Gdx.files.internal("fire"), Gdx.files.internal("")); fireEffect.getEmitters().first().setPosition(getX(), getY()); fireballSound = Gdx.audio.newSound(Gdx.files.internal("fireball.wav")); iceEffect = new ParticleEffect(); iceEffect.load(Gdx.files.internal("ice"), Gdx.files.internal("")); iceEffect.getEmitters().first().setPosition(getX(), getY()); poisonEffect = new ParticleEffect(); poisonEffect.load(Gdx.files.internal("poison"), Gdx.files.internal("")); poisonEffect.getEmitters().first().setPosition(getX(), getY()); emptyHealthBar = new Sprite(new Texture("emptyBar.png")); fullHealthBar = new Sprite(new Texture("fullBar.png")); ColorAction red = new ColorAction(); red.setEndColor(Color.RED); red.setDuration(1f); MoveToAction moveOff = new MoveToAction(); moveOff.setPosition(-100, -100); kill = new SequenceAction(red, moveOff); this.addListener(new ClickListener() { @Override public void clicked(InputEvent event, float x, float y) { if (health != 100000 && abs(screen.player.getX() - getX()) < screen.playerRange && abs(screen.player.getY() - getY()) < screen.playerRange) { if (screen.playerSpell == 1) { health -= screen.playerDamage; stage.addActor( new Fireball(screen.player.getX(), screen.player.getY(), getX() + 16, getY() + 16)); fireballSound.play(0.8f); fireEffect.start(); } if (screen.playerSpell == 2) { health -= screen.playerDamage * 0.75; stage.addActor( new IceBolt(screen.player.getX(), screen.player.getY(), getX() + 16, getY() + 16)); fireballSound.play(0.8f); iceEffect.start(); slowTimer = 3; if (health >= 0) slowed = true; } if (screen.playerSpell == 3) { poisoned = true; stage.addActor( new IceBolt(screen.player.getX(), screen.player.getY(), getX() + 16, getY() + 16)); fireballSound.play(0.8f); poisonEffect.start(); } } if (health <= 0) { poisoned = false; setName("dead"); health = 100000; clearActions(); addAction(kill); screen.skeletonDeath.play(1.0f); screen.addGold(5); } } }); velocity = 70; //Rectangle body = new Rectangle(getX(), getY(), getWidth(), getHeight()); //ScaleByAction sba = new ScaleByAction(); //sba.setAmount(0.25f); assignMovement(x, y); }
From source file:com.jmolina.orb.elements.Heater.java
License:Open Source License
/** * Devuelve una animacion de parpadeo/*from ww w .ja v a 2 s .co m*/ */ private Action blinkAction() { RepeatAction forever = new RepeatAction(); forever.setCount(RepeatAction.FOREVER); forever.setAction(new SequenceAction(alpha(1, BLINK_HALF_TIME, Interpolation.pow2), alpha(0.4f, BLINK_HALF_TIME, Interpolation.pow2))); return forever; }
From source file:com.jmolina.orb.screens.BaseScreen.java
License:Open Source License
/** * Devuelve una accion de reseteo de escala y canal alpha */ private Action resetAction() { return new SequenceAction(alpha(1f), scaleTo(1f, 1f)); }
From source file:com.jmolina.orb.widgets.game.RadialField.java
License:Open Source License
@Override protected Action getAttraction() { RepeatAction forever = new RepeatAction(); forever.setCount(RepeatAction.FOREVER); forever.setAction(new SequenceAction(parallel(scaleTo(1, 1), alpha(0)), parallel( scaleTo(0, 0, PERIOD, Interpolation.pow2In), alpha(MAX_ALPHA, PERIOD, Interpolation.pow2In)))); return forever; }
From source file:com.jmolina.orb.widgets.game.RadialField.java
License:Open Source License
@Override protected Action getRepulsion() { RepeatAction forever = new RepeatAction(); forever.setCount(RepeatAction.FOREVER); forever.setAction(new SequenceAction(parallel(scaleTo(0, 0), alpha(MAX_ALPHA)), parallel(scaleTo(1, 1, PERIOD, Interpolation.pow2Out), alpha(0, PERIOD, Interpolation.pow2Out)))); return forever; }
From source file:com.ray3k.libraryinvaders.states.MenuState.java
License:Open Source License
private void showCharacterDialog() { Dialog dialog = new Dialog("", skin); Label label = new Label("Choose a character...", skin); dialog.getContentTable().add(label); dialog.getContentTable().row();//from w ww. j a va2s. c o m Table table = new Table(); ScrollPane scrollPane = new ScrollPane(table, skin); scrollPane.setFadeScrollBars(false); dialog.getContentTable().add(scrollPane).grow(); final ButtonGroup<ImageTextButton> buttons = new ButtonGroup<ImageTextButton>(); for (String name : getCore().getImagePacks().get(DATA_PATH + "/characters")) { Drawable drawable = new TextureRegionDrawable(getCore().getAtlas().findRegion(name)); Image image = new Image(drawable); ImageTextButton imageTextButton = new ImageTextButton(name, skin, "list"); imageTextButton.getImageCell().setActor(image); imageTextButton.getLabelCell().left().expandX(); table.add(imageTextButton).growX(); buttons.add(imageTextButton); table.row(); } dialog.getContentTable().row(); TextButton textButton = new TextButton("OK", skin); dialog.getContentTable().add(textButton); textButton.addListener(new ChangeListener() { @Override public void changed(ChangeListener.ChangeEvent event, Actor actor) { getCore().getAssetManager().get(Core.DATA_PATH + "/sfx/menu.wav", Sound.class).play(); ((GameState) getCore().getStateManager().getState("game")) .setSelectedCharacter(buttons.getChecked().getText().toString()); Gdx.input.setInputProcessor(null); Action changeStateAction = new Action() { @Override public boolean act(float delta) { getCore().getStateManager().loadState("game"); return true; } }; root.addAction(new SequenceAction(new DelayAction(.5f), changeStateAction)); } }); dialog.show(stage); dialog.setSize(600.0f, 500.0f); dialog.setPosition(stage.getWidth() / 2.0f, stage.getHeight() / 2.0f, Align.center); stage.setScrollFocus(scrollPane); }
From source file:com.ray3k.skincomposer.dialog.DialogLoading.java
License:Open Source License
@Override public Dialog show(Stage stage) { Dialog dialog = super.show(stage); RunnableAction runnableAction = new RunnableAction(); runnableAction.setRunnable(() -> { if (runnable != null) { runnable.run();//from w ww . j a va 2s . co m } hide(); }); Action action = new SequenceAction(new DelayAction(.5f), runnableAction); addAction(action); return dialog; }
From source file:com.ray3k.skincomposer.MenuList.java
License:Open Source License
public void hide() { //fade out and then remove clearActions();/*from www .jav a 2s . c om*/ AlphaAction alphaAction = new AlphaAction(); alphaAction.setAlpha(0.0f); alphaAction.setDuration(.3f); alphaAction.setInterpolation(Interpolation.fade); RemoveActorAction removeAction = new RemoveActorAction(); removeAction.setActor(this); SequenceAction sequenceAction = new SequenceAction(alphaAction, removeAction); addAction(sequenceAction); }
From source file:com.ray3k.skincomposer.RootTable.java
License:Open Source License
public void refreshStyleProperties(boolean preserveScroll) { if (stylePropertiesTable != null && stylePropertiesScrollPane != null) { float scrollY; if (preserveScroll) { scrollY = stylePropertiesScrollPane.getScrollY(); } else {//from ww w.j a v a2 s . c o m scrollY = 0; } stylePropertiesTable.clearChildren(); addStyleProperties(stylePropertiesTable); if (preserveScroll) { validate(); stylePropertiesScrollPane.setSmoothScrolling(false); stylePropertiesScrollPane.setScrollY(scrollY); stylePropertiesScrollPane.addAction(new SequenceAction(new DelayAction(.1f), new Action() { @Override public boolean act(float delta) { stylePropertiesScrollPane.setSmoothScrolling(true); return true; } })); } } }
From source file:es.eucm.ead.editor.view.builders.scene.groupeditor.GroupEditor.java
License:Open Source License
/** * Sets the root group in its initial position, fitting the view *//*from w ww .j a va2s .c om*/ public void fit(boolean animated) { if (animated) { sceneContainer.addAction(new SequenceAction( new ParallelAction(Actions.moveTo(0, 0, TIME, Interpolation.exp5Out), Actions.scaleTo(fitZoom, fitZoom, TIME, Interpolation.exp5Out)), Actions.run(containerUpdated))); } else { sceneContainer.setPosition(0.0f, 0.0f); sceneContainer.setScale(fitZoom, fitZoom); fireContainerUpdated(); } }