diff --git a/.idea/codeStyles/codeStyleConfig.xml b/.idea/codeStyles/codeStyleConfig.xml
new file mode 100644
index 0000000..a55e7a1
--- /dev/null
+++ b/.idea/codeStyles/codeStyleConfig.xml
@@ -0,0 +1,5 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
index c1c2a99..aedfe4c 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -1,4 +1,4 @@
-
+
\ No newline at end of file
diff --git a/.idea/modules.xml b/.idea/modules.xml
index 2356e9d..29f4ba6 100644
--- a/.idea/modules.xml
+++ b/.idea/modules.xml
@@ -3,6 +3,7 @@
+
\ No newline at end of file
diff --git a/1410_DND/src2/UImanager.java b/1410_DND/src2/UImanager.java
deleted file mode 100644
index 8b88590..0000000
--- a/1410_DND/src2/UImanager.java
+++ /dev/null
@@ -1,76 +0,0 @@
-public class UImanager {
-
- private JFrame gui;
- private PanelHolder guiPanels;
- private int currentPanel;
-
- public UImanager (PanelHolder guiPanels) {
-
- this.gui = new JFrame("D&D Character Builder");
- this.guiPanels = guiPanels;
-
- if (returningUser()) {
-
- this.currentPanel = 0;
-
- } else {
-
- this.currentPanel = 1;
-
- }
-
- frameSetup();
-
-
- }
-
- // TODO: Need to implement.
- private void frameSetup() {
-
-
-
- }
-
- // TODO: Need to implement.
- private boolean returningUser() {
-
- return false;
-
- }
-
- private JPanel getNextPanel() {
-
- switch (currentPanel) {
-
- case: 1
- return guiPanels.getRacePanel();
- case: 2
- return guiPanels.getClassPanel();
- case: 3
- return guiPanels.getAbilityScorePanel();
- case: 4
- return guiPanels.getDescriptionPanel();
- case: 5
- return guiPanels.getEquipmentPanel();
- case: 6
- return guiPanels.getLoadMenuPanel();
- case: 7
- return guiPanels.getFinalizePanel();
- default:
- return guiPanels.getMainMenuPanel();
-
- }
-
- }
-
- private void clearAndReset(JPanel nextPanel) {
-
- gui.removeAll();
- gui.addComponent(nextPanel);
-
- gui.repaint();
- gui.revalidate();
-
- }
-
-}
\ No newline at end of file
diff --git a/dndBuilder/dndBuilder.iml b/dndBuilder/dndBuilder.iml
new file mode 100644
index 0000000..c90834f
--- /dev/null
+++ b/dndBuilder/dndBuilder.iml
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/1410_DND/src/dnd/Charisma.java b/dndBuilder/src/AbilityScores/Charisma.java
similarity index 97%
rename from 1410_DND/src/dnd/Charisma.java
rename to dndBuilder/src/AbilityScores/Charisma.java
index 26eed1f..e9153d2 100644
--- a/1410_DND/src/dnd/Charisma.java
+++ b/dndBuilder/src/AbilityScores/Charisma.java
@@ -1,4 +1,4 @@
-package dnd;
+package AbilityScores;
public class Charisma extends Stats {
diff --git a/1410_DND/src/dnd/Constitution.java b/dndBuilder/src/AbilityScores/Constitution.java
similarity index 97%
rename from 1410_DND/src/dnd/Constitution.java
rename to dndBuilder/src/AbilityScores/Constitution.java
index 3b89d49..c29f993 100644
--- a/1410_DND/src/dnd/Constitution.java
+++ b/dndBuilder/src/AbilityScores/Constitution.java
@@ -1,4 +1,4 @@
-package dnd;
+package AbilityScores;
public class Constitution extends Stats {
diff --git a/1410_DND/src/dnd/Dexterity.java b/dndBuilder/src/AbilityScores/Dexterity.java
similarity index 97%
rename from 1410_DND/src/dnd/Dexterity.java
rename to dndBuilder/src/AbilityScores/Dexterity.java
index 8f7a6e1..d6919d4 100644
--- a/1410_DND/src/dnd/Dexterity.java
+++ b/dndBuilder/src/AbilityScores/Dexterity.java
@@ -1,4 +1,4 @@
-package dnd;
+package AbilityScores;
public class Dexterity extends Stats {
diff --git a/1410_DND/src/dnd/Intelligence.java b/dndBuilder/src/AbilityScores/Intelligence.java
similarity index 97%
rename from 1410_DND/src/dnd/Intelligence.java
rename to dndBuilder/src/AbilityScores/Intelligence.java
index 051ed92..e4151cf 100644
--- a/1410_DND/src/dnd/Intelligence.java
+++ b/dndBuilder/src/AbilityScores/Intelligence.java
@@ -1,4 +1,4 @@
-package dnd;
+package AbilityScores;
public class Intelligence extends Stats{
diff --git a/1410_DND/src/dnd/Stats.java b/dndBuilder/src/AbilityScores/Stats.java
similarity index 97%
rename from 1410_DND/src/dnd/Stats.java
rename to dndBuilder/src/AbilityScores/Stats.java
index dcb5e46..992d2d0 100644
--- a/1410_DND/src/dnd/Stats.java
+++ b/dndBuilder/src/AbilityScores/Stats.java
@@ -1,4 +1,4 @@
-package dnd;
+package AbilityScores;
public abstract class Stats {
diff --git a/1410_DND/src/dnd/Strength.java b/dndBuilder/src/AbilityScores/Strength.java
similarity index 97%
rename from 1410_DND/src/dnd/Strength.java
rename to dndBuilder/src/AbilityScores/Strength.java
index df00aa0..db8a5fb 100644
--- a/1410_DND/src/dnd/Strength.java
+++ b/dndBuilder/src/AbilityScores/Strength.java
@@ -1,4 +1,4 @@
-package dnd;
+package AbilityScores;
public class Strength extends Stats {
diff --git a/1410_DND/src/dnd/Wisdom.java b/dndBuilder/src/AbilityScores/Wisdom.java
similarity index 97%
rename from 1410_DND/src/dnd/Wisdom.java
rename to dndBuilder/src/AbilityScores/Wisdom.java
index 8dc39cc..c90a619 100644
--- a/1410_DND/src/dnd/Wisdom.java
+++ b/dndBuilder/src/AbilityScores/Wisdom.java
@@ -1,4 +1,4 @@
-package dnd;
+package AbilityScores;
public class Wisdom extends Stats {
diff --git a/1410_DND/src/dnd/ClassTemplate.java b/dndBuilder/src/Classes/ClassTemplate.java
similarity index 97%
rename from 1410_DND/src/dnd/ClassTemplate.java
rename to dndBuilder/src/Classes/ClassTemplate.java
index 852bcb3..224a08b 100644
--- a/1410_DND/src/dnd/ClassTemplate.java
+++ b/dndBuilder/src/Classes/ClassTemplate.java
@@ -1,4 +1,4 @@
-package dnd;
+package Classes;
public interface ClassTemplate {
diff --git a/1410_DND/src/dnd/Cleric.java b/dndBuilder/src/Classes/Cleric.java
similarity index 99%
rename from 1410_DND/src/dnd/Cleric.java
rename to dndBuilder/src/Classes/Cleric.java
index b20f68b..a97ec3e 100644
--- a/1410_DND/src/dnd/Cleric.java
+++ b/dndBuilder/src/Classes/Cleric.java
@@ -1,4 +1,4 @@
-package dnd;
+package Classes;
public class Cleric implements ClassTemplate {
diff --git a/1410_DND/src/dnd/Fighter.java b/dndBuilder/src/Classes/Fighter.java
similarity index 99%
rename from 1410_DND/src/dnd/Fighter.java
rename to dndBuilder/src/Classes/Fighter.java
index bca8ab5..9b83018 100644
--- a/1410_DND/src/dnd/Fighter.java
+++ b/dndBuilder/src/Classes/Fighter.java
@@ -1,4 +1,4 @@
-package dnd;
+package Classes;
public class Fighter implements ClassTemplate {
diff --git a/1410_DND/src/dnd/Wizard.java b/dndBuilder/src/Classes/Wizard.java
similarity index 99%
rename from 1410_DND/src/dnd/Wizard.java
rename to dndBuilder/src/Classes/Wizard.java
index 5e62c93..4a9baf3 100644
--- a/1410_DND/src/dnd/Wizard.java
+++ b/dndBuilder/src/Classes/Wizard.java
@@ -1,4 +1,4 @@
-package dnd;
+package Classes;
public class Wizard implements ClassTemplate {
diff --git a/1410_DND/src2/DndCharacterBuilder.java b/dndBuilder/src/DndCharacterBuilder.java
similarity index 72%
rename from 1410_DND/src2/DndCharacterBuilder.java
rename to dndBuilder/src/DndCharacterBuilder.java
index f10f0b8..bf9fd36 100644
--- a/1410_DND/src2/DndCharacterBuilder.java
+++ b/dndBuilder/src/DndCharacterBuilder.java
@@ -1,3 +1,8 @@
+import GUI.*;
+import Races.*;
+import Classes.*;
+import AbilityScores.*;
+
public class DndCharacterBuilder {
public static void main(String[] args) {
diff --git a/1410_DND/src2/PanelHolder.java b/dndBuilder/src/GUI/PanelHolder.java
similarity index 66%
rename from 1410_DND/src2/PanelHolder.java
rename to dndBuilder/src/GUI/PanelHolder.java
index b5904ba..f36d6ec 100644
--- a/1410_DND/src2/PanelHolder.java
+++ b/dndBuilder/src/GUI/PanelHolder.java
@@ -1,4 +1,7 @@
-public static class PanelHolder {
+package GUI;
+
+import javax.swing.*;
+public class PanelHolder {
private JPanel mainMenuPanel;
private JPanel racePanel;
@@ -70,59 +73,74 @@ public static class PanelHolder {
}
- // TODO: Need to implement.
+ /* TODO: Need to implement.
+
+ LEFT-SIDE: Two large buttons, split with a horizontal line. One is to create a new DnD character, the other is to create a
+ random character.
+
+ RIGHT-SIDE: One extra-large button to load an existing character.
+
+ */
private JPanel createMainMenuPanel() {
-
+ return new JPanel();
}
- // TODO: Need to implement.
+ /* TODO: Need to implement.
+
+ LEFT-SIDE: Should appear with a random portrait of the default race, human. Below this
+ portrait, a button for the user to upload their own portrait.
+
+ RIGHT-SIDE: Should appear with a scrollable list of the user's available races. A tooltip is on each race, and expands to
+ describe the race, their proficiencies, languages, and ability score improvements.
+
+ */
private JPanel createRaceSelectPanel() {
-
+ return new JPanel();
}
// TODO: Need to implement.
private JPanel createClassSelectPanel() {
-
+ return new JPanel();
}
// TODO: Need to implement.
private JPanel createAbilityScoreSelectPanel() {
-
+ return new JPanel();
}
// TODO: Need to implement.
private JPanel createDescriptionPanel() {
-
+ return new JPanel();
}
// TODO: Need to implement.
private JPanel createEquipmentSelectPanel() {
-
+ return new JPanel();
}
// TODO: Need to implement.
private JPanel createFinalizePanel() {
-
+ return new JPanel();
}
// TODO: Need to implement.
private JPanel createLoadMenu() {
-
+ return new JPanel();
}
diff --git a/dndBuilder/src/GUI/UImanager.java b/dndBuilder/src/GUI/UImanager.java
new file mode 100644
index 0000000..40e27e7
--- /dev/null
+++ b/dndBuilder/src/GUI/UImanager.java
@@ -0,0 +1,69 @@
+package GUI;
+
+import javax.swing.*;
+
+public class UImanager {
+
+ private final JFrame gui;
+ private final PanelHolder guiPanels;
+ private int currentPanel;
+
+ public UImanager (PanelHolder guiPanels) {
+
+ this.gui = new JFrame("D&D Character Builder");
+ this.guiPanels = guiPanels;
+
+ if (returningUser()) {
+
+ this.currentPanel = 0;
+
+ } else {
+
+ this.currentPanel = 1;
+
+ }
+
+ frameSetup();
+
+ }
+
+ // TODO: Need to implement.
+ private void frameSetup() {
+
+
+
+ }
+
+ // TODO: Need to implement.
+ private boolean returningUser() {
+
+ return false;
+
+ }
+
+ private JPanel getNextPanel() {
+
+ return switch (currentPanel) {
+ case 1 -> guiPanels.getRacePanel();
+ case 2 -> guiPanels.getClassPanel();
+ case 3 -> guiPanels.getAbilityScorePanel();
+ case 4 -> guiPanels.getDescriptionPanel();
+ case 5 -> guiPanels.getEquipmentPanel();
+ case 6 -> guiPanels.getLoadMenuPanel();
+ case 7 -> guiPanels.getFinalizePanel();
+ default -> guiPanels.getMainMenuPanel();
+ };
+
+ }
+
+ private void clearAndReset(JPanel nextPanel) {
+
+ gui.removeAll();
+ gui.add(nextPanel);
+
+ gui.repaint();
+ gui.revalidate();
+
+ }
+
+}
\ No newline at end of file
diff --git a/1410_DND/src/dnd/Dragonborn.java b/dndBuilder/src/Races/Dragonborn.java
similarity index 98%
rename from 1410_DND/src/dnd/Dragonborn.java
rename to dndBuilder/src/Races/Dragonborn.java
index 4496b61..c840918 100644
--- a/1410_DND/src/dnd/Dragonborn.java
+++ b/dndBuilder/src/Races/Dragonborn.java
@@ -1,4 +1,4 @@
-package dnd;
+package Races;
public class Dragonborn implements Race{
private String[] traits;
diff --git a/1410_DND/src/dnd/Dwarf.java b/dndBuilder/src/Races/Dwarf.java
similarity index 98%
rename from 1410_DND/src/dnd/Dwarf.java
rename to dndBuilder/src/Races/Dwarf.java
index cb262ef..fcebe19 100644
--- a/1410_DND/src/dnd/Dwarf.java
+++ b/dndBuilder/src/Races/Dwarf.java
@@ -1,4 +1,4 @@
-package dnd;
+package Races;
public class Dwarf implements Race{
private String[] traits;
diff --git a/1410_DND/src/dnd/Elf.java b/dndBuilder/src/Races/Elf.java
similarity index 98%
rename from 1410_DND/src/dnd/Elf.java
rename to dndBuilder/src/Races/Elf.java
index da53c71..3eeb958 100644
--- a/1410_DND/src/dnd/Elf.java
+++ b/dndBuilder/src/Races/Elf.java
@@ -1,4 +1,4 @@
-package dnd;
+package Races;
public class Elf implements Race{
private String[] traits;
diff --git a/1410_DND/src/dnd/Gnome.java b/dndBuilder/src/Races/Gnome.java
similarity index 98%
rename from 1410_DND/src/dnd/Gnome.java
rename to dndBuilder/src/Races/Gnome.java
index 43390e5..8ab661c 100644
--- a/1410_DND/src/dnd/Gnome.java
+++ b/dndBuilder/src/Races/Gnome.java
@@ -1,4 +1,4 @@
-package dnd;
+package Races;
public class Gnome implements Race{
private String[] traits;
diff --git a/1410_DND/src/dnd/HalfElf.java b/dndBuilder/src/Races/HalfElf.java
similarity index 99%
rename from 1410_DND/src/dnd/HalfElf.java
rename to dndBuilder/src/Races/HalfElf.java
index 7f53ee6..c2acd07 100644
--- a/1410_DND/src/dnd/HalfElf.java
+++ b/dndBuilder/src/Races/HalfElf.java
@@ -1,4 +1,4 @@
-package dnd;
+package Races;
public class HalfElf implements Race{
private String[] traits;
diff --git a/1410_DND/src/dnd/HalfOrc.java b/dndBuilder/src/Races/HalfOrc.java
similarity index 98%
rename from 1410_DND/src/dnd/HalfOrc.java
rename to dndBuilder/src/Races/HalfOrc.java
index 9a76b10..f59104d 100644
--- a/1410_DND/src/dnd/HalfOrc.java
+++ b/dndBuilder/src/Races/HalfOrc.java
@@ -1,4 +1,4 @@
-package dnd;
+package Races;
public class HalfOrc implements Race{
private String[] traits;
diff --git a/1410_DND/src/dnd/Halfling.java b/dndBuilder/src/Races/Halfling.java
similarity index 98%
rename from 1410_DND/src/dnd/Halfling.java
rename to dndBuilder/src/Races/Halfling.java
index 2e0dc9d..d6fbbb8 100644
--- a/1410_DND/src/dnd/Halfling.java
+++ b/dndBuilder/src/Races/Halfling.java
@@ -1,4 +1,4 @@
-package dnd;
+package Races;
public class Halfling implements Race{
private String[] traits;
diff --git a/1410_DND/src/dnd/Human.java b/dndBuilder/src/Races/Human.java
similarity index 98%
rename from 1410_DND/src/dnd/Human.java
rename to dndBuilder/src/Races/Human.java
index c3fd2fe..d305121 100644
--- a/1410_DND/src/dnd/Human.java
+++ b/dndBuilder/src/Races/Human.java
@@ -1,4 +1,4 @@
-package dnd;
+package Races;
public class Human implements Race {
diff --git a/1410_DND/src/dnd/Race.java b/dndBuilder/src/Races/Race.java
similarity index 93%
rename from 1410_DND/src/dnd/Race.java
rename to dndBuilder/src/Races/Race.java
index 218e40b..d172841 100644
--- a/1410_DND/src/dnd/Race.java
+++ b/dndBuilder/src/Races/Race.java
@@ -1,4 +1,4 @@
-package dnd;
+package Races;
import java.util.ArrayList;
diff --git a/1410_DND/src/dnd/Tiefling.java b/dndBuilder/src/Races/Tiefling.java
similarity index 98%
rename from 1410_DND/src/dnd/Tiefling.java
rename to dndBuilder/src/Races/Tiefling.java
index ba65576..7c01290 100644
--- a/1410_DND/src/dnd/Tiefling.java
+++ b/dndBuilder/src/Races/Tiefling.java
@@ -1,4 +1,4 @@
-package dnd;
+package Races;
public class Tiefling implements Race{
private String[] traits;