예제 #1
0
 @Override
 public void neuGeladen(Map m, ArrayList<Kreatur> kList) {
   if (hasBesteller != null)
     hasBesteller = m.getFeldBei(hasBesteller.getX(), hasBesteller.getY()).getInhalt();
   if (hasArbeiter != null) {
     Feld f = m.getFeldBei(hasArbeiter.x, hasArbeiter.y);
     Feld f2 = m.getFeldBei(hasArbeiter.getZiel().getH(), hasArbeiter.getZiel().getV());
     hasArbeiter = new Mensch(Berufe.BRUNNENMEISTER, f, kList, this);
     hasArbeiter.setzeZiel(f2, m);
   }
 }
예제 #2
0
 @Override
 public void arbeiterFertig(Mensch m) {
   if (m.equals(hasArbeiter) && hasBesteller == null) {
     hasArbeiter = null;
     m.despawn();
   } else if (m.equals(hasArbeiter) && gamepanel != null) {
     m.setzeZiel(getFeld(), gamepanel.getMap());
     hasBesteller.bestellungAngekommen(this);
     hasBesteller = null;
   } else m.despawn();
 }
예제 #3
0
  public boolean order(Bauwerk bw) {
    if (gamepanel == null) return false;

    if (arbeiter < noetigeArbeiter || hasBesteller != null || hasArbeiter != null) return false;

    hasBesteller = bw;

    hasArbeiter =
        new Mensch(Berufe.BRUNNENMEISTER, this.getFeld(), gamepanel.getKreaturenliste(), this);

    hasArbeiter.setzeZiel(hasBesteller.getFeld(), gamepanel.getMap());

    return true;
  }