1
0

Add draw wind info

This commit is contained in:
Victor 2014-03-22 22:56:28 +02:00
parent 455f6998d7
commit 61420477f8
2 changed files with 22 additions and 2 deletions

View File

@ -63,6 +63,7 @@ public class GameCanvas extends DoubleBufferedCanvas implements Runnable, Networ
terrain.draw(g);
serverTurret.draw(g);
clientTurret.draw(g);
wind.drawInfo(g, metrics);
} else {
g.setColor(Color.WHITE);
final int x = (Constants.WIDTH - metrics.stringWidth(WAIT_MESSAGE)) / 2;

View File

@ -1,12 +1,15 @@
package com.annimon.turrets;
import com.annimon.turrets.util.Util;
import java.awt.Color;
import java.awt.FontMetrics;
import java.awt.Graphics2D;
/**
*
* @author aNNiMON
*/
public class Wind implements Constants {
public class Wind {
private double speed;
@ -15,7 +18,23 @@ public class Wind implements Constants {
}
public void change() {
speed = Util.rand(-MAX_WIND_STRENGTH, MAX_WIND_STRENGTH);
speed = Util.rand(-Constants.MAX_WIND_STRENGTH, Constants.MAX_WIND_STRENGTH);
}
public void drawInfo(Graphics2D g, FontMetrics metrics) {
final int speedPercent = (int) (Math.abs(speed) * 100d / Constants.MAX_WIND_STRENGTH);
final String value = String.valueOf(speedPercent);
final int valueWidth = metrics.stringWidth(value);
final int x = (Constants.WIDTH - valueWidth) / 2;
final int y = metrics.getHeight();
g.setColor(Color.RED);
if (speed < 0) {
g.drawString("", x - 2 * valueWidth, y);
} else if (speed > 0) {
g.drawString("", x + 2 * valueWidth, y);
}
g.drawString(String.valueOf(speedPercent), x, y);
}
}