|
@@ -1,42 +1,65 @@
|
|
package pathgame.rendering;
|
|
package pathgame.rendering;
|
|
|
|
|
|
|
|
+import java.util.Map;
|
|
import me.hammerle.snuviengine.api.Renderer;
|
|
import me.hammerle.snuviengine.api.Renderer;
|
|
import pathgame.gameplay.Player;
|
|
import pathgame.gameplay.Player;
|
|
|
|
+import pathgame.gameplay.lastPlayerSteps;
|
|
import pathgame.tilemap.TileMap;
|
|
import pathgame.tilemap.TileMap;
|
|
|
|
|
|
public class HUDRenderer
|
|
public class HUDRenderer
|
|
{
|
|
{
|
|
|
|
|
|
- public void renderTick(Renderer r, Player p)
|
|
+ private lastPlayerSteps lastSteps = new lastPlayerSteps();
|
|
|
|
+
|
|
|
|
+ public void renderTick(Renderer r, Player p, float lag)
|
|
{
|
|
{
|
|
|
|
+
|
|
String objectiveTracker = String.valueOf(p.getObjectivesVisited()) + "/" + String.valueOf(p.getObjectivesAmount()) + " Towns";
|
|
String objectiveTracker = String.valueOf(p.getObjectivesVisited()) + "/" + String.valueOf(p.getObjectivesAmount()) + " Towns";
|
|
String energy = String.valueOf(p.getEnergyLeft()) + "/" + String.valueOf(p.getEnergySupply()) + " Energy used";
|
|
String energy = String.valueOf(p.getEnergyLeft()) + "/" + String.valueOf(p.getEnergySupply()) + " Energy used";
|
|
-
|
|
+ String minusEnergy = "";
|
|
-
|
|
+
|
|
- r.setMixColorEnabled(true);
|
|
+
|
|
- r.setColorEnabled(true);
|
|
+
|
|
- r.setTextureEnabled(false);
|
|
+
|
|
- r.setBlendingEnabled(true);
|
|
+
|
|
-
|
|
+
|
|
-
|
|
+ renderHUDBackgound(r);
|
|
- r.getColorRenderer().drawRectangle(0, 0, r.getViewWidth(), 20, 0x33_00_00_00);
|
|
+
|
|
-
|
|
|
|
r.setMixColorEnabled(false);
|
|
r.setMixColorEnabled(false);
|
|
r.setColorEnabled(true);
|
|
r.setColorEnabled(true);
|
|
r.setTextureEnabled(true);
|
|
r.setTextureEnabled(true);
|
|
-
|
|
+
|
|
-
|
|
+
|
|
r.translateTo(0.0f, 0.0f);
|
|
r.translateTo(0.0f, 0.0f);
|
|
r.scale(2.0f, 2.0f);
|
|
r.scale(2.0f, 2.0f);
|
|
r.updateMatrix();
|
|
r.updateMatrix();
|
|
r.getFontRenderer().drawString(2, 1, objectiveTracker);
|
|
r.getFontRenderer().drawString(2, 1, objectiveTracker);
|
|
-
|
|
+
|
|
|
|
+
|
|
r.getFontRenderer().drawString(
|
|
r.getFontRenderer().drawString(
|
|
- r.getViewWidth()*0.5f -
|
|
+ r.getViewWidth() * 0.5f
|
|
- r.getFontRenderer().getSize(energy).getWidth(),
|
|
+ - r.getFontRenderer().getSize(energy).getWidth(),
|
|
1, energy);
|
|
1, energy);
|
|
-
|
|
+
|
|
-
|
|
+
|
|
|
|
+ for(int i = 0; i < p.getLastSteps().getLastPlayerSteps().size(); ++i)
|
|
|
|
+ {
|
|
|
|
+ minusEnergy = "-" + String.valueOf(p.getLastSteps().getLastPlayerSteps().get(i).getMinusValue());
|
|
|
|
+
|
|
|
|
+ r.getFontRenderer().drawString(r.getViewWidth() * 0.5f - 144, 3 + (p.getLastSteps().getLastPlayerSteps().get(i).getDiffY() * 32), minusEnergy);
|
|
|
|
+ p.getLastSteps().getLastPlayerSteps().get(i).updateMinusValues(lag);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ void renderHUDBackgound(Renderer r)
|
|
|
|
+ {
|
|
|
|
+ r.setMixColorEnabled(true);
|
|
|
|
+ r.setColorEnabled(true);
|
|
|
|
+ r.setTextureEnabled(false);
|
|
|
|
+ r.setBlendingEnabled(true);
|
|
|
|
+
|
|
|
|
+ r.getColorRenderer().drawRectangle(0, 0, r.getViewWidth(), 20, 0x33_00_00_00);
|
|
}
|
|
}
|
|
|
|
|
|
}
|
|
}
|