supretion de code inutile et ajout de commentaire
This commit is contained in:
@@ -94,6 +94,9 @@ import com.iutlaval.myapplication.Game.Cards.Renaissance.Renaissance_Vlad;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* registre de carte identique a celui du serveur permet la déserialisation des decks et cartes
|
||||
*/
|
||||
public class CardRegistery {
|
||||
public static List<Class<? extends Card>> registry;
|
||||
|
||||
@@ -204,6 +207,13 @@ public class CardRegistery {
|
||||
registry.add(Moyen_Age_Pouvoir_Du_Franc.class);
|
||||
}
|
||||
|
||||
/**
|
||||
* retourne l'index de la carte donné
|
||||
* et lance une runtime exception si la carte n'existe pas car cela veut dire que le serveur
|
||||
* est incompatible avec le client
|
||||
* @param class1 class de la carte recherché
|
||||
* @return index de la carte
|
||||
*/
|
||||
public static int indexOf(Class<? extends Card> class1) {
|
||||
if(registry == null)initCardRegistery();
|
||||
int a = registry.indexOf(class1);
|
||||
@@ -215,14 +225,22 @@ public class CardRegistery {
|
||||
return a != -1 ? a : 0;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* retourne la class de la carte a l'index donné
|
||||
* @param index l'index de la carte
|
||||
* @return class de la carte
|
||||
*/
|
||||
public static Class<? extends Card> get(int index) {
|
||||
if(registry == null)initCardRegistery();
|
||||
if(registry.size() <= index || index < 0) return null;
|
||||
return registry.get(index);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* retourne l'index de la carte
|
||||
* @param card
|
||||
* @return
|
||||
*/
|
||||
public static int indexOf(Card card) {
|
||||
if(registry == null)initCardRegistery();
|
||||
return indexOf(card.getClass());
|
||||
|
||||
@@ -2,25 +2,32 @@ package com.iutlaval.myapplication.Game;
|
||||
|
||||
public final class Command {
|
||||
|
||||
public static final String UPDATE = "update";
|
||||
public static final String PONG = "pong";
|
||||
|
||||
private Command(){} // pas de contructor public on ne veut pas instancier cette classe
|
||||
public static final String YOURTURN="yourturn";
|
||||
public static final String DRAW = "draw";
|
||||
public static final String GET_DECK = "getDeck";
|
||||
public static final String PUT_CARD = "putCard";
|
||||
public static final String PUT_ENEMY_CARD = "enemycard";
|
||||
private Command(){} // pas de contructor on ne veut pas instancier cette classe
|
||||
public static final String YOURTURN="yourturn"; // commande de debut de tours
|
||||
public static final String DRAW = "draw"; //demande a pioché
|
||||
public static final String GET_DECK = "getDeck"; // demande le deck
|
||||
public static final String PUT_CARD = "putCard"; // place une carte
|
||||
public static final String PUT_ENEMY_CARD = "enemycard"; // place une carte sur le terrain adverse
|
||||
public static final String PASS_TURN = "passTurn"; // passe son tours
|
||||
public static final String POPUP = "pupup"; // affiche un messsage
|
||||
public static final String ENEMYTURN = "enemyTurn"; // tours enemy
|
||||
public static final String SETMANA = "setmana"; // defini la mana
|
||||
public static final String WIN = "win"; // gagne
|
||||
public static final String LOSE = "lose"; // perds
|
||||
public static final String PING = "ping"; //envoie un ping en l'attente d'un pong
|
||||
public static final String PONG = "pong";
|
||||
public static final String NOK = "nok"; // refuse une action
|
||||
public static final String OK = "ok"; // accepte une actoin
|
||||
public static final String MEULE = "meule"; // fait pioché mais n'ajoute pas a la main la carte sera donc perdu
|
||||
public static final String UPDATE = "update";//fonction client uniquement a utilisé avec le serveur de débugage permet de mettre a jour l'écrans
|
||||
|
||||
|
||||
//inutilisé
|
||||
public static final String SHUFFLE_DECK = "shuffleDeck";
|
||||
public static final String SELECT_CARD = "selectCard";
|
||||
public static final String ATTACK = "attack";
|
||||
public static final String DEFEND = "defend";
|
||||
public static final String PASS_TURN = "passTurn";
|
||||
public static final String POPUP = "pupup";
|
||||
public static final String ENEMYTURN = "enemyTurn";
|
||||
public static final String SETMANA = "setmana";
|
||||
public static final String WIN = "win";
|
||||
public static final String LOSE = "lose";
|
||||
public static final String PING = "ping";
|
||||
public static final Object OK = "ok";
|
||||
public static final String CAST_SPELL = "castSpell";
|
||||
|
||||
}
|
||||
|
||||
@@ -59,6 +59,10 @@ public class Communication {
|
||||
send(""+message);
|
||||
}
|
||||
|
||||
/**
|
||||
* recoit un message sous forme de chaine
|
||||
* @return retourne ERROR ou TIMEOUT si une erreur ce produit
|
||||
*/
|
||||
public String recieve(){
|
||||
try {
|
||||
return (String) clientIn.readObject();
|
||||
@@ -71,6 +75,11 @@ public class Communication {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* retourne un entier recut
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
public int recieveInt()
|
||||
{
|
||||
String message = recieve();
|
||||
@@ -87,6 +96,10 @@ public class Communication {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* ferme la connection
|
||||
* @throws IOException
|
||||
*/
|
||||
public void close() throws IOException {
|
||||
if(clientOut != null)clientOut.close();
|
||||
if(clientIn != null)clientIn.close();
|
||||
|
||||
@@ -223,6 +223,13 @@ public class GameLogicThread extends Thread{
|
||||
//ajout la card au terain
|
||||
board.setEnemyCard(zone,cardPlayed);
|
||||
break;
|
||||
|
||||
case Command.MEULE:
|
||||
//la carte pioché va être perdu vu que l'on ne la met pas dans une main
|
||||
//c'est le role de la command meule de faire perde des cartes au joeur
|
||||
int nbmeule = coms.recieveInt();
|
||||
deck.draw(nbmeule);
|
||||
|
||||
case "timeout":
|
||||
//ceci est une erreur et non une commande elle se doit donc de ne rien faire
|
||||
break;
|
||||
|
||||
@@ -6,9 +6,6 @@ import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class Hand {
|
||||
|
||||
private static final int NUMBER_OF_CARDS_IN_STARTING_HAND = 5;
|
||||
|
||||
private List<Card> hand;
|
||||
|
||||
public Hand()
|
||||
@@ -25,7 +22,7 @@ public class Hand {
|
||||
{
|
||||
for(int i = 0 ; i < amount;i++)
|
||||
{
|
||||
hand.add(deck.getCards().pop());
|
||||
hand.add(deck.draw());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -7,10 +7,15 @@ import com.iutlaval.myapplication.Game.Cards.CardRegistery;
|
||||
import com.iutlaval.myapplication.Game.Cards.Mythes.Mythes_Perséphone;
|
||||
|
||||
import java.lang.reflect.Constructor;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Stack;
|
||||
|
||||
/**
|
||||
* c'est un deck qui déserialise les info recut du serveur ce qui donne une deck de carte a terme
|
||||
*/
|
||||
public class NetworkDeck{
|
||||
Stack<Card> cards;
|
||||
private Stack<Card> cards;
|
||||
public NetworkDeck(String deckstring, Context context)
|
||||
{
|
||||
cards = new Stack<>();
|
||||
@@ -31,7 +36,18 @@ public class NetworkDeck{
|
||||
}
|
||||
}
|
||||
|
||||
public Stack<Card> getCards() {
|
||||
return cards;
|
||||
public Card draw()
|
||||
{
|
||||
return cards.pop();
|
||||
}
|
||||
|
||||
public List<Card> draw(int amount)
|
||||
{
|
||||
List<Card> drawn = new ArrayList<>();
|
||||
for(int i = 0 ; i < amount ; i++)
|
||||
{
|
||||
drawn.add(cards.pop());
|
||||
}
|
||||
return drawn;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -14,19 +14,29 @@ import com.iutlaval.myapplication.Video.Renderer;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
|
||||
public class PlayableZonesHandler {
|
||||
private List<Drawable> playableZones;
|
||||
private boolean isDisplayed;
|
||||
private Board board;
|
||||
|
||||
public PlayableZonesHandler(Board board)
|
||||
{
|
||||
playableZones=new ArrayList<>();
|
||||
this.board=board;
|
||||
isDisplayed=false;
|
||||
}
|
||||
|
||||
//TODO verifier si elle ne sont pas deja afficher
|
||||
/**
|
||||
* affiche les zones de jeu libre
|
||||
* @param renderer
|
||||
*/
|
||||
public void displayPlayableZones(Renderer renderer)
|
||||
{
|
||||
//on affiche pas si elle se sont deja
|
||||
if(isDisplayed)return;
|
||||
isDisplayed=true;
|
||||
|
||||
Card[] cardsOnBoard = board.getPlayerCardsOnBoard();
|
||||
for(int i=0 ; i < cardsOnBoard.length ;i++)
|
||||
{
|
||||
@@ -35,8 +45,14 @@ public class PlayableZonesHandler {
|
||||
displayPlayableZoneOn(i,renderer);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* affiche un rectangle gris représentant une zone jouable en la case i
|
||||
* @param i car sur la quelle afficher la zone
|
||||
* @param renderer
|
||||
*/
|
||||
private void displayPlayableZoneOn(int i,Renderer renderer) {
|
||||
Rectangle pos = new Rectangle((DrawableCard.getCardWith()+1)*i,50F,DrawableCard.getCardWith(),DrawableCard.getCardHeight());
|
||||
|
||||
@@ -50,14 +66,19 @@ public class PlayableZonesHandler {
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* cache les zones de jeu
|
||||
* @param renderer
|
||||
*/
|
||||
public void hidePlayableZones(Renderer renderer)
|
||||
{
|
||||
if(!isDisplayed)return;
|
||||
for(Drawable d : playableZones)
|
||||
{
|
||||
renderer.removeToDraw(d);
|
||||
}
|
||||
playableZones.clear();
|
||||
isDisplayed=false;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -40,6 +40,7 @@ public class TouchHandler {
|
||||
|
||||
/**
|
||||
* cette evenement doit recevoir le onTouchEvent d'une activité
|
||||
* cette fonction gére l'integralité du tactile de l'application elle est divisé en de nombreuses sous fonction
|
||||
* @param event
|
||||
*/
|
||||
public void onTouchEvent(MotionEvent event)
|
||||
@@ -162,6 +163,10 @@ public class TouchHandler {
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* gére la selection de carte dans la main
|
||||
* @param event
|
||||
*/
|
||||
private void handSelectionHandler(MotionEvent event)
|
||||
{
|
||||
DrawableCard smallCArd = renderer.getCardOn(unScalled_X,unScalled_Y);
|
||||
@@ -181,6 +186,10 @@ public class TouchHandler {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* gére le button de fin de tours
|
||||
* @param event
|
||||
*/
|
||||
private void endTurnButtonHandle(MotionEvent event)
|
||||
{
|
||||
//si on appuie
|
||||
|
||||
@@ -11,6 +11,7 @@ import com.iutlaval.myapplication.InvalidDataException;
|
||||
|
||||
public class DrawableBitmap extends Drawable{
|
||||
/**
|
||||
* crée un drawable qui affiche une bitmap
|
||||
* @param bitmap a dessiner
|
||||
* @param x_pos position en x du texte
|
||||
* @param y_pos position en y du texte
|
||||
|
||||
@@ -5,6 +5,9 @@ import android.graphics.Paint;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
|
||||
/**
|
||||
* crée un drawable qui s'auto suprime
|
||||
*/
|
||||
public class DrawableSelfRemoving extends Drawable{
|
||||
|
||||
private Drawable drawable;
|
||||
|
||||
@@ -2,6 +2,9 @@ package com.iutlaval.myapplication.Video;
|
||||
|
||||
import android.view.Display;
|
||||
|
||||
/**
|
||||
* cette class permet d'attendre le temps qui s'écoule entre 2image a l'écran plutot que sur dessiné et gaspillier la batterie
|
||||
*/
|
||||
public class FpsTime {
|
||||
private static long frametime;
|
||||
|
||||
|
||||
@@ -70,7 +70,6 @@ public class Rectangle {
|
||||
|
||||
/**
|
||||
* retourne la bitmap entre mais avec un rectangle dessiner dedans
|
||||
* @param bitmap la bitmap sur la quelle dessiner
|
||||
* @param color la couleur du carre
|
||||
*/
|
||||
private void brushInit(int color)
|
||||
|
||||
@@ -16,6 +16,7 @@ import com.iutlaval.myapplication.GameActivity;
|
||||
import com.iutlaval.myapplication.Video.Drawables.Drawable;
|
||||
import com.iutlaval.myapplication.Video.Drawables.DrawableCard;
|
||||
import com.iutlaval.myapplication.Video.Drawables.DrawableSelfRemoving;
|
||||
import com.iutlaval.myapplication.exception.DrawableNotFoundException;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package com.iutlaval.myapplication.Video;
|
||||
package com.iutlaval.myapplication.exception;
|
||||
|
||||
public class DrawableNotFoundException extends RuntimeException{
|
||||
}
|
||||
Reference in New Issue
Block a user