Merge pull request 'EquipHero' (#10) from EquipHero into Dev
Reviewed-on: #10
This commit is contained in:
commit
748ab4ebb0
BIN
out/production/Java_Petit_projet/events/StartEvent.class
Normal file
BIN
out/production/Java_Petit_projet/events/StartEvent.class
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
out/production/Java_Petit_projet/items/Equipment.class
Normal file
BIN
out/production/Java_Petit_projet/items/Equipment.class
Normal file
Binary file not shown.
Binary file not shown.
BIN
out/production/Java_Petit_projet/items/chests/Chest.class
Normal file
BIN
out/production/Java_Petit_projet/items/chests/Chest.class
Normal file
Binary file not shown.
BIN
out/production/Java_Petit_projet/items/chests/LeatherArmor.class
Normal file
BIN
out/production/Java_Petit_projet/items/chests/LeatherArmor.class
Normal file
Binary file not shown.
BIN
out/production/Java_Petit_projet/items/chests/MailChest.class
Normal file
BIN
out/production/Java_Petit_projet/items/chests/MailChest.class
Normal file
Binary file not shown.
BIN
out/production/Java_Petit_projet/items/chests/PlateArmor.class
Normal file
BIN
out/production/Java_Petit_projet/items/chests/PlateArmor.class
Normal file
Binary file not shown.
BIN
out/production/Java_Petit_projet/items/chests/RobeMage.class
Normal file
BIN
out/production/Java_Petit_projet/items/chests/RobeMage.class
Normal file
Binary file not shown.
BIN
out/production/Java_Petit_projet/items/helmets/Hat.class
Normal file
BIN
out/production/Java_Petit_projet/items/helmets/Hat.class
Normal file
Binary file not shown.
BIN
out/production/Java_Petit_projet/items/helmets/Helm.class
Normal file
BIN
out/production/Java_Petit_projet/items/helmets/Helm.class
Normal file
Binary file not shown.
Binary file not shown.
BIN
out/production/Java_Petit_projet/items/helmets/NoHelmet.class
Normal file
BIN
out/production/Java_Petit_projet/items/helmets/NoHelmet.class
Normal file
Binary file not shown.
BIN
out/production/Java_Petit_projet/items/weapons/Fist.class
Normal file
BIN
out/production/Java_Petit_projet/items/weapons/Fist.class
Normal file
Binary file not shown.
BIN
out/production/Java_Petit_projet/items/weapons/Weapon.class
Normal file
BIN
out/production/Java_Petit_projet/items/weapons/Weapon.class
Normal file
Binary file not shown.
BIN
out/production/Java_Petit_projet/items/weapons/axes/Axe.class
Normal file
BIN
out/production/Java_Petit_projet/items/weapons/axes/Axe.class
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
4
src/events/StartEvent.java
Normal file
4
src/events/StartEvent.java
Normal file
@ -0,0 +1,4 @@
|
||||
package events;
|
||||
|
||||
public class StartEvent extends Event{
|
||||
}
|
||||
@ -2,11 +2,19 @@ package heroes;
|
||||
|
||||
import heroes.jobs.Job;
|
||||
import heroes.races.Race;
|
||||
import items.helmets.Helmet;
|
||||
import items.shields.Shield;
|
||||
import items.chests.*;
|
||||
import items.weapons.Weapon;
|
||||
|
||||
public class Hero {
|
||||
protected String name;
|
||||
protected Race race;
|
||||
protected Job job;
|
||||
protected Helmet helmet;
|
||||
protected Chest chest;
|
||||
protected Weapon weapon;
|
||||
protected Shield shield;
|
||||
protected int healthBaseLevel;
|
||||
protected int strengthBaseLevel;
|
||||
protected int dexterityBaseLevel;
|
||||
@ -68,6 +76,38 @@ public class Hero {
|
||||
return dexterityBaseLevel;
|
||||
}
|
||||
|
||||
public Helmet getHelmet() {
|
||||
return helmet;
|
||||
}
|
||||
|
||||
public void setHelmet(Helmet helmet) {
|
||||
this.helmet = helmet;
|
||||
}
|
||||
|
||||
public Chest getChest() {
|
||||
return chest;
|
||||
}
|
||||
|
||||
public void setChest(Chest chest) {
|
||||
this.chest = chest;
|
||||
}
|
||||
|
||||
public Weapon getWeapon() {
|
||||
return weapon;
|
||||
}
|
||||
|
||||
public void setWeapon(Weapon weapon) {
|
||||
this.weapon = weapon;
|
||||
}
|
||||
|
||||
public Shield getShield() {
|
||||
return shield;
|
||||
}
|
||||
|
||||
public void setShield(Shield shield) {
|
||||
this.shield = shield;
|
||||
}
|
||||
|
||||
public void setDexterityBaseLevel(int dexterityBaseLevel) {
|
||||
this.dexterityBaseLevel = dexterityBaseLevel;
|
||||
}
|
||||
|
||||
@ -5,14 +5,19 @@ import heroes.Hero;
|
||||
public class Dwarf extends Race{
|
||||
public Dwarf() {
|
||||
this.setRaceName("Nain");
|
||||
this.health = 10;
|
||||
this.strength = 10;
|
||||
this.defense = 10;
|
||||
this.dexterity = -15;
|
||||
this.intelligence = -10;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void adjustStats(Hero hero) {
|
||||
hero.setHealth(hero.getHealthBaseLevel() + 10);
|
||||
hero.setStrength(hero.getStrengthBaseLevel() + 10);
|
||||
hero.setDefense(hero.getDefenseBaseLevel() + 10);
|
||||
hero.setDexterity(hero.getDexterityBaseLevel() - 15);
|
||||
hero.setIntelligence(hero.getIntelligenceBaseLevel() - 10);
|
||||
hero.setHealth(hero.getHealth() + health);
|
||||
hero.setStrength(hero.getStrength() + strength);
|
||||
hero.setDefense(hero.getDefense() + defense);
|
||||
hero.setDexterity(hero.getDexterity() + dexterity);
|
||||
hero.setIntelligence(hero.getIntelligence() + intelligence);
|
||||
}
|
||||
}
|
||||
|
||||
@ -5,14 +5,19 @@ import heroes.Hero;
|
||||
public class Elf extends Race{
|
||||
public Elf() {
|
||||
this.setRaceName("Elfe");
|
||||
this.health = -5;
|
||||
this.strength = -5;
|
||||
this.defense = - 5;
|
||||
this.dexterity = 10;
|
||||
this.intelligence = 10;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void adjustStats(Hero hero) {
|
||||
hero.setHealth(hero.getHealthBaseLevel() - 5);
|
||||
hero.setStrength(hero.getStrengthBaseLevel() - 5);
|
||||
hero.setDefense(hero.getDefenseBaseLevel() - 5);
|
||||
hero.setDexterity(hero.getDexterityBaseLevel() + 10);
|
||||
hero.setIntelligence(hero.getIntelligenceBaseLevel() + 10);
|
||||
hero.setHealth(hero.getHealth() + health);
|
||||
hero.setStrength(hero.getStrength() + strength);
|
||||
hero.setDefense(hero.getDefense() + defense);
|
||||
hero.setDexterity(hero.getDexterity() + dexterity);
|
||||
hero.setIntelligence(hero.getIntelligence() + intelligence);
|
||||
}
|
||||
}
|
||||
|
||||
@ -5,14 +5,19 @@ import heroes.Hero;
|
||||
public class Human extends Race{
|
||||
public Human() {
|
||||
this.setRaceName("Human");
|
||||
this.health = 5;
|
||||
this.strength = 5;
|
||||
this.defense = 5;
|
||||
this.dexterity = 5;
|
||||
this.intelligence = 5;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void adjustStats(Hero hero) {
|
||||
hero.setHealth(hero.getHealthBaseLevel() + 5);
|
||||
hero.setStrength(hero.getStrengthBaseLevel() + 5);
|
||||
hero.setDefense(hero.getDefenseBaseLevel() + 5);
|
||||
hero.setDexterity(hero.getDexterityBaseLevel() + 5);
|
||||
hero.setIntelligence(hero.getIntelligenceBaseLevel() + 5);
|
||||
hero.setHealth(hero.getHealth() + health);
|
||||
hero.setStrength(hero.getStrength() + strength);
|
||||
hero.setDefense(hero.getDefense() + defense);
|
||||
hero.setDexterity(hero.getDexterity() + dexterity);
|
||||
hero.setIntelligence(hero.getIntelligence() + intelligence);
|
||||
}
|
||||
}
|
||||
|
||||
@ -3,16 +3,22 @@ package heroes.races;
|
||||
import heroes.Hero;
|
||||
|
||||
public class Ork extends Race {
|
||||
|
||||
public Ork() {
|
||||
this.setRaceName("Orc");
|
||||
this.health = 10;
|
||||
this.strength = 10;
|
||||
this.defense = 10;
|
||||
this.dexterity = -5;
|
||||
this.intelligence = -10;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void adjustStats(Hero hero) {
|
||||
hero.setHealth(hero.getHealthBaseLevel() + 10);
|
||||
hero.setStrength(hero.getStrengthBaseLevel() + 10);
|
||||
hero.setDefense(hero.getDefenseBaseLevel() + 10);
|
||||
hero.setDexterity(hero.getDexterityBaseLevel() - 5);
|
||||
hero.setIntelligence(hero.getIntelligenceBaseLevel() - 10);
|
||||
hero.setHealth(hero.getHealth() + health);
|
||||
hero.setStrength(hero.getStrength() + strength);
|
||||
hero.setDefense(hero.getDefense() + defense);
|
||||
hero.setDexterity(hero.getDexterity() + dexterity);
|
||||
hero.setIntelligence(hero.getIntelligence() + intelligence);
|
||||
}
|
||||
}
|
||||
|
||||
@ -4,6 +4,11 @@ import heroes.Hero;
|
||||
|
||||
public abstract class Race {
|
||||
public String raceName;
|
||||
public int health;
|
||||
public int strength;
|
||||
public int defense;
|
||||
public int dexterity;
|
||||
public int intelligence;
|
||||
|
||||
public String getRaceName(){
|
||||
return raceName;
|
||||
|
||||
8
src/items/Equipment.java
Normal file
8
src/items/Equipment.java
Normal file
@ -0,0 +1,8 @@
|
||||
package items;
|
||||
|
||||
import heroes.Hero;
|
||||
|
||||
public abstract class Equipment {
|
||||
public String name;
|
||||
public abstract void equip(Hero hero);
|
||||
}
|
||||
@ -1,6 +0,0 @@
|
||||
package items.armors;
|
||||
|
||||
import items.Item;
|
||||
|
||||
abstract class Armor extends Item {
|
||||
}
|
||||
6
src/items/chests/Chest.java
Normal file
6
src/items/chests/Chest.java
Normal file
@ -0,0 +1,6 @@
|
||||
package items.chests;
|
||||
|
||||
import items.Equipment;
|
||||
|
||||
public abstract class Chest extends Equipment {
|
||||
}
|
||||
15
src/items/chests/LeatherArmor.java
Normal file
15
src/items/chests/LeatherArmor.java
Normal file
@ -0,0 +1,15 @@
|
||||
package items.chests;
|
||||
|
||||
import heroes.Hero;
|
||||
|
||||
public class LeatherArmor extends Chest {
|
||||
public LeatherArmor() {
|
||||
this.name = "Tunique de Cuir";
|
||||
}
|
||||
|
||||
public void equip(Hero hero) {
|
||||
hero.setChest(this);
|
||||
hero.setDefense(hero.getDefense() + 10);
|
||||
hero.setDexterity(hero.getDexterity() + 5);
|
||||
}
|
||||
}
|
||||
15
src/items/chests/MailChest.java
Normal file
15
src/items/chests/MailChest.java
Normal file
@ -0,0 +1,15 @@
|
||||
package items.chests;
|
||||
|
||||
import heroes.Hero;
|
||||
|
||||
public class MailChest extends Chest {
|
||||
public MailChest() {
|
||||
this.name = "Cotte de Mailles";
|
||||
}
|
||||
|
||||
public void equip(Hero hero) {
|
||||
hero.setChest(this);
|
||||
hero.setDefense(hero.getDefense() + 15);
|
||||
hero.setDexterity(hero.getDexterity() - 5);
|
||||
}
|
||||
}
|
||||
16
src/items/chests/PlateArmor.java
Normal file
16
src/items/chests/PlateArmor.java
Normal file
@ -0,0 +1,16 @@
|
||||
package items.chests;
|
||||
|
||||
import heroes.Hero;
|
||||
|
||||
public class PlateArmor extends Chest {
|
||||
public PlateArmor() {
|
||||
this.name = "Armure de plaque";
|
||||
}
|
||||
|
||||
@Override
|
||||
public void equip(Hero hero) {
|
||||
hero.setChest(this);
|
||||
hero.setDefense(hero.getDefense() + 20);
|
||||
hero.setDexterity(hero.getDexterity() - 10);
|
||||
}
|
||||
}
|
||||
16
src/items/chests/RobeMage.java
Normal file
16
src/items/chests/RobeMage.java
Normal file
@ -0,0 +1,16 @@
|
||||
package items.chests;
|
||||
|
||||
import heroes.Hero;
|
||||
|
||||
public class RobeMage extends Chest {
|
||||
public RobeMage() {
|
||||
this.name = "Robe de Mage";
|
||||
}
|
||||
|
||||
public void equip(Hero hero) {
|
||||
hero.setChest(this);
|
||||
hero.setDefense(hero.getDefense() - 5);
|
||||
hero.setDexterity(hero.getDexterity() -5);
|
||||
hero.setIntelligence(hero.getIntelligence() + 15);
|
||||
}
|
||||
}
|
||||
17
src/items/helmets/Hat.java
Normal file
17
src/items/helmets/Hat.java
Normal file
@ -0,0 +1,17 @@
|
||||
package items.helmets;
|
||||
|
||||
import heroes.Hero;
|
||||
|
||||
public class Hat extends Helmet {
|
||||
public Hat() {
|
||||
this.name = "Hat";
|
||||
}
|
||||
|
||||
@Override
|
||||
public void equip(Hero hero) {
|
||||
hero.setHelmet(this);
|
||||
hero.setDefense(hero.getDefense() + 5);
|
||||
hero.setIntelligence(hero.getIntelligence() + 5);
|
||||
hero.setDexterity(hero.getDexterity() - 5);
|
||||
}
|
||||
}
|
||||
16
src/items/helmets/Helm.java
Normal file
16
src/items/helmets/Helm.java
Normal file
@ -0,0 +1,16 @@
|
||||
package items.helmets;
|
||||
|
||||
import heroes.Hero;
|
||||
|
||||
public class Helm extends Helmet {
|
||||
public Helm() {
|
||||
this.name = "Heaume";
|
||||
}
|
||||
|
||||
public void equip(Hero hero) {
|
||||
hero.setHelmet(this);
|
||||
hero.setDefense(hero.getDefense() + 15);
|
||||
hero.setDexterity(hero.getDexterity() - 5);
|
||||
hero.setIntelligence(hero.getIntelligence() - 5);
|
||||
}
|
||||
}
|
||||
@ -1,6 +1,6 @@
|
||||
package items.helmets;
|
||||
|
||||
import items.Item;
|
||||
import items.Equipment;
|
||||
|
||||
public abstract class Helmet extends Item {
|
||||
public abstract class Helmet extends Equipment {
|
||||
}
|
||||
|
||||
13
src/items/helmets/NoHelmet.java
Normal file
13
src/items/helmets/NoHelmet.java
Normal file
@ -0,0 +1,13 @@
|
||||
package items.helmets;
|
||||
|
||||
import heroes.Hero;
|
||||
|
||||
public class NoHelmet extends Helmet {
|
||||
public NoHelmet() {
|
||||
this.name = "Rien";
|
||||
}
|
||||
|
||||
public void equip(Hero hero) {
|
||||
hero.setHelmet(this);
|
||||
}
|
||||
}
|
||||
15
src/items/weapons/Fist.java
Normal file
15
src/items/weapons/Fist.java
Normal file
@ -0,0 +1,15 @@
|
||||
package items.weapons;
|
||||
|
||||
import heroes.Hero;
|
||||
|
||||
public class Fist extends Weapon{
|
||||
public Fist() {
|
||||
this.name = "Poings d'acier";
|
||||
}
|
||||
|
||||
public void equip(Hero hero) {
|
||||
hero.setWeapon(this);
|
||||
hero.setStrength(hero.getStrength() + 5);
|
||||
hero.setDexterity(hero.getDexterity() + 10);
|
||||
}
|
||||
}
|
||||
7
src/items/weapons/Weapon.java
Normal file
7
src/items/weapons/Weapon.java
Normal file
@ -0,0 +1,7 @@
|
||||
package items.weapons;
|
||||
|
||||
import items.Equipment;
|
||||
|
||||
public abstract class Weapon extends Equipment {
|
||||
|
||||
}
|
||||
6
src/items/weapons/axes/Axe.java
Normal file
6
src/items/weapons/axes/Axe.java
Normal file
@ -0,0 +1,6 @@
|
||||
package items.weapons.axes;
|
||||
|
||||
import items.weapons.Weapon;
|
||||
|
||||
public abstract class Axe extends Weapon {
|
||||
}
|
||||
16
src/items/weapons/axes/TrainingAxe.java
Normal file
16
src/items/weapons/axes/TrainingAxe.java
Normal file
@ -0,0 +1,16 @@
|
||||
package items.weapons.axes;
|
||||
|
||||
import heroes.Hero;
|
||||
|
||||
public class TrainingAxe extends Axe{
|
||||
public TrainingAxe() {
|
||||
this.name = "Hache d'apprentissage";
|
||||
}
|
||||
|
||||
public void equip(Hero hero) {
|
||||
hero.setWeapon(this);
|
||||
hero.setStrength(hero.getStrength() + 10);
|
||||
hero.setDexterity(hero.getDexterity() -5);
|
||||
hero.setIntelligence(hero.getIntelligence() -5);
|
||||
}
|
||||
}
|
||||
14
src/items/weapons/staffs/ApprenticeStaff.java
Normal file
14
src/items/weapons/staffs/ApprenticeStaff.java
Normal file
@ -0,0 +1,14 @@
|
||||
package items.weapons.staffs;
|
||||
|
||||
import heroes.Hero;
|
||||
|
||||
public class ApprenticeStaff extends Staff {
|
||||
public ApprenticeStaff() {
|
||||
this.name = "Bâton d'apprenti";
|
||||
}
|
||||
|
||||
public void equip(Hero hero) {
|
||||
hero.setWeapon(this);
|
||||
hero.setIntelligence(hero.getIntelligence() + 5);
|
||||
}
|
||||
}
|
||||
6
src/items/weapons/staffs/Staff.java
Normal file
6
src/items/weapons/staffs/Staff.java
Normal file
@ -0,0 +1,6 @@
|
||||
package items.weapons.staffs;
|
||||
|
||||
import items.weapons.Weapon;
|
||||
|
||||
public abstract class Staff extends Weapon {
|
||||
}
|
||||
15
src/items/weapons/swords/Dagger.java
Normal file
15
src/items/weapons/swords/Dagger.java
Normal file
@ -0,0 +1,15 @@
|
||||
package items.weapons.swords;
|
||||
|
||||
import heroes.Hero;
|
||||
|
||||
public class Dagger extends Sword{
|
||||
public Dagger() {
|
||||
this.name = "Dague";
|
||||
}
|
||||
|
||||
public void equip(Hero hero) {
|
||||
hero.setWeapon(this);
|
||||
hero.setStrength(hero.getStrength() + 2);
|
||||
hero.setDexterity(hero.getDexterity() + 8);
|
||||
}
|
||||
}
|
||||
6
src/items/weapons/swords/Sword.java
Normal file
6
src/items/weapons/swords/Sword.java
Normal file
@ -0,0 +1,6 @@
|
||||
package items.weapons.swords;
|
||||
|
||||
import items.weapons.Weapon;
|
||||
|
||||
public abstract class Sword extends Weapon {
|
||||
}
|
||||
15
src/items/weapons/swords/TrainingSword.java
Normal file
15
src/items/weapons/swords/TrainingSword.java
Normal file
@ -0,0 +1,15 @@
|
||||
package items.weapons.swords;
|
||||
|
||||
import heroes.Hero;
|
||||
|
||||
public class TrainingSword extends Sword{
|
||||
public TrainingSword() {
|
||||
this.name = "Épée d'Entraînement";
|
||||
}
|
||||
|
||||
public void equip(Hero hero) {
|
||||
hero.setWeapon(this);
|
||||
hero.setStrength(hero.getStrength() + 5);
|
||||
hero.setDexterity(hero.getDexterity() + 5);
|
||||
}
|
||||
}
|
||||
@ -1,64 +1,59 @@
|
||||
package systems;
|
||||
|
||||
import events.StartEvent;
|
||||
import heroes.Hero;
|
||||
import heroes.jobs.*;
|
||||
import heroes.races.*;
|
||||
import items.chests.*;
|
||||
import items.helmets.*;
|
||||
import items.weapons.axes.TrainingAxe;
|
||||
import items.weapons.staffs.ApprenticeStaff;
|
||||
import items.weapons.swords.*;
|
||||
|
||||
import java.util.Scanner;
|
||||
|
||||
public class Game {
|
||||
|
||||
public Scanner scanner = new Scanner(System.in);
|
||||
private final Scanner scanner = new Scanner(System.in);
|
||||
|
||||
public Game() {
|
||||
System.out.println("Bienvenue dans ce projet fou ! Veux-tu créer ton personnage ?");
|
||||
System.out.println("1.Oui\n2.Non");
|
||||
String startGame = scanner.next();
|
||||
switch (startGame.toLowerCase()) {
|
||||
case "oui", "yes", "y", "o" -> createCharacter();
|
||||
case "non", "no", "n" -> {
|
||||
if (startGame.equalsIgnoreCase("oui") || startGame.equalsIgnoreCase("yes") || startGame.equalsIgnoreCase("y") || startGame.equalsIgnoreCase("o")) {
|
||||
createCharacter();
|
||||
} else {
|
||||
System.out.println("Très bien, à bientôt !");
|
||||
System.exit(0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void createCharacter() {
|
||||
private void createCharacter() {
|
||||
System.out.println("Quel est le nom de ton personnage ?");
|
||||
String name = scanner.next();
|
||||
System.out.println("Ton personnage s'appelle " + name + " ! Veux-tu le modifier ? \n1.Oui\n2.Non");
|
||||
String choice = scanner.next();
|
||||
switch (choice.toLowerCase()) {
|
||||
case "oui", "yes", "y", "o" -> {
|
||||
if (choice.equalsIgnoreCase("oui") || choice.equalsIgnoreCase("yes") || choice.equalsIgnoreCase("y") || choice.equalsIgnoreCase("o")) {
|
||||
createCharacter();
|
||||
}
|
||||
case "non", "no", "n" -> {
|
||||
} else {
|
||||
System.out.println("Très bien, " + name + ".");
|
||||
Hero hero = new Hero(name);
|
||||
hero.printStats();
|
||||
selectJob(hero);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void selectJob(Hero hero) {
|
||||
private void selectJob(Hero hero) {
|
||||
System.out.println("Quelle classe veux-tu choisir ? Un guerrier ? (G), un mage ? (M), un voleur ? (V)");
|
||||
String job = scanner.next();
|
||||
switch (job.toLowerCase()) {
|
||||
case "guerrier", "g" -> {
|
||||
hero.setJob(new Warrior());
|
||||
System.out.println("Tu as choisi la classe de guerrier !");
|
||||
hero.printStats();
|
||||
}
|
||||
case "mage", "m" -> {
|
||||
hero.setJob(new Mage());
|
||||
System.out.println("Tu as choisi la classe de mage !");
|
||||
hero.printStats();
|
||||
}
|
||||
case "voleur", "v" -> {
|
||||
hero.setJob(new Rogue());
|
||||
System.out.println("Tu as choisi la classe de voleur !");
|
||||
hero.printStats();
|
||||
case "guerrier", "g" -> hero.setJob(new Warrior());
|
||||
case "mage", "m" -> hero.setJob(new Mage());
|
||||
case "voleur", "v" -> hero.setJob(new Rogue());
|
||||
default -> {
|
||||
System.out.println("Je n'ai pas compris ta réponse.");
|
||||
selectJob(hero);
|
||||
return;
|
||||
}
|
||||
}
|
||||
System.out.println("Voici les caractéristiques de ton personnage :");
|
||||
@ -66,9 +61,10 @@ public class Game {
|
||||
System.out.println(hero.getJob().getJobName());
|
||||
System.out.println("Veux-tu continuer ?\n1.Oui\n2.Non");
|
||||
String choice = scanner.next();
|
||||
switch (choice.toLowerCase()) {
|
||||
case "oui", "yes", "y", "o" -> selectRace(hero);
|
||||
case "non", "no", "n" -> selectJob(hero);
|
||||
if (choice.equalsIgnoreCase("oui") || choice.equalsIgnoreCase("yes") || choice.equalsIgnoreCase("y") || choice.equalsIgnoreCase("o")) {
|
||||
selectRace(hero);
|
||||
} else {
|
||||
selectJob(hero);
|
||||
}
|
||||
}
|
||||
|
||||
@ -76,21 +72,14 @@ public class Game {
|
||||
System.out.println("Veux-tu jouer un nain ? (N), un orc ? (O), un elfe (E) ou un humain (H) ?");
|
||||
String choice = scanner.next();
|
||||
switch (choice.toLowerCase()) {
|
||||
case "nain", "n" -> {
|
||||
hero.setRace(new Dwarf());
|
||||
System.out.println("Tu as choisi d'être un nain !");
|
||||
}
|
||||
case "orc", "o" -> {
|
||||
hero.setRace(new Ork());
|
||||
System.out.println("Tu as choisi d'être un orc !");
|
||||
}
|
||||
case "elfe", "e" -> {
|
||||
hero.setRace(new Elf());
|
||||
System.out.println("Tu as choisi d'être un elfe !");
|
||||
}
|
||||
case "humain", "h" -> {
|
||||
hero.setRace(new Human());
|
||||
System.out.println("Tu as choisi d'être un humain !");
|
||||
case "nain", "n" -> hero.setRace(new Dwarf());
|
||||
case "orc", "o" -> hero.setRace(new Ork());
|
||||
case "elfe", "e" -> hero.setRace(new Elf());
|
||||
case "humain", "h" -> hero.setRace(new Human());
|
||||
default -> {
|
||||
System.out.println("Je n'ai pas compris ta réponse.");
|
||||
selectRace(hero);
|
||||
return;
|
||||
}
|
||||
}
|
||||
System.out.println("Voici les caractéristiques de ton personnage :");
|
||||
@ -98,12 +87,127 @@ public class Game {
|
||||
System.out.println(hero.getRace().getRaceName() + "\n" + hero.getJob().getJobName());
|
||||
System.out.println("Veux-tu continuer ?\n1.Oui\n2.Non");
|
||||
String choice2 = scanner.next();
|
||||
switch (choice2.toLowerCase()) {
|
||||
case "oui", "yes", "y", "o" -> {
|
||||
System.out.println("Très bien, tu es prêt à commencer l'aventure !");
|
||||
System.exit(0);
|
||||
if (choice2.equalsIgnoreCase("oui") || choice2.equalsIgnoreCase("yes") || choice2.equalsIgnoreCase("y") || choice2.equalsIgnoreCase("o")) {
|
||||
System.out.println("Très bien, Et maintenant, ton équipement.");
|
||||
equipHelmet(hero);
|
||||
} else {
|
||||
selectRace(hero);
|
||||
}
|
||||
case "non", "no", "n" -> selectRace(hero);
|
||||
}
|
||||
|
||||
private void equipHelmet(Hero hero) {
|
||||
System.out.println("Veux-tu équiper un casque ?\n1.Oui\n2.Non");
|
||||
String choice = scanner.next();
|
||||
if (choice.equalsIgnoreCase("oui") || choice.equalsIgnoreCase("yes") || choice.equalsIgnoreCase("y") || choice.equalsIgnoreCase("o")) {
|
||||
System.out.println("D'accord, lequel ? Un Heaume ? (H), un Chapeau ? (C) ?, ou rien ?");
|
||||
String helmet = scanner.next();
|
||||
switch (helmet.toLowerCase()) {
|
||||
case "heaume", "h" -> hero.setHelmet(new Helm());
|
||||
case "chapeau", "c" -> hero.setHelmet(new Hat());
|
||||
case "none", "rien", "r", "n" -> System.out.println("Très bien, tu n'as pas équipé de casque.");
|
||||
default -> {
|
||||
System.out.println("Je n'ai pas compris ta réponse.");
|
||||
equipHelmet(hero);
|
||||
return;
|
||||
}
|
||||
}
|
||||
if (hero.getHelmet() != null) hero.getHelmet().equip(hero);
|
||||
} else {
|
||||
System.out.println("Très bien, tu n'as pas équipé de casque.");
|
||||
}
|
||||
hero.printStats();
|
||||
System.out.println(hero.getRace().getRaceName() + "\n" + hero.getJob().getJobName());
|
||||
System.out.println("Veux-tu continuer ?\n1.Oui\n2.Non");
|
||||
String choice2 = scanner.next();
|
||||
if (choice2.equalsIgnoreCase("oui") || choice2.equalsIgnoreCase("yes") || choice2.equalsIgnoreCase("y") || choice2.equalsIgnoreCase("o")) {
|
||||
equipArmor(hero);
|
||||
} else {
|
||||
equipHelmet(hero);
|
||||
}
|
||||
}
|
||||
|
||||
private void equipArmor(Hero hero) {
|
||||
System.out.println("Veux-tu t'équiper d'une armure ?\n1.Oui\n2.Non");
|
||||
String choice = scanner.next();
|
||||
if (choice.equalsIgnoreCase("oui") || choice.equalsIgnoreCase("yes") || choice.equalsIgnoreCase("y") || choice.equalsIgnoreCase("o")) {
|
||||
System.out.println("D'accord, lequel ? Une armure en plaque (P) ? Une cotte de mail (M) ? Une tunique en cuir (T) ? Une robe de mage (R) ?");
|
||||
String armor = scanner.next();
|
||||
switch (armor.toLowerCase()) {
|
||||
case "plaque", "plate", "p", "armor", "armure" -> hero.setChest(new PlateArmor());
|
||||
case "tunique", "tunic", "t", "leather", "cuir" -> hero.setChest(new LeatherArmor());
|
||||
case "mail", "mailles", "m", "cotte", "chest" -> hero.setChest(new MailChest());
|
||||
case "robe", "mage", "r" -> hero.setChest(new RobeMage());
|
||||
case "none", "rien" -> {
|
||||
System.out.println("Tu veux VRAIMENT y aller à poil ?");
|
||||
String validate = scanner.next();
|
||||
if (validate.equalsIgnoreCase("oui") || validate.equalsIgnoreCase("yes") || validate.equalsIgnoreCase("y") || validate.equalsIgnoreCase("o")) {
|
||||
System.out.println("Ah bah d'accord le nudiste ...");
|
||||
} else {
|
||||
equipArmor(hero);
|
||||
}
|
||||
return;
|
||||
}
|
||||
default -> {
|
||||
System.out.println("Je n'ai pas compris ta réponse.");
|
||||
equipArmor(hero);
|
||||
return;
|
||||
}
|
||||
}
|
||||
if (hero.getChest() != null) hero.getChest().equip(hero);
|
||||
} else {
|
||||
System.out.println("Très bien, tu n'as pas équipé d'armure.");
|
||||
}
|
||||
hero.printStats();
|
||||
System.out.println(hero.getRace().getRaceName() + "\n" + hero.getJob().getJobName());
|
||||
System.out.println("Veux-tu continuer ?\n1.Oui\n2.Non");
|
||||
String choice2 = scanner.next();
|
||||
if (choice2.equalsIgnoreCase("oui") || choice2.equalsIgnoreCase("yes") || choice2.equalsIgnoreCase("y") || choice2.equalsIgnoreCase("o")) {
|
||||
equipWeapon(hero);
|
||||
} else {
|
||||
equipArmor(hero);
|
||||
}
|
||||
}
|
||||
|
||||
private void equipWeapon(Hero hero) {
|
||||
System.out.println("Veux-tu t'équiper d'une arme ?\n1.Oui\n2.Non");
|
||||
String choice = scanner.next();
|
||||
if (choice.equalsIgnoreCase("oui") || choice.equalsIgnoreCase("yes") || choice.equalsIgnoreCase("y") || choice.equalsIgnoreCase("o")) {
|
||||
System.out.println("D'accord, lequel ? Une épée (E) ? Un bâton (B) ? Une hache (H) ? Une dague (D) ? Ou rien ?");
|
||||
String weapon = scanner.next();
|
||||
switch (weapon.toLowerCase()) {
|
||||
case "sword", "epee", "e" -> hero.setWeapon(new TrainingSword());
|
||||
case "staff", "baton", "b" -> hero.setWeapon(new ApprenticeStaff());
|
||||
case "axe", "hache", "h" -> hero.setWeapon(new TrainingAxe());
|
||||
case "dagger", "dague", "d" -> hero.setWeapon(new Dagger());
|
||||
case "none", "rien" -> {
|
||||
System.out.println("Tu veux VRAIMENT y aller à mains nues ?");
|
||||
String validate = scanner.next();
|
||||
if (validate.equalsIgnoreCase("oui") || validate.equalsIgnoreCase("yes") || validate.equalsIgnoreCase("y") || validate.equalsIgnoreCase("o")) {
|
||||
System.out.println("Rien de tel que ses poings pour montrer sa puissance.");
|
||||
} else {
|
||||
equipWeapon(hero);
|
||||
}
|
||||
return;
|
||||
}
|
||||
default -> {
|
||||
System.out.println("Je n'ai pas compris ta réponse.");
|
||||
equipWeapon(hero);
|
||||
return;
|
||||
}
|
||||
}
|
||||
if (hero.getWeapon() != null) hero.getWeapon().equip(hero);
|
||||
} else {
|
||||
System.out.println("Très bien, tu n'as pas équipé d'arme.");
|
||||
}
|
||||
hero.printStats();
|
||||
System.out.println(hero.getRace().getRaceName() + "\n" + hero.getJob().getJobName());
|
||||
System.out.println("Veux-tu continuer ?\n1.Oui\n2.Non");
|
||||
String choice2 = scanner.next();
|
||||
if (choice2.equalsIgnoreCase("oui") || choice2.equalsIgnoreCase("yes") || choice2.equalsIgnoreCase("y") || choice2.equalsIgnoreCase("o")) {
|
||||
System.out.println("Très bien, tu es prêt à commencer l'aventure !");
|
||||
new StartEvent();
|
||||
} else {
|
||||
equipWeapon(hero);
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user