save, load, delete features implemented. starting testing.

This commit is contained in:
Joshua-Ashton01
2022-11-08 18:29:16 -07:00
parent cf0ea4ea88
commit a474d5d43b
2 changed files with 43 additions and 15 deletions
+3 -10
View File
@@ -5,18 +5,11 @@ public class DndCharacterBuilder {
public static void main(String[] args) {
FileManager data = new FileManager();
PanelHolder guiPanels = new PanelHolder();
UImanager gui = new UImanager(guiPanels, isReturningUser());
UImanager gui = new UImanager(guiPanels, data.isReturninguser());
}
private static boolean isReturningUser() {
return false;
}
}
+40 -5
View File
@@ -10,16 +10,40 @@ public class FileManager {
public FileManager() {
findSavedCharacters();
}
public boolean isReturninguser() {
return savedCharacters.length > 0;
}
// TODO: Need to implement. Reads file and returns a re-created CharacterSheet object.
public CharacterSheet readCharacter(int index) {
File character = savedCharacters[index];
CharacterSheet sheet = null;
return new CharacterSheet();
try {
FileInputStream fileIn = new FileInputStream("/tmp/" + savedCharacters[index].getPath() + ".dnd");
ObjectInputStream in = new ObjectInputStream(fileIn);
sheet = (CharacterSheet) in.readObject();
in.close();
fileIn.close();
} catch (IOException i) {
i.printStackTrace();
} catch (ClassNotFoundException c) {
System.out.println("Employee class not found");
c.printStackTrace();
}
return sheet;
}
@@ -42,17 +66,28 @@ public class FileManager {
}
// TODO: Need to implement.
public void deleteCharacter(int index) {
File[] tmp = new File[savedCharacters.length - 1];
for (int i = 0; i < savedCharacters.length; i++) {
if(i != index) {
tmp[i] = savedCharacters[i];
}
}
savedCharacters = tmp;
}
// TODO: Need to implement. Should create an array of Files corresponding to user-created characters.
private void findSavedCharacters() {
savedCharacters = new File("/bin/").listFiles();
}