M431-ShadowHunterGame/src/main/GestionnaireEquipements.java

65 lines
1.6 KiB
Java
Raw Normal View History

2020-04-17 11:26:23 +02:00
package main;
import java.util.HashMap;
import java.util.List;
2020-04-17 11:26:23 +02:00
import java.util.Map;
2020-04-22 14:09:39 +02:00
import carte.Equipement;
import carte.EquipementStat;
import condition.Condition;
2020-04-17 11:26:23 +02:00
public class GestionnaireEquipements {
// String est le nom de l'equip, et Equip c'est l'objet, on suppose ici qu'il ne
// peut pas y avoir de doublon d'equipement
private Map<String, Equipement> equipements = new HashMap<>();
2020-04-17 11:26:23 +02:00
public int getNbEquipments() {
return equipements.size();
}
// precondition : verifier que le gestionnaire contient l'equipement avec
// containsEquipement
public Equipement getEquipement(String key) {
return equipements.get(key);
}
public boolean containsEquipement(String key) {
return equipements.containsKey(key);
}
public void addEquipement(String s, Equipement e) {
equipements.put(s, e);
2020-04-17 11:26:23 +02:00
}
// ex : si le joueur se fait voler un equipement, on l'enleve de la liste
// d'equipements
public Equipement removeEquipement(String key) {
return equipements.remove(key);
}
// methode qui renvoit une liste des effets des equipements du joueur qui
// s'activeront dans une certaine phase de la partie par rapport a la condition
// en parametre
public List<Effet> getEffets(Condition c) {
// TODO
return null;
}
// pour methode choisir de joueur
public Equipement[] getArrayEquipements() {
return (Equipement[]) equipements.values().toArray();
}
2020-04-22 14:09:39 +02:00
public int getDamageUpdate() {
int res = 0;
Equipement[] e = (Equipement[]) equipements.values().toArray();
for(int i = 0; i<equipements.values().toArray().length;i++) {
if(e[i] instanceof EquipementStat) {
//res+=(EquipementStat)e[i].get
}
}
return res;
}
2020-04-17 11:26:23 +02:00
}