Traduction dans les controller fin

This commit is contained in:
nawfe
2020-05-14 20:32:33 +02:00
parent cee8e76215
commit d32233e61e
42 changed files with 1040 additions and 37 deletions

9
src/effet/Action.java Normal file
View File

@ -0,0 +1,9 @@
package effet;
import main.Joueur;
public abstract class Action {
public abstract void affecte(Joueur j1, Joueur j2);
}

View File

@ -0,0 +1,53 @@
package effet;
import main.Joueur;
public class ActionAltererStatistiquesJoueur extends Action{
private String key;
private int valeur;
private boolean ajouter;
/**
* Constructeur ActionAltererStatistiquesJoueur
* @param key Le clé qui correspond à la valeur à modifier
* @param valeur La valeur
* @param ajouter Permet d'ajouter ou non "valeur" à la valeur précendente
* <br><br>
* Exemple :
* <br><br>
* ActionAltererStatistiquesJoueur("PV", -2, true)
* <br>
* Fait subir 2 PV's de dégâts au joueur
* <br><br>
* ActionAltererStatistiquesJoueur("PV", 2, false)
* <br>
* Change les PV's du joueur à 2
*
*/
public ActionAltererStatistiquesJoueur(String key, int valeur, boolean ajouter)
{
this.key = key;
this.valeur = valeur;
this.ajouter = ajouter;
}
/**
* Lance l'action de modification de statistiques
* @param j1 Le joueur qui modifie
* @param j2 Le joueur dont les statistiques sont modifiées
* @return void
*/
public void affecte(Joueur j1, Joueur j2)
{
if(ajouter)
{
j2.setStat(key, j2.getStat(key)+valeur);
}else {
j2.setStat(key, valeur);
}
}
}

View File

@ -0,0 +1,18 @@
package effet;
import main.Joueur;
public class ActionAttaquer extends Action {
/**
* Lance l'action d'attaquer
* @param j1 Le joueur qui attaque
* @param j2 Le joueur qui subit l'attaque
* @return void
*/
@Override
public void affecte(Joueur j1, Joueur j2) {
j1.attaquer(j2);
}
}

View File

@ -0,0 +1,33 @@
package effet;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import main.Joueur;
public class ActionMultiple extends Action{
private List<Action> actions;
public ActionMultiple(Action...actions)
{
super();
this.actions = new ArrayList<Action>(Arrays.asList(actions));
}
/**
* Lance l'action d'activer toutes les actions contenues dans ActionMultiple.
* @param j1 Le joueur qui lance l'action
* @param j2 Le joueur qui subit l'action
* @return void
*/
@Override
public void affecte(Joueur j1, Joueur j2) {
for(Action action : actions) {
action.affecte(j1, j2);
}
}
}

View File

@ -0,0 +1,22 @@
package effet;
import main.Joueur;
public class ActionPiocher extends Action{
public ActionPiocher() {
super();
}
/**
* Lance l'action de piocher une carte.
* @param j1 Le joueur qui lance l'action
* @param j2 Le joueur qui subit l'action
* @return void
*/
@Override
public void affecte(Joueur j1, Joueur j2) {
j2.piocher();
}
}

View File

@ -0,0 +1,26 @@
package effet;
import main.Equipement;
import main.Joueur;
public class ActionVoler extends Action{
/**
* Lance l'action de voler une carte équipement.
* @param j1 Le joueur qui vol
* @param j2 Le joueur volé
* @return void
*/
@Override
public void affecte(Joueur j1, Joueur j2) {
Equipement[] equipements = j2.getEquipements();
// J1 choisit quel équipement voler
Equipement equipement = j1.choisir(equipements);
j1.voler(j2,equipement);
}
}