diff --git a/.idea/modules.xml b/.idea/modules.xml index 7d95eba..5d35779 100644 --- a/.idea/modules.xml +++ b/.idea/modules.xml @@ -2,8 +2,8 @@ + - \ No newline at end of file diff --git a/app/src/main/java/net/DeltaWings/Android/Hangman/GameActivity.java b/app/src/main/java/net/DeltaWings/Android/Hangman/GameActivity.java index d2a07cf..0b2eee7 100644 --- a/app/src/main/java/net/DeltaWings/Android/Hangman/GameActivity.java +++ b/app/src/main/java/net/DeltaWings/Android/Hangman/GameActivity.java @@ -8,6 +8,7 @@ import android.os.Bundle; import android.support.v7.app.ActionBar; import android.support.v7.app.AlertDialog; import android.support.v7.app.AppCompatActivity; +import android.text.TextUtils; import android.util.Log; import android.view.KeyEvent; import android.view.animation.DecelerateInterpolator; @@ -27,6 +28,7 @@ public class GameActivity extends AppCompatActivity { private TextView word; static private GameUtil gameUtil; private ArrayList letters = new ArrayList<>(); + private ArrayList good = new ArrayList<>(); private Context context = this; @Override @@ -54,7 +56,7 @@ public class GameActivity extends AppCompatActivity { log("Logs"); gameUtil = new GameUtil(); - word.setText(gameUtil.getUndescores().toString().replace(",", "")); + word.setText(TextUtils.join("", gameUtil.getUndescores())); ActionBar actionBar = getSupportActionBar(); if (actionBar != null) { @@ -121,16 +123,21 @@ public class GameActivity extends AppCompatActivity { break; } else { // si joueur non vainqueur letters.add(word); - ((TextView) findViewById(R.id.letters)).setText(letters.toString().toLowerCase()); + good.add(word); + ((TextView) findViewById(R.id.letters)).setText(TextUtils.join(", ", letters).toLowerCase()); if(res) { Toast.makeText(MainActivity.getInstance(), "Correct Letter!", Toast.LENGTH_LONG).show(); - ((TextView) findViewById(R.id.word)).setText(gameUtil.getUndescores().toString().replace(",", "")); - new Command().execute("AFFICHER|"+gameUtil.getUndescores().toString().replace(",", "")); + ((TextView) findViewById(R.id.word)).setText(TextUtils.join("", gameUtil.getUndescores())); + + new Command().execute("LEADING|A"); + new Command().execute("LAGGING|A"); + new Command().execute("COULEUR|J"); + new Command().execute("AFFICHER|"+TextUtils.join("", gameUtil.getUndescores())); } else { Toast.makeText(MainActivity.getInstance(), "Incorrect letter!", Toast.LENGTH_LONG).show(); //update image - if(letters.size() == 10) { + if(letters.size()-good.size() == 10) { lost(); } } @@ -146,7 +153,7 @@ public class GameActivity extends AppCompatActivity { } else { Toast.makeText(MainActivity.getInstance(), "Incorrect word!", Toast.LENGTH_LONG).show(); //update image - if(letters.size() == 10) { + if(letters.size()-good.size() == 10) { lost(); } } @@ -258,6 +265,7 @@ public class GameActivity extends AppCompatActivity { } private void win() { + new Command().execute("COULEUR|F"); new Command().execute("AFFICHER|Tu as gagné !!!"); DialogInterface.OnClickListener clickListener = new DialogInterface.OnClickListener() { @Override @@ -289,6 +297,7 @@ public class GameActivity extends AppCompatActivity { } private void lost() { + new Command().execute("COULEUR|B"); new Command().execute("AFFICHER|Tu as perdu !!!"); DialogInterface.OnClickListener clickListener = new DialogInterface.OnClickListener() { @Override @@ -313,7 +322,7 @@ public class GameActivity extends AppCompatActivity { }; new AlertDialog.Builder(context) - .setMessage("Tu as perdu :( !") + .setMessage("Tu as perdu, le mot était : " + gameUtil.solution()) .setPositiveButton("Recommencer", clickListener) .setNegativeButton("Quitter", clickListener) .show(); diff --git a/app/src/main/java/net/DeltaWings/Android/Hangman/Util/Command.java b/app/src/main/java/net/DeltaWings/Android/Hangman/Util/Command.java index b37bcb9..8cc9524 100644 --- a/app/src/main/java/net/DeltaWings/Android/Hangman/Util/Command.java +++ b/app/src/main/java/net/DeltaWings/Android/Hangman/Util/Command.java @@ -1,6 +1,7 @@ package net.DeltaWings.Android.Hangman.Util; import android.os.AsyncTask; +import android.util.Log; import net.DeltaWings.Android.Hangman.MainActivity; @@ -8,9 +9,20 @@ import java.io.DataOutputStream; import java.io.IOException; import java.net.Socket; import java.net.UnknownHostException; +import java.util.Arrays; public class Command extends AsyncTask { + private String[][] replacements = { + {"é", ""}, + {"è", ""}, + {"ê", ""}, + {"î", ""}, + {"ï", ""}, + {"à", ""}, + {"ç", ""} + }; + protected Long doInBackground(String... s) { Command c = new Command(); @@ -42,13 +54,20 @@ public class Command extends AsyncTask { //---------------------------------------------------------------------------------------------- public void envoyer_commande(String c) throws IOException { System.out.println("\nDEBUG:\tenvoyer_commande"); - - Socket socket = new Socket(MainActivity.getPref("setting_ip", MainActivity.instance.getApplicationContext()), Integer.parseInt(MainActivity.getPref("setting_port", MainActivity.instance.getApplicationContext()))); + //Log.v("Command.java", MainActivity.getPref("setting_ip", MainActivity.instance.getApplicationContext())); + //Log.v("Command.java", ""+Integer.parseInt(MainActivity.getPref("setting_port", MainActivity.instance.getApplicationContext()))); + Socket socket = new Socket("192.168.1.2", 53000); DataOutputStream dataOutputStream = new DataOutputStream(socket.getOutputStream()); + for(String[] replacement: replacements) { + Log.v("Command.java", Arrays.toString(replacement)); + c = c.replace(replacement[0], replacement[1]); + } + System.out.println("\nDEBUG:\tConnexion ok"); System.out.println("\nDEBUG:\tdebut envoi"); + Log.v("Command.java", "Sended String "+c); dataOutputStream.writeBytes(c); System.out.println("\nDEBUG:\tfinenvoi"); diff --git a/app/src/main/java/net/DeltaWings/Android/Hangman/Util/GameUtil.java b/app/src/main/java/net/DeltaWings/Android/Hangman/Util/GameUtil.java index 4aa6cc7..fe47324 100644 --- a/app/src/main/java/net/DeltaWings/Android/Hangman/Util/GameUtil.java +++ b/app/src/main/java/net/DeltaWings/Android/Hangman/Util/GameUtil.java @@ -25,11 +25,6 @@ public class GameUtil { public GameUtil() { //Generate Word - JSONObject obj = null; - - - String r = ""; - StringBuilder sb = new StringBuilder(); ArrayList list = new ArrayList<>(); try { @@ -39,11 +34,8 @@ public class GameUtil { while (line != null) { list.add(line); - sb.append(line); - sb.append(System.lineSeparator()); line = br.readLine(); } - r = sb.toString(); br.close(); } catch (FileNotFoundException e) { e.printStackTrace(); @@ -82,7 +74,7 @@ public class GameUtil { if(this.word.contains(letter)) { Log.v(tag, "Letter Found !"); for (int i = 0; i < this.word.length(); i++) { - if(Objects.equals(String.valueOf(this.word.charAt(i)), letter)) { + if(String.valueOf(this.word.charAt(i)).equals(letter)) { res.set(i, letter); } } @@ -92,7 +84,7 @@ public class GameUtil { } public boolean checkWord(String word) { - if(Objects.equals(word, this.word)) { + if(word.equals(this.word)) { for (int i = 0; i < word.length(); i++) { res.set(i, word.split("")[i]); } @@ -114,4 +106,8 @@ public class GameUtil { public ArrayList getUndescores() { return res; } + + public String solution() { + return word; + } } \ No newline at end of file diff --git a/gradle.properties b/gradle.properties index 5c04be0..1fba7d8 100644 --- a/gradle.properties +++ b/gradle.properties @@ -13,8 +13,8 @@ # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects # org.gradle.parallel=true #Mon Feb 05 13:35:24 CET 2018 -#systemProp.https.proxyPort=8080 -#systemProp.http.proxyHost=10.16.0.6 +systemProp.https.proxyPort=8080 +systemProp.http.proxyHost=10.16.0.6 org.gradle.jvmargs=-Xmx1536m -#systemProp.https.proxyHost=10.16.0.6 -#systemProp.http.proxyPort=8080 +systemProp.https.proxyHost=10.16.0.6 +systemProp.http.proxyPort=8080