Traduction dans les controller fin
This commit is contained in:
9
src/effet/Action.java
Normal file
9
src/effet/Action.java
Normal file
@ -0,0 +1,9 @@
|
||||
package effet;
|
||||
|
||||
import main.Joueur;
|
||||
|
||||
public abstract class Action {
|
||||
|
||||
public abstract void affecte(Joueur j1, Joueur j2);
|
||||
|
||||
}
|
53
src/effet/ActionAltererStatistiquesJoueur.java
Normal file
53
src/effet/ActionAltererStatistiquesJoueur.java
Normal 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);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
18
src/effet/ActionAttaquer.java
Normal file
18
src/effet/ActionAttaquer.java
Normal 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);
|
||||
}
|
||||
|
||||
}
|
33
src/effet/ActionMultiple.java
Normal file
33
src/effet/ActionMultiple.java
Normal 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);
|
||||
}
|
||||
}
|
||||
}
|
22
src/effet/ActionPiocher.java
Normal file
22
src/effet/ActionPiocher.java
Normal 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();
|
||||
}
|
||||
|
||||
}
|
26
src/effet/ActionVoler.java
Normal file
26
src/effet/ActionVoler.java
Normal 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);
|
||||
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user