mirror of
https://github.com/MarioSpore/Grinch-AP.git
synced 2025-10-21 20:21:32 -06:00
Fix MultiTracker breaking after Hint is used
This commit is contained in:
2
Utils.py
2
Utils.py
@@ -390,7 +390,7 @@ class RestrictedUnpickler(pickle.Unpickler):
|
|||||||
def find_class(self, module, name):
|
def find_class(self, module, name):
|
||||||
if module == "builtins" and name in safe_builtins:
|
if module == "builtins" and name in safe_builtins:
|
||||||
return getattr(builtins, name)
|
return getattr(builtins, name)
|
||||||
if module == "NetUtils" and name in {"NetworkItem", "ClientStatus"}:
|
if module == "NetUtils" and name in {"NetworkItem", "ClientStatus", "Hint"}:
|
||||||
import NetUtils
|
import NetUtils
|
||||||
return getattr(NetUtils, name)
|
return getattr(NetUtils, name)
|
||||||
# Forbid everything else.
|
# Forbid everything else.
|
||||||
|
@@ -60,6 +60,7 @@ def get_shapes(world: MultiWorld, player: int) -> Dict[str, List[str]]:
|
|||||||
previous_slice = []
|
previous_slice = []
|
||||||
while len(tech_names) > slice_size:
|
while len(tech_names) > slice_size:
|
||||||
slice = tech_names[:slice_size]
|
slice = tech_names[:slice_size]
|
||||||
|
world.random.shuffle(slice)
|
||||||
tech_names = tech_names[slice_size:]
|
tech_names = tech_names[slice_size:]
|
||||||
for i, tech_name in enumerate(previous_slice):
|
for i, tech_name in enumerate(previous_slice):
|
||||||
prerequisites.setdefault(slice[i], set()).add(tech_name)
|
prerequisites.setdefault(slice[i], set()).add(tech_name)
|
||||||
@@ -84,6 +85,7 @@ def get_shapes(world: MultiWorld, player: int) -> Dict[str, List[str]]:
|
|||||||
previous_slice = []
|
previous_slice = []
|
||||||
while slice_size:
|
while slice_size:
|
||||||
slice = tech_names[:slice_size]
|
slice = tech_names[:slice_size]
|
||||||
|
world.random.shuffle(slice)
|
||||||
tech_names = tech_names[slice_size:]
|
tech_names = tech_names[slice_size:]
|
||||||
if previous_slice:
|
if previous_slice:
|
||||||
for i, tech_name in enumerate(slice):
|
for i, tech_name in enumerate(slice):
|
||||||
|
Reference in New Issue
Block a user