about summary refs log tree commit diff stats
path: root/Archipelago
diff options
context:
space:
mode:
Diffstat (limited to 'Archipelago')
-rw-r--r--Archipelago/client.gd6
-rw-r--r--Archipelago/extradata.gd15
-rw-r--r--Archipelago/load.gd1
-rw-r--r--Archipelago/painting.gd32
4 files changed, 43 insertions, 11 deletions
diff --git a/Archipelago/client.gd b/Archipelago/client.gd index 2c60f7c..fffd8c3 100644 --- a/Archipelago/client.gd +++ b/Archipelago/client.gd
@@ -19,7 +19,7 @@ var enable_multiplayer = false
19var track_player = false 19var track_player = false
20var connection_history = [] 20var connection_history = []
21 21
22const my_version = "5.3.1" 22const my_version = "5.4.0"
23const ap_version = {"major": 0, "minor": 5, "build": 1, "class": "Version"} 23const ap_version = {"major": 0, "minor": 5, "build": 1, "class": "Version"}
24const color_items = [ 24const color_items = [
25 "White", "Black", "Red", "Blue", "Green", "Brown", "Gray", "Orange", "Purple", "Yellow" 25 "White", "Black", "Red", "Blue", "Green", "Brown", "Gray", "Orange", "Purple", "Yellow"
@@ -908,8 +908,8 @@ func processItem(item, index, from, flags):
908 item_name += " (%s)" % prognames[item_name][_progressive_progress[int(item)]] 908 item_name += " (%s)" % prognames[item_name][_progressive_progress[int(item)]]
909 _progressive_progress[int(item)] += 1 909 _progressive_progress[int(item)] += 1
910 910
911 if _color_shuffle and color_items.has(_item_id_to_name["Lingo"][item]): 911 if _color_shuffle and color_items.has(_item_id_to_name["Lingo"][float(item)]):
912 var lcol = _item_id_to_name["Lingo"][item].to_lower() 912 var lcol = _item_id_to_name["Lingo"][float(item)].to_lower()
913 if not _has_colors.has(lcol): 913 if not _has_colors.has(lcol):
914 _has_colors.append(lcol) 914 _has_colors.append(lcol)
915 emit_signal("evaluate_solvability") 915 emit_signal("evaluate_solvability")
diff --git a/Archipelago/extradata.gd b/Archipelago/extradata.gd index 2e26eb2..c90433a 100644 --- a/Archipelago/extradata.gd +++ b/Archipelago/extradata.gd
@@ -177,3 +177,18 @@ var panels_mode_051_door_fixes = {
177 "Door_nine_hider_2" 177 "Door_nine_hider_2"
178 ] 178 ]
179} 179}
180
181var pilgrimage_061_painting_fixes = [
182 "outside2",
183 "outside_2",
184 "outside_3",
185 "outside_4",
186 "north2",
187 "south2",
188 "west2",
189 "east_enter",
190 "owl_painting_4",
191 "garden_painting",
192 "yinyang_painting",
193 "fruitbowl_painting2"
194]
diff --git a/Archipelago/load.gd b/Archipelago/load.gd index e050f23..b95e4c4 100644 --- a/Archipelago/load.gd +++ b/Archipelago/load.gd
@@ -120,6 +120,7 @@ func _load():
120 new_master_cdp.translation = old_master_cdp.translation 120 new_master_cdp.translation = old_master_cdp.translation
121 new_master_cdp.rotation = old_master_cdp.rotation 121 new_master_cdp.rotation = old_master_cdp.rotation
122 get_node("CountdownPanels").add_child(new_master_cdp) 122 get_node("CountdownPanels").add_child(new_master_cdp)
123 old_master_cdp.total = 5000
123 old_master_cdp.queue_free() 124 old_master_cdp.queue_free()
124 125
125 # Configure AN OTHER WAY. 126 # Configure AN OTHER WAY.
diff --git a/Archipelago/painting.gd b/Archipelago/painting.gd index adc8337..dc791ce 100644 --- a/Archipelago/painting.gd +++ b/Archipelago/painting.gd
@@ -1,10 +1,26 @@
1extends "res://scripts/painting.gd" 1extends "res://scripts/painting.gd"
2 2
3func _looked_at(var body, var painting): 3var breaks_pilgrimage = false
4 ._looked_at(body, painting) 4
5 5
6 if body.is_in_group("player") && (painting.get_name() == self.get_name()): 6func _ready():
7 var apclient = global.get_node("Archipelago") 7 var apclient = global.get_node("Archipelago")
8 if !apclient._pilgrimage_allows_paintings: 8 if !apclient._pilgrimage_allows_paintings:
9 global.sunwarp = 1 9 if apclient.wasGeneratedBeforeVersion(0, 6, 2):
10 body.get_node("pivot/camera/sunwarp_background").visible = false 10 var extradata = apclient.get_node("Extradata")
11 if not extradata.pilgrimage_061_painting_fixes.has(get_name()):
12 breaks_pilgrimage = true
13 else:
14 breaks_pilgrimage = true
15
16
17func _looked_at(body, painting):
18 ._looked_at(body, painting)
19
20 if (
21 breaks_pilgrimage
22 and body.is_in_group("player")
23 and (painting.get_name() == self.get_name())
24 ):
25 global.sunwarp = 1
26 body.get_node("pivot/camera/sunwarp_background").visible = false