# Textbasiertes Rollenspiel



## Anfänger97 (4. Dez 2014)

Hey liebes Forum.
Ich bins wieder und bringe Probleme mit :bahnhof::bahnhof::bahnhof:

Meine Aufgabe:
Ich soll ein textbasiertes Rollenspiel programmieren, wo Spieler gegen ein Monster kämpf.
Spieler und Monster sollen 100 HP und einen Angriffswert von 20 haben. Die Trefferchance liegt bei 0.7.
Der Spieler darf bis zu 3 Tränke benutzen, die ihm 20 HP zurückgeben, seine HP dürfen 100 aber nicht übersteigen. Sobald der Spieler den 4 Trank benutzen will, soll ein Fehler ausgegeben werden und das Monster ist an der Reihe.
Der Spieler kann auswählen zwischen case 1 und 2
1. wäre der Angriff, wobei geguckt wird, ob die Zufallszahl ZF größer als die 0.7 sind, falls ja ist der Angriff fehlgeschlagen. Falls kleiner wird dem Monster ATK*ZF HP abgezogen.
Falls er die 2 wählt, wird ein Trank wie oben bereits beschrieben benutzt und das Monster ist an der Reihe.
Nach jeder ''Runde'' sollen die aktuellen Lebens- und Angriffswerte ausgegeben werden, bis einer von beiden 0 HP hat, und somit verloren hat.

Ich saß hier jetzt ne ganze Weile dran doch hab ich einige Fragen:
Wenn ich den gleich folgenden Code ''abspielen'' will, kommt: cannot find symbol. und ich weiß leider nicht wie ich das beheben kann..

Und 2. fehlt mir iwie der Bereich wo ich als Spieler meine 1 oder 2 eingeben könnte? oder kommt das, sobald der Fehler 1 behoben wurde?



```
public class TEST {
  public static void main(String[] args){
    
    int SHP = 100;
    int MHP = 100;
    int MAXSHP = 100;                  
    int MAXMHP = 100;                 
    int SATK = 20;
    int MATK = 20;
    double HIT = 0.7;
    int Trank = 20;
    double ZF = Math.random();
    
    System.out.println("SHP");
    System.out.print("SATK");
    System.out.println("MHP");
    System.out.print("MATK");  
  }
  
}
class TEST2{
  public static void main(String args[]) {
    while (SHP || MHP >=0) { 
      if (Eingabe==1) {
        if (ZF >= HIT) {
          MHP=MHP-0;
          System.out.println("Angriff fehlgeschlagen!");
        }  else {
          MHP=(SATK*ZF)-MHP;
          System.out.println("SHP");
          System.out.print("SATK");
          System.out.println("MHP");
          System.out.print("MATK");  
        }
      } else if (Eingabe==2){
        int i = 3;
        while (i >=3) {
          system.out.println("i Tränke sind noch verfügbar!");
          i=i-1; 
          
          break;
          System.out.println("Keine Tränke mehr verfügbar!");
        }
      }     
      if (ZF >= HIT) {
        SHP=SHP-0;
        System.out.println("Monsters Angriff fehlgeschlagen!");
      }  else {
        SHP=(MATK*ZF)-SHP;
        System.out.println("SHP");
        System.out.print("SATK");
        System.out.println("MHP");
        System.out.print("MATK");  
      }  
    }
    if (MHP=0) {
      system.out.println("Monster verliert. Spieler siegt");  
    } else if (SHP=0){
      system.out.println ("Spieler verliert. Monster siegt");
    }
    
  }
}
```


Vielen Dank im Voraus!


----------



## JCODA (4. Dez 2014)

Ich hab jetzt deinen Code nur überflogen aber, du kannst nicht einfach in einer anderen klassen variablen definieren und darauf zugreifen. (Besonders nicht in einer zweiten main-Methode (Jedes Programm besitzt nur eine main-Methode!)) Desweiteren musst du, wenn du variablen ausgeben willst die Anführungszeichen weglassen. Zudem musst du die "Eingabe" auch tatsächlich durchführen also z.B. mit einem Scanner.


----------



## Anfänger97 (4. Dez 2014)

Wie müsste ich das denn machen von  Main Methode und der Klasse her?
Entschuldige bitte für die dumme Frage...


----------



## JavaMeister (5. Dez 2014)

Kurz: ganz anders. 

Sorry. Da sind so viele Fehler drin, es macht überhaupt keinen sin. Diese hier zu besprechen. Der Code ist maximal geraten.  Es wäre sinnvoll sich einen Plan auf Papier zu malen. 

Was soll überhaupt passieren??

Und dann ein Buch nehmen und die Grundlagen kurz ansehen. Das was auf dem Papier ist implementieren und bei konkreten Fragen das Forum konsultieren.


----------



## Blacknico (12. Dez 2014)

Ich habe dir eine private Nachricht mit meinen Kontaktdaten gegeben. Ich musste das vor einem Jahr selber in der Schule machen. Allerdings war es bei mir ein Textbasiertes "Ritterspiel", aber mit den gleichen Funktionen

Wäre nett wenn du mich kontaktierst

MfG 

Nico Schwarz


----------

