diff options
| author | Star Rauchenberger <fefferburbia@gmail.com> | 2024-12-08 16:14:53 -0500 |
|---|---|---|
| committer | Star Rauchenberger <fefferburbia@gmail.com> | 2024-12-08 16:14:53 -0500 |
| commit | 84f4fc2db8b7ada36faa5341cb7bee17750f1a07 (patch) | |
| tree | e2f05a7dd4e7fe5aa54ea304f8b8de9f5664ba3c /Archipelago/load.gd | |
| parent | 4b53c8858448e4fc835c907813632f6eeddd543d (diff) | |
| download | lingo-archipelago-84f4fc2db8b7ada36faa5341cb7bee17750f1a07.tar.gz lingo-archipelago-84f4fc2db8b7ada36faa5341cb7bee17750f1a07.tar.bz2 lingo-archipelago-84f4fc2db8b7ada36faa5341cb7bee17750f1a07.zip | |
Add workaround for 0.5.1 number hunt logic bug
Diffstat (limited to 'Archipelago/load.gd')
| -rw-r--r-- | Archipelago/load.gd | 14 |
1 files changed, 14 insertions, 0 deletions
| diff --git a/Archipelago/load.gd b/Archipelago/load.gd index 4811b47..e593548 100644 --- a/Archipelago/load.gd +++ b/Archipelago/load.gd | |||
| @@ -551,6 +551,20 @@ func _load(): | |||
| 551 | proxynode.exact_proxy = true | 551 | proxynode.exact_proxy = true |
| 552 | proxynode.request_ready() | 552 | proxynode.request_ready() |
| 553 | oldparent.add_child(proxynode) | 553 | oldparent.add_child(proxynode) |
| 554 | |||
| 555 | # If the world was generated on 0.5.1, apply the hotfix for the number hunt doors. | ||
| 556 | if apclient.wasGeneratedOnVersion(0, 5, 1): | ||
| 557 | var number_hunt_parent = get_node("Doors/Count Up Room Area Doors") | ||
| 558 | var extradata_051_fix = apclient.get_node("Extradata").panels_mode_051_door_fixes | ||
| 559 | for template_door_path in extradata_051_fix: | ||
| 560 | var template_door = number_hunt_parent.get_node(template_door_path) | ||
| 561 | var impacted_doors = extradata_051_fix[template_door_path] | ||
| 562 | for impacted_door_path in impacted_doors: | ||
| 563 | var impacted_door = number_hunt_parent.get_node(impacted_door_path) | ||
| 564 | var copied_door = impacted_door.duplicate() | ||
| 565 | copied_door.panels = template_door.panels | ||
| 566 | number_hunt_parent.add_child(copied_door) | ||
| 567 | impacted_door.queue_free() | ||
| 554 | 568 | ||
| 555 | # Attach a script to every panel so that we can do things like conditionally | 569 | # Attach a script to every panel so that we can do things like conditionally |
| 556 | # disable them. | 570 | # disable them. |
