Modification de la classe ConditionClass en ConditionClassPersonnage, création d'une classe ConditionType et ajout de tests correspondants
This commit is contained in:
@ -1,48 +0,0 @@
|
||||
package condition;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
import main.Joueur;
|
||||
|
||||
|
||||
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.getEquipe().getClass();
|
||||
|
||||
for(Class<? extends T> classe : classes) {
|
||||
|
||||
|
||||
if(ccp.getClass() == classe.getClass() || cct.getClass() == classe.getClass() ) return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
49
src/condition/ConditionClassPersonnage.java
Normal file
49
src/condition/ConditionClassPersonnage.java
Normal file
@ -0,0 +1,49 @@
|
||||
package condition;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import main.Joueur;
|
||||
import personnage.CartePersonnage;
|
||||
|
||||
|
||||
public class ConditionClassPersonnage extends Condition{
|
||||
|
||||
private List<Class<? extends CartePersonnage>> classes;
|
||||
|
||||
public ConditionClassPersonnage(List<Class<? extends CartePersonnage>> classes){
|
||||
|
||||
this.classes = new ArrayList<Class<? extends CartePersonnage>>();
|
||||
this.classes.addAll(classes);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Vérifie qu'il existe au moins une classe qui correspond au Personnage du Joueur.
|
||||
* <br><br>
|
||||
* exemple :
|
||||
*
|
||||
* classes = { Emi.class, Metamorphe.class, ... etc }
|
||||
* <br>
|
||||
* Si la class de la carte du joueur correspond à un des élements dans classes alors on renvoie vrai.
|
||||
*
|
||||
* @param joueur Le joueur sur lequel on vérifie les conditions.
|
||||
* @return boolean
|
||||
*/
|
||||
@Override
|
||||
public boolean isTrue(Joueur joueur)
|
||||
{
|
||||
Class<? extends CartePersonnage> ccp = joueur.getCartePersonnage().getClass();
|
||||
|
||||
for(Class<? extends Object> classe : classes) {
|
||||
|
||||
if(ccp == classe
|
||||
//|| cct.getClass() == classe.getClass()
|
||||
) return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
46
src/condition/ConditionType.java
Normal file
46
src/condition/ConditionType.java
Normal file
@ -0,0 +1,46 @@
|
||||
package condition;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import main.Joueur;
|
||||
|
||||
|
||||
public class ConditionType extends Condition{
|
||||
|
||||
private List<Joueur.Equipe> equipes;
|
||||
|
||||
public ConditionType(List<Joueur.Equipe> equipes){
|
||||
|
||||
this.equipes = new ArrayList<Joueur.Equipe>();
|
||||
this.equipes.addAll(equipes);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Vérifie qu'il existe au moins une classe qui correspond à l'équipe du Joueur.
|
||||
* <br><br>
|
||||
* exemple :
|
||||
*
|
||||
* classes = { NEUTRE,SHADOW,HUNTER }
|
||||
* <br>
|
||||
* Si l'équipe du joueur correspond à un des élements dans la liste des équipes alors on renvoie vrai.
|
||||
*
|
||||
* @param joueur Le joueur sur lequel on vérifie les conditions.
|
||||
* @return boolean
|
||||
*/
|
||||
@Override
|
||||
public boolean isTrue(Joueur joueur)
|
||||
{
|
||||
Joueur.Equipe equipeJoueur = joueur.getEquipe();
|
||||
|
||||
for(Joueur.Equipe equipe : equipes) {
|
||||
|
||||
if(equipeJoueur == equipe) return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
Reference in New Issue
Block a user