List of usage examples for com.badlogic.gdx.graphics.g2d ParticleEffect getEmitters
public Array<ParticleEmitter> getEmitters()
From source file:at.therefactory.jewelthief.ui.Particles.java
License:Open Source License
/** * Resets the position, start color and duration of the given firework effects to random values. * * @param effect//from w w w. ja v a 2 s. c o m */ private void resetFireworksEffect(ParticleEffect effect) { effect.reset(); effect.setDuration(Utils.randomWithin(180, 250)); effect.setPosition(Utils.randomWithin(0, WINDOW_WIDTH), Utils.randomWithin(0, WINDOW_HEIGHT)); float[] colors = effect.getEmitters().get(0).getTint().getColors(); int randomStartColor = Utils.randomWithin(0, startColors.length - 1); for (int i = 0; i < 6; i++) { colors[i] = startColors[randomStartColor][i % 3]; } for (ParticleEmitter emitter : effect.getEmitters()) { emitter.getTint().setColors(colors); } }
From source file:com.kotcrab.vis.editor.util.gdx.ParticleUtils.java
License:Apache License
public static Rectangle calculateBoundingRectangle(ParticleEffect effect, Rectangle bounds, boolean additive) { Rectangle tempBounds = new Rectangle(); if (additive == false) bounds.set(0, 0, 0, 0);//from w ww . j a v a 2 s . com for (int i = 0; i < effect.getEmitters().size; i++) { calculateBoundingRectangle(effect.getEmitters().get(i), tempBounds); if (isZero(tempBounds) == false) { if (isZero(bounds)) bounds.set(tempBounds); else bounds.merge(tempBounds); } } return bounds; }
From source file:com.lynk.gdx.tool.particleeditor.EffectPanel.java
License:Apache License
void openEffect(boolean mergeIntoCurrent) { FileDialog dialog = new FileDialog(editor, "Open Effect", FileDialog.LOAD); if (lastDir != null) dialog.setDirectory(lastDir);/*from w ww.ja v a2s. c om*/ dialog.setVisible(true); final String file = dialog.getFile(); final String dir = dialog.getDirectory(); if (dir == null || file == null || file.trim().length() == 0) return; lastDir = dir; ParticleEffect effect = new ParticleEffect(); try { File effectFile = new File(dir, file); effect.loadEmitters(Gdx.files.absolute(effectFile.getAbsolutePath())); if (mergeIntoCurrent) { for (ParticleEmitter emitter : effect.getEmitters()) { addEmitter(emitter.getName(), false, emitter); } } else { editor.effect = effect; editor.effectFile = effectFile; } emitterTableModel.getDataVector().removeAllElements(); editor.particleData.clear(); } catch (Exception ex) { System.out.println("Error loading effect: " + new File(dir, file).getAbsolutePath()); ex.printStackTrace(); JOptionPane.showMessageDialog(editor, "Error opening effect."); return; } for (ParticleEmitter emitter : editor.effect.getEmitters()) { emitter.setPosition(editor.worldCamera.viewportWidth / 2, editor.worldCamera.viewportHeight / 2); emitterTableModel.addRow(new Object[] { emitter.getName(), true }); } editIndex = 0; emitterTable.getSelectionModel().setSelectionInterval(editIndex, editIndex); editor.reloadRows(); }
From source file:de.bitbrain.craft.graphics.ParticleRenderer.java
License:Open Source License
@Override public void setAlpha(float alpha) { // TODO: Alpha doesn't work for particles here as intended :( this.alpha = alpha; for (ParticleEffect e : effects.keySet()) { for (ParticleEmitter emitter : e.getEmitters()) { ScaledNumericValue v = emitter.getTransparency(); v.setHigh(alpha);//from w w w.j a v a2 s . co m v.setLow(alpha); } } }
From source file:de.bitbrain.craft.graphics.ParticleRenderer.java
License:Open Source License
public void setColor(ParticleEffect effect, float[] colors, float[] timeline) { for (ParticleEmitter emitter : effect.getEmitters()) { emitter.getTint().setTimeline(timeline); emitter.getTint().setColors(colors); }//from w w w. j av a2s. com }
From source file:de.bitbrain.craft.graphics.ParticleRenderer.java
License:Open Source License
public void setParticleCount(ParticleEffect effect, int count) { for (ParticleEmitter emitter : effect.getEmitters()) { emitter.setMaxParticleCount(count); }//from w ww . jav a2s .c om }
From source file:de.bitbrain.craft.graphics.ParticleRenderer.java
License:Open Source License
public int getParticleCount(ParticleEffect effect) { int count = 0; for (ParticleEmitter emitter : effect.getEmitters()) { if (count < emitter.getMaxParticleCount()) { count = emitter.getMaxParticleCount(); }/* w w w . j av a2s . com*/ } return count; }
From source file:de.bitbrain.craft.graphics.ParticleRenderer.java
License:Open Source License
public void setEndless(ParticleEffect effect, boolean endless) { if (effect != null) { effects.put(effect, endless);/*from w ww .j a v a 2 s . c o m*/ for (ParticleEmitter emitter : effect.getEmitters()) { emitter.setContinuous(endless); } } }
From source file:de.myreality.acidsnake.graphics.ParticleRenderer.java
License:Open Source License
@Override public void onCollide(int indexX, int indexY, Snake snake, WorldEntity target) { ParticleEffect explodeEffect = target.getType().getExplodeEffect(); if (explodeEffect != null) { ParticleEffect effect = particleManager.create(explodeEffect, false); alignOnIndex(indexX, indexY, effect); for (ParticleEmitter emitter : effect.getEmitters()) { emitter.setMaxParticleCount( emitter.getMaxParticleCount() / target.getType().getParticleDecreaseFactor()); }/*from ww w. jav a 2 s .co m*/ effect.start(); } }