Création de la méthode attaquer de plateau et de joueur

This commit is contained in:
Paul Gross
2020-04-21 11:46:41 +02:00
parent 10262e8792
commit 461c38ba1b
19 changed files with 163 additions and 87 deletions

View File

@ -1,50 +0,0 @@
package condition;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import main.Joueur;
import carte.CartePersonnage;
import carte.Type;
public class ConditionClass<T> extends Condition{
private List<Class<T>> classes;
public ConditionClass(Class<T> ... classes){
// TODO
this.classes = new ArrayList<Class<T>>();
this.classes.addAll(Arrays.asList(classes));
}
/**
* Vérifie qu'il existe au moins une classe qui correspond soit au Type soit au Personnage du Joueur.
* <br><br>
* exemple :
*
* classes = { Emi.class, Metamorphe.class, ... etc } ou classes = { Hunter.class, Shadow.class, Neutre.class }
* <br>
* Si la class de la carte du joueur correspond à un des élements dans classes alors on renvoie vrai, même chose pour les types.
*
* @param joueur Le joueur sur lequel on vérifie les conditions.
* @return boolean
*/
@Override
public boolean isTrue(Joueur joueur)
{
Class<? extends T> ccp = (Class<? extends T>) joueur.getCartePersonnage().getClass();
Class<? extends T> cct = (Class<? extends T>) joueur.getType().getClass();
for(Class<? extends T> classe : classes) {
if(ccp.getClass() == classe.getClass() || cct.getClass() == classe.getClass() ) return true;
}
return false;
}
}