forked from IF-LK-2020/wordle
Merge branch 'main' of https://git.ngb.schule/maxim.derksen/wordle
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@@ -33,3 +33,4 @@ engine-alpha.log
|
|||||||
/git.iml
|
/git.iml
|
||||||
/out/
|
/out/
|
||||||
/.idea/.gitignore
|
/.idea/.gitignore
|
||||||
|
/.idea/libraries/sqlite_jdbc_3_36_0_3.xml
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
import java.util.HashMap;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Server für das WORDLE Spiel.
|
* Server für das WORDLE Spiel.
|
||||||
@@ -13,7 +14,7 @@ public class WordleServer extends Server {
|
|||||||
|
|
||||||
private DatabaseConnector db;
|
private DatabaseConnector db;
|
||||||
|
|
||||||
private List<User> userList;
|
private HashMap<String,User>users;
|
||||||
private Query query;
|
private Query query;
|
||||||
|
|
||||||
|
|
||||||
@@ -25,15 +26,16 @@ public class WordleServer extends Server {
|
|||||||
super(pPort);
|
super(pPort);
|
||||||
query = new Query();
|
query = new Query();
|
||||||
db = new DatabaseConnector("", 0, "wordle.db", "", "");
|
db = new DatabaseConnector("", 0, "wordle.db", "", "");
|
||||||
userList = new List<User>();
|
users = new HashMap<>();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void processNewConnection( String pClientIP, int pClientPort ) {
|
public void processNewConnection( String pClientIP, int pClientPort ) {
|
||||||
String connectionID= pClientIP +":"+ Integer.toString(pClientPort);
|
String connectionID= pClientIP +":"+ Integer.toString(pClientPort);
|
||||||
User u = new User(connectionID);
|
User u = new User(connectionID);
|
||||||
userList.append(u);
|
users.put(connectionID,u);
|
||||||
send(pClientIP,pClientPort,"+OK Verbindung zum Wordle Server erfolgreich aufgebaut");
|
send(pClientIP,pClientPort,"+OK Verbindung zum Wordle Server erfolgreich aufgebaut");
|
||||||
|
u.setState(1);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -45,11 +47,37 @@ public class WordleServer extends Server {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void processMessage( String pClientIP, int pClientPort, String pMessage ) {
|
public void processMessage( String pClientIP, int pClientPort, String pMessage ) {
|
||||||
if(pMessage.equals("QUIT")){
|
String conectionID = pClientIP + ":" + Integer.toString(pClientPort);
|
||||||
send(pClientIP,pClientPort,"+OK Bye");
|
User u = users.get(conectionID);
|
||||||
|
|
||||||
|
if(pMessage.equals("QUIT")) {
|
||||||
|
send(pClientIP, pClientPort, "+OK Bye");
|
||||||
|
close();
|
||||||
} else {
|
} else {
|
||||||
send(pClientIP,pClientPort,"-ERR Command not valid in this state");
|
send(pClientIP,pClientPort,"-ERR Command not valid in this state");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
switch(u.getState()){
|
||||||
|
case 1:
|
||||||
|
//Anmeldephase
|
||||||
|
String m = pMessage.substring(0,3);
|
||||||
|
if(m.equalsIgnoreCase("USER")){
|
||||||
|
m = pMessage.substring(6,pMessage.length()-1);
|
||||||
|
u.setUsername(m);
|
||||||
|
} else if(m.equalsIgnoreCase("PASS")){
|
||||||
|
m = pMessage.substring(6,pMessage.length()-1);
|
||||||
|
u.setPassword(m);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
//Spielphase
|
||||||
|
break;
|
||||||
|
case 3:
|
||||||
|
//Zwischenphase(Angemeldet)
|
||||||
|
break;
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user