From fd74d60194220fb63aa56608e4e56279126661f5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicolas=20Hord=C3=A9?= Date: Tue, 2 Feb 2016 22:51:45 +0100 Subject: [PATCH] =?UTF-8?q?feat:=20ajout=20d'un=20actor=20iconvalue=20qui?= =?UTF-8?q?=20permet=20d'afficher=20des=20donn=C3=A9es=20du=20niveau=20en?= =?UTF-8?q?=20"live"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- core/src/fr/evolving/UI/IconValue.java | 73 +++++++++++++++++++ .../fr/evolving/renderers/LevelRenderer.java | 6 +- core/src/fr/evolving/screens/GameScreen.java | 29 ++++---- 3 files changed, 89 insertions(+), 19 deletions(-) create mode 100644 core/src/fr/evolving/UI/IconValue.java diff --git a/core/src/fr/evolving/UI/IconValue.java b/core/src/fr/evolving/UI/IconValue.java new file mode 100644 index 0000000..e8fb53e --- /dev/null +++ b/core/src/fr/evolving/UI/IconValue.java @@ -0,0 +1,73 @@ +package fr.evolving.UI; + +import com.badlogic.gdx.scenes.scene2d.ui.ImageTextButton; +import com.badlogic.gdx.scenes.scene2d.ui.Skin; + +import fr.evolving.automata.Worlds; + +public class IconValue extends ImageTextButton{ + + public enum Icon{tech,cout,research,cycle,temp,rayon,nrj}; + Icon icon; + boolean showmaximum; + Worlds worlds; + + public IconValue(Icon icon,Worlds worlds, Skin skin) { + super("", skin,icon.toString()+"2"); + this.icon=icon; + this.worlds=worlds; + } + + public void SetShowMaximum(boolean value) + { + showmaximum=value; + } + + @Override + public void act(float delta) + { + switch(this.icon) { + case tech: + this.setText(String.valueOf(worlds.getInformations().Tech)); + this.setVisible(worlds.getInformations().Tech>=1); + break; + case cout: + this.setText(String.valueOf(worlds.getInformations().Cout)); + this.setVisible(worlds.getInformations().Cout>0); + break; + case research: + this.setText(String.valueOf(worlds.ReadResearch())); + this.setVisible(worlds.ReadResearch()>0); + break; + case cycle: + this.setVisible(worlds.getWorld()>=1); + if (showmaximum) + this.setText(String.valueOf(worlds.getInformations().Cycle)+"/"+String.valueOf(worlds.getInformations().Maxcycle)); + else + this.setText(String.valueOf(worlds.getInformations().Cycle)); + break; + case temp: + this.setVisible(worlds.getWorld()>=2); + if (showmaximum) + this.setText(String.valueOf(worlds.getInformations().Temp)+"/"+String.valueOf(worlds.getInformations().Maxtemp)); + else + this.setText(String.valueOf(worlds.getInformations().Temp)); + break; + case rayon: + this.setVisible(worlds.getWorld()>=3); + if (showmaximum) + this.setText(String.valueOf(worlds.getInformations().Rayon)+"/"+String.valueOf(worlds.getInformations().Maxrayon)); + else + this.setText(String.valueOf(worlds.getInformations().Rayon)); + break; + case nrj: + this.setVisible(worlds.getWorld()>=4); + if (showmaximum) + this.setText(String.valueOf(worlds.getInformations().Nrj)+"/"+String.valueOf(worlds.getInformations().Maxnrj)); + else + this.setText(String.valueOf(worlds.getInformations().Nrj)); + break; + } + + } +} diff --git a/core/src/fr/evolving/renderers/LevelRenderer.java b/core/src/fr/evolving/renderers/LevelRenderer.java index 5c6f941..795779f 100644 --- a/core/src/fr/evolving/renderers/LevelRenderer.java +++ b/core/src/fr/evolving/renderers/LevelRenderer.java @@ -42,7 +42,7 @@ public class LevelRenderer { shapeRenderer = new ShapeRenderer(); Laser = new Laser(); AssetLoader.viewport.apply(); - font = AssetLoader.Skin_level.getFont("OpenDyslexicAlta-22"); + font = AssetLoader.Skin_level.getFont("OpenDyslexicAlta-25"); } public void evolve() { @@ -146,7 +146,7 @@ public class LevelRenderer { * AssetLoader.ratio, 10, 0.5f, - !LevelScreen.buttonLevels[i].level.Locked, + !LevelScreen.buttonLevels[found].level.Locked, LevelScreen.buttonLevels[i] .getLevelcolor(), LevelScreen.buttonLevels[found] @@ -162,7 +162,7 @@ public class LevelRenderer { * AssetLoader.ratio, 10, 0.5f, - !LevelScreen.buttonLevels[i].level.Locked, + !LevelScreen.buttonLevels[found].level.Locked, LevelScreen.buttonLevels[i] .getLevelcolor(), LevelScreen.buttonLevels[found] diff --git a/core/src/fr/evolving/screens/GameScreen.java b/core/src/fr/evolving/screens/GameScreen.java index fd2c07d..e27a8a2 100644 --- a/core/src/fr/evolving/screens/GameScreen.java +++ b/core/src/fr/evolving/screens/GameScreen.java @@ -35,6 +35,7 @@ import com.badlogic.gdx.scenes.scene2d.ui.Label; import com.badlogic.gdx.scenes.scene2d.ui.List; import com.badlogic.gdx.scenes.scene2d.ui.ScrollPane; import com.badlogic.gdx.scenes.scene2d.ui.SelectBox; +import com.badlogic.gdx.scenes.scene2d.ui.Skin; import com.badlogic.gdx.scenes.scene2d.ui.Slider; import com.badlogic.gdx.scenes.scene2d.ui.Table; import com.badlogic.gdx.scenes.scene2d.ui.TextArea; @@ -55,11 +56,13 @@ import com.badlogic.gdx.utils.OrderedMap; import fr.evolving.UI.ButtonLevel; import fr.evolving.UI.HorizBarre; +import fr.evolving.UI.IconValue; import fr.evolving.UI.Menu; import fr.evolving.UI.Objectives; import fr.evolving.UI.TouchMaptiles; import fr.evolving.UI.VertiBarre; import fr.evolving.UI.WarnDialog; +import fr.evolving.UI.IconValue.Icon; import fr.evolving.assets.AssetLoader; import fr.evolving.assets.Preference; import fr.evolving.automata.Level; @@ -90,8 +93,8 @@ public class GameScreen implements Screen { private ImageButton Setflag, info_up_nrj, info_up_temp, info_up, info_up_rayon, info_up_cycle, info_up_nrjval, info_up_tempval, info_up_rayonval, info_up_cycleval, nextpage, previouspage; - private ImageTextButton cycle, temp, nrj, rayon, cout, tech, research, - info_cout, info_tech, info_research, info_activation; + private ImageTextButton info_cout, info_tech, info_research, info_activation; + private IconValue cycle, temp, nrj, rayon, cout, tech, research; String[] tocreate; private ButtonLevel buttonlevel; private Objectives objectives; @@ -248,27 +251,20 @@ public class GameScreen implements Screen { tooltip = new TextArea("tooltip:x\r\n tooltip:y",AssetLoader.Skin_level, "info_tooltip"); tooltip.setBounds(541, 27, 100, 50); Gdx.app.debug(getClass().getSimpleName(),"Création de la barre de gestion du haut"); - cycle = new ImageTextButton(String.valueOf(level.Cycle),AssetLoader.Skin_level, "cycle2"); - cycle.setVisible(level.aWorld>=1); + cycle = new IconValue(Icon.cycle,worlds, AssetLoader.Skin_level); cycle.setPosition(10, AssetLoader.height - 74); - temp = new ImageTextButton(String.valueOf(level.Temp),AssetLoader.Skin_level, "temp2"); - temp.setVisible(level.aWorld>=2); + temp = new IconValue(Icon.temp,worlds, AssetLoader.Skin_level); temp.setPosition(210, AssetLoader.height - 74); - rayon = new ImageTextButton(String.valueOf(level.Rayon),AssetLoader.Skin_level, "rayon2"); - rayon.setVisible(level.aWorld>=3); + rayon = new IconValue(Icon.rayon,worlds, AssetLoader.Skin_level); rayon.setPosition(410, AssetLoader.height - 74); - nrj = new ImageTextButton(String.valueOf(level.Nrj),AssetLoader.Skin_level, "nrj2"); - nrj.setVisible(level.aWorld>=4); + nrj = new IconValue(Icon.nrj,worlds, AssetLoader.Skin_level); nrj.setPosition(610, AssetLoader.height - 74); - tech = new ImageTextButton(String.valueOf(level.Tech),AssetLoader.Skin_level, "tech2"); + tech = new IconValue(Icon.tech,worlds, AssetLoader.Skin_level); tech.setPosition(1345, AssetLoader.height - 74); - tech.setVisible(level.Tech>=1); - cout = new ImageTextButton(String.valueOf(level.Cout),AssetLoader.Skin_level, "cout2"); - cout.setVisible(level.Cout>0); + cout = new IconValue(Icon.cout,worlds, AssetLoader.Skin_level); cout.setPosition(1445, AssetLoader.height - 74); - research = new ImageTextButton(String.valueOf(0),AssetLoader.Skin_level, "research2"); + research = new IconValue(Icon.research,worlds, AssetLoader.Skin_level); research.setPosition(1545, AssetLoader.height - 74); - research.setVisible(level.Special || level.aWorld>0); objectives = new Objectives(); objectives.setVictory(level.Victory); objectives.setPosition(890, AssetLoader.height - 95); @@ -716,6 +712,7 @@ public class GameScreen implements Screen { menu.EraseSurtile(); hideInfo(); if (caller == "run") { + worlds.getInformations().Cout-=15; } else if (caller == "stop") { } else if (caller == "speed") { } else if (caller == "move") {