From b622c127c667eeea71822ffd3e44a509c91e3e96 Mon Sep 17 00:00:00 2001 From: Andrew Opalach Date: Sun, 17 Aug 2025 12:57:15 -0400 Subject: Gravity disable hooks, disable mod button - Improve checks for special camera situations (add entering tent check). - Remove left over and incomplete keyboard support. Signed-off-by: Andrew Opalach --- ModSlots/ArmorIDS.py | 1 + ModSlots/ModSlots.py | 24 +++++++++++++++++++++--- 2 files changed, 22 insertions(+), 3 deletions(-) (limited to 'ModSlots') diff --git a/ModSlots/ArmorIDS.py b/ModSlots/ArmorIDS.py index 8526ab6..bc21eca 100644 --- a/ModSlots/ArmorIDS.py +++ b/ModSlots/ArmorIDS.py @@ -82,6 +82,7 @@ ''' ArmorIDS = { + 'pl000_0000': 'Invalid', 'pl001_0000': 'Leather', 'pl002_0000': 'Hunter\'s', 'pl002_0010': 'Hunter\'s', diff --git a/ModSlots/ModSlots.py b/ModSlots/ModSlots.py index 164fb0e..5cea62b 100755 --- a/ModSlots/ModSlots.py +++ b/ModSlots/ModSlots.py @@ -77,12 +77,15 @@ class Mod(): search = sub.find(armor_id) if search >= 0: return sub[search:search + 8] + return None def substitute_override_name(self, name): if name[0] == '[': name = name[1:-1] if name in ArmorIDS_Inverted.keys(): name = ArmorIDS_Inverted[name][2:] + else: + return None return name def file_sort_key(self, x): @@ -115,14 +118,29 @@ class Mod(): targets = [file] for i in range(0, len(targets)): target = targets[i] + invalid = False # Substitute armor names with their IDs. for key in self.overrides.keys(): if target.startswith(key): - name = self.substitute_override_name(self.overrides[key][0]) # Sub has to be first element. - target = target.replace(self.get_id_from_subpath(target), name) - if target in all_files: + override = self.overrides[key][0] # Sub has to be first element. + mapped_name = self.substitute_override_name(override) + if not mapped_name: + print(f'INVALID SUBSTITUTE: {override}.') + invalid = True + break + target_id = self.get_id_from_subpath(target) + if not target_id: + print(f'INVALID TARGET: {target}.') + invalid = True + break + target = target.replace(target_id, mapped_name) + break + if not invalid and target in all_files: print(f'DUPLICATE MAPPING: {target}.') + invalid = True + if invalid: del targets[i] + i -= 1 continue targets[i] = target all_files.extend(targets) -- cgit v1.2.3-101-g0448