about summary refs log tree commit diff stats
path: root/Archipelago/painting.gd
diff options
context:
space:
mode:
authorStar Rauchenberger <fefferburbia@gmail.com>2025-05-17 13:15:19 -0400
committerStar Rauchenberger <fefferburbia@gmail.com>2025-05-17 13:15:19 -0400
commit55e420736009afd82afa2c830921e10c67b42445 (patch)
treee16c38132536f588eb80e7b3e07b44337e0fae1c /Archipelago/painting.gd
parent215e47b99d9d2bbe003286c7b78c21ad65b27794 (diff)
downloadlingo-archipelago-55e420736009afd82afa2c830921e10c67b42445.tar.gz
lingo-archipelago-55e420736009afd82afa2c830921e10c67b42445.tar.bz2
lingo-archipelago-55e420736009afd82afa2c830921e10c67b42445.zip
Stopgap fix for Bearer paintings in pilgrimage
AP 0.6.1 and earlier logically expects you to use The Bearer's paintings during pilgrimage even if paintings in pilgrimage are disabled. This changes those paintings so that they do work in this case, but only for multiworlds generated in 0.6.1 and earlier.
Diffstat (limited to 'Archipelago/painting.gd')
-rw-r--r--Archipelago/painting.gd32
1 files changed, 24 insertions, 8 deletions
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