home *** CD-ROM | disk | FTP | other *** search
- import java.applet.Applet;
- import java.applet.AudioClip;
- import java.awt.Color;
- import java.awt.Component;
- import java.awt.Event;
- import java.awt.Graphics;
- import java.awt.Image;
- import java.awt.MediaTracker;
- import java.awt.image.CropImageFilter;
- import java.awt.image.FilteredImageSource;
- import java.net.URL;
- import java.util.StringTokenizer;
-
- public class AnimatePLUS25 extends Applet implements Runnable {
- int framecount;
- // $FF: renamed from: fi int
- int field_0;
- int width;
- int height;
- int cycles;
- int[] bordersizes;
- int[] transitionrates;
- int[] transitionsteps;
- int[] pauses;
- int[] xpositions;
- int[] ypositions;
- String framedir;
- String dummypipes;
- String sounddir;
- String[] soundactivations;
- String onetag;
- String[] targets;
- String[] transitions;
- String[] translist;
- URL urldef;
- URL[] urls;
- Image bufferI;
- Image frameimage;
- Image background;
- Image foreground;
- Image[] frames;
- AudioClip[] sounds;
- boolean tag = false;
- Graphics bufferG;
- Thread woohoo;
- Color[] bgcolors;
- Color[] bordercolors;
- // $FF: renamed from: mt java.awt.MediaTracker
- MediaTracker field_1;
- String transitionlist;
-
- public void init() {
- }
-
- public void run() {
- this.field_1 = new MediaTracker(this);
- this.width = ((Component)this).size().width;
- this.height = ((Component)this).size().height;
- this.field_0 = this.framecount = 0;
- this.bufferI = ((Component)this).createImage(this.width, this.height);
- this.bufferG = this.bufferI.getGraphics();
- String var1 = ((Applet)this).getParameter("COPYRIGHT");
- if (var1 == null || !var1.equals("AnimatePLUS applet, Copyright 1996 Sun Microsystems, Inc., all rights reserved.")) {
- this.stop();
- }
-
- var1 = ((Applet)this).getParameter("DOCUMENTATION");
- if (var1 == null || !var1.equals("Documentation found at: http://www.xm.com/cafe/")) {
- this.stop();
- }
-
- var1 = ((Applet)this).getParameter("ONETAG");
- if (var1 != null) {
- this.tag = true;
- this.onetag = var1 + "*";
- } else {
- this.tag = false;
- }
-
- var1 = this.tag ? this.extractParam("BACKGROUND") : ((Applet)this).getParameter("BACKGROUND");
-
- try {
- this.background = ((Applet)this).getImage(new URL(((Applet)this).getDocumentBase(), var1));
- } catch (Exception var26) {
- }
-
- if (this.background != null) {
- this.field_1.addImage(this.background, -3);
- }
-
- var1 = this.tag ? this.extractParam("CYCLES") : ((Applet)this).getParameter("CYCLES");
- this.cycles = var1 != null ? Integer.parseInt(var1) : 0;
- var1 = this.tag ? this.extractParam("FOREGROUND") : ((Applet)this).getParameter("FOREGROUND");
-
- try {
- this.foreground = ((Applet)this).getImage(new URL(((Applet)this).getDocumentBase(), var1));
- } catch (Exception var25) {
- }
-
- if (this.foreground != null) {
- this.field_1.addImage(this.foreground, -2);
- }
-
- var1 = this.tag ? this.extractParam("FRAMEDIR") : ((Applet)this).getParameter("FRAMEDIR");
- this.framedir = var1 != null ? var1 : "";
- var1 = this.tag ? this.extractParam("TRANSITIONLIST") : ((Applet)this).getParameter("TRANSITIONLIST");
- this.transitionlist = var1 != null ? var1 : "slidein(r)|slideout(r)|shutter|scroll(r)";
- StringTokenizer var2 = new StringTokenizer(this.transitionlist, "|");
- int var3 = var2.countTokens();
- this.translist = new String[var3];
-
- for(int var4 = 0; var4 < var3; ++var4) {
- this.translist[var4] = var2.nextToken().trim();
- }
-
- var1 = this.tag ? this.extractParam("FRAMEIMAGE") : ((Applet)this).getParameter("FRAMEIMAGE");
-
- try {
- this.frameimage = var1 != null ? ((Applet)this).getImage(new URL(((Applet)this).getDocumentBase(), var1)) : null;
- } catch (Exception var24) {
- }
-
- if (this.frameimage != null) {
- this.field_1.addImage(this.frameimage, -1);
- }
-
- var1 = this.tag ? this.extractParam("SOUNDDIR") : ((Applet)this).getParameter("SOUNDDIR");
- this.sounddir = var1 != null ? var1 : "";
- if (this.frameimage != null) {
- if (!this.field_1.checkID(-1)) {
- try {
- this.field_1.waitForID(-1);
- } catch (InterruptedException var23) {
- }
- }
-
- var1 = this.tag ? this.extractParam("FRAMECUTS") : ((Applet)this).getParameter("FRAMECUTS");
- StringTokenizer var5 = new StringTokenizer(var1, "|");
- this.framecount = var5.countTokens();
- this.setArrays();
-
- for(int var6 = 0; var6 < this.framecount; ++var6) {
- String var7 = var5.nextToken().trim();
- StringTokenizer var8 = new StringTokenizer(var7, ",");
- int var9 = Integer.parseInt(var8.nextToken().trim());
- int var10 = Integer.parseInt(var8.nextToken().trim());
- int var11 = Integer.parseInt(var8.nextToken().trim());
- int var12 = Integer.parseInt(var8.nextToken().trim());
- System.out.println("FRAME #" + var6 + ": x=" + var9 + ", y=" + var10 + ", w=" + var11 + ", h=" + var12);
- this.frames[var6] = ((Component)this).createImage(new FilteredImageSource(this.frameimage.getSource(), new CropImageFilter(var9, var10, var11, var12)));
- this.field_1.addImage(this.frames[var6], var6);
- }
- } else {
- var1 = this.tag ? this.extractParam("FRAMES") : ((Applet)this).getParameter("FRAMES");
- StringTokenizer var62 = new StringTokenizer(var1, "|");
- this.framecount = var62.countTokens();
- this.setArrays();
-
- for(int var64 = 0; var64 < this.framecount; ++var64) {
- try {
- this.frames[var64] = ((Applet)this).getImage(new URL(((Applet)this).getDocumentBase(), this.framedir + var62.nextToken()));
- } catch (Exception var22) {
- }
-
- this.field_1.addImage(this.frames[var64], var64);
- }
- }
-
- this.dummypipes = "";
-
- for(int var63 = 0; var63 < this.framecount; ++var63) {
- this.dummypipes = this.dummypipes + "|";
- }
-
- var1 = this.tag ? this.extractParam("BGCOLORS") : ((Applet)this).getParameter("BGCOLORS");
- if (var1 == null) {
- for(int var65 = 0; var65 < this.framecount; ++var65) {
- this.bgcolors[var65] = Color.lightGray;
- }
- } else {
- var1 = var1 + this.dummypipes;
-
- for(int var66 = 0; var66 < this.framecount; ++var66) {
- if (var66 == 0) {
- this.bgcolors[var66] = !this.prePipe(var1).equals("") ? new Color(this.rValue(this.prePipe(var1)), this.gValue(this.prePipe(var1)), this.bValue(this.prePipe(var1))) : Color.lightGray;
- } else {
- this.bgcolors[var66] = !this.prePipe(var1).equals("") ? new Color(this.rValue(this.prePipe(var1)), this.gValue(this.prePipe(var1)), this.bValue(this.prePipe(var1))) : this.bgcolors[var66 - 1];
- }
-
- var1 = this.postPipe(var1);
- }
- }
-
- var1 = this.tag ? this.extractParam("BORDERCOLORS") : ((Applet)this).getParameter("BORDERCOLORS");
- if (var1 == null) {
- for(int var67 = 0; var67 < this.framecount; ++var67) {
- this.bordercolors[var67] = Color.black;
- }
- } else {
- var1 = var1 + this.dummypipes;
-
- for(int var68 = 0; var68 < this.framecount; ++var68) {
- if (var68 == 0) {
- this.bordercolors[var68] = !this.prePipe(var1).equals("") ? new Color(this.rValue(this.prePipe(var1)), this.gValue(this.prePipe(var1)), this.bValue(this.prePipe(var1))) : Color.black;
- } else {
- this.bordercolors[var68] = !this.prePipe(var1).equals("") ? new Color(this.rValue(this.prePipe(var1)), this.gValue(this.prePipe(var1)), this.bValue(this.prePipe(var1))) : this.bordercolors[var68 - 1];
- }
-
- var1 = this.postPipe(var1);
- }
- }
-
- var1 = this.tag ? this.extractParam("BORDERSIZES") : ((Applet)this).getParameter("BORDERSIZES");
- if (var1 == null) {
- for(int var69 = 0; var69 < this.framecount; ++var69) {
- this.bordersizes[var69] = 0;
- }
- } else {
- var1 = var1 + this.dummypipes;
-
- for(int var70 = 0; var70 < this.framecount; ++var70) {
- if (var70 == 0) {
- this.bordersizes[var70] = !this.prePipe(var1).equals("") ? Integer.parseInt(this.prePipe(var1)) : 0;
- } else {
- this.bordersizes[var70] = !this.prePipe(var1).equals("") ? Integer.parseInt(this.prePipe(var1)) : this.bordersizes[var70 - 1];
- }
-
- var1 = this.postPipe(var1);
- }
- }
-
- var1 = this.tag ? this.extractParam("PAUSES") : ((Applet)this).getParameter("PAUSES");
- if (var1 == null) {
- for(int var71 = 0; var71 < this.framecount; ++var71) {
- this.pauses[var71] = 100;
- }
- } else {
- var1 = var1 + this.dummypipes;
-
- for(int var72 = 0; var72 < this.framecount; ++var72) {
- if (!this.prePipe(var1).equals("")) {
- this.pauses[var72] = Integer.parseInt(this.prePipe(var1));
- } else {
- this.pauses[var72] = var72 == 0 ? 100 : this.pauses[var72 - 1];
- }
-
- var1 = this.postPipe(var1);
- }
- }
-
- var1 = this.tag ? this.extractParam("POSITIONS") : ((Applet)this).getParameter("POSITIONS");
- if (var1 == null) {
- for(int var73 = 0; var73 < this.framecount; ++var73) {
- this.xpositions[var73] = this.ypositions[var73] = 0;
- }
- } else {
- var1 = var1 + this.dummypipes;
-
- for(int var74 = 0; var74 < this.framecount; ++var74) {
- String var90 = !this.prePipe(var1).equals("") ? this.prePipe(var1) : "x,x";
- String var92 = this.preComma(var90);
- String var94 = this.postComma(var90);
- if (var92.equals("x")) {
- this.xpositions[var74] = var74 == 0 ? 0 : this.xpositions[var74 - 1];
- } else if (var92.startsWith("-")) {
- this.xpositions[var74] = var74 == 0 ? -Integer.parseInt(var92.substring(1)) : this.xpositions[var74 - 1] - Integer.parseInt(var92.substring(1));
- } else if (var92.startsWith("+")) {
- this.xpositions[var74] = var74 == 0 ? Integer.parseInt(var92.substring(1)) : this.xpositions[var74 - 1] + Integer.parseInt(var92.substring(1));
- } else {
- this.xpositions[var74] = Integer.parseInt(var92);
- }
-
- if (var94.equals("x")) {
- this.ypositions[var74] = var74 == 0 ? 0 : this.ypositions[var74 - 1];
- } else if (var94.startsWith("-")) {
- this.ypositions[var74] = var74 == 0 ? -Integer.parseInt(var94.substring(1)) : this.ypositions[var74 - 1] - Integer.parseInt(var94.substring(1));
- } else if (var94.startsWith("+")) {
- this.ypositions[var74] = var74 == 0 ? Integer.parseInt(var94.substring(1)) : this.ypositions[var74 - 1] + Integer.parseInt(var94.substring(1));
- } else {
- this.ypositions[var74] = Integer.parseInt(var94);
- }
-
- var1 = this.postPipe(var1);
- }
- }
-
- var1 = this.tag ? this.extractParam("SOUNDS") : ((Applet)this).getParameter("SOUNDS");
- if (var1 == null) {
- for(int var75 = 0; var75 < this.framecount; ++var75) {
- this.sounds[var75] = null;
- }
- } else {
- var1 = var1 + this.dummypipes;
-
- for(int var76 = 0; var76 < this.framecount; ++var76) {
- try {
- if (!this.prePipe(var1).equals("")) {
- this.sounds[var76] = this.prePipe(var1).equals("null") ? null : ((Applet)this).getAudioClip(new URL(((Applet)this).getDocumentBase(), this.sounddir + this.prePipe(var1)));
- } else {
- this.sounds[var76] = var76 == 0 ? null : this.sounds[var76 - 1];
- }
- } catch (Exception var21) {
- }
-
- var1 = this.postPipe(var1);
- }
- }
-
- var1 = this.tag ? this.extractParam("SOUNDACTIVATIONS") : ((Applet)this).getParameter("SOUNDACTIVATIONS");
- if (var1 == null) {
- for(int var77 = 0; var77 < this.framecount; ++var77) {
- this.soundactivations[var77] = "enter";
- }
- } else {
- var1 = var1 + this.dummypipes.toLowerCase();
-
- for(int var78 = 0; var78 < this.framecount; ++var78) {
- if (var78 == 0) {
- this.soundactivations[var78] = !this.prePipe(var1).equals("") ? this.prePipe(var1) : "enter";
- } else {
- this.soundactivations[var78] = !this.prePipe(var1).equals("") ? this.prePipe(var1) : this.soundactivations[var78 - 1];
- }
-
- var1 = this.postPipe(var1);
- }
- }
-
- var1 = this.tag ? this.extractParam("TARGETS") : ((Applet)this).getParameter("TARGETS");
- if (var1 == null) {
- for(int var79 = 0; var79 < this.framecount; ++var79) {
- this.targets[var79] = null;
- }
- } else {
- var1 = var1 + this.dummypipes;
-
- for(int var80 = 0; var80 < this.framecount; ++var80) {
- if (var80 == 0) {
- this.targets[var80] = !this.prePipe(var1).equals("") ? this.prePipe(var1) : null;
- } else {
- this.targets[var80] = !this.prePipe(var1).equals("") ? this.prePipe(var1) : this.targets[var80 - 1];
- }
-
- var1 = this.postPipe(var1);
- }
- }
-
- var1 = this.tag ? this.extractParam("TRANSITIONS") : ((Applet)this).getParameter("TRANSITIONS");
- if (var1 == null) {
- for(int var81 = 0; var81 < this.framecount; ++var81) {
- this.transitions[var81] = "overwrite";
- }
- } else {
- var1 = var1 + this.dummypipes.toLowerCase();
-
- for(int var82 = 0; var82 < this.framecount; ++var82) {
- if (var82 == 0) {
- this.transitions[var82] = !this.prePipe(var1).equals("") ? this.prePipe(var1) : "overwrite";
- } else {
- this.transitions[var82] = !this.prePipe(var1).equals("") ? this.prePipe(var1) : this.transitions[var82 - 1];
- }
-
- var1 = this.postPipe(var1);
- }
- }
-
- var1 = this.tag ? this.extractParam("TRANSITIONRATES") : ((Applet)this).getParameter("TRANSITIONRATES");
- if (var1 == null) {
- for(int var83 = 0; var83 < this.framecount; ++var83) {
- this.transitionrates[var83] = 100;
- }
- } else {
- var1 = var1 + this.dummypipes;
-
- for(int var84 = 0; var84 < this.framecount; ++var84) {
- if (var84 == 0) {
- this.transitionrates[var84] = !this.prePipe(var1).equals("") ? Integer.parseInt(this.prePipe(var1)) : 0;
- } else {
- this.transitionrates[var84] = !this.prePipe(var1).equals("") ? Integer.parseInt(this.prePipe(var1)) : this.transitionrates[var84 - 1];
- }
-
- var1 = this.postPipe(var1);
- }
- }
-
- var1 = this.tag ? this.extractParam("TRANSITIONSTEPS") : ((Applet)this).getParameter("TRANSITIONSTEPS");
- if (var1 == null) {
- for(int var85 = 0; var85 < this.framecount; ++var85) {
- this.transitionsteps[var85] = 10;
- }
- } else {
- var1 = var1 + this.dummypipes;
-
- for(int var86 = 0; var86 < this.framecount; ++var86) {
- if (var86 == 0) {
- this.transitionsteps[var86] = !this.prePipe(var1).equals("") ? Integer.parseInt(this.prePipe(var1)) : 0;
- } else {
- this.transitionsteps[var86] = !this.prePipe(var1).equals("") ? Integer.parseInt(this.prePipe(var1)) : this.transitionsteps[var86 - 1];
- }
-
- var1 = this.postPipe(var1);
- }
- }
-
- try {
- this.urldef = new URL("http://www.xm.com/cafe/AnimatePLUS/");
- } catch (Exception var20) {
- }
-
- var1 = this.tag ? this.extractParam("URLS") : ((Applet)this).getParameter("URLS");
- if (var1 == null) {
- for(int var87 = 0; var87 < this.framecount; ++var87) {
- this.urls[var87] = this.urldef;
- }
- } else {
- var1 = var1 + this.dummypipes;
-
- for(int var88 = 0; var88 < this.framecount; ++var88) {
- try {
- if (!this.prePipe(var1).equals("")) {
- this.urls[var88] = this.prePipe(var1).equals("null") ? null : new URL(((Applet)this).getDocumentBase(), this.prePipe(var1));
- } else {
- this.urls[var88] = var88 == 0 ? this.urldef : this.urls[var88 - 1];
- }
- } catch (Exception var19) {
- }
-
- var1 = this.postPipe(var1);
- }
- }
-
- byte var89;
- if (this.cycles == 0) {
- var89 = 0;
- this.cycles = 1;
- } else {
- var89 = 1;
- }
-
- for(int var91 = 0; var91 < this.cycles * this.framecount; var91 += var89) {
- if (!this.field_1.checkID(this.field_0)) {
- try {
- this.field_1.waitForID(this.field_0);
- } catch (InterruptedException var14) {
- }
- }
-
- if (this.soundactivations[this.field_0].equals("auto") && this.sounds[this.field_0] != null) {
- this.sounds[this.field_0].play();
- }
-
- String var93 = this.transitions[this.field_0].equals("random") ? this.translist[(int)(Math.random() * (double)this.translist.length)] : this.transitions[this.field_0];
- if (var93.equals("overwrite")) {
- this.paintBackground(this.bufferG);
- this.bufferG.drawImage(this.frames[this.field_0], this.xpositions[this.field_0], this.ypositions[this.field_0], this);
- this.paintForeground(this.bufferG);
- ((Component)this).repaint();
- } else if (!var93.equals("shutter")) {
- if (var93.startsWith("shrink")) {
- String var96 = var93.substring(var93.indexOf("(") + 1, var93.lastIndexOf(")"));
- if (var96.startsWith("r")) {
- var96 = String.valueOf((int)(Math.random() * (double)9.0F + (double)1.0F));
- }
-
- if (var96.equals("1")) {
- this.shrink((double)0.0F, (double)0.0F);
- } else if (var96.equals("2")) {
- this.shrink((double)0.5F, (double)0.0F);
- } else if (var96.equals("3")) {
- this.shrink((double)1.0F, (double)0.0F);
- } else if (var96.equals("4")) {
- this.shrink((double)1.0F, (double)0.5F);
- } else if (var96.equals("5")) {
- this.shrink((double)1.0F, (double)1.0F);
- } else if (var96.equals("6")) {
- this.shrink((double)0.5F, (double)1.0F);
- } else if (var96.equals("7")) {
- this.shrink((double)0.0F, (double)1.0F);
- } else if (var96.equals("8")) {
- this.shrink((double)0.0F, (double)0.5F);
- } else {
- this.shrink((double)0.5F, (double)0.5F);
- }
- } else if (var93.startsWith("expand")) {
- String var97 = var93.substring(var93.indexOf("(") + 1, var93.lastIndexOf(")"));
- if (var97.startsWith("r")) {
- var97 = String.valueOf((int)(Math.random() * (double)9.0F + (double)1.0F));
- }
-
- if (var97.equals("1")) {
- this.expand((double)0.0F, (double)0.0F);
- } else if (var97.equals("2")) {
- this.expand((double)0.5F, (double)0.0F);
- } else if (var97.equals("3")) {
- this.expand((double)1.0F, (double)0.0F);
- } else if (var97.equals("4")) {
- this.expand((double)1.0F, (double)0.5F);
- } else if (var97.equals("5")) {
- this.expand((double)1.0F, (double)1.0F);
- } else if (var97.equals("6")) {
- this.expand((double)0.5F, (double)1.0F);
- } else if (var97.equals("7")) {
- this.expand((double)0.0F, (double)1.0F);
- } else if (var97.equals("8")) {
- this.expand((double)0.0F, (double)0.5F);
- } else {
- this.expand((double)0.5F, (double)0.5F);
- }
- } else if (var93.startsWith("slidein")) {
- String var98 = var93.substring(var93.indexOf("(") + 1, var93.lastIndexOf(")"));
- if (var98.startsWith("r")) {
- var98 = String.valueOf((int)(Math.random() * (double)8.0F + (double)1.0F));
- }
-
- if (var98.equals("1")) {
- this.slideIn(-this.width, -this.height, 1, 1);
- } else if (var98.equals("2")) {
- this.slideIn(0, -this.height, 0, 1);
- } else if (var98.equals("3")) {
- this.slideIn(this.width, -this.height, -1, 1);
- } else if (var98.equals("4")) {
- this.slideIn(this.width, 0, -1, 0);
- } else if (var98.equals("5")) {
- this.slideIn(this.width, this.height, -1, -1);
- } else if (var98.equals("6")) {
- this.slideIn(0, this.height, 0, -1);
- } else if (var98.equals("7")) {
- this.slideIn(-this.width, this.height, 1, -1);
- } else {
- this.slideIn(-this.width, 0, 1, 0);
- }
- } else if (var93.startsWith("slideout")) {
- String var99 = var93.substring(var93.indexOf("(") + 1, var93.lastIndexOf(")"));
- if (var99.startsWith("r")) {
- var99 = String.valueOf((int)(Math.random() * (double)8.0F + (double)1.0F));
- }
-
- if (var99.equals("1")) {
- this.slideOut(-1, -1);
- } else if (var99.equals("2")) {
- this.slideOut(0, -1);
- } else if (var99.equals("3")) {
- this.slideOut(1, -1);
- } else if (var99.equals("4")) {
- this.slideOut(1, 0);
- } else if (var99.equals("5")) {
- this.slideOut(1, 1);
- } else if (var99.equals("6")) {
- this.slideOut(0, 1);
- } else if (var99.equals("7")) {
- this.slideOut(-1, 1);
- } else {
- this.slideOut(-1, 0);
- }
- } else if (var93.startsWith("scroll")) {
- String var100 = var93.substring(var93.indexOf("(") + 1, var93.lastIndexOf(")"));
- if (var100.startsWith("r")) {
- var100 = String.valueOf((int)(Math.random() * (double)4.0F + (double)1.0F) * 2);
- }
-
- if (var100.equals("2")) {
- this.scroll(0, 1);
- } else if (var100.equals("4")) {
- this.scroll(-1, 0);
- } else if (var100.equals("6")) {
- this.scroll(0, -1);
- } else {
- this.scroll(1, 0);
- }
- } else if (var93.startsWith("squish")) {
- String var101 = var93.substring(var93.indexOf("(") + 1, var93.lastIndexOf(")"));
- if (var101.startsWith("r")) {
- var101 = String.valueOf((int)(Math.random() * (double)2.0F + (double)1.0F));
- }
-
- if (var101.equals("2")) {
- this.squish(0, 1);
- } else {
- this.squish(0, -1);
- }
- }
- } else {
- int var95 = (this.field_0 - 1 + this.framecount) % this.framecount;
- this.paintBackground(this.bufferG);
- this.bufferG.drawImage(this.frames[var95], this.xpositions[var95], this.ypositions[var95], this);
-
- for(int var102 = 0; var102 < this.transitionsteps[this.field_0]; ++var102) {
- if (this.foreground != null) {
- this.bufferG.drawImage(this.foreground, 0, 0, this);
- }
-
- this.bufferG.setColor(this.bordercolors[this.field_0]);
- int var103 = Math.min(this.width, this.height) / 2 * (var102 + 1) / this.transitionsteps[this.field_0];
-
- for(int var105 = 0; var105 < var103; ++var105) {
- this.bufferG.drawRect(var105, var105, this.width - 2 * var105 - 1, this.height - 2 * var105 - 1);
- }
-
- try {
- Thread.sleep((long)this.transitionrates[this.field_0]);
- } catch (Exception var18) {
- }
-
- ((Component)this).repaint();
- }
-
- for(int var104 = 0; var104 < this.transitionsteps[this.field_0]; ++var104) {
- this.paintBackground(this.bufferG);
- this.bufferG.drawImage(this.frames[this.field_0], this.xpositions[this.field_0], this.ypositions[this.field_0], this);
- if (this.foreground != null) {
- this.bufferG.drawImage(this.foreground, 0, 0, this);
- }
-
- this.bufferG.setColor(this.bordercolors[this.field_0]);
- int var106 = Math.min(this.width, this.height) / 2 * (this.transitionsteps[this.field_0] - var104) / this.transitionsteps[this.field_0];
-
- for(int var13 = 0; var13 < var106; ++var13) {
- this.bufferG.drawRect(var13, var13, this.width - 2 * var13 - 1, this.height - 2 * var13 - 1);
- }
-
- try {
- Thread.sleep((long)this.transitionrates[this.field_0]);
- } catch (Exception var17) {
- }
-
- ((Component)this).repaint();
- }
-
- this.paintBackground(this.bufferG);
- this.bufferG.drawImage(this.frames[this.field_0], this.xpositions[this.field_0], this.ypositions[this.field_0], this);
- this.paintForeground(this.bufferG);
-
- try {
- Thread.sleep((long)this.transitionrates[this.field_0]);
- } catch (Exception var16) {
- }
-
- ((Component)this).repaint();
- }
-
- this.paintBackground(this.bufferG);
- this.bufferG.drawImage(this.frames[this.field_0], this.xpositions[this.field_0], this.ypositions[this.field_0], this);
- this.paintForeground(this.bufferG);
- ((Component)this).repaint();
- if (this.pauses[this.field_0] > 0) {
- try {
- Thread.sleep((long)this.pauses[this.field_0]);
- } catch (Exception var15) {
- }
- } else {
- this.woohoo.suspend();
- }
-
- this.field_0 = (this.field_0 + 1) % this.framecount;
- }
-
- }
-
- public void shrink(double var1, double var3) {
- for(int var5 = 0; var5 < this.transitionsteps[this.field_0]; ++var5) {
- int var6 = (this.field_0 - 1 + this.framecount) % this.framecount;
- int var7 = this.width * (this.transitionsteps[this.field_0] - var5) / this.transitionsteps[this.field_0];
- int var8 = this.height * (this.transitionsteps[this.field_0] - var5) / this.transitionsteps[this.field_0];
- int var9 = (int)((double)this.xpositions[var6] + var1 * (double)(this.width - var7));
- int var10 = (int)((double)this.ypositions[var6] + var3 * (double)(this.height - var8));
- this.paintBackground(this.bufferG);
- this.bufferG.drawImage(this.frames[this.field_0], this.xpositions[this.field_0], this.ypositions[this.field_0], this);
- this.bufferG.drawImage(this.frames[var6], var9, var10, var7, var8, this);
- this.paintForeground(this.bufferG);
-
- try {
- Thread.sleep((long)this.transitionrates[this.field_0]);
- } catch (Exception var11) {
- }
-
- ((Component)this).repaint();
- }
-
- }
-
- public void expand(double var1, double var3) {
- for(int var5 = 0; var5 < this.transitionsteps[this.field_0]; ++var5) {
- int var6 = (this.field_0 - 1 + this.framecount) % this.framecount;
- int var7 = this.width * (var5 + 1) / this.transitionsteps[this.field_0];
- int var8 = this.height * (var5 + 1) / this.transitionsteps[this.field_0];
- int var9 = (int)((double)this.xpositions[this.field_0] + var1 * (double)(this.width - var7));
- int var10 = (int)((double)this.ypositions[this.field_0] + var3 * (double)(this.height - var8));
- this.paintBackground(this.bufferG);
- this.bufferG.drawImage(this.frames[var6], this.xpositions[var6], this.ypositions[var6], this);
- this.bufferG.drawImage(this.frames[this.field_0], var9, var10, var7, var8, this);
- this.paintForeground(this.bufferG);
-
- try {
- Thread.sleep((long)this.transitionrates[this.field_0]);
- } catch (Exception var11) {
- }
-
- ((Component)this).repaint();
- }
-
- }
-
- public void squish(int var1, int var2) {
- for(int var3 = 0; var3 < this.transitionsteps[this.field_0]; ++var3) {
- int var4 = (this.field_0 - 1 + this.framecount) % this.framecount;
- int var7;
- int var8;
- int var11;
- int var12;
- if (var1 == 0) {
- var7 = var11 = this.width;
- var8 = this.height * (this.transitionsteps[this.field_0] - var3 - 1) / this.transitionsteps[this.field_0];
- var12 = this.height - var8;
- } else {
- var8 = var12 = this.height;
- var7 = this.width * (this.transitionsteps[this.field_0] - var3 - 1) / this.transitionsteps[this.field_0];
- var11 = this.width - var7;
- }
-
- int var9 = var1 == -1 ? this.xpositions[this.field_0] + this.width - var11 : 0;
- int var5 = var1 == 1 ? this.xpositions[var4] + this.width - var7 : 0;
- int var10 = var2 == -1 ? this.ypositions[this.field_0] + this.height - var12 : 0;
- int var6 = var2 == 1 ? this.ypositions[var4] + this.height - var8 : 0;
- this.paintBackground(this.bufferG);
- this.bufferG.drawImage(this.frames[var4], var5, var6, var7, var8, this);
- this.bufferG.drawImage(this.frames[this.field_0], var9, var10, var11, var12, this);
- this.paintForeground(this.bufferG);
-
- try {
- Thread.sleep((long)this.transitionrates[this.field_0]);
- } catch (Exception var13) {
- }
-
- ((Component)this).repaint();
- }
-
- }
-
- public void scroll(int var1, int var2) {
- for(int var3 = 0; var3 < this.transitionsteps[this.field_0]; ++var3) {
- int var4 = (this.field_0 - 1 + this.framecount) % this.framecount;
- int var5 = this.xpositions[this.field_0] + var1 * (this.width * (var3 + 1) / this.transitionsteps[this.field_0] - this.width);
- int var6 = this.ypositions[this.field_0] + var2 * (this.height * (var3 + 1) / this.transitionsteps[this.field_0] - this.height);
- int var7 = this.xpositions[var4] + var1 * this.width * (var3 + 1) / this.transitionsteps[this.field_0];
- int var8 = this.ypositions[var4] + var2 * this.height * (var3 + 1) / this.transitionsteps[this.field_0];
- this.paintBackground(this.bufferG);
- this.bufferG.drawImage(this.frames[var4], var7, var8, this);
- this.bufferG.drawImage(this.frames[this.field_0], var5, var6, this);
- this.paintForeground(this.bufferG);
-
- try {
- Thread.sleep((long)this.transitionrates[this.field_0]);
- } catch (Exception var9) {
- }
-
- ((Component)this).repaint();
- }
-
- }
-
- public void slideIn(int var1, int var2, int var3, int var4) {
- for(int var5 = 0; var5 < this.transitionsteps[this.field_0]; ++var5) {
- int var6 = (this.field_0 - 1 + this.framecount) % this.framecount;
- int var7 = this.xpositions[this.field_0] + var1 + var3 * this.width * (var5 + 1) / this.transitionsteps[this.field_0];
- int var8 = this.ypositions[this.field_0] + var2 + var4 * this.height * (var5 + 1) / this.transitionsteps[this.field_0];
- this.paintBackground(this.bufferG);
- this.bufferG.drawImage(this.frames[var6], this.xpositions[var6], this.ypositions[var6], this);
- this.bufferG.drawImage(this.frames[this.field_0], var7, var8, this);
- this.paintForeground(this.bufferG);
-
- try {
- Thread.sleep((long)this.transitionrates[this.field_0]);
- } catch (Exception var9) {
- }
-
- ((Component)this).repaint();
- }
-
- }
-
- public void slideOut(int var1, int var2) {
- for(int var3 = 0; var3 < this.transitionsteps[this.field_0]; ++var3) {
- int var4 = (this.field_0 - 1 + this.framecount) % this.framecount;
- int var5 = this.xpositions[var4] + var1 * this.width * (var3 + 1) / this.transitionsteps[this.field_0];
- int var6 = this.ypositions[var4] + var2 * this.height * (var3 + 1) / this.transitionsteps[this.field_0];
- this.paintBackground(this.bufferG);
- this.bufferG.drawImage(this.frames[this.field_0], this.xpositions[this.field_0], this.ypositions[this.field_0], this);
- this.bufferG.drawImage(this.frames[var4], var5, var6, this);
- this.paintForeground(this.bufferG);
-
- try {
- Thread.sleep((long)this.transitionrates[this.field_0]);
- } catch (Exception var7) {
- }
-
- ((Component)this).repaint();
- }
-
- }
-
- public void paintBackground(Graphics var1) {
- var1.setColor(this.bgcolors[this.field_0]);
- var1.fillRect(0, 0, this.width, this.height);
- if (this.background != null) {
- if (!this.field_1.checkID(-3)) {
- try {
- this.field_1.waitForID(-3);
- } catch (InterruptedException var2) {
- }
- }
-
- var1.drawImage(this.background, 0, 0, this);
- }
-
- }
-
- public void paintForeground(Graphics var1) {
- if (this.foreground != null) {
- if (!this.field_1.checkID(-2)) {
- try {
- this.field_1.waitForID(-2);
- } catch (InterruptedException var3) {
- }
- }
-
- var1.drawImage(this.foreground, 0, 0, this);
- }
-
- var1.setColor(this.bordercolors[this.field_0]);
-
- for(int var2 = 0; var2 < this.bordersizes[this.field_0]; ++var2) {
- var1.drawRect(var2, var2, this.width - 2 * var2 - 1, this.height - 2 * var2 - 1);
- }
-
- }
-
- public void setArrays() {
- this.bgcolors = new Color[this.framecount];
- this.bordercolors = new Color[this.framecount];
- this.bordersizes = new int[this.framecount];
- this.frames = new Image[this.framecount];
- this.pauses = new int[this.framecount];
- this.soundactivations = new String[this.framecount];
- this.sounds = new AudioClip[this.framecount];
- this.targets = new String[this.framecount];
- this.transitions = new String[this.framecount];
- this.transitionrates = new int[this.framecount];
- this.transitionsteps = new int[this.framecount];
- this.urls = new URL[this.framecount];
- this.xpositions = new int[this.framecount];
- this.ypositions = new int[this.framecount];
- }
-
- public String extractParam(String var1) {
- var1 = "*" + var1 + "=";
- return this.onetag.indexOf(var1) != -1 ? this.onetag.substring(this.onetag.indexOf(var1) + var1.length(), this.onetag.indexOf("*", this.onetag.indexOf(var1) + 1)) : null;
- }
-
- public String prePipe(String var1) {
- return var1.substring(0, var1.indexOf("|")).trim();
- }
-
- public String postPipe(String var1) {
- return var1.substring(var1.indexOf("|") + 1).trim();
- }
-
- public String preComma(String var1) {
- return var1.substring(0, var1.indexOf(",")).trim();
- }
-
- public String postComma(String var1) {
- return var1.substring(var1.indexOf(",") + 1).trim();
- }
-
- public void paint(Graphics var1) {
- var1.drawImage(this.bufferI, 0, 0, this);
- }
-
- public int rValue(String var1) {
- return Integer.parseInt(var1.substring(0, var1.indexOf(",")));
- }
-
- public int gValue(String var1) {
- return Integer.parseInt(var1.substring(var1.indexOf(",") + 1, var1.lastIndexOf(",")));
- }
-
- public int bValue(String var1) {
- return Integer.parseInt(var1.substring(var1.lastIndexOf(",") + 1));
- }
-
- public void update(Graphics var1) {
- this.paint(var1);
- }
-
- public void start() {
- if (this.woohoo == null) {
- this.woohoo = new Thread(this);
- this.woohoo.start();
- }
-
- }
-
- public void stop() {
- this.woohoo.stop();
- this.woohoo = null;
- }
-
- public boolean mouseEnter(Event var1, int var2, int var3) {
- if (this.pauses[this.field_0] == -2) {
- this.woohoo.resume();
- }
-
- if (this.urls[this.field_0] != null) {
- ((Applet)this).showStatus("LINK TO: " + this.urls[this.field_0].toString());
- }
-
- if (this.soundactivations[this.field_0].equals("enter") && this.sounds[this.field_0] != null) {
- this.sounds[this.field_0].play();
- }
-
- return true;
- }
-
- public boolean mouseExit(Event var1, int var2, int var3) {
- return true;
- }
-
- public boolean mouseDown(Event var1, int var2, int var3) {
- if (this.pauses[this.field_0] == -1) {
- this.woohoo.resume();
- }
-
- try {
- if (this.targets[this.field_0] == null) {
- ((Applet)this).getAppletContext().showDocument(this.urls[this.field_0]);
- } else {
- ((Applet)this).getAppletContext().showDocument(this.urls[this.field_0], this.targets[this.field_0]);
- }
- } catch (Exception var4) {
- }
-
- if (this.soundactivations[this.field_0].equals("click") && this.sounds[this.field_0] != null) {
- this.sounds[this.field_0].play();
- }
-
- return true;
- }
- }
-