Races crées et les stats changent selon le choix du personnage.
This commit is contained in:
parent
59fec89325
commit
2ca4213ec3
3
.gitignore
vendored
Normal file
3
.gitignore
vendored
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
.gitignore
|
||||||
|
.env
|
||||||
|
.idea/*
|
||||||
Binary file not shown.
Binary file not shown.
BIN
out/production/Java_Petit_projet/heroes/races/Dwarf.class
Normal file
BIN
out/production/Java_Petit_projet/heroes/races/Dwarf.class
Normal file
Binary file not shown.
BIN
out/production/Java_Petit_projet/heroes/races/Elf.class
Normal file
BIN
out/production/Java_Petit_projet/heroes/races/Elf.class
Normal file
Binary file not shown.
BIN
out/production/Java_Petit_projet/heroes/races/Human.class
Normal file
BIN
out/production/Java_Petit_projet/heroes/races/Human.class
Normal file
Binary file not shown.
BIN
out/production/Java_Petit_projet/heroes/races/Ork.class
Normal file
BIN
out/production/Java_Petit_projet/heroes/races/Ork.class
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -32,6 +32,9 @@ public class Hero {
|
|||||||
|
|
||||||
public void setRace(Race race) {
|
public void setRace(Race race) {
|
||||||
this.race = race;
|
this.race = race;
|
||||||
|
if (race != null){
|
||||||
|
race.adjustStats(this);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public Job getJob() {
|
public Job getJob() {
|
||||||
|
|||||||
18
src/heroes/races/Dwarf.java
Normal file
18
src/heroes/races/Dwarf.java
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
package heroes.races;
|
||||||
|
|
||||||
|
import heroes.Hero;
|
||||||
|
|
||||||
|
public class Dwarf extends Race{
|
||||||
|
public Dwarf() {
|
||||||
|
this.setRaceName("Nain");
|
||||||
|
}
|
||||||
|
|
||||||
|
@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);
|
||||||
|
}
|
||||||
|
}
|
||||||
18
src/heroes/races/Elf.java
Normal file
18
src/heroes/races/Elf.java
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
package heroes.races;
|
||||||
|
|
||||||
|
import heroes.Hero;
|
||||||
|
|
||||||
|
public class Elf extends Race{
|
||||||
|
public Elf() {
|
||||||
|
this.setRaceName("Elfe");
|
||||||
|
}
|
||||||
|
|
||||||
|
@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);
|
||||||
|
}
|
||||||
|
}
|
||||||
18
src/heroes/races/Human.java
Normal file
18
src/heroes/races/Human.java
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
package heroes.races;
|
||||||
|
|
||||||
|
import heroes.Hero;
|
||||||
|
|
||||||
|
public class Human extends Race{
|
||||||
|
public Human() {
|
||||||
|
this.setRaceName("Human");
|
||||||
|
}
|
||||||
|
|
||||||
|
@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);
|
||||||
|
}
|
||||||
|
}
|
||||||
18
src/heroes/races/Ork.java
Normal file
18
src/heroes/races/Ork.java
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
package heroes.races;
|
||||||
|
|
||||||
|
import heroes.Hero;
|
||||||
|
|
||||||
|
public class Ork extends Race {
|
||||||
|
public Ork() {
|
||||||
|
this.setRaceName("Orc");
|
||||||
|
}
|
||||||
|
|
||||||
|
@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);
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -2,5 +2,15 @@ package heroes.races;
|
|||||||
|
|
||||||
import heroes.Hero;
|
import heroes.Hero;
|
||||||
|
|
||||||
public abstract class Race extends Hero {
|
public abstract class Race {
|
||||||
|
public String raceName;
|
||||||
|
|
||||||
|
public String getRaceName(){
|
||||||
|
return raceName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setRaceName(String raceName) {
|
||||||
|
this.raceName = raceName;
|
||||||
|
}
|
||||||
|
public abstract void adjustStats(Hero hero);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,9 +1,8 @@
|
|||||||
package systems;
|
package systems;
|
||||||
|
|
||||||
import heroes.Hero;
|
import heroes.Hero;
|
||||||
import heroes.jobs.Mage;
|
import heroes.jobs.*;
|
||||||
import heroes.jobs.Rogue;
|
import heroes.races.*;
|
||||||
import heroes.jobs.Warrior;
|
|
||||||
|
|
||||||
import java.util.Scanner;
|
import java.util.Scanner;
|
||||||
|
|
||||||
@ -42,7 +41,7 @@ public class Game {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void selectJob(Hero hero){
|
public void selectJob(Hero hero) {
|
||||||
System.out.println("Quelle classe veux-tu choisir ? Un guerrier ? (G), un mage ? (M), un voleur ? (V)");
|
System.out.println("Quelle classe veux-tu choisir ? Un guerrier ? (G), un mage ? (M), un voleur ? (V)");
|
||||||
String job = scanner.next();
|
String job = scanner.next();
|
||||||
switch (job.toLowerCase()) {
|
switch (job.toLowerCase()) {
|
||||||
@ -74,5 +73,37 @@ public class Game {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void selectRace(Hero hero) {
|
private void selectRace(Hero hero) {
|
||||||
|
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 !");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
System.out.println("Voici les caractéristiques de ton personnage :");
|
||||||
|
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();
|
||||||
|
switch (choice2.toLowerCase()) {
|
||||||
|
case "oui", "yes", "y", "o" -> {
|
||||||
|
System.out.println("Très bien, tu es prêt à commencer l'aventure !");
|
||||||
|
System.exit(0);
|
||||||
|
}
|
||||||
|
case "non", "no", "n" -> selectRace(hero);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user