summaryrefslogtreecommitdiff
path: root/graphs/java/war/src/main
diff options
context:
space:
mode:
authorMartial Simon <msimon_fr@hotmail.com>2025-09-15 01:08:27 +0200
committerMartial Simon <msimon_fr@hotmail.com>2025-09-15 01:08:27 +0200
commitc9b6b9a5ca082fe7c1b6f58d7713f785a9eb6a5c (patch)
tree3e4f42f93c7ae89a364e4d51fff6e5cec4e55fa9 /graphs/java/war/src/main
add: graphs et rushs
Diffstat (limited to 'graphs/java/war/src/main')
-rw-r--r--graphs/java/war/src/main/java/fr/epita/assistants/war/Assassin.java9
-rw-r--r--graphs/java/war/src/main/java/fr/epita/assistants/war/Combatant.java12
-rw-r--r--graphs/java/war/src/main/java/fr/epita/assistants/war/Knight.java9
-rw-r--r--graphs/java/war/src/main/java/fr/epita/assistants/war/Soldier.java38
-rw-r--r--graphs/java/war/src/main/java/fr/epita/assistants/war/Vehicle.java32
5 files changed, 100 insertions, 0 deletions
diff --git a/graphs/java/war/src/main/java/fr/epita/assistants/war/Assassin.java b/graphs/java/war/src/main/java/fr/epita/assistants/war/Assassin.java
new file mode 100644
index 0000000..3415e41
--- /dev/null
+++ b/graphs/java/war/src/main/java/fr/epita/assistants/war/Assassin.java
@@ -0,0 +1,9 @@
+package fr.epita.assistants.war;
+
+public class Assassin extends Soldier{
+ public Assassin() {
+ this.health = 10;
+ this.damage = 9;
+ this.scream = "Out of the shadows!";
+ }
+}
diff --git a/graphs/java/war/src/main/java/fr/epita/assistants/war/Combatant.java b/graphs/java/war/src/main/java/fr/epita/assistants/war/Combatant.java
new file mode 100644
index 0000000..5dc9af4
--- /dev/null
+++ b/graphs/java/war/src/main/java/fr/epita/assistants/war/Combatant.java
@@ -0,0 +1,12 @@
+package fr.epita.assistants.war;
+
+public abstract class Combatant {
+ void printState()
+ {
+ System.err.println("Error 404. Class not found.");
+ }
+
+ abstract void attack(Soldier s);
+ abstract void attack(Vehicle v);
+ abstract void scream();
+}
diff --git a/graphs/java/war/src/main/java/fr/epita/assistants/war/Knight.java b/graphs/java/war/src/main/java/fr/epita/assistants/war/Knight.java
new file mode 100644
index 0000000..1258434
--- /dev/null
+++ b/graphs/java/war/src/main/java/fr/epita/assistants/war/Knight.java
@@ -0,0 +1,9 @@
+package fr.epita.assistants.war;
+
+public class Knight extends Soldier {
+ public Knight() {
+ this.health = 20;
+ this.damage = 5;
+ this.scream = "Be quick or be dead!";
+ }
+}
diff --git a/graphs/java/war/src/main/java/fr/epita/assistants/war/Soldier.java b/graphs/java/war/src/main/java/fr/epita/assistants/war/Soldier.java
new file mode 100644
index 0000000..67c3897
--- /dev/null
+++ b/graphs/java/war/src/main/java/fr/epita/assistants/war/Soldier.java
@@ -0,0 +1,38 @@
+package fr.epita.assistants.war;
+
+public class Soldier extends Combatant {
+ int health;
+ int damage;
+ String scream;
+
+ public Soldier() {
+ this.health = 15;
+ this.damage = 3;
+ this.scream = "No pity for losers!";
+ }
+
+ public void kill(){
+ this.health = 0;
+ }
+
+ @Override
+ public void printState()
+ {
+ System.out.println("I have " + this.health + " health points.");
+ }
+
+ @Override
+ public void attack(Soldier s) {
+ s.health -= this.damage;
+ }
+
+ @Override
+ public void attack(Vehicle v) {
+ System.out.println("I can't fight this.");
+ }
+
+ @Override
+ public void scream() {
+ System.out.println(this.scream);
+ }
+}
diff --git a/graphs/java/war/src/main/java/fr/epita/assistants/war/Vehicle.java b/graphs/java/war/src/main/java/fr/epita/assistants/war/Vehicle.java
new file mode 100644
index 0000000..b27d072
--- /dev/null
+++ b/graphs/java/war/src/main/java/fr/epita/assistants/war/Vehicle.java
@@ -0,0 +1,32 @@
+package fr.epita.assistants.war;
+
+public class Vehicle extends Combatant{
+ String name;
+ int defense;
+
+ public Vehicle(String name, int defense) {
+ this.name = name;
+ this.defense = defense;
+ }
+
+ @Override
+ public void printState()
+ {
+ System.out.println("I have " + this.defense + " defense points.");
+ }
+
+ @Override
+ public void attack(Soldier s) {
+ s.kill();
+ }
+
+ @Override
+ public void attack(Vehicle v) {
+ v.defense /= 2;
+ }
+
+ @Override
+ public void scream() {
+ System.out.println("I'm " + this.name + "!");
+ }
+}