From ff07de8b4dd705bd831b285115ec913eaa9926d1 Mon Sep 17 00:00:00 2001 From: fgnm Date: Sat, 2 Apr 2022 12:16:54 +0200 Subject: [PATCH] Flag for Particle Effects auto start --- hyperlap2d-runtime-libgdx | 2 +- .../component/UpdateParticleDataCommand.java | 2 ++ .../panels/UIParticleProperties.java | 21 +++++++++++++------ .../panels/UIParticlePropertiesMediator.java | 5 ++++- 4 files changed, 22 insertions(+), 8 deletions(-) diff --git a/hyperlap2d-runtime-libgdx b/hyperlap2d-runtime-libgdx index cec3ea25..758c37a1 160000 --- a/hyperlap2d-runtime-libgdx +++ b/hyperlap2d-runtime-libgdx @@ -1 +1 @@ -Subproject commit cec3ea25a6ab80ed4b8585841a6fe3c184936bef +Subproject commit 758c37a1798419646a6dc1004c59f22f9a1d4c16 diff --git a/src/main/java/games/rednblack/editor/controller/commands/component/UpdateParticleDataCommand.java b/src/main/java/games/rednblack/editor/controller/commands/component/UpdateParticleDataCommand.java index 03d1a9e8..f142b7e0 100644 --- a/src/main/java/games/rednblack/editor/controller/commands/component/UpdateParticleDataCommand.java +++ b/src/main/java/games/rednblack/editor/controller/commands/component/UpdateParticleDataCommand.java @@ -25,6 +25,7 @@ public class UpdateParticleDataCommand extends EntityModifyRevertibleCommand { ParticleComponent particleComponent = SandboxComponentRetriever.get(entity, ParticleComponent.class); particleComponent.transform = vo.transform; + particleComponent.autoStart = vo.autoStart; particleComponent.particleEffect.setPosition(0, 0); @@ -37,6 +38,7 @@ public class UpdateParticleDataCommand extends EntityModifyRevertibleCommand { ParticleComponent particleComponent = SandboxComponentRetriever.get(entity, ParticleComponent.class); particleComponent.transform = backup.transform; + particleComponent.autoStart = backup.autoStart; HyperLap2DFacade.getInstance().sendNotification(MsgAPI.ITEM_DATA_UPDATED, entity); } diff --git a/src/main/java/games/rednblack/editor/view/ui/properties/panels/UIParticleProperties.java b/src/main/java/games/rednblack/editor/view/ui/properties/panels/UIParticleProperties.java index fe3c04d5..e238838a 100644 --- a/src/main/java/games/rednblack/editor/view/ui/properties/panels/UIParticleProperties.java +++ b/src/main/java/games/rednblack/editor/view/ui/properties/panels/UIParticleProperties.java @@ -1,21 +1,21 @@ package games.rednblack.editor.view.ui.properties.panels; -import com.badlogic.gdx.utils.Align; import com.kotcrab.vis.ui.widget.VisCheckBox; import games.rednblack.editor.event.CheckBoxChangeListener; import games.rednblack.editor.view.ui.properties.UIItemCollapsibleProperties; import games.rednblack.h2d.common.view.ui.StandardWidgetsFactory; public class UIParticleProperties extends UIItemCollapsibleProperties { - private VisCheckBox matrixTransformCheckBox; + private VisCheckBox matrixTransformCheckBox, autoStartCheckBox; public UIParticleProperties() { super("Particle Effect"); - matrixTransformCheckBox = StandardWidgetsFactory.createCheckBox(); + matrixTransformCheckBox = StandardWidgetsFactory.createCheckBox("Matrix Transform"); + autoStartCheckBox = StandardWidgetsFactory.createCheckBox("Auto Start"); - mainTable.add(StandardWidgetsFactory.createLabel("Matrix Transform", Align.right)).padRight(5).width(120).right(); mainTable.add(matrixTransformCheckBox).left().row(); + mainTable.add(autoStartCheckBox).left().row(); setListeners(); } @@ -29,11 +29,20 @@ public class UIParticleProperties extends UIItemCollapsibleProperties { return matrixTransformCheckBox.isChecked(); } - public void setMatrixTransformEnabled(boolean scissorsEnabled) { - matrixTransformCheckBox.setChecked(scissorsEnabled); + public boolean isAutoStartEnabled() { + return autoStartCheckBox.isChecked(); + } + + public void setMatrixTransformEnabled(boolean matrixTransform) { + matrixTransformCheckBox.setChecked(matrixTransform); + } + + public void setAutoStartEnabled(boolean autoStart) { + autoStartCheckBox.setChecked(autoStart); } private void setListeners() { matrixTransformCheckBox.addListener(new CheckBoxChangeListener(getUpdateEventName())); + autoStartCheckBox.addListener(new CheckBoxChangeListener(getUpdateEventName())); } } diff --git a/src/main/java/games/rednblack/editor/view/ui/properties/panels/UIParticlePropertiesMediator.java b/src/main/java/games/rednblack/editor/view/ui/properties/panels/UIParticlePropertiesMediator.java index 95466ada..e887260c 100644 --- a/src/main/java/games/rednblack/editor/view/ui/properties/panels/UIParticlePropertiesMediator.java +++ b/src/main/java/games/rednblack/editor/view/ui/properties/panels/UIParticlePropertiesMediator.java @@ -18,13 +18,16 @@ public class UIParticlePropertiesMediator extends UIItemPropertiesMediator