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):
|
||||
if module == "builtins" and name in safe_builtins:
|
||||
return getattr(builtins, name)
|
||||
if module == "NetUtils" and name in {"NetworkItem", "ClientStatus"}:
|
||||
if module == "NetUtils" and name in {"NetworkItem", "ClientStatus", "Hint"}:
|
||||
import NetUtils
|
||||
return getattr(NetUtils, name)
|
||||
# Forbid everything else.
|
||||
|
@@ -60,6 +60,7 @@ def get_shapes(world: MultiWorld, player: int) -> Dict[str, List[str]]:
|
||||
previous_slice = []
|
||||
while len(tech_names) > slice_size:
|
||||
slice = tech_names[:slice_size]
|
||||
world.random.shuffle(slice)
|
||||
tech_names = tech_names[slice_size:]
|
||||
for i, tech_name in enumerate(previous_slice):
|
||||
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 = []
|
||||
while slice_size:
|
||||
slice = tech_names[:slice_size]
|
||||
world.random.shuffle(slice)
|
||||
tech_names = tech_names[slice_size:]
|
||||
if previous_slice:
|
||||
for i, tech_name in enumerate(slice):
|
||||
|
Reference in New Issue
Block a user