Portfolio Code | Clement Colmerauer
Repositories
Site
Kata refactoring
Code
Commits
Branches
Tags
Search
Tree:
4e7a9b1
Branches
Tags
master
Kata refactoring
src
main
java
re
forestier
edu
rpg
UpdatePlayer.java
Revert "integration entier naturel et ajout surcharge opérateur (ne marche pas)"
Clement COLMERAUER
commited
4e7a9b1
at 2024-10-21 10:31:52
UpdatePlayer.java
Blame
History
Raw
package re.forestier.edu.rpg; import java.util.HashMap; import java.util.Random; public class UpdatePlayer { public final static String[] objectList = {"Lookout Ring : Prevents surprise attacks","Scroll of Stupidity : INT-2 when applied to an enemy", "Draupnir : Increases XP gained by 100%", "Magic Charm : Magic +10 for 5 rounds", "Rune Staff of Curse : May burn your ennemies... Or yourself. Who knows?", "Combat Edge : Well, that's an edge", "Holy Elixir : Recover your HP" }; public static HashMap<String, HashMap<Integer, HashMap<String, Integer>>> abilitiesPerTypeAndLevel() { HashMap<String, HashMap<Integer, HashMap<String, Integer>>> abilitiesPerTypeAndLevel = new HashMap<>(); HashMap<Integer, HashMap<String, Integer>> adventurerMap = new HashMap<>(); HashMap<String, Integer> adventurerLevel1 = new HashMap<>(); adventurerLevel1.put("INT", 1); adventurerLevel1.put("DEF", 1); adventurerLevel1.put("ATK", 3); adventurerLevel1.put("CHA", 2); adventurerMap.put(1, adventurerLevel1); HashMap<String, Integer> adventurerLevel2 = new HashMap<>(); adventurerLevel1.put("INT", 2); adventurerLevel1.put("CHA", 3); adventurerMap.put(2, adventurerLevel2); HashMap<String, Integer> adventurerLevel3 = new HashMap<>(); adventurerLevel3.put("ATK", 5); adventurerLevel3.put("ALC", 1); adventurerMap.put(3, adventurerLevel3); HashMap<String, Integer> adventurerLevel4 = new HashMap<>(); adventurerLevel4.put("DEF", 3); adventurerMap.put(4, adventurerLevel4); HashMap<String, Integer> adventurerLevel5 = new HashMap<>(); adventurerLevel5.put("VIS", 1); adventurerLevel5.put("DEF", 4); adventurerMap.put(5, adventurerLevel5); abilitiesPerTypeAndLevel.put("ADVENTURER", adventurerMap); HashMap<Integer, HashMap<String, Integer>> archerMap = new HashMap<>(); HashMap<String, Integer> archerLevel1 = new HashMap<>(); archerLevel1.put("INT", 1); archerLevel1.put("ATK", 3); archerLevel1.put("CHA", 1); archerLevel1.put("VIS", 3); archerMap.put(1, archerLevel1); HashMap<String, Integer> archerLevel2 = new HashMap<>(); archerLevel2.put("DEF", 1); archerLevel2.put("CHA", 2); archerMap.put(2, archerLevel2); HashMap<String, Integer> archerLevel3 = new HashMap<>(); archerLevel3.put("ATK", 3); archerMap.put(3, archerLevel3); HashMap<String, Integer> archerLevel4 = new HashMap<>(); archerLevel4.put("DEF", 2); archerMap.put(4, archerLevel4); HashMap<String, Integer> archerLevel5 = new HashMap<>(); archerLevel5.put("ATK", 4); archerMap.put(5, archerLevel5); abilitiesPerTypeAndLevel.put("ARCHER", archerMap); HashMap<Integer, HashMap<String, Integer>> dwarf = new HashMap<>(); HashMap<String, Integer> dwarfLevel1 = new HashMap<>(); dwarfLevel1.put("ALC", 4); dwarfLevel1.put("INT", 1); dwarfLevel1.put("ATK", 3); dwarf.put(1, dwarfLevel1); HashMap<String, Integer> dwarfLevel2 = new HashMap<>(); dwarfLevel2.put("DEF", 1); dwarfLevel2.put("ALC", 5); dwarf.put(2, dwarfLevel2); HashMap<String, Integer> dwarfLevel3 = new HashMap<>(); dwarfLevel3.put("ATK", 4); dwarf.put(3, dwarfLevel3); HashMap<String, Integer> dwarfLevel4 = new HashMap<>(); dwarfLevel4.put("DEF", 2); dwarf.put(4, dwarfLevel4); HashMap<String, Integer> dwarfLevel5 = new HashMap<>(); dwarfLevel5.put("CHA", 1); dwarf.put(5, dwarfLevel5); abilitiesPerTypeAndLevel.put("DWARF", dwarf); return abilitiesPerTypeAndLevel; } // majFinDeTour met à jour les points de vie public static void majFinDeTour(Player player) { if(player.getCurrentHealthPoints() == 0) { System.out.println("Le joueur est KO !"); return; } if(player.getCurrentHealthPoints() < player.getHealthPoints()/2) { if(!player.getAvatarClass().equals("ADVENTURER")) { if(player.getAvatarClass().equals("DWARF")) { if(player.inventory.contains("Holy Elixir")) { player.setCurrentHealthPoints(player.getCurrentHealthPoints()+1); } player.setCurrentHealthPoints(player.getCurrentHealthPoints()+1); } if(player.getAvatarClass().equals("ARCHER")) { player.setCurrentHealthPoints(player.getCurrentHealthPoints()+1); if(player.inventory.contains("Magic Bow")) { player.setCurrentHealthPoints(player.getCurrentHealthPoints()+player.getCurrentHealthPoints()/8-1); } } } else { player.setCurrentHealthPoints(player.getCurrentHealthPoints()+2); if(player.getLevel() < 3) { player.setCurrentHealthPoints(player.getCurrentHealthPoints()-1); } } } else { if(player.getCurrentHealthPoints() >= player.getHealthPoints()) { player.setCurrentHealthPoints(player.getHealthPoints()); return; } } } }