home *** CD-ROM | disk | FTP | other *** search
- import java.applet.Applet;
- import java.awt.Color;
- import java.awt.Component;
- import java.awt.Graphics;
- import java.awt.Image;
- import java.awt.MediaTracker;
-
- public class Rain extends Applet implements Runnable {
- Image origImg;
- Image backImg;
- // $FF: renamed from: w1 int
- int field_0;
- // $FF: renamed from: h1 int
- int field_1;
- Thread thrRain;
- private static final int SMUDGE_WIDTH = 15;
- private static final int SMUDGE_HEIGHT = 15;
-
- public void start() {
- if (this.thrRain == null) {
- this.thrRain = new Thread(this);
- this.thrRain.start();
- }
-
- }
-
- public void stop() {
- if (this.thrRain != null) {
- this.thrRain.stop();
- this.thrRain = null;
- }
-
- }
-
- public void run() {
- this.loadImage();
- this.backImg = ((Component)this).createImage(this.field_0, this.field_1);
- Graphics var1 = this.backImg.getGraphics();
- var1.setColor(Color.white);
- var1.drawImage(this.origImg, 0, 0, this);
- int var2 = (int)(Math.random() * (double)this.field_0);
-
- for(int var3 = 0; this.thrRain != null; ((Component)this).repaint()) {
- this.smudge(var1, var2, var3);
- var2 += (int)(Math.random() * (double)7.0F) - 3;
- var3 += 15;
- if (var3 > this.field_1) {
- var2 = (int)(Math.random() * (double)this.field_0);
- var3 = 0;
- }
-
- try {
- Thread.sleep(50L);
- } catch (InterruptedException var4) {
- }
- }
-
- }
-
- public void loadImage() {
- MediaTracker var1 = new MediaTracker(this);
- String var2 = ((Applet)this).getParameter("image");
- this.origImg = ((Applet)this).getImage(((Applet)this).getDocumentBase(), var2);
- var1.addImage(this.origImg, 0);
-
- try {
- var1.waitForID(0);
- } catch (InterruptedException var3) {
- }
-
- this.field_0 = this.origImg.getWidth(this);
- this.field_1 = this.origImg.getHeight(this);
- }
-
- public void smudge(Graphics var1, int var2, int var3) {
- int var4 = (int)(Math.random() * (double)15.0F / (double)4.0F) - 1;
- int var5 = (int)(Math.random() * (double)15.0F / (double)4.0F) - 1;
- var1.copyArea(var2, var3, 15, 15, var4, var5);
- }
-
- public void update(Graphics var1) {
- this.paint(var1);
- }
-
- public void paint(Graphics var1) {
- if (this.backImg != null) {
- var1.drawImage(this.backImg, 0, 0, this);
- }
-
- }
- }
-