diff --git a/pom.xml b/pom.xml index e5af217..313d023 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ 4.0.0 SpeedSouls SaveOrganizer - 1.4-SNAPSHOT + 1.4.1-SNAPSHOT diff --git a/src/com/speedsouls/organizer/data/OrganizerManager.java b/src/com/speedsouls/organizer/data/OrganizerManager.java index 899aff9..5c841ac 100644 --- a/src/com/speedsouls/organizer/data/OrganizerManager.java +++ b/src/com/speedsouls/organizer/data/OrganizerManager.java @@ -60,7 +60,7 @@ public class OrganizerManager { - public static final String VERSION = "1.4"; + public static final String VERSION = "1.4.1"; /** * Constants defining various URLs. @@ -682,6 +682,8 @@ public static boolean isAlwaysOnTop() */ public static void switchCurrentGameFileWritableState() { + if (getSelectedGame().equals(Game.DARK_SOULS_REMASTERED)) + return; File gameFile = getSelectedGame().getSaveFileLocation(); gameFile.setWritable(!gameFile.canWrite()); fireGameFileWritableStateChangedEvent(gameFile.canWrite()); diff --git a/src/com/speedsouls/organizer/games/Game.java b/src/com/speedsouls/organizer/games/Game.java index a2998fc..f7ed873 100644 --- a/src/com/speedsouls/organizer/games/Game.java +++ b/src/com/speedsouls/organizer/games/Game.java @@ -20,6 +20,7 @@ public enum Game { DARK_SOULS("Dark Souls", "DS1", "DRAKS0005.sl2"), + DARK_SOULS_REMASTERED("Dark Souls Remastered", "DSR", "DRAKS0005.sl2"), DARK_SOULS_II("Dark Souls II", "DS2", "DARKSII0000.sl2"), DARK_SOULS_II_SOTFS("Dark Souls II: SotFS", "DS2SOTFS", "DS2SOFS0000.sl2"), DARK_SOULS_III("Dark Souls III", "DS3", "DS30000.sl2"); diff --git a/src/com/speedsouls/organizer/savelist/GamesComboBox.java b/src/com/speedsouls/organizer/savelist/GamesComboBox.java index b876615..7c10960 100644 --- a/src/com/speedsouls/organizer/savelist/GamesComboBox.java +++ b/src/com/speedsouls/organizer/savelist/GamesComboBox.java @@ -22,7 +22,7 @@ * @author Kahmul (www.twitch.tv/kahmul78) * @date 29 Sep 2015 */ -public class GamesComboBox extends JComboBoximplements ListCellRenderer +public class GamesComboBox extends JComboBox implements ListCellRenderer { private static final long serialVersionUID = -3428616630686103313L; @@ -39,6 +39,7 @@ public GamesComboBox(Game[] games, ProfilesComboBox profilesCB) fillWith(games); setRenderer(this); + setPrototypeDisplayValue(Game.DARK_SOULS_II_SOTFS); addItemListener(event -> { if (event.getStateChange() == ItemEvent.SELECTED) { diff --git a/src/com/speedsouls/organizer/savelist/ReadOnlyButton.java b/src/com/speedsouls/organizer/savelist/ReadOnlyButton.java index d4dd816..46891ed 100644 --- a/src/com/speedsouls/organizer/savelist/ReadOnlyButton.java +++ b/src/com/speedsouls/organizer/savelist/ReadOnlyButton.java @@ -44,6 +44,9 @@ public ReadOnlyButton(File file, ImageIcon img) addMouseListener(this); OrganizerManager.addProfileListener(this); OrganizerManager.addSaveListener(this); + + if (OrganizerManager.getSelectedGame().equals(Game.DARK_SOULS_REMASTERED)) + setVisible(false); } @@ -82,7 +85,7 @@ public void setFile(File file) */ public void doClick() { - if (file == null || !file.exists()) + if (file == null || !file.exists() || OrganizerManager.getSelectedGame().equals(Game.DARK_SOULS_REMASTERED)) return; setEnabled(!isEnabled()); file.setWritable(!isEnabled()); @@ -159,6 +162,10 @@ public void changedToProfile(Profile profile) public void changedToGame(Game game) { setFile(game.getSaveFileLocation()); + if (game.equals(Game.DARK_SOULS_REMASTERED)) + setVisible(false); + else + setVisible(true); } diff --git a/src/com/speedsouls/organizer/savelist/SaveList.java b/src/com/speedsouls/organizer/savelist/SaveList.java index e6b88f2..8b243f8 100644 --- a/src/com/speedsouls/organizer/savelist/SaveList.java +++ b/src/com/speedsouls/organizer/savelist/SaveList.java @@ -156,6 +156,8 @@ public void sortEntries() { SaveListEntry selectedEntry = OrganizerManager.getSelectedEntry(); Profile currentProfile = OrganizerManager.getSelectedProfile(); + if (currentProfile.getRoot() == null) + return; currentProfile.getRoot().sort(); fillWith(currentProfile, null); int selectedIndex = ((DefaultListModel) getModel()).indexOf(selectedEntry); diff --git a/src/com/speedsouls/organizer/savelist/SaveListContextMenu.java b/src/com/speedsouls/organizer/savelist/SaveListContextMenu.java index 2d1fff8..70be389 100644 --- a/src/com/speedsouls/organizer/savelist/SaveListContextMenu.java +++ b/src/com/speedsouls/organizer/savelist/SaveListContextMenu.java @@ -13,6 +13,7 @@ import javax.swing.KeyStroke; import com.speedsouls.organizer.data.OrganizerManager; +import com.speedsouls.organizer.games.Game; import jiconfont.icons.Elusive; import jiconfont.icons.Entypo; @@ -55,7 +56,8 @@ public SaveListContextMenu(SaveList saveList, int x, int y) add(itemAdd); add(itemRemove); add(itemEdit); - add(itemReadOnly); + if (!OrganizerManager.getSelectedGame().equals(Game.DARK_SOULS_REMASTERED)) + add(itemReadOnly); add(itemRefresh); add(itemOpenInExplorer);