# HG changeset patch # User Matti Hamalainen # Date 1322161744 -7200 # Node ID e60b4885eafe01107c8ce86b886229997187d91e # Parent c4d0ceec99ef08be0139fe573279d57b40f58fd9 Fix the AnimatedPointElement class to actually work. diff -r c4d0ceec99ef -r e60b4885eafe game/AnimatedPointElement.java --- a/game/AnimatedPointElement.java Thu Nov 24 21:08:36 2011 +0200 +++ b/game/AnimatedPointElement.java Thu Nov 24 21:09:04 2011 +0200 @@ -12,22 +12,22 @@ public class AnimatedPointElement { - float stime, value; - IDMPoint pos; - Interpolate lerpV, lerpX, lerpY; + private float stime, value, steps; + private IDMPoint pos; + private Interpolate lerpV, lerpX, lerpY; boolean active, first; String text; - public AnimatedPointElement(IDMPoint p0, IDMPoint p1, float steps, String text) + public AnimatedPointElement(IDMPoint start, String text) { - lerpX = new Interpolate(p0.x, p1.x, steps); - lerpY = new Interpolate(p0.y, p1.y, steps); - lerpV = new Interpolate(1, 0, steps); + Random rnd = new Random(); + steps = 100; + lerpX = new Interpolate(start.x - rnd.nextInt(100) + 50, start.x, steps); + lerpY = new Interpolate(start.y - rnd.nextInt(100) + 50, start.y, steps); + lerpV = new Interpolate(0.0f, 1.0f, steps); - System.out.print("AnimatedPointElement("+ p0 +", "+p1+", "+ steps +", '"+ text +"')\n"); - System.out.print("lerpX="+lerpX+"\n"); - + pos = new IDMPoint(start); active = false; first = true; this.text = text; @@ -44,10 +44,10 @@ if (active) { - float t = (time - stime) / 10.0f; - if (t >= 1.0f) + float t = (time - stime); + if (t >= steps) { - t = 1.0f; + t = steps; active = false; } @@ -67,9 +67,9 @@ Composite csave = g.getComposite(); // g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, typeValue)); - g.setFont(G.fonts[0]); - g.setPaint(new Color(1.0f, 1.0f, 1.0f, value)); - g.drawString(text, pos.x, pos.y); + g.setFont(G.fonts[2]); + g.setPaint(new Color(value, value, value, value)); + g.drawString(text, pos.x, pos.y); g.setTransform(tsave); g.setComposite(csave);