login angefangen

This commit is contained in:
Tim Tersch
2022-03-03 11:31:11 +01:00
parent a5ffccc596
commit de0133d1b1

View File

@@ -3,33 +3,43 @@ public class Game {
WordleServer wordleServer;
User user;
static DatabaseConnector databaseConnector;// Datenbankverbindung aufstellen
private String ip;
private int port;
private String wordle;
private String[] words;
private int count;
private int phase;
public Game(WordleServer wordleServer, String pClientIP, int pClientPort) {
static {
databaseConnector = new DatabaseConnector(null, 0, "wordle.db", null, null);
System.err.println(databaseConnector.getErrorMessage());
}
public Game(WordleServer wordleServer, String pClientIP, int pClientPort) {
this.wordleServer = wordleServer;
this.ip = pClientIP;
this.port = pClientPort;
send("+OK Hello there");
}
public void processMessage(String msg) {
msg = msg.toLowerCase().trim();
if (msg.equals("quit")) {
send("+OK bye");
wordleServer.closeConnection(ip, port);
System.exit(0);
}
switch (phase) {
case 0:
loginPhase(msg);
@@ -42,41 +52,66 @@ public class Game {
break;
}
}
private void loginPhase(String msg) {
if (msg.startsWith("user")) {
} else if (msg.startsWith("pass")) {
} else if (msg.startsWith("wotd")) {
} else if (msg.startsWith("play")) {
if (msg.length() <= 5) {
sendUniversalError();
return;
}
String args = msg.substring(5);
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("wotd ")) {
} else if (msg.startsWith("play ")) {
} else {
sendUniversalError();
}
}
private void gamePhase(String msg) {
if (msg.startsWith("send")) {
} else if (msg.startsWith("info")) {
} else if (msg.startsWith("exit")) {
}
}
private void endPhase(String msg) {
if (msg.startsWith("stat")) {
} else if (msg.startsWith("play")) {
}
}
private void send(String msg) {
wordleServer.send(ip, port, msg);
}
private void sendUniversalError() {
send("-ERR command not valid in this state");
}
public String getIp() {
return ip;
}