Compare commits

..

3 Commits

Author SHA1 Message Date
Tim Tersch
91ed88d15d asdasda 2022-03-03 11:37:50 +01:00
Tim Tersch
8e9a9218be Merge branch 'main' of https://git.ngb.schule/Tim/wordle
# Conflicts:
#	src/Game.java
2022-03-03 11:37:41 +01:00
Tim Tersch
de0133d1b1 login angefangen 2022-03-03 11:31:11 +01:00

View File

@@ -2,7 +2,7 @@ public class Game {
// Instanzvariablen - ersetzen Sie das folgende Beispiel mit Ihren Variablen // Instanzvariablen - ersetzen Sie das folgende Beispiel mit Ihren Variablen
WordleServer wordleServer; WordleServer wordleServer;
User user; User user;
static DatabaseConnector databaseConnector = new DatabaseConnector("", 0, "wordle.db", "", "");;// Datenbankverbindung aufstellen static DatabaseConnector databaseConnector;// Datenbankverbindung aufstellen
private String ip; private String ip;
private int port; private int port;
@@ -12,6 +12,14 @@ public class Game {
private int count; private int count;
private int phase; private int phase;
static {
databaseConnector = new DatabaseConnector(null, 0, "wordle.db", null, null);
System.err.println(databaseConnector.getErrorMessage());
}
public Game(WordleServer wordleServer, String pClientIP, int pClientPort) { public Game(WordleServer wordleServer, String pClientIP, int pClientPort) {
this.wordleServer = wordleServer; this.wordleServer = wordleServer;
@@ -19,6 +27,7 @@ public class Game {
this.port = pClientPort; this.port = pClientPort;
send("+OK Hello there"); send("+OK Hello there");
} }
public void processMessage(String msg) { public void processMessage(String msg) {
@@ -28,6 +37,7 @@ public class Game {
if (msg.equals("quit")) { if (msg.equals("quit")) {
send("+OK bye"); send("+OK bye");
wordleServer.closeConnection(ip, port); wordleServer.closeConnection(ip, port);
System.exit(0);
} }
switch (phase) { switch (phase) {
@@ -44,21 +54,39 @@ public class Game {
} }
private void loginPhase(String msg) { private void loginPhase(String msg) {
if (msg.length() <= 5) {
sendUniversalError();
return;
}
String args = msg.substring(5);
if (msg.startsWith("user ")) { if (msg.startsWith("user ")) {
databaseConnector.executeStatement("SELECT * FROM User WHERE name = '" + args + "'");
System.err.println(databaseConnector.getErrorMessage());
QueryResult result = databaseConnector.getCurrentQueryResult();
if (result != null) {
String name = result.getData()[0][0];
System.out.println(name);
user = new User(name);
} else {
send("-ERR User not found.");
}
} else if (msg.startsWith("pass ")) { } else if (msg.startsWith("pass ")) {
} else if (msg.startsWith("wotd ")) { } else if (msg.startsWith("wotd ")) {
} else if (msg.startsWith("play ")) { } else if (msg.startsWith("play ")) {
} else {
sendUniversalError();
} }
} }
private void gamePhase(String msg) { private void gamePhase(String msg) {
if (msg.startsWith("send")) { if (msg.startsWith("send")) {
String args = msg.substring(5); String args = msg.substring(5);
@@ -69,12 +97,8 @@ public class Game {
} else if (msg.startsWith("info")) { } else if (msg.startsWith("info")) {
} else if (msg.startsWith("exit")) { } else if (msg.startsWith("exit")) {
} }
} }
@@ -86,17 +110,14 @@ public class Game {
} }
} }
private void spielstandAbrufen(String name)
{
}
private void send(String msg) { private void send(String msg) {
wordleServer.send(ip, port, msg); wordleServer.send(ip, port, msg);
} }
private void sendUniversalError() {
send("-ERR command not valid in this state");
}
public String getIp() { public String getIp() {
return ip; return ip;
} }