mirror of
https://github.com/MarioSpore/Grinch-AP.git
synced 2025-10-21 20:21:32 -06:00
SM and SMZ3 apworld support (#1677)
This commit is contained in:
@@ -1,17 +1,18 @@
|
||||
import os, importlib
|
||||
from worlds.sm.variaRandomizer.logic.logic import Logic
|
||||
from worlds.sm.variaRandomizer.patches.common.patches import patches, additional_PLMs
|
||||
from worlds.sm.variaRandomizer.utils.parameters import appDir
|
||||
import importlib
|
||||
from ..logic.logic import Logic
|
||||
from ..patches.common.patches import patches, additional_PLMs
|
||||
from ..utils.parameters import appDir
|
||||
from ..utils.utils import listDir, exists
|
||||
|
||||
class PatchAccess(object):
|
||||
def __init__(self):
|
||||
# load all ips patches
|
||||
self.patchesPath = {}
|
||||
commonDir = os.path.join(appDir, 'worlds/sm/variaRandomizer/patches/common/ips/')
|
||||
for patch in os.listdir(commonDir):
|
||||
commonDir = "/".join((appDir, 'worlds/sm/variaRandomizer/patches/common/ips'))
|
||||
for patch in listDir(commonDir):
|
||||
self.patchesPath[patch] = commonDir
|
||||
logicDir = os.path.join(appDir, 'worlds/sm/variaRandomizer/patches/{}/ips/'.format(Logic.patches))
|
||||
for patch in os.listdir(logicDir):
|
||||
logicDir = "/".join((appDir, 'worlds/sm/variaRandomizer/patches/{}/ips'.format(Logic.patches)))
|
||||
for patch in listDir(logicDir):
|
||||
self.patchesPath[patch] = logicDir
|
||||
|
||||
# load dict patches
|
||||
@@ -27,10 +28,10 @@ class PatchAccess(object):
|
||||
def getPatchPath(self, patch):
|
||||
# is patch preloaded
|
||||
if patch in self.patchesPath:
|
||||
return os.path.join(self.patchesPath[patch], patch)
|
||||
return "/".join((self.patchesPath[patch], patch))
|
||||
else:
|
||||
# patchs from varia_repository used by the customizer for permalinks
|
||||
if os.path.exists(patch):
|
||||
if exists(patch):
|
||||
return patch
|
||||
else:
|
||||
raise Exception("unknown patch: {}".format(patch))
|
||||
|
||||
Reference in New Issue
Block a user