Merge branch 'development' of https://github.com/PTE-SH/ShadowHunterGame into development

This commit is contained in:
Chiara 2020-04-17 12:32:10 +02:00
commit f37961727f
16 changed files with 273 additions and 2 deletions

12
src/carte/Carte.java Normal file
View File

@ -0,0 +1,12 @@
package carte;
public class Carte {
private String nom;
private String description;
private void utiliser(Joueur j) {
}
}

View File

@ -0,0 +1,8 @@
package carte;
public abstract class CarteCondition extends CarteEffet{
private Condition condition;
}

View File

@ -0,0 +1,9 @@
package carte;
public abstract class CarteEffet extends Carte{
public void utiliser(Joueur j) {
}
}

17
src/carte/CarteLieu.java Normal file
View File

@ -0,0 +1,17 @@
package carte;
import java.util.List;
public class CarteLieu extends CarteEffet{
private Type field;
// Liste des joueurs actuellement présent sur le lieu
private List<Joueur> listeJoueur;
public void utiliser(Joueur j) {
}
}

View File

@ -0,0 +1,9 @@
package carte;
public class CarteLieuType extends CarteLieu{
public void utiliser(Joueur j) {
}
}

View File

@ -0,0 +1,52 @@
package carte;
public class CartePersonnage extends CarteCondition{
private String NOM;
private int HP;
private Joueur joueur;
public void tour() {
}
/*
* @param j
*
*/
public void utiliser(Joueur j) {
}
/*
* @param j
* Le joueur que l'on souhaite attaquer
*/
public void attaquer(Joueur j) {
}
public boolean victoire() {
return true;
}
public Joueur getJoueur() {
return joueur;
}
/*
* @param j
*
*/
public Joueur setJoueur(Joueur j) {
this.joueur = j;
return joueur;
}
public void deplacer() {
}
}

View File

@ -0,0 +1,5 @@
package carte;
public class CartePiochable {
}

7
src/carte/Condition.java Normal file
View File

@ -0,0 +1,7 @@
package carte;
public class Condition {
}

View File

@ -0,0 +1,5 @@
package carte;
public class Equipement {
}

9
src/carte/Joueur.java Normal file
View File

@ -0,0 +1,9 @@
package carte;
public class Joueur {
public void utiliser() {
}
}

7
src/carte/Type.java Normal file
View File

@ -0,0 +1,7 @@
package carte;
public interface Type {
}

View File

@ -1,7 +1,9 @@
package condition;
import main.Joueur;
public abstract class Condition {
//TODO
abstract boolean isTrue(Joueur joueur);
}

View File

@ -0,0 +1,31 @@
package condition;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import main.Joueur;
public class ConditionClass<T extends Comparable> 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));
}
@Override
boolean isTrue(Joueur joueur) {
// TODO Auto-generated method stub
return false;
}
}

View File

@ -0,0 +1,44 @@
package condition;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import main.Joueur;
public class ConditionMultiple extends Condition {
private List<Condition> conditions;
public ConditionMultiple(Condition ...conditions) {
this.conditions = new ArrayList<Condition>();
this.conditions.addAll(Arrays.asList(conditions));
}
/**
* Vérifie si toutes les conditions sont vérifiées
* @param joueur Le joueur sur lequel on vérifie les conditions.
* @return boolean
*/
@Override
public boolean isTrue(Joueur joueur)
{
for(Condition condition : conditions)
{
// Si une seule des conditions n'est pas vraie alors on renvoie false
if(!condition.isTrue(joueur)) return false;
}
return true;
}
public List<Condition> getConditions() {
return conditions;
}
public void setConditions(List<Condition> conditions) {
this.conditions = conditions;
}
}

View File

@ -0,0 +1,25 @@
package condition;
import main.Joueur;
public class ConditionMultipleOR extends ConditionMultiple{
/**
* Vérifie si au moins une des conditions est vérifiée
* @param joueur Le joueur sur lequel on vérifie les conditions.
* @return boolean
*/
@Override
public boolean isTrue(Joueur joueur)
{
for(Condition condition : this.getConditions())
{
// Si une seule des conditions est vraie alors on renvoie true
if(condition.isTrue(joueur)) return true;
}
return false;
}
}

View File

@ -0,0 +1,29 @@
package condition;
import static org.junit.jupiter.api.Assertions.*;
import org.junit.jupiter.api.Test;
import main.Joueur;
class ConditionMultipleTest {
@Test
public void conditionMultipleVideRenvoieTrue() {
Condition condition = new ConditionMultiple();
Joueur j = new Joueur();
assertTrue(condition.isTrue(j));
}
@Test
public void conditionMultipleORVideRenvoieFalse() {
Condition condition = new ConditionMultipleOR();
Joueur j = new Joueur();
assertFalse(condition.isTrue(j));
}
}