guiVersion of project, rewriting code for maximum clarity
This commit is contained in:
Generated
+5
@@ -0,0 +1,5 @@
|
||||
<component name="ProjectCodeStyleConfiguration">
|
||||
<state>
|
||||
<option name="PREFERRED_PROJECT_CODE_STYLE" value="Default" />
|
||||
</state>
|
||||
</component>
|
||||
Generated
+1
-1
@@ -1,4 +1,4 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ProjectRootManager" version="2" project-jdk-name="17" project-jdk-type="JavaSDK" />
|
||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_17" default="true" project-jdk-name="17" project-jdk-type="JavaSDK" />
|
||||
</project>
|
||||
Generated
+1
@@ -3,6 +3,7 @@
|
||||
<component name="ProjectModuleManager">
|
||||
<modules>
|
||||
<module fileurl="file://$PROJECT_DIR$/.idea/DndApplication.iml" filepath="$PROJECT_DIR$/.idea/DndApplication.iml" />
|
||||
<module fileurl="file://$PROJECT_DIR$/dndBuilder/dndBuilder.iml" filepath="$PROJECT_DIR$/dndBuilder/dndBuilder.iml" />
|
||||
</modules>
|
||||
</component>
|
||||
</project>
|
||||
@@ -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();
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module type="JAVA_MODULE" version="4">
|
||||
<component name="NewModuleRootManager" inherit-compiler-output="true">
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
</component>
|
||||
</module>
|
||||
@@ -1,4 +1,4 @@
|
||||
package dnd;
|
||||
package AbilityScores;
|
||||
|
||||
public class Charisma extends Stats {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package dnd;
|
||||
package AbilityScores;
|
||||
|
||||
public class Constitution extends Stats {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package dnd;
|
||||
package AbilityScores;
|
||||
|
||||
public class Dexterity extends Stats {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package dnd;
|
||||
package AbilityScores;
|
||||
|
||||
public class Intelligence extends Stats{
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package dnd;
|
||||
package AbilityScores;
|
||||
|
||||
public abstract class Stats {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package dnd;
|
||||
package AbilityScores;
|
||||
|
||||
public class Strength extends Stats {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package dnd;
|
||||
package AbilityScores;
|
||||
|
||||
public class Wisdom extends Stats {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package dnd;
|
||||
package Classes;
|
||||
|
||||
public interface ClassTemplate {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package dnd;
|
||||
package Classes;
|
||||
|
||||
public class Cleric implements ClassTemplate {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package dnd;
|
||||
package Classes;
|
||||
|
||||
public class Fighter implements ClassTemplate {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package dnd;
|
||||
package Classes;
|
||||
|
||||
public class Wizard implements ClassTemplate {
|
||||
|
||||
@@ -1,3 +1,8 @@
|
||||
import GUI.*;
|
||||
import Races.*;
|
||||
import Classes.*;
|
||||
import AbilityScores.*;
|
||||
|
||||
public class DndCharacterBuilder {
|
||||
|
||||
public static void main(String[] args) {
|
||||
@@ -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();
|
||||
|
||||
}
|
||||
|
||||
@@ -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();
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
package dnd;
|
||||
package Races;
|
||||
|
||||
public class Dragonborn implements Race{
|
||||
private String[] traits;
|
||||
@@ -1,4 +1,4 @@
|
||||
package dnd;
|
||||
package Races;
|
||||
|
||||
public class Dwarf implements Race{
|
||||
private String[] traits;
|
||||
@@ -1,4 +1,4 @@
|
||||
package dnd;
|
||||
package Races;
|
||||
|
||||
public class Elf implements Race{
|
||||
private String[] traits;
|
||||
@@ -1,4 +1,4 @@
|
||||
package dnd;
|
||||
package Races;
|
||||
|
||||
public class Gnome implements Race{
|
||||
private String[] traits;
|
||||
@@ -1,4 +1,4 @@
|
||||
package dnd;
|
||||
package Races;
|
||||
|
||||
public class HalfElf implements Race{
|
||||
private String[] traits;
|
||||
@@ -1,4 +1,4 @@
|
||||
package dnd;
|
||||
package Races;
|
||||
|
||||
public class HalfOrc implements Race{
|
||||
private String[] traits;
|
||||
@@ -1,4 +1,4 @@
|
||||
package dnd;
|
||||
package Races;
|
||||
|
||||
public class Halfling implements Race{
|
||||
private String[] traits;
|
||||
@@ -1,4 +1,4 @@
|
||||
package dnd;
|
||||
package Races;
|
||||
|
||||
public class Human implements Race {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package dnd;
|
||||
package Races;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package dnd;
|
||||
package Races;
|
||||
|
||||
public class Tiefling implements Race{
|
||||
private String[] traits;
|
||||
Reference in New Issue
Block a user