Fix MultiTracker breaking after Hint is used
This commit is contained in:
parent
4292cdddd5
commit
764e6e7926
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):
|
||||
|
|
Loading…
Reference in New Issue