Any assistance, suggestions, links to sites that will assist on how to implement this is greatly appreciated.
Objectives To develope applications with JavaFX To implement multithreading Instructions For this assignment, you will implement a Character Creation Program that allows a user to select various attributes and features for their character. Once the character is created, the program should allow the user to save the file as a .char file. The user should also be able to load a saved game file, and the user interface should react accordingly depending on the data loaded from file. The mock user interface should look something like the following:
Character Class You must ensure that there is a drop-down list/combo box that allows the user to select a character class. The class may be Warrior Wizard Cleric Thief Barbarian When the user selects one of these, the image above the dropdown will change to the appropriate class. You may draw the images yourself, have a friend draw them, or find them on the Web. This image does not have to be affected by the race of the character. Any image of each of the classes is fine. Character Gender You should allow the user to select one of two radio buttons (M or F, for male or female, respectively.) Character Name The name of the character is to be typed into a text field / text box. If the user tries saving a character file without a name that is at least two characters long, a dialog box will pop up and tell the user to enter a name that is at least two characters long. Saving will not take place unless the name is at least two characters long. Character Race The race of the character can be one of the following, selected from a dropdown menu: Human Dwarf High Elf Gnome Orc Drow Character Attributes There will be a total of 100 points to spend on a character. These points may be spread across four different attributes: Strength Intelligence Dexterity Wisdom Each attribute will get its own slider with attribute point amounts ranging from 0 up to 100. The user may spend less than or equal to 100 of the total points, but may not spend more. You must ensure that two labels or textboxes reflect the number of points used, and the number of points remaining, based on a total of points. If a user has used a certain number of points, and tries to drag any of the sliders such that it would put his/her character over the limit, then the slider should not allow this. It should move back into place, or reduce points from another attribute, or some other reasonable response. Ultimately, the user should never be able to spend more than 100 attribute points, and should obviously never have a negative amount. Saving/Loading Character Files You should allow the user to save or load files with the .umdchar file extension. The user should be able to select where they load or save the file from/to. The file is just a standard text file with a specific format. The format of a character file should be the following: Name Class Gender Race Strength Intelligence Dexterity Wisdom Let us consider a character named Max, who is a male Barbarian. He is a human with the following attributes: Strength: 50 Intelligence: 25 Dexterity: 20 Wisdom: 5 The character file, max.char would look as follows: Max Barbarian M Human 50 25 20 5 When the user clicks either the Save or Load buttons, a new thread should be used to load or save the file. For saving, the state of the user interface will determine what is written to file. For loading/opening a character file, the data in the file will cause the user interface to change to match the data in the file.