| 
					
				 | 
			
			
				@@ -2,6 +2,7 @@ package pathgame.rendering; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import me.hammerle.snuviengine.api.Renderer; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import pathgame.gameplay.Level; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import pathgame.gameplay.Player; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  * A container for holding everything about the renderer for the score menu 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -34,42 +35,19 @@ public class ScoreMenuRenderer 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         r.translateTo(0.0f, 0.0f); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         float scale = scale(r, 1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Player p = level.getPlayer(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         String message = String.format("&2%d&f of &2%d&f Energy used", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                level.getPlayer().getEnergyUsed(), level.getPlayer().getEnergySupply()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                p.getEnergyUsed(), p.getEnergySupply()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         r.getFontRenderer().drawString((windowWidth * scale - getWidth(r, message)) / 2, (windowHeight * scale - getHeight(r, message)) / 2 - windowHeight * scale * 0.5f * 0.15f, message); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if((float) level.getPlayer().getEnergyUsed() / level.getPlayer().getEnergySupply() < 0.5f) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            message = "You were better than the algorithm!"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        else if((float) level.getPlayer().getEnergyUsed() / level.getPlayer().getEnergySupply() < 0.6f) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            message = "Only 20% more energy use than the algorithm!"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        else if((float) level.getPlayer().getEnergyUsed() / level.getPlayer().getEnergySupply() < 0.75f) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            message = "Only 50% more energy use than the algorithm!"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        else if((float) level.getPlayer().getEnergyUsed() / level.getPlayer().getEnergySupply() < 1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            message = "Only twice the energy use of the algorithm!"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        else if((float) level.getPlayer().getEnergyUsed() / level.getPlayer().getEnergySupply() == 1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            message = "As good as the algorithm!"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        else if((float) level.getPlayer().getEnergyUsed() / level.getPlayer().getEnergySupply() > 1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            message = "More than twice the energy use of the algorithm!"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        message = getMessage(p.getEnergyUsed(), level.getAlgorithmValue(), p.getEnergySupply()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         r.getFontRenderer().drawString((windowWidth * scale - getWidth(r, message)) / 2, (windowHeight * scale - getHeight(r, message)) / 2 - windowHeight * scale * 0.5f * (-0.15f), message); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         scale = scale(r, 2); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if((float) level.getPlayer().getEnergyUsed() / level.getPlayer().getEnergySupply() <= 1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if(p.getEnergyUsed() <= p.getEnergySupply()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             message = "Congratulations!"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         else 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -99,4 +77,33 @@ public class ScoreMenuRenderer 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         r.updateMatrix(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return 1.0f / scale; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private String getMessage(int playerEnergy, int algorithmEnergy, int maxEnergy) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if(playerEnergy == algorithmEnergy) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            return "As good as the algorithm!"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        float energyPercent = ((float) playerEnergy / maxEnergy) * Level.ALGORITHM_4; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if(energyPercent < Level.ALGORITHM_1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            return "Better than the algorithm!"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        else if(energyPercent < Level.ALGORITHM_2) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            return "0-10% over the algorithm!"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        else if(energyPercent < Level.ALGORITHM_3) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            return "10-20% over the algorithm!"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        else if(energyPercent < Level.ALGORITHM_4) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            return "20-30% over the algorithm!"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        else 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            return "30% over the algorithm!"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 |