Skip to content

Commit 9b93821

Browse files
committed
✏️ - Modify & Create Characters
1 parent 30c43e3 commit 9b93821

File tree

7 files changed

+140
-24
lines changed

7 files changed

+140
-24
lines changed

data/characters/Axel.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
[30, 300, 30]
1+
["Axel", "Magicien", "25.0", "300.0", "30.0", "30.0"][]

data/characters/Louis.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
["Louis", "Guerrier", "40.0", "250.0", "50.0", "10.0"][]

data/characters/Lucas.json

Lines changed: 0 additions & 1 deletion
This file was deleted.

src/Characters.java

Lines changed: 117 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -20,26 +20,27 @@ public void charactersList() {
2020
// Initialize
2121
Scanner scanner = new Scanner(System.in);
2222

23-
showTitle("MesCaracteres");
23+
int createId = 1;
24+
25+
showTitle("Mes%20Caracteres");
2426

2527
System.out.println("Voici la liste de tous les personnages :");
26-
System.out.println("0: Retour");
28+
System.out.print("0: Retour");
2729
for (int i = 0; i < listJson().size(); i++) {
28-
if (i == 0) {
29-
System.out.print((i + 1) + ": " + listJson().get(i));
30-
} else {
31-
System.out.print(" - " + (i + 1) + ": " + listJson().get(i));
32-
}
30+
System.out.print(" - " + (i + 1) + ": " + listJson().get(i));
31+
createId++;
3332
}
3433

35-
System.out.println("");
34+
System.out.println(" - " + createId + " Créer un caractère");
3635
System.out.println("Quel personnage voulez-vous sélectionner ?");
3736
System.out.print("> ");
3837

3938
int choice = scanner.nextInt();
4039

41-
if(choice == 0) {
40+
if (choice == 0) {
4241
showMenu();
42+
} else if(createId == choice) {
43+
charactersCreate(null);
4344
} else {
4445
if ((choice - 1) < listJson().size()) {
4546
characterSelected((String) listJson().get(choice - 1));
@@ -77,7 +78,7 @@ public void characterSelected(String name) {
7778

7879
switch (scanner.nextInt()) {
7980
case 1:
80-
// charactersModify(name);
81+
characterModify(name);
8182
break;
8283
case 2:
8384
charactersDelete(name);
@@ -92,11 +93,116 @@ public void characterSelected(String name) {
9293
}
9394
}
9495

96+
public void characterModify(String name) {
97+
// Initialize
98+
Scanner scanner = new Scanner(System.in);
99+
100+
showTitle("Modifier%20" + name);
101+
102+
System.out.println("Vous allez modifier " + name);
103+
System.out.println("Êtes-vous sûr de vouloir continuer ?");
104+
System.out.println("1: Oui");
105+
System.out.println("2: Non");
106+
System.out.print("> ");
107+
108+
switch (scanner.nextInt()) {
109+
case 1:
110+
deleteJson(name);
111+
charactersCreate(name);
112+
break;
113+
case 2:
114+
characterSelected(name);
115+
break;
116+
default:
117+
System.out.println("\n");
118+
System.out.println("Erreur");
119+
break;
120+
}
121+
}
122+
123+
private void charactersCreate(String defineName) {
124+
// Initialize
125+
Scanner scanner = new Scanner(System.in);
126+
127+
String name;
128+
String className;
129+
Double attack;
130+
double health;
131+
double initiative;
132+
133+
if (defineName != null) {
134+
name = defineName;
135+
} else {
136+
showTitle("Créer%20un%20personnage");
137+
138+
System.out.println("Quel est le nom de votre personnage ?");
139+
System.out.print("> ");
140+
141+
name = scanner.nextLine();
142+
}
143+
144+
showTitle("Classes");
145+
System.out.println("Quel est classe de votre personnage ?");
146+
String[] classArrays = { "Guerrier", "Magicien", "Voleurs", "Par default" };
147+
for (int i = 0; i < classArrays.length; i++) {
148+
System.out.println((i + 1) + ": " + classArrays[i]);
149+
}
150+
System.out.print("> ");
151+
152+
className = classArrays[scanner.nextInt() - 1];
153+
154+
showTitle("L'attaque");
155+
System.out.println("Quel est la puissance d'attaque de votre personnage ?");
156+
System.out.print("> ");
157+
158+
attack = scanner.nextDouble();
159+
160+
showTitle("La%20Vie");
161+
System.out.println("Quel est la vie de votre personnage ?");
162+
System.out.print("> ");
163+
164+
health = scanner.nextDouble();
165+
166+
showTitle("L'initiative");
167+
System.out.println("Quel est l'initiative de votre personnage ?");
168+
System.out.print("> ");
169+
170+
initiative = scanner.nextDouble();
171+
172+
System.out.println(name + " " + className + " " + attack + " " + health + " " + initiative);
173+
174+
if (className == "Guerrier") {
175+
showTitle("Le%20bouclier");
176+
System.out.println("Quel est la puissance de protection du bouclier ?");
177+
System.out.print("> ");
178+
179+
createJson(name, className, attack, health, initiative, scanner.nextDouble(), 0.0);
180+
} else if(className == "Magicien"){
181+
showTitle("La%20Magie");
182+
System.out.println("Quel est le niveau de la magie de votre personnage ?");
183+
System.out.print("> ");
184+
185+
double magic = scanner.nextDouble();
186+
187+
showTitle("L'attaque%20de%20la%20magie");
188+
System.out.println("Quel est le niveau de l'attaque de la magie de votre personnage ?");
189+
System.out.print("> ");
190+
191+
double attack_magic = scanner.nextDouble();
192+
193+
createJson(name, className, attack, health, initiative, magic, attack_magic);
194+
} else {
195+
createJson(name, className, attack, health, initiative, 0.0, 0.0);
196+
}
197+
198+
charactersList();
199+
}
200+
95201
public void charactersDelete(String name) {
96202
// Initialize
97203
Scanner scanner = new Scanner(System.in);
98204

99-
showTitle("Supprimer" + name);
205+
showTitle("Supprimer%20" + name);
100206

101207
System.out.println("Vous allez supprimer " + name);
102208
System.out.println("Êtes-vous sûr de vouloir continuer ?");

src/GlobalFunctions.java

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -38,11 +38,21 @@ public static String callJson(String name) {
3838
}
3939
}
4040

41-
public static boolean createJson(String name) {
41+
public static boolean createJson(String name, String className, double attack, double health, double initiative, double powers1, double powers2) {
4242
//Write JSON file
43-
try (FileWriter file = new FileWriter("./data/" + name + ".json")) {
43+
try (FileWriter file = new FileWriter("./data/characters/" + name + ".json")) {
44+
45+
if(powers1 != 0.0){
46+
if(powers2 != 0.0){
47+
file.write("[\"" + name + "\", \"" + className + "\", \"" + attack + "\", \"" + health + "\", \"" + initiative + "\", \"" + powers1 + "\", \"" + powers2 + "\"]");
48+
} else {
49+
file.write("[\"" + name + "\", \"" + className + "\", \"" + attack + "\", \"" + health + "\", \"" + initiative + "\", \"" + powers1 + "\"]");
50+
}
51+
} else {
52+
file.write("[\"" + name + "\", \"" + className + "\", \"" + attack + "\", \"" + health + "\", \"" + initiative + "\"]");
53+
}
4454

45-
file.write("{\"" + name + "\": []}");
55+
file.write("[]");
4656
file.flush();
4757

4858
return true;
@@ -82,7 +92,7 @@ public static void showMenu() {
8292
Play play = new Play();
8393
Characters characters = new Characters();
8494

85-
showTitle("TerminalCombat");
95+
showTitle("Terminal%20Combat");
8696

8797
String[] menuArray = {"Jouer", "Caractères", "Quitter"};
8898

src/Play.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@ public void main() {
99
showTitle("Play");
1010

1111
// Initialize
12-
Warrior player1 = new Warrior("Axel ", 120, 300.0, 1, 20);
13-
Wizard player2 = new Wizard("Louis", 35 , 100, 4);
12+
Player player1 = new Player("Axel ", 120, 300.0, 9);
13+
Player player2 = new Player("Louis", 35 , 100, 4);
1414

1515
double playerTurns;
1616

src/Wizard.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
class Wizard {
22

3-
private String name = "Wizard";
3+
private String name;
44
private double health;
55
private double attack;
66
private double magic;
77
private double attack_magic;
88
private double initiative;
99

10-
public Wizard(String name, double attack, double health, double initiative) {
10+
public Wizard(String name, double attack, double health, double initiative, double magic, double attack_magic) {
1111
this.name = name;
1212
this.attack = attack;
1313
this.health = health;
@@ -59,12 +59,12 @@ public double getMagic() {
5959
public void setMagic(double magic) {
6060
this.magic = magic;
6161
}
62-
void decreaseMagic(int increament) {
62+
63+
public void decreaseMagic() {
6364
magic = magic / 2;
6465
}
6566

66-
void AttackMagic(){
67-
67+
public void AttackMagic(){
6868
attack_magic = magic + attack;
6969
}
7070

0 commit comments

Comments
 (0)