Größe eines Java Applets ändern?
Geizhals » Forum » Programmierung » Größe eines Java Applets ändern? (24 Beiträge, 184 Mal gelesen) Top-100 | Fresh-100
Du bist nicht angemeldet. [ Login/Registrieren ]
..............
Re(14): Größe eines Java Applets ändern?
27.04.2004, 15:20:57
dere.. daß der Source ned bsonders schön ist weiß ich..
aber darum gehz ja ned!
Funktionieren tut er eigenltich.. i hab jetzt ein paar sachen rausgelöscht die ned relevant sind für das Spiel...

des worums mit im MOment geht is einfach nur die Größe..

bin für alle Vorschläge und Ideen dankbar!
thx and cya



public class snake extends Applet implements Runnable {

  static CommPortIdentifier portID;
  static SerialPort serss;
  InputStream serialIn;
  OutputStream serialOut;

  Image dot[] = new Image[400];
  Image back;
  Image offI;
  Graphics offG;

  int x[] = new int[400];
  int y[] = new int[400];
  int rtemp = 1;
  int game = 1;
  int level;
  int z;
  int n;
  int count = 0;
  int score = 0;
  int add = 1;
  int multi = 2;

  Button b = new Button("Beginner");
  Button i = new Button("Intermediate");
  Button p = new Button("Professional");
  Button X = new Button("Xtreamest");

  String stemp;
  String s;
  String t;

  boolean go[] = new boolean[400];
  boolean left = false;
  boolean right = false;
  boolean up = false;
  boolean down = false;
  boolean started = false;
  boolean me = false;

  Thread setTime;


  public void init() {
    add(b);
    add(i);
    add(p);
    add(X);
    setBackground(Color.black);
    back = getImage(getCodeBase(), "screan3.gif");
    for (z = 0; z < 400; z++) {
      dot[z] = getImage(getCodeBase(), "dot.gif");
    }
    //serialInit();
  }

  public void update(Graphics g) {
   Dimension d = this.size();


   if (offI == null) {
      offI = createImage(d.width, d.height);
      offG = offI.getGraphics();
    }
    offG.clearRect(0, 0, d.width, d.height);
    paint(offG);
    g.drawImage(offI, 0, 0, null);
  }

  public void paint(Graphics g) {
    g.drawImage(back, 0, 0, this);
    g.setColor(Color.white);

    if (started) {
      g.setFont(new Font("Verdana", 1, 12));
      t = "Score: " + score + "";

      g.drawString(t, 210, 215);
    }

    if (game == 1) {
      g.setFont(new Font("Verdana", 1, 13));
      s = "Select Mode";
      g.drawString(s, 210, 190);

      b.move(75, 50);
      i.move(68, 90);
      p.move(68, 130);
      X.move(73, 170);
    }

    if ( (game == 2) || (game == 3)) {  
      if (!started) {
        g.setFont(new Font("Verdana", 1, 11));
        t = "Use the key board arrows to move!";
        g.drawString(t, 210, 215);
      }
      for (z = 0; z <= n; z++) {
        g.drawImage(dot[z], x[z], y[z], this);
      }
      me = true;  
    }

    if (!me) {
      g.setFont(new Font("Verdana", 1, 11));
      t = "www.Technikum-Wien.at";
      g.drawString(t, 210, 215);
    }

    if (game == 3) {              
      g.setFont(new Font("Verdana", 1, 13));
      s = "Game Over";
      g.drawString(s, 210, 190);
    }

  }

  public void run() {
    for (z = 4; z < 400; z++) {
      go[z] = false;
    }
    for (z = 0; z < 4; z++) {
      go[z] = true;
      x[z] = 91;
      y[z] = 91;
    }
    n = 3;
    game = 2;
    score = 0;
    b.move(70, -100);
    i.move(70, -100);
    p.move(70, -100);
    X.move(70, -100);
    left = false;
    right = false;
    up = false;
    down = false;
    locateRandom(4);

    while (true) {
      if (game == 2) {
        if ( (x[0] == x[n]) && (y[0] == y[n])) {
          go[n] = true;
          locateRandom( (n + 1));
          score += add;
        }
        for (z = 399; z > 0; z--) {
          if (go[z]) {            
            x[z] = x[ (z - 1)];
            y[z] = y[ (z - 1)];
            if ( (z > 4) && (x[0] == x[z]) && (y[0] == y[z])) {
              game = 3;
            }
          }
        }
        if (left) {
          x[0] -= 10*multi;
        }
        if (right) {
          x[0] += 10*multi;
        }
        if (up) {
          y[0] -= 10*multi;
        }
        if (down) {
          y[0] += 10*multi;
        }
      }

      if (y[0] > 391) {
        y[0] = 391;
        game = 3;
      }
      if (y[0] < 1) {
        y[0] = 1;
        game = 3;
      }
      if (x[0] > 391) {
        x[0] = 391;
        game = 3;
      }
      if (x[0] < 1) {
        x[0] = 1;
        game = 3;
      }

      if (game == 3) {
        if (count < (1500 / level)) {
          count++;
        }
        else {
          count = 0;
          game = 1;
          repaint();
          setTime.stop();
        }
      }

      repaint();
      try {
        setTime.sleep(level);
      }
      catch (InterruptedException e) {}
    }
  }

  public void locateRandom(int turn) {
    rtemp = (int) (Math.random() * 20);
    x[turn] = ( (rtemp * 10*multi) + 11);                  
    rtemp = (int) (Math.random() * 20);
    y[turn] = ( (rtemp * 10*multi) + 11);
    n++;
  }

  public boolean keyDown(Event e, int key) {
    if ( (key == Event.LEFT) && (!right)) {
      left = true;
      up = false;
      down = false;
      if (!started)
  ........
    }
    return true;
  }

  public boolean action(Event event, Object obj) {  
    stemp = (String) obj;

    if (stemp.equals("Beginner")) {
      add = 2;
      level = 200;   //divident für geschwindigkeit des spiels
      setTime = new Thread(this);
      setTime.start();
      return true;
    }



}


______________________________
***never touch a running system***
______________________________


Antworten PM Übersicht Chronologisch Zum Vorgänger
 
Melden nicht möglich
 

Dieses Forum ist eine frei zugängliche Diskussionsplattform.
Der Betreiber übernimmt keine Verantwortung für den Inhalt der Beiträge und behält sich das Recht vor, Beiträge mit rechtswidrigem oder anstößigem Inhalt zu löschen.
Datenschutzerklärung