From 5fd15f1e5171caa881ca901394b481c8a2009b77 Mon Sep 17 00:00:00 2001 From: Joshua Perry <45966243+jpez-development@users.noreply.github.com> Date: Tue, 31 Jan 2023 14:54:45 +0000 Subject: [PATCH] Added new competitor type --- .../java/org/r0r5chach/r6/R6Attacker.java | 43 ++++++++++++++++++ .../java/org/r0r5chach/r6/R6Defender.java | 43 ++++++++++++++++++ src/main/java/org/r0r5chach/r6/R6Player.java | 44 +++++++++++++++++++ 3 files changed, 130 insertions(+) create mode 100644 src/main/java/org/r0r5chach/r6/R6Attacker.java create mode 100644 src/main/java/org/r0r5chach/r6/R6Defender.java create mode 100644 src/main/java/org/r0r5chach/r6/R6Player.java diff --git a/src/main/java/org/r0r5chach/r6/R6Attacker.java b/src/main/java/org/r0r5chach/r6/R6Attacker.java new file mode 100644 index 0000000..30baa83 --- /dev/null +++ b/src/main/java/org/r0r5chach/r6/R6Attacker.java @@ -0,0 +1,43 @@ +package org.r0r5chach.r6; + +import java.util.Locale; + +public enum R6Attacker { + GRIM, + SENS, + OSA, + FLORES, + ZERO, + ACE, + IANA, + KALI, + AMARU, + NOKK, + GRIDLOCK, + NOMAD, + MAVERICK, + LION, + FINKA, + DOKKAEBI, + ZOFIA, + YING, + JACKAL, + HIBANA, + CAPITAO, + BLACKBEARD, + BUCK, + SLEDGE, + THATCHER, + ASH, + THERMITE, + MONTAGNE, + TWITCH, + BLITZ, + IQ, + FUZE, + GLAZ; + + public String getAttacker() { + return this.name().charAt(0) + this.name().substring(1).toLowerCase(Locale.ROOT); //Capitalizes the first letter and makes sure the other letters are lowercase + } +} diff --git a/src/main/java/org/r0r5chach/r6/R6Defender.java b/src/main/java/org/r0r5chach/r6/R6Defender.java new file mode 100644 index 0000000..bd6eceb --- /dev/null +++ b/src/main/java/org/r0r5chach/r6/R6Defender.java @@ -0,0 +1,43 @@ +package org.r0r5chach.r6; + +import java.util.Locale; + +public enum R6Defender { + SOLIS, + AZAMI, + THORN, + THUNDERBIRD, + ARUNI, + MELUSI, + ORYX, + WAMAI, + GOYO, + WARDEN, + MOZZIE, + KAID, + CLASH, + MAESTRO, + ALIBI, + VIGIL, + ELA, + LESION, + MIRA, + ECHO, + CAVEIRA, + VALKYRIE, + FROST, + MUTE, + SMOKE, + CASTLE, + PULSE, + DOC, + ROOK, + JAGER, + BANDIT, + TACHANKA, + KAPKAN; + + public String getDefender() { + return this.name().charAt(0) + this.name().substring(1).toLowerCase(Locale.ROOT); //Capitalizes the first letter and makes sure the other letters are lowercase + } +} diff --git a/src/main/java/org/r0r5chach/r6/R6Player.java b/src/main/java/org/r0r5chach/r6/R6Player.java new file mode 100644 index 0000000..0d623c1 --- /dev/null +++ b/src/main/java/org/r0r5chach/r6/R6Player.java @@ -0,0 +1,44 @@ +package org.r0r5chach.r6; + +import java.util.Arrays; + +import org.r0r5chach.Competitor; +import org.r0r5chach.Name; +import org.r0r5chach.Rank; + +public class R6Player extends Competitor{ + private R6Attacker favoriteAttacker; + private R6Defender favoriteDefender; + + public R6Player(int playerNumber, Name playerName, Rank playerLevel, R6Attacker favoriteAttacker, R6Defender favoriteDefender, int[] scores) { + super(playerNumber, playerName, playerLevel, scores); + this.favoriteAttacker = favoriteAttacker; + this.favoriteDefender = favoriteDefender; + } + + public void setFavoriteAttacker(R6Attacker favoriteAttacker) { + this.favoriteAttacker = favoriteAttacker; + } + + public void setFavoriteDefender(R6Defender favoriteDefender) { + this.favoriteDefender = favoriteDefender; + } + + public R6Attacker getFavoriteAttacker() { + return this.favoriteAttacker; + } + + public R6Defender getFavoriteDefender() { + return this.favoriteDefender; + } + + public String getFullDetails() { + return "Player Number: " + getPlayerNumber() + + "\nName: " + getPlayerName().getFullName() + + "\nPlayer Level: " + getPlayerLevel().getRank() + + "\nFavorite Attacker: " + getFavoriteAttacker().getAttacker() + + "\nFavorite Attacker: " + getFavoriteDefender().getDefender() + + "\nScores: " + Arrays.toString(getScores()).replace("[","").replace("]", "") + //replace() allows the array to not be surrounded by brackets + "\nOverall Score: " + getOverallScore(); + } +}