home *** CD-ROM | disk | FTP | other *** search
/ PC Online 1997 October / PCO1097.ISO / FilesBBS / FREI / TUBES.EXE / Slot.class (.txt) < prev    next >
Encoding:
Java Class File  |  1996-05-21  |  1.4 KB  |  55 lines

  1. import java.awt.Graphics;
  2. import java.awt.Point;
  3. import java.util.Vector;
  4.  
  5. class Slot extends Queue {
  6.    private int _color;
  7.  
  8.    Slot(int var1) {
  9.       super(var1);
  10.       this._color = var1;
  11.    }
  12.  
  13.    boolean isFull() {
  14.       return ((Vector)this).size() == this._color;
  15.    }
  16.  
  17.    int getColor() {
  18.       return this._color;
  19.    }
  20.  
  21.    void drawCage(Graphics var1, IsoPoint var2, int var3, int var4, boolean var5) {
  22.       var1.setColor(var5 ? Tubes.colors[this._color].darker() : Tubes.colors[this._color]);
  23.       IsoPoint var6 = new IsoPoint(var2.x, var2.y);
  24.       var6.isoMove(0, 0, var3);
  25.       var6.drawHalfIsoCircle(var1, var4, var5);
  26.       int var7 = var3 < 0 ? -1 : 1;
  27.       var6.drawHalfIsoCylinder(var1, var7 * (2 * var4 * this._color - Math.abs(var3)), var4, var5);
  28.       ((Point)var6).move(var2.x, var2.y);
  29.       var6.isoMove(0, 0, var7 * 2 * var4);
  30.       int var8 = 0;
  31.  
  32.       while(var8 < this._color) {
  33.          var6.drawHalfIsoCircle(var1, var4, var5);
  34.          ++var8;
  35.          var6.isoMove(0, 0, var7 * 2 * var4);
  36.       }
  37.  
  38.    }
  39.  
  40.    void draw(Graphics var1, IsoPoint var2, int var3, int var4) {
  41.       this.drawCage(var1, var2, var3, var4, true);
  42.       IsoPoint var5 = new IsoPoint(var2.x, var2.y);
  43.       var5.isoMove(0, 0, var3 < 0 ? -var4 - 2 * var4 * (this._color - ((Vector)this).size()) : var4);
  44.       int var6 = 0;
  45.  
  46.       while(var6 < ((Vector)this).size()) {
  47.          ((Bead)((Queue)this).at(var6)).draw(var1, var5.x, var5.y);
  48.          ++var6;
  49.          var5.isoMove(0, 0, var3 < 0 ? -2 * var4 : 2 * var4);
  50.       }
  51.  
  52.       this.drawCage(var1, var2, var3, var4, false);
  53.    }
  54. }
  55.