Lieber Jonas, deine Videos sind ein Gotteessegen, ehrlich! Ich bin gerade deine Gruppe beigetreten, kann aber komischerweise keine Nachricht reinschreiben, hast du eine Ahnung warum?
Was ein gutes Video! Fange gerade erst an und habe alles verstanden, obwohl ich sie teilweise zum ersten Mal gehört habe. Hut ab, deine Videos sind ab jetzt Teil meiner Lerneinheit
Habe deine Videos bis hier durch. Ich muss sagen das ich bis jetzt alles verstanden habe und wirklich spaß habe. Ich werde alle Videos schauen da ich mich gerade auf eine Ausbildung zum Fachinformatiker vorbereite. Wenn das bis zum ende so weiter läuft , gibt's ne Belohnung für dich :-)))). Jetzt schon mal Vielen Dank.
Schnell, einfach, verständlich. Besonders schön fand ich den "Tipp", das man besser damit fährt, wenn man mit den Methoden von hinten anfängt und sich damit ein bisschen Hirnschmalz spart.
Super Video, sehr hilfreich, ich mache gerade meine Umschulung zum Fachinformatiker für Anwendungsentwicklung und Java wird uns in ein paar Monaten intensiv eingehämmert, und da hat mir dein Video sehr geholfen, es hat klick gemacht , Danke 😊
Danke für deine tutorials. Es fällt mir sehr leicht java zu lernen. Java hat viele Gemeinsamkeiten mit Python. Wahrscheinlich durch meine python Kenntnisse ist es so leicht
Hello ich hab eben das Video endeckt, gerade weil ich etwas ähnliches vor einiger Zeit machen wollte (zum Erlernen von Java) Klasse gemacht und gut erklärt ,👍
Die while Schleife funktioniert nicht Spieler wird Dan rot angezeigt und auf der Kommandozentrale läuft es die ganze Zeit von alleine Wieso ist das so ???
Ich habe das Problem, wenn ich ein Symbol hinzufüge statt Buchstaben, werden die Punkte vorgerückt und dass Spielfeld sieht nicht mehr korrekt aus... WIe kann ich das fixen??
Hallo, du wolltest (bei 13:55), dass wir das Spiel verbessern: Ich arbeite momentan an einer/meiner Version des Spiels. Wie genau kann ich dir dann das fertige Spiel zukommen lassen? Falls du irgendwelche Probleme beim Ausführen hast (bspw. gibt es arge Probleme in der Schule, wenn man einen Code ausführen will, den man daheim geschrieben hat). So hab ich das Programm erstellt und geschrieben: - Erstellt mit BlueJ - Geschrieben und Getestet mit VS Code ( "Extension Pack for Java" installiert)
Hey Reload, danke für dein Feedback! :) Cool, dass du das Spiel verbessert hast! Am Besten ist es wenn du dem Discord Channel beitrittst und mir dann dort die Java - Datei (einfach die Klasse) zuschickst
@@JonasKeil Ich habe dir die fertige Version in Discord per DM gesendet. Ich hab dir zur Sicherheit den ganzen Ordner, also auch den mit der BlueJ Datei geschickt
Meine Frage wäre ob es eine Möglichkeit gibt die "else if"-s irgendwie "leichter" bzw mit DRY darzustellen. Ich könnte mir vorstellen das Jonas den Code so geschrieben hat weil es für Anfänger leichter ist zu verstehen allerdings ist dies ja eigentlich bad coding practice oder? Bin allerdings selber Anfänger deshalb die Frage
Danke für deine Mühe es wäre schön wenn du bitte am besten eine bisschen langsame Spricht damit wir die deutsche Sprache nicht gut beherrschen können auch mit verstehen aber trotzdem du machst gut
Die Schlange kann sich ebenfalls diagonal bewegen. Das Programm checkt dabei zwei Argumente. 1.) Spieler Position in x-Richtung --> Schlange bewegt sich in x Richtung 2.) Spieler Position in y-Richtung --> Schlange bewegt sich in y Richtung. Dafür sorgt die Trennung der if-statements (in x und y). Auf dem Spielfeld sieht man das leider nicht so schnell durch die vielen Punkte in x Richtung. Hoffe das hilft :)
@@maxkirstahler8245 Okay, danke für deine Antwort. Ich meinte mit diagonal bewegen, dass sich die Schlange schneller bewegen kann als der Spieler. Denn während der Spieler sich mit W A S D in einem Durchlauf nur ein Feld nach links rechts oben oder unten bewegen kann, kann die Schlange sich um 2 Felder bewegen(zB nach links und unten, also diagonal) weil sie ja x-Achse und y-Achse checkt. Ist das so gewollt? Korrigier mich bitte wenn ich falsch liege
So wie Jonas Keil den Code vorgestellt hat, ist es so gewollt. Das Schöne am Programmieren ist aber jetzt, dass man das beliebig ändern kann. Gerne kann die Schlange auch mal gleich 2 Felder diagonal springen oder eben nur ein Feld pro Zug. Da kann man jetzt kreativ werden ;)
Ich kann das Spiel leider nicht programmieren, weil mir in allen new point(x:10, y:9); usw die Buchstaben x und y rot angezeigt werden. IntelliJ will irgendwelche Semikolons usw.. Komisch :(
Mhmm, weiß gerade auf Anhieb nicht woran es liegen könnte. Du kannst dein Problem gern im Discord Server Posten, da können wir auf jeden Fall weiterhelfen😁👍🏻
ich hab einen kleinen Zufalls Generator eingebaut damit das Spielfeld nicht immer gleich aufgebaut ist...: import java.awt.Point; import java.util.Random; import java.util.Scanner; public class snake { public static void main (String[] args){ Random random = new Random(); boolean weiter = true; boolean ge = false; int px = random.nextInt(40) ; int py = random.nextInt(10) ; Point pp = new Point(px,py); px = random.nextInt(40) ; py = random.nextInt(10) ; Point sp = new Point(px,py); px = random.nextInt(40) ; py = random.nextInt(10) ; Point gp = new Point(px,py); px = random.nextInt(40) ; py = random.nextInt(10) ; Point tp = new Point(px,py); while (weiter) { for(int y = 0; y < 10; y++) { for (int x = 0; x < 40; x++) { Point p = new Point(x, y); if (p.equals(pp)) System.out.print("P"); else if (p.equals(sp)) System.out.print("S"); else if (p.equals(gp)) System.out.print("G"); else if (p.equals(tp)) System.out.print("T"); else System.out.print("."); } System.out.println(); } if (sp.equals(pp)) { weiter = false; System.out.println("Du wurdest gefressen."); } if (pp.equals(gp)) { ge = true; gp = new Point(-1,-1); } if (pp.equals(tp) && ge) { weiter = false; System.out.println("Du hast gewonnen!"); } bewegeSpieler(pp); bewegeSchlange(sp,pp); } } private static void bewegeSchlange(Point sp, Point pp) { if (pp.x < sp.x) sp.x--; else if (pp.x > sp.x) sp.x++; else if (pp.y < sp.y) sp.y--; else if (pp.y > sp.y) sp.y++; } private static void bewegeSpieler(Point pp) { Scanner scan = new Scanner(System.in); String input = scan.next(); if (input.equals("w")) { if (pp.y > 0); pp.y--; } else if (input.equals("s")) { if (pp.y < 9); pp.y++; } else if (input.equals("a")) { if (pp.x > 0); pp.x--; } else if (input.equals("d")) { if (pp.x < 39); pp.x++; } } }
Es ist echt ein super Tutorial, ich finde es nur sehr anstrengend zu folgen, da die Audiospur und Videospur nicht zusammenpassen, also es wird immer schon der Code vorgeschrieben, wo aber eigentlich über das davor gesprochen wird.
@@JonasKeil Hmm, habe das Video noch einmal komplett durchgeschaut und jetzt ist alles synchron. Das schien ein Fehler meinerseits zu sein, trotz Neuladen der Seite 😅
ich finde das schon krass, dass man soetwas lernen kann 🤒 ich glaub man muss dafür geboren sein oder ich weiss nicht ob ich überhaupt irgendwann programmieren lerne...
Wenn die Schlange sich auf der Türe befindet, und man sich dann (mit dem gesammelten Gold) auf diese Position bewegt. Dann hat man gleichzeitig gewonnen und verloren 😅
also eigentlich gutes Video, aber bitte beim nächsten mal nicht so schnell reden und mehr erklären wie die einzelnen Teile des Codes funktionieren, und was die machen
👇Deine *Unterstützung* macht noch bessere Tutorials möglich: www.patreon.com/user?u=50183366
📢Als Community Java lernen *(Discord)* : discord.gg/wkWe3FvdSu
Tutorial-Reihe für Java Beginner: bit.ly/3GKMucx
Lieber Jonas, deine Videos sind ein Gotteessegen, ehrlich!
Ich bin gerade deine Gruppe beigetreten, kann aber komischerweise keine Nachricht reinschreiben, hast du eine Ahnung warum?
Was ein gutes Video! Fange gerade erst an und habe alles verstanden, obwohl ich sie teilweise zum ersten Mal gehört habe. Hut ab, deine Videos sind ab jetzt Teil meiner Lerneinheit
Habe deine Videos bis hier durch. Ich muss sagen das ich bis jetzt alles verstanden habe und wirklich spaß habe. Ich werde alle Videos schauen da ich mich gerade auf eine Ausbildung zum Fachinformatiker vorbereite. Wenn das bis zum ende so weiter läuft , gibt's ne Belohnung für dich :-)))). Jetzt schon mal Vielen Dank.
Ich bin echt froh, dass ich dich gefunden hab xD
Deine Videos helfen unglaublich gut! ^^
Das freut mich, danke für das tolle Feedback!🥳
Schnell, einfach, verständlich. Besonders schön fand ich den "Tipp", das man besser damit fährt, wenn man mit den Methoden von hinten anfängt und sich damit ein bisschen Hirnschmalz spart.
Alter jonas ,übelster chad bist du
Deine videos helfen mir sehr und inspirieren megaaa
super erklärt! :) Hat Spass gemacht mitzumachen.
Super Video, sehr hilfreich, ich mache gerade meine Umschulung zum Fachinformatiker für Anwendungsentwicklung und Java wird uns in ein paar Monaten intensiv eingehämmert, und da hat mir dein Video sehr geholfen, es hat klick gemacht , Danke 😊
Danke für deine tutorials. Es fällt mir sehr leicht java zu lernen. Java hat viele Gemeinsamkeiten mit Python. Wahrscheinlich durch meine python Kenntnisse ist es so leicht
Eine Kleinigkeit: Der Fall, wenn der Spieler die Tür erreicht ohne das Gold einzusammeln.
Super Video, verständlich erklärt, hat Spaß gemacht!
Wenn der Spieler die Tür erreicht, ohne das Gold zu haben passiert ja nichts. Ergo, ist es passiv mit drin. ^^
Heyo deine Videos sind mega geil gemacht! Hut ab dafür! ❤
Du machst so verdammt gute Videos, Respekt !
Ich habe schon lange nach einer Java Tutorial Reihe gesucht kuss kuss. Alle like nicht vergessen ;) das selbe macht ihr auch mir dem Abobutton
Vielen Dank Rekas 😎🫶
Bin gespannt auf dein Feedback!🤝
Hello ich hab eben das Video endeckt, gerade weil ich etwas ähnliches vor einiger Zeit machen wollte (zum Erlernen von Java)
Klasse gemacht und gut erklärt ,👍
Vielen vielen Dank für den Kommentar Heinz😁🎉
Cool, danke dir, es hat alles geklappt :)
Freut mich, danke!😁
Die while Schleife funktioniert nicht Spieler wird Dan rot angezeigt und auf der Kommandozentrale läuft es die ganze Zeit von alleine
Wieso ist das so ???
Ich habe das Problem, wenn ich ein Symbol hinzufüge statt Buchstaben, werden die Punkte vorgerückt und dass Spielfeld sieht nicht mehr korrekt aus... WIe kann ich das fixen??
Welche Entwicklungsumgebung hast du genutzt ? :)
Hallo,
du wolltest (bei 13:55), dass wir das Spiel verbessern:
Ich arbeite momentan an einer/meiner Version des Spiels. Wie genau kann ich dir dann das fertige Spiel zukommen lassen?
Falls du irgendwelche Probleme beim Ausführen hast (bspw. gibt es arge Probleme in der Schule, wenn man einen Code ausführen will, den man daheim geschrieben hat). So hab ich das Programm erstellt und geschrieben:
- Erstellt mit BlueJ
- Geschrieben und Getestet mit VS Code ( "Extension Pack for Java" installiert)
Hey Reload, danke für dein Feedback! :) Cool, dass du das Spiel verbessert hast! Am Besten ist es wenn du dem Discord Channel beitrittst und mir dann dort die Java - Datei (einfach die Klasse) zuschickst
@@JonasKeil Ich habe dir die fertige Version in Discord per DM gesendet. Ich hab dir zur Sicherheit den ganzen Ordner, also auch den mit der BlueJ Datei geschickt
wie bringt man das spiel aus der Entwicklungsugebung raus und zu einem eigenständigen Programm?
was genau mach das .equals in dem IF?
Ok, wie sorge ich dafür, das vor dem nächsten draw befehl sie ausgabe geleert wird?
Tolles video!
Bei mir werden schon am Anfang die x und y koordinaten rot angezeigt.. warum?
Vielen Dank super Video 👍
Lieber Jonas, vielen Dank für das Tutorial. Wie macht man denn nun eine ausführbare .exe Datei daraus? Ist intelliJ gratis? Danke.
Meine Frage wäre ob es eine Möglichkeit gibt die "else if"-s irgendwie "leichter" bzw mit DRY darzustellen. Ich könnte mir vorstellen das Jonas den Code so geschrieben hat weil es für Anfänger leichter ist zu verstehen allerdings ist dies ja eigentlich bad coding practice oder?
Bin allerdings selber Anfänger deshalb die Frage
Schulprojekt gerettet
Das freut mich! 😁🤝
Mit was programmierst du
Danke geiles Video aber eine Frage : woher weiß Punkt p wo er bleiben soll
gibt es ein unterschit bei den versionen ????
Ich bin sehr Froh, dich hier zu finden.
Danke für deine Mühe es wäre schön wenn du bitte am besten eine bisschen langsame Spricht damit wir die deutsche Sprache nicht gut beherrschen können auch mit verstehen aber trotzdem du machst gut
Sehr schön
Vielen Dank :)
warum kann ich nicht einfach eingeben schlangenPostion == spielerPosition ? würde mich interessieren!
Es wäre super geil wenn du einen part 2 machst wo die positionen der Objekte jede runde auf mit random einer zufälligen koordinate "gespawnt" werden.
Die Klammer machst du mit den normalen tasten oder?
Wie genau meinst du normale Tasten?
Hi wollte mal fragen ob du ein Video über Generics machen kannst. PS: Machst sehr gute Videos.
Danke für dein Feedback Mursel! Sehr gute Idee mit den Generics. Wird nicht leicht, aber dann wird das als übernächstes hochgeladen👍🏻
wie lange hast du gebraucht java zu lernen
Aber kann sich die Schlange jetzt nicht diagonal bewegen? Oder ist das so gewollt?
Die Schlange kann sich ebenfalls diagonal bewegen. Das Programm checkt dabei zwei Argumente. 1.) Spieler Position in x-Richtung --> Schlange bewegt sich in x Richtung
2.) Spieler Position in y-Richtung --> Schlange bewegt sich in y Richtung. Dafür sorgt die Trennung der if-statements (in x und y). Auf dem Spielfeld sieht man das leider nicht so schnell durch die vielen Punkte in x Richtung.
Hoffe das hilft :)
@@maxkirstahler8245 Okay, danke für deine Antwort. Ich meinte mit diagonal bewegen, dass sich die Schlange schneller bewegen kann als der Spieler. Denn während der Spieler sich mit W A S D in einem Durchlauf nur ein Feld nach links rechts oben oder unten bewegen kann, kann die Schlange sich um 2 Felder bewegen(zB nach links und unten, also diagonal) weil sie ja x-Achse und y-Achse checkt. Ist das so gewollt? Korrigier mich bitte wenn ich falsch liege
So wie Jonas Keil den Code vorgestellt hat, ist es so gewollt.
Das Schöne am Programmieren ist aber jetzt, dass man das beliebig ändern kann. Gerne kann die Schlange auch mal gleich 2 Felder diagonal springen oder eben nur ein Feld pro Zug. Da kann man jetzt kreativ werden ;)
oder besser gefragt kann man später auch mehr als nur in der programmzeile erstellen?'(also mit richtigem fenster....')
Achso, ja klar! Dafür müssen wir uns aber noch GUI's in Java anschauen :))
Ich kann das Spiel leider nicht programmieren, weil mir in allen new point(x:10, y:9); usw die Buchstaben x und y rot angezeigt werden. IntelliJ will irgendwelche Semikolons usw.. Komisch :(
du schreibst x: und y: nicht mit rein, das schreibt intellij automatisch
was für eine app benutzt du?
Wenn du IDEA meinst, dann IntelliJ :)
Bei mir ist das x und y immer rot und wird als fehler angezeigt
Mhmm, weiß gerade auf Anhieb nicht woran es liegen könnte. Du kannst dein Problem gern im Discord Server Posten, da können wir auf jeden Fall weiterhelfen😁👍🏻
Hab das selbe Problem
Problem selbst gelöst. Man muss nur die Koordinate als Zahl ein tippen 10, 9 und nicht x:10, y:9.
@@luck3r897 Danke dir
ich hab einen kleinen Zufalls Generator eingebaut damit das Spielfeld nicht immer gleich aufgebaut ist...:
import java.awt.Point;
import java.util.Random;
import java.util.Scanner;
public class snake {
public static void main (String[] args){
Random random = new Random();
boolean weiter = true;
boolean ge = false;
int px = random.nextInt(40) ;
int py = random.nextInt(10) ;
Point pp = new Point(px,py);
px = random.nextInt(40) ;
py = random.nextInt(10) ;
Point sp = new Point(px,py);
px = random.nextInt(40) ;
py = random.nextInt(10) ;
Point gp = new Point(px,py);
px = random.nextInt(40) ;
py = random.nextInt(10) ;
Point tp = new Point(px,py);
while (weiter) {
for(int y = 0; y < 10; y++) {
for (int x = 0; x < 40; x++) {
Point p = new Point(x, y);
if (p.equals(pp))
System.out.print("P");
else if (p.equals(sp))
System.out.print("S");
else if (p.equals(gp))
System.out.print("G");
else if (p.equals(tp))
System.out.print("T");
else System.out.print(".");
}
System.out.println();
}
if (sp.equals(pp)) {
weiter = false;
System.out.println("Du wurdest gefressen.");
}
if (pp.equals(gp)) {
ge = true;
gp = new Point(-1,-1);
}
if (pp.equals(tp) && ge) {
weiter = false;
System.out.println("Du hast gewonnen!");
}
bewegeSpieler(pp);
bewegeSchlange(sp,pp);
}
}
private static void bewegeSchlange(Point sp, Point pp) {
if (pp.x < sp.x)
sp.x--;
else if (pp.x > sp.x)
sp.x++;
else if (pp.y < sp.y)
sp.y--;
else if (pp.y > sp.y)
sp.y++;
}
private static void bewegeSpieler(Point pp) {
Scanner scan = new Scanner(System.in);
String input = scan.next();
if (input.equals("w")) {
if (pp.y > 0);
pp.y--;
} else if (input.equals("s")) {
if (pp.y < 9);
pp.y++;
} else if (input.equals("a")) {
if (pp.x > 0);
pp.x--;
} else if (input.equals("d")) {
if (pp.x < 39);
pp.x++;
}
}
}
Es ist echt ein super Tutorial, ich finde es nur sehr anstrengend zu folgen, da die Audiospur und Videospur nicht zusammenpassen, also es wird immer schon der Code vorgeschrieben, wo aber eigentlich über das davor gesprochen wird.
Danke für das Feedback, Fibi! Wann genau passen Video und Audio nicht zusammen?
@@JonasKeil Hmm, habe das Video noch einmal komplett durchgeschaut und jetzt ist alles synchron. Das schien ein Fehler meinerseits zu sein, trotz Neuladen der Seite 😅
@@fibidlw709 haha, okay :)
in welche jahr lebst du 2080
krass
ich finde das schon krass, dass man soetwas lernen kann 🤒 ich glaub man muss dafür geboren sein oder ich weiss nicht ob ich überhaupt irgendwann programmieren lerne...
Ich bin mir sicher du schaffst das!😁🙌🏻
Es ist total einfach wenn du es lernen willst
@@slitch4410 Als einfach würde ich es nicht einstufen.
Sehr einfach
Wenn die Schlange sich auf der Türe befindet, und man sich dann (mit dem gesammelten Gold) auf diese Position bewegt. Dann hat man gleichzeitig gewonnen und verloren 😅
also eigentlich gutes Video, aber bitte beim nächsten mal nicht so schnell reden und mehr erklären wie die einzelnen Teile des Codes funktionieren, und was die machen
Wird gemacht, danke für dein Feedback! Ich hoffe das Video konnte dir trotzdem weiterhelfen😁✨
@@JonasKeil Ja auf jeden Fall ansonsten halt suuper Video👍
in 15 min
schlecht man weiß nicht was was bedeuted
Ich habe leider ein Problem ein else und alle kleinen p werden als Fehler angezeigt.
Hey, poste dein Problem gern mal bei uns in den Discord, wir können dir dort bestimmt weiter helfen. :)
Danke habe es schon geschafft.
@@d.b.2737 alles klar :)
@@JonasKeil Wie heißt euer Discord Kanal?
Habs in der Video Beschreibung gefunden