diff options
Diffstat (limited to 'Archipelago/client.gd')
| -rw-r--r-- | Archipelago/client.gd | 12 |
1 files changed, 12 insertions, 0 deletions
| diff --git a/Archipelago/client.gd b/Archipelago/client.gd index e3b2c89..f0a4d2e 100644 --- a/Archipelago/client.gd +++ b/Archipelago/client.gd | |||
| @@ -92,6 +92,7 @@ var _last_new_item = -1 | |||
| 92 | var _progressive_progress = {} | 92 | var _progressive_progress = {} |
| 93 | var _has_colors = ["white"] | 93 | var _has_colors = ["white"] |
| 94 | var _received_indexes = [] | 94 | var _received_indexes = [] |
| 95 | var _puzzle_skips = 0 | ||
| 95 | 96 | ||
| 96 | signal could_not_connect | 97 | signal could_not_connect |
| 97 | signal connect_status | 98 | signal connect_status |
| @@ -539,6 +540,7 @@ func mapFinishedLoading(): | |||
| 539 | _received_indexes.clear() | 540 | _received_indexes.clear() |
| 540 | _progressive_progress.clear() | 541 | _progressive_progress.clear() |
| 541 | _has_colors = ["white"] | 542 | _has_colors = ["white"] |
| 543 | _puzzle_skips = 0 | ||
| 542 | emit_signal("evaluate_solvability") | 544 | emit_signal("evaluate_solvability") |
| 543 | 545 | ||
| 544 | for item in _held_items: | 546 | for item in _held_items: |
| @@ -632,6 +634,8 @@ func processItem(item, index, from, flags): | |||
| 632 | effects_node.trigger_iceland_trap() | 634 | effects_node.trigger_iceland_trap() |
| 633 | if item_name == "Atbash Trap": | 635 | if item_name == "Atbash Trap": |
| 634 | effects_node.trigger_atbash_trap() | 636 | effects_node.trigger_atbash_trap() |
| 637 | if item_name == "Puzzle Skip": | ||
| 638 | _puzzle_skips += 1 | ||
| 635 | 639 | ||
| 636 | 640 | ||
| 637 | func doorIsVanilla(door): | 641 | func doorIsVanilla(door): |
| @@ -646,6 +650,14 @@ func evaluateSolvability(): | |||
| 646 | emit_signal("evaluate_solvability") | 650 | emit_signal("evaluate_solvability") |
| 647 | 651 | ||
| 648 | 652 | ||
| 653 | func getAvailablePuzzleSkips(): | ||
| 654 | return _puzzle_skips | ||
| 655 | |||
| 656 | |||
| 657 | func usePuzzleSkip(): | ||
| 658 | _puzzle_skips -= 1 | ||
| 659 | |||
| 660 | |||
| 649 | func colorForItemType(flags): | 661 | func colorForItemType(flags): |
| 650 | var int_flags = int(flags) | 662 | var int_flags = int(flags) |
| 651 | if int_flags & 1: # progression | 663 | if int_flags & 1: # progression |
