Schleifen um abzufragen, ob der Spieler "tot" ist

Maxi2506

Mitglied
Hallo Leute :)

Ich habe in Informatik dieses Jahr mit Java angefangen und mein Lehrer verlangt nun von uns, uns ein Programm auszudenken und das dann als Klausurersatzleistung abzugeben. Also habe ich mir jetzt ausgedacht, ich könnte ja ein Spiel entwickeln, das ähnlich dem "Überlebenskampf" in CoD ist. Dass man also in mehreren Wellen gegen verschiedene Monster kämpft und schaut wie lange man überlebt. Mir ist natürlich klar, dass ich keinesfalls mit großer Grafik das Spiel erstellen kann. Deshalb habe ich das ganze auch als Textadventure gestaltet.
Das war jetzt wahrscheinlich viel zu viel Vorgeplänkle aber egal :D
Meine eigentliche Frage ist jetzt, wie und ob ich es allein mit Schleifen packe, dass nach jeder Welle abgefragt wird, ob der Spieler noch leben hat oder nicht, damit man halt, falls er "tot" ist, sowas wie: "Du bist leider gestorben." ausgeben kann.

Mein bisheriger Java_Code ist:
Java:
	public static void main(String[] args){
		
		double hero_bonus_att = Math.random()*10;
		int hero_att1 = (int) hero_bonus_att + 10;
		double hero_bonus_life = Math.random()*100;
		int hero_life1 = (int) hero_bonus_life +100;
		
		double enemy_bonus_att = Math.random()*5;
		double enemy_att2 = (int) enemy_bonus_att + 2;
		double enemy_bonus_life = Math.random()*5;
		double enemy_life2 = (int) enemy_bonus_life +20;	
		
		System.out.println("Willkommen bei *Name des Spiels*");
		System.out.println("Bitte geben sie Ihren Namen ein:");
		
		Scanner name = new Scanner(System.in);
		String name1 = name.next();
		
		System.out.println("Gut, "+ name1+".");
		System.out.println("Wie schwer soll das Spiel sein? Sie können wählen von 1-10");
		
		Scanner level = new Scanner(System.in);
		int level1 = level.nextInt();
		
		System.out.println("Nun sind alle Vorbereitungen abgeschlossen, "+name1+".");
		System.out.println("Sie werden also in dieser Runde ein Spiel der Schwierigkeit "+level1+" spielen");
		System.out.println("Dann fangen wir nun an!");
		
		double level_bonus = 1;
		
		switch(level1){
		case 1: break; 
		case 2: level_bonus = 1.3;
				break;
		case 3: level_bonus = 1.6;
				break;
		case 4: level_bonus = 1.9;
				break;
		case 5: level_bonus = 2.2;
				break;
		case 6: level_bonus = 2.5;
				break;
		case 7: level_bonus = 2.8;
				break;
		case 8: level_bonus = 3.1;
				break;
		case 9: level_bonus = 3.4;
				break;
		case 10: level_bonus = 4;
				break;
		default: System.out.println("Error: Wrong value used. Please use a value between 1 and 10.");
				break;
		}
		
		enemy_life2 = enemy_life2*level_bonus;
		enemy_att2 = enemy_att2*level_bonus;
		int enemy_life1 = (int) enemy_life2;
		int enemy_att1 = (int) enemy_att2;
		
		
		}

		
	}

Ich hoffe der Code und meine Frage sind verständlich ???:L

Liebe Grüße
Maxi2506
 

Androbin

Bekanntes Mitglied
@Maxi2506:
Dein bisheriger Code hat noch nicht wirklich Format :rtfm:
Also 1. solltest du die Spiellogik mal genauer erklären :bahnhof:
und 2. deinen Code bereits etwas strukturieren, also die Methoden gliedern, etc. :popcorn:
 

TheSorm

Bekanntes Mitglied
du fügst eine boolean variable beim player ein die den tod darstellt ist sie auf true wirt in deiner update methode dann diese angehalten und ein string gezeichnet
 

strußi

Top Contributor
allein mit schleifen bekommst du das nicht hin, brauchst auch if anweisungen oder whileschleifen, mit denen kannst das hinbekommen

while(Spieler.getTod() ==false){
kämpfe();
}
 

Thunderstorm

Mitglied
Also ich würde mal mit einem Gameloop anfangen bevor ich über den Tod des Spielers nachdenke ???:L

Und dann stimme ich Robin zu, bitte gliedere deinen Code. Du benutzt eine OO-Programmiersprache, dann benutz sie auch dementsprechend und erstelle Klassen für Spieler, Karte, etc...
Und versuche Methoden zu erstellen wie etwa getLevelBonus().

Wenn du alles in eine Methode oder gar Klasse klatschst, hast du bei spätestens bei 1500 Zeilen keinen Durchblick mehr, wo du was eigentlich mal machen wolltest. Dann hast du keine Lust mehr und wirfst alles hin. Darüberhinaus werden dir die Leute hier mit einem besseren Code auch eher und schneller helfen können, da niemand bereit ist siche eine Methode von 1000 Zeilen reinzuziehen :bloed:

mfg Thunder
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
I Textbasiertes Spiel - Umsetzungsfrage & Schleifen Problem Spiele- und Multimedia-Programmierung 26
Developer_X Java3D und while schleifen Spiele- und Multimedia-Programmierung 4
K Jump n Run Keylistener und Schleifen Spiele- und Multimedia-Programmierung 8
B Spieler auf besonderer Bahn bewegen Spiele- und Multimedia-Programmierung 1
G Minecraft PlayerBot (Listener Thread für jeden Spieler?) Spiele- und Multimedia-Programmierung 3
B überprüfen ob das Inventar vom Spieler leer ist Spiele- und Multimedia-Programmierung 3
M Minecraft Spieler move/run (bewegen) Spiele- und Multimedia-Programmierung 0
coolian meine funktion um die höhe des terrains an bestimmter position in diesem fall spieler position zu bekommen giebt nur 0 zurück Spiele- und Multimedia-Programmierung 6
J Gegner verfolgt den Spieler Spiele- und Multimedia-Programmierung 7
Sogomn Zugriff auf den Spieler Spiele- und Multimedia-Programmierung 10
Androbin Verschwindender Spieler in 2D-Game Spiele- und Multimedia-Programmierung 7
Kenan89 Ansatzfrage: Kartenspiel für 2 Spieler Online Spiele- und Multimedia-Programmierung 3
D Spieler mission erfüllt Spiele- und Multimedia-Programmierung 2
C 4 gewinnt KI Spieler gegen Computer Spiele- und Multimedia-Programmierung 1
Redfrettchen Tastatur für zwei Spieler teilen? Spiele- und Multimedia-Programmierung 8
L 2 Spieler Steuerung Spiele- und Multimedia-Programmierung 4
R TicTacToe: Spieler kann nicht gewinnen Spiele- und Multimedia-Programmierung 15

Ähnliche Java Themen

Neue Themen


Oben