Class AI_Robot

java.lang.Object
greenfoot.Actor
AI_Robot
Direct Known Subclasses:
Peetie

public abstract class AI_Robot extends greenfoot.Actor
Elternklasse von Peetie. Wird für diverse Variablen + Methoden benutzt, die Peetie erbt, damit die Klasse Peetie schlank bleibt und von den Schüler/innen einfach bedient werden kann. TYP 1 (statisches Szenario)
  • Field Details

    • aktuellesSzenario

      protected SzenarioTyp aktuellesSzenario
    • aktuellesSzenarioString

      protected String aktuellesSzenarioString
    • szenarioArt

      protected String szenarioArt
    • peetieDefaultImage

      protected String peetieDefaultImage
    • peetieStartposX

      protected int peetieStartposX
    • peetieStartposY

      protected int peetieStartposY
    • peetieDirection

      protected int peetieDirection
    • delay

      protected int delay
    • ptSpeed

      protected int ptSpeed
    • rocketDelay

      protected int rocketDelay
    • numberFighterdrones

      protected int numberFighterdrones
    • rocketDelayCounter

      protected int rocketDelayCounter
    • objectShotDown

      protected boolean objectShotDown
    • ptWasHit

      protected boolean ptWasHit
    • isSpacePressed

      protected boolean isSpacePressed
    • lblTextausgabe

      protected Label lblTextausgabe
    • raketenVerzoegerungscounter

      protected int raketenVerzoegerungscounter
    • mars

      protected Mars mars
    • gridSize

      protected int gridSize
    • dx

      protected int dx
    • dy

      protected int dy
    • buttonsSindEingeblendet

      protected boolean buttonsSindEingeblendet
    • missionAccomplished

      protected boolean missionAccomplished
    • arrivedAtBase

      protected boolean arrivedAtBase
    • arrivedAtHolomarker

      protected boolean arrivedAtHolomarker
    • anzahlZirkonplatten

      protected int anzahlZirkonplatten
  • Constructor Details

    • AI_Robot

      public AI_Robot()
  • Method Details

    • act

      public void act()
      Overrides:
      act in class greenfoot.Actor
    • addedToWorld

      public void addedToWorld(greenfoot.World w)
      Overrides:
      addedToWorld in class greenfoot.Actor
    • _runOrganize

      public void _runOrganize()
    • geheRechts

      public void geheRechts()
      Peetie bewegt sich ein Feld nach Osten.
    • geheLinks

      public void geheLinks()
      Peetie bewegt sich ein Feld nach Westen.
    • geheHoch

      public void geheHoch()
      Peetie bewegt sich ein Feld nach Norden.
    • geheRunter

      public void geheRunter()
      Peetie bewegt sich ein Feld nach Süden.
    • drehen

      public void drehen()
      Peetie dreht sich um 90 Grad
    • pausieren

      public void pausieren()
      Peetie macht eine Pause.
    • lochGraben

      public void lochGraben()
      Peetie gräbt ein Loch an seiner aktuellen Position.
    • istFelsVoraus

      public boolean istFelsVoraus()
      Wenn auf dem Feld vor Peetie (also in Peeties Blickrichtung) ein Fels ist, wird true zurückgegeben.
    • istFelsOben

      public boolean istFelsOben()
      Wenn auf dem Feld über Peetie (also nördlich von Peetie) ein Fels ist, wird true zurückgegeben.
    • istKraterVoraus

      public boolean istKraterVoraus()
      Wenn auf dem Feld vor Peetie ein Krater ist, wird true zurückgegeben.
    • aussenrumgehen

      public void aussenrumgehen()
      Peetie geht runter-rechts-rechts-hoch oder runter-links-links-hoch, je nach Richtung, in die er blickt.
    • raketeWirdBeruehrt

      public boolean raketeWirdBeruehrt()
      Wenn Peetie auf einer Rakete steht, wird true zurückgegeben.
    • raketeAufnehmen

      public void raketeAufnehmen()
      Peetie nimmt die Rakete auf seinem Feld.
    • raketeIstSicher

      public boolean raketeIstSicher()
      Prüft, ob die Rakete ein getarnter Sprengkörper von Syberdrone ist.
    • entschaerfen

      public void entschaerfen()
      Peetie entschärft die gefakte Syberdrone-Rakete auf seinem Feld.
    • holomarkerErreicht

      public boolean holomarkerErreicht()
      Wenn Peetie einen Holomarker erreicht hat, wird true zurückgegeben.
    • initiateStartSequence

      public void initiateStartSequence()
      Wenn Peetie alles erledigt hat, kann er mit diesem Befehl vom Mars starten!
    • zirkonplatteAufnehmen

      public void zirkonplatteAufnehmen()
      Peetie nimmt die Zirkonplatte, die sich auf seinem Feld befindet.
    • zirkonplatteWirdBeruehrt

      public boolean zirkonplatteWirdBeruehrt()
      Wenn Peetie auf einer Zirkonplatte steht, wird true zurückgegeben.
    • zirkonplatteIstInstabil

      public boolean zirkonplatteIstInstabil()
      Wenn die Zirkonplatte instabil ist, wird true zurückgegeben.
    • peetieHatZirkonplatte

      public boolean peetieHatZirkonplatte()
      Wenn Peetie eine Zirkonplatte bei sich trägt, wird true zurückgegeben.
    • zirkonplatteAblegen

      public void zirkonplatteAblegen()
      Peetie legt eine Zirkonplatte ab, aber nur dann, wenn er zuvor mindestens eine aufgenommen hat.
    • tasteGedrueckt

      public boolean tasteGedrueckt(String taste)
      Wenn die als Parameter übergebene Taste gedrueckt ist, wird true zurückgegeben.
      Parameters:
      t - Die Taste, die geprüft wird.

      Beispielverwendung: if(tasteGedrueckt("left"))<br>textAusgeben("Pfeil links gedrückt!")

    • leertasteGedrueckt

      public boolean leertasteGedrueckt()
      Wenn die Leertaste gedrückt ist, wird true zurückgegeben.

      Beispielverwendung: if(leertasteGedrueckt())<br>raketeAbfeuern()

    • maustasteGedrueckt

      public boolean maustasteGedrueckt()
      Wenn die linke Maustaste gedrückt ist, wird true zurückgegeben.

      Beispielverwendung: if(maustasteGedrueckt())<br>raketeAbfeuern()

    • raketeAbfeuern

      public void raketeAbfeuern()
      Feuert eine Rakete ab. Es kann immer nur eine Rakete auf der Welt sein.
    • objektWurdeAbgeschossen

      public boolean objektWurdeAbgeschossen()
      Wenn eine feindliches Objekt (Drohne, Asteroid …) zerstört wurde, wird true zurückgegeben.
    • peetieWurdeGetroffen

      public boolean peetieWurdeGetroffen()
      Wenn Peetie von einem Gegenstand (Drohnenbombe, Schrott …) getroffen wurde, wird true zurückgegeben.
    • _setObjectShotDown

      public void _setObjectShotDown(boolean d)
    • textAusgeben

      public void textAusgeben(String t)
      Gibt eine Zeichenkette oben in der Weltmitte (bzw. in den Smartphone-Missionen auf dem Smartphone) aus.
      Parameters:
      t - Die auszugebende Zeichenkette

      Beispielverwendung: textAusgeben("Hallo")

      Beispielverwendung: textAusgeben("Munition: " + munition)

      Beispielverwendung: textAusgeben(automarke)

      Achtung: Andere Datentypen (bspw. int/Ganzzahl) können so nicht ausgegeben werden. Es funktioniert also NICHT textAusgeben(munition)!

      Du musst die Zahl in diesem Fall in einen String umwandeln. Dazu hast du folgende Möglichkeiten:

      Die Zahl mit einem String verknüpfen - das wird dann ein String:

      textAusgeben("Munition: " + munition) - die Ausgabe »Munition: 23« ist ein String.

      Du kannst auch einen leeren String verwenden, z.B. textAusgeben(munition + "") - verbindet den Wert von munition und den leeren String zu einem String.

      Wenn du ganz professionell sein willst, kannst du die Zahl auch in einen String konvertieren mit textAusgeben(Integer.toString(munition)) oder textAusgeben(Double.toString(ergebnisAlsDezimalzahl))

    • textAusgeben

      public void textAusgeben(String t, int x, int y)
      Fortgeschritten: Gibt eine Zeichenkette an der gewünschten Position aus.
      Parameters:
      t - Die auszugebende Zeichenkette
      x - Die x-Position (0 ist ganz links)
      y - Die y-Position (0 ist oben)

      Beispielverwendung: textAusgeben("Hallo", 200, 100)

      Beispielverwendung: textAusgeben("Verbleibende Munition: " + munition, 150, 50)

      Beispielverwendung: textAusgeben(automarke, 150, 50)

    • einlesenZeichenkette

      public String einlesenZeichenkette()
      Liest eine Zeichenkette ein

      Beispiel: nachname = einlesen()

      Dann öffnet sich ein Eingabedialog, und der/die User kann einen Wert eingeben. Dieser Wert wird der Variablen nachname zugewiesen.

      Die Variable muss natürlich vorher deklariert worden sein.

    • einlesenDezimalzahl

      public double einlesenDezimalzahl()
      Liest eine Dezimalzahl ein

      Beispiel: zinssatz = einlesen()

    • einlesenGanzzahl

      public int einlesenGanzzahl()
      Liest eine Ganzzahl ein

      Beispiel: alter = einlesen()

    • _run

      public void _run()