Brauche Hilfe für Java Spiel (ohne GUI)

christian.

Semiprofi
Thread Starter
Mitglied seit
27.07.2005
Beiträge
2.512
Hallo, ich brauche einmal eure Hilfe.
Aufgrund der Plattformunabhängigkeit habe ich mich für Java entschieden.

Jetzt möchte ich jedenfalls ein Spiel schreiben, scheitere aber daran.
Hier der Code:

Code:
import java.io.*;

class Zahlenschloss
{
  public static void main( String[] args ) throws IOException
  {
    int ersteZahl  = 6,
        zweiteZahl = 3,
        dritteZahl = 9;
    int zahl;



    BufferedReader stdin = new BufferedReader(
        new InputStreamReader( System.in ) );
    String input;

    int     versuch  = 0;
    boolean offen    = false;

    while ( versuch < 1 && !offen )
    {
      //Versuch einer Kombination, wenn richtig Variable offen auf true setzen

      boolean korrekt =  true;


      System.out.println("Mit ausfuehren dieses Programms haben sie eine Bombe aktiviert.");

      System.out.println("Jetzt liegt es an Ihnen diese Bombe zu entschaerfen.");

      System.out.println("Hinter dieser Tuer befindet sich die Bombe. Leider ist die Tuer verschlossen.");

      System.out.println("Zuerst muessen Sie das Zahlenschloss an der Tuer aufmachen. ");

      System.out.println("Dann koennen Sie die Bombe entschaerfen..");


      //Erste Zahl
      System.out.println("\nGeben Sie die erste Zahl ein: (Denken Sie daran, es geht um Leben und Tot)");
      input = stdin.readLine();
      zahl  = Integer.parseInt( input );

      if ( zahl != ersteZahl )
        korrekt = false ;

      //Zweite Zahl
      System.out.println("Geben Sie die zweite Zahl ein: ");
      input = stdin.readLine();
      zahl  = Integer.parseInt( input );

      if ( zahl != zweiteZahl )
        korrekt = false  ;

      //Dritte Zahl
      System.out.println("Geben Sie die dritte Zahl ein: ");
      input = stdin.readLine();
      zahl  = Integer.parseInt( input );

      if ( zahl != dritteZahl )
        korrekt = false  ;

      //Ergebnis
      if ( korrekt )
      {
        System.out.println("Glueckwunsch!");
        System.out.println("Nun geht es in den Raum mit der Bombe.");


        offen = true;
      }
      else
        System.out.println("Die Bombe wurde nicht rechtzeitig entschaerft.");


      versuch = versuch + 1;

      [COLOR="Red"]}[/COLOR]

   [COLOR="Red"]}[/COLOR]

[COLOR="Red"]}[/COLOR]

Ich möchte gerne, nachdem man das Zahlenschloss geknackt hat, dass man
die Bombe mit einem anderen Zahlencode entschärft.

ps. Momentan funkioniert der Code nicht.
Könntet ihr in richtigstellen? :fresse:

edit: Das Spiel läuft nun, allerdings weiß ich immernoch nicht, wie ich die Bommbe
mit einem anderen Zahlencode, als das Schloss entschärfen kann.. :wink:
 
Zuletzt bearbeitet:
Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.
Bitte um Hilfe.. :(
Mache das erst seit ein paar Tagen..
Ich bin noch nicht sehr bewandert in Java. :fresse:
 
Gelöst!

Neuer Code:

Code:
import java.io.*;

class Mission
{
  public static void main( String[] args ) throws IOException
  {
    int ersteZahl   = *,
        zweiteZahl  = *,
        dritteZahl   = *;
    int roterdraht  = *;
    int gelberdraht = *;
    int blauerdraht = *;

    int zahl;



    BufferedReader stdin = new BufferedReader(
        new InputStreamReader( System.in ) );
    String input;

    int     versuch  = 0;
    boolean offen    = false;

    while ( versuch < 1 && !offen )
    {
      //Versuch einer Kombination, wenn richtig Variable offen auf true setzen

      boolean korrekt =  true;


      System.out.println("*.");
      System.out.println("*.");
      System.out.println("*.");
      System.out.println("*.");
      System.out.println("*. ");
      System.out.println("*.");
      System.out.println("*!");


      //Erste Zahl
      System.out.println("\n*!");
      input = stdin.readLine();
      zahl  = Integer.parseInt( input );

      if ( zahl != ersteZahl )
        korrekt = false ;



      //Zweite Zahl
      System.out.println("*");
      input = stdin.readLine();
      zahl  = Integer.parseInt( input );

      if ( zahl != zweiteZahl )
        korrekt = false  ;



      //Dritte Zahl
      System.out.println("*");
      input = stdin.readLine();
      zahl  = Integer.parseInt( input );

      if ( zahl != dritteZahl )
        korrekt = false  ;




      //Wenn das Ergebnis richtig ist, wird folgendes ausgegeben:
      if ( korrekt )
      {
        System.out.println("*!");
        System.out.println("*.");
        System.out.println("*.");
        System.out.println("*.");





      //Erster Draht
      System.out.println("\n*.");
      input = stdin.readLine();
      zahl  = Integer.parseInt( input );

      if ( zahl != roterdraht )
        korrekt = false ;



      //Wenn das Ergebnis richtig ist, wird folgendes ausgegeben:
      if ( korrekt )
      {




      //Zweiter Draht
      System.out.println("*.");
      input = stdin.readLine();
      zahl  = Integer.parseInt( input );

      if ( zahl != gelberdraht )
        korrekt = false  ;


      //Wenn das Ergebnis richtig ist, wird folgendes ausgegeben:
      if ( korrekt )
      {




      //Dritter Draht
      System.out.println("*.");
      input = stdin.readLine();
      zahl  = Integer.parseInt( input );

      if ( zahl != blauerdraht )
        korrekt = false  ;



      //Wenn das Ergebnis richtig ist, wird folgendes ausgegeben:
      if ( korrekt )
      {

        System.out.println("*!");
        System.out.println("*.");
        System.out.println("*.");        
        System.out.println("*.");



      //Ansonsten wird folgendes ausgegeben:

      }
      else
        System.out.println("*.");
      }
      else
        System.out.println("*.");
      }
      else
        System.out.println("*.");


      }
      else
        System.out.println("*.");      


      versuch = versuch + 1;

      }

   }

}

* Steht hierbei als Platzhalter.
Die richtige Datei hat anstelle des * Text, aber wenn das Spiel fertig ist,
lade ich es bei Rapidshare hoch und ihr könnt es spielen. :d
Deswegen möchte ich ja nichts verraten..
 
ein Game ohne GUI lese ich da ...

falls du deinen Code um diese erweitern willst,
Xith3D bietet eine wirklich gute (3D) Schnittstelle,
die vorallem schnell ist ...
 
Kannst du noch mehr zu diesem Xith 3D sagen?
Ich kenne mich ja noch nicht wirklich mit Java aus..
Mache das erst seit ein paar Tagen. :d
 
ufff ähmmm ja hmmm ...
erst seit ein paar Tagen?
ne dann kommste damit glaub noch nicht zurecht...

Wenn man mit Java 3D Games programmieren möchte, nutzt man diverse APIs,
java3D ist dabei nicht performant genug,

LWJGL oder xith3D sind da schon besser geeignet (es gibt noch mehrere)
Einlesen kannst dich ja mal ein bischen
xith3d.org oder lwjgl.org
 
Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh