Class Bauer


  • public class Bauer
    extends Figur
    Die Klasse Bauer definiert die Grundfunktionen des Bauern Er hat ein Inventar, um Gegenstände umhertragen zu können. Diese kann er aufnehmen oder ablegen, sofern sie transportabel sind. Die Giesskanne kann er benutzen, um Tomaten zu gießen. Er kann Tomaten und Körner/Korn säen und ernten.
    Version:
    04.10.2021
    Author:
    T. Schaller
    • Field Summary

      • Fields inherited from class Figur

        durst, hunger, istHauptperson, kostenBewegung, kostenWarten
      • Fields inherited from class MyActor

        betretbar, bildnummer, imageNumbers, moveable, originalImages
    • Constructor Summary

      Constructors 
      Constructor Description
      Bauer()  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void ablegen​(java.lang.String name)
      Der Figur legt einen Gegenstand aus seinem Vorrat auf dem Feld ab.
      void addAnzahlVonGegenstand​(java.lang.String name, int anzahl)
      Gibt dem Figur eine bestimmte Anzahl von Gegenstaenden einer Art
      void aufnehmen()
      Der Figur nimmt einen Gegenstand, der sich auf seinem Feld befindet in seinen Vorrat auf.
      void benutze​(java.lang.String name)
      Benutzt den angegebenen Gegenstand.
      void ernte​(java.lang.String name)
      Diese Methode erntet reife Kornfelder oder Tomate Der Ertrag wird im Inventar gespeichert.
      int getAnzahl()
      Gibt die Anzahl der Gegenstaende, die der Bauer traegt, zurueck.
      int getAnzahl​(java.lang.String name)
      Gibt die Anzahl der Gegenstaende einer bestimmten Art zurueck.
      Gegenstand getGegenstandAusInventar​(java.lang.String name)
      Gibt das erste Gegenstandsobjekt zurück, das der angegebenen Art entspricht.
      boolean istBetretbar​(int x, int y)
      Hilfsmethode: Bitte nicht aufrufen
      boolean istInventarLeer()
      Liefert genau dann true, wenn der aufgerufene Figur keinen Gegenstand bei sich hat.
      int pruefe​(java.lang.String name)
      pruefe untersucht den mit "name" bezeichneten Gegenstand Dieser muss entweder am gleichen Ort sein oder sich im Inventar befinden.
      void vesperpause()
      Der Bauer macht Vesperpause.
      protected void zeichneImage()
      Hilfsmethode: Bitte nicht aufrufen Eine private Methode, die dafuer sorgt, dass der Bauer richtig gezeichnet wird.
      • Methods inherited from class Figur

        addedToWorld, dreheLinks, dreheRechts, einsVor, error, getDurst, getHunger, gibGegenstandUnterFigur, gibGegenstandUnterFigur, gibGegenstandVorFigur, istAuf, istAufGegenstand, istLinksFrei, istRechtsFrei, istVorne, istVorneFrei, refresh, setLocation, setRotation, verbraucheEnergie, verbraucheEnergie, warte, xVor, yVor, zeichneEnergie
      • Methods inherited from class MyActor

        getBild, getName, getX, getY, istBeweglich, melde, setzeBild, warne
      • Methods inherited from class greenfoot.Actor

        act, getImage, getIntersectingObjects, getNeighbours, getObjectsAtOffset, getObjectsInRange, getOneIntersectingObject, getOneObjectAtOffset, getRotation, getWorld, getWorldOfType, intersects, isAtEdge, isTouching, move, removeTouching, setImage, setImage, turn, turnTowards
      • Methods inherited from class java.lang.Object

        clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • Bauer

        public Bauer()
    • Method Detail

      • getAnzahl

        public int getAnzahl()
        Gibt die Anzahl der Gegenstaende, die der Bauer traegt, zurueck.
        Returns:
        Anzahl der Gegenstaende
      • getAnzahl

        public int getAnzahl​(java.lang.String name)
        Gibt die Anzahl der Gegenstaende einer bestimmten Art zurueck.
        Parameters:
        name - Art der Gegenstands ("Koerner", "Tomate", "Giesskanne", "Ei", "Blume", "Sense")
        Returns:
        Anzahl der Gegenstaende
      • getGegenstandAusInventar

        public Gegenstand getGegenstandAusInventar​(java.lang.String name)
        Gibt das erste Gegenstandsobjekt zurück, das der angegebenen Art entspricht.
        Parameters:
        name - Art des gesuchten Gegenstands ("Koerner", "Tomate", "Giesskanne", "Ei", "Blume", "Sense")
        Returns:
        Gegenstandsobjekt
      • addAnzahlVonGegenstand

        public void addAnzahlVonGegenstand​(java.lang.String name,
                                           int anzahl)
        Gibt dem Figur eine bestimmte Anzahl von Gegenstaenden einer Art
        Parameters:
        name - Art des Gegenstands ("Koerner", "Tomate", "Giesskanne", "Ei", "Blume", "Sense")
      • istInventarLeer

        public boolean istInventarLeer()
        Liefert genau dann true, wenn der aufgerufene Figur keinen Gegenstand bei sich hat.
        Returns:
        true, wenn der Figur keinen Gegenstand mit sich traegt, sonst false
      • ablegen

        public void ablegen​(java.lang.String name)
        Der Figur legt einen Gegenstand aus seinem Vorrat auf dem Feld ab.
        Parameters:
        name - Einer der Gegenstaende ("Ei","Koerner","Tomate", "Giesskanne" oder "Sense")
      • aufnehmen

        public void aufnehmen()
        Der Figur nimmt einen Gegenstand, der sich auf seinem Feld befindet in seinen Vorrat auf. Falls er nicht auf einem Gegenstand steht, gibt er eine Warnung aus.
      • benutze

        public void benutze​(java.lang.String name)
        Benutzt den angegebenen Gegenstand. Es kann nur die Giesskanne benutzt werden. Steht man vor Wasser, wird sie gefüllt. Steht man auf einem Ackerfeld mit Tomate kann man diese gießen.
        Parameters:
        name - Art des zu benutzenden Gegenstands ("Giesskanne")
      • ernte

        public void ernte​(java.lang.String name)
        Diese Methode erntet reife Kornfelder oder Tomate Der Ertrag wird im Inventar gespeichert.
        Parameters:
        name - muss "Korn" oder "Tomate" sein
      • vesperpause

        public void vesperpause()
        Der Bauer macht Vesperpause. Dazu muss er direkt vor dem Eingang des Bauernhauses stehen. Er betritt dieses, isst und trinkt (Energie ist dann wieder 100) und steht dann in der Tür mit Blickrichtung nach unten.
      • istBetretbar

        public boolean istBetretbar​(int x,
                                    int y)
        Hilfsmethode: Bitte nicht aufrufen
        Overrides:
        istBetretbar in class MyActor
        Returns:
        true = wenn diese Figur das Feld nicht blockiert
      • pruefe

        public int pruefe​(java.lang.String name)
        pruefe untersucht den mit "name" bezeichneten Gegenstand Dieser muss entweder am gleichen Ort sein oder sich im Inventar befinden.
        Overrides:
        pruefe in class Figur
        Parameters:
        name - Bezeichnung des Gegenstands: "Gras", "Korn","Tomate", "Giesskanne" oder "Blume"
        Returns:
        Wert zwischen 0-100 oder -1, je nach Zustand des Gegenstands
      • zeichneImage

        protected void zeichneImage()
        Hilfsmethode: Bitte nicht aufrufen Eine private Methode, die dafuer sorgt, dass der Bauer richtig gezeichnet wird.
        Overrides:
        zeichneImage in class Figur