// StringRoll2.java // Draw Rolling String // by nagatani@eken.phys.nagoya-u.ac.jp import java.applet.Applet; import java.awt.*; public class StringRoll2 extends StringRoll { int xPos, yPos; StringRoll2 (Image imageString, int heightString, int yOffset, Applet applet) { super (imageString, heightString, yOffset, applet); nMode = 0; } public void paint (Graphics g, Applet applet) { if (nMode == 1 && t != 0.0 || nMode == 2 || nMode == 3) { // Displaying Mode g.drawImage (imageString, xPos, yPos, applet); } } public void move () { if (nMode == 0) { // Reset Mode t = 0.0; nMode ++; return; } if (nMode == 1) { // Displaying Mode xPos = (int) (xWindow - t * (xWindow + xImage)); yPos = (yWindow - yImage) / 2 + yOffset; t += 0.01; if (t >= 1.0) { t = 0.0; nMode ++; } return; } if (nMode == 2) { // Sleeping Mode t += 0.01; if (t >= 0.2) { t = 0.0; nMode = 0; } return; } } }