about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorStar Rauchenberger <fefferburbia@gmail.com>2023-04-19 22:00:39 -0400
committerStar Rauchenberger <fefferburbia@gmail.com>2023-04-19 22:00:39 -0400
commit62904f7943498efe9a041b2d42cbc9dae48a4c7d (patch)
tree3f7c3ee9f26cf9e4bbdb910e02e833715dfb0f81
parent5406ebc4486340bb5d158ffa864bf2e60ffb410d (diff)
downloadlingo-archipelago-62904f7943498efe9a041b2d42cbc9dae48a4c7d.tar.gz
lingo-archipelago-62904f7943498efe9a041b2d42cbc9dae48a4c7d.tar.bz2
lingo-archipelago-62904f7943498efe9a041b2d42cbc9dae48a4c7d.zip
Signs get updated in panel shuffle mode
Palindromes room is fixed now too.
-rw-r--r--Archipelago/load.gd6
-rw-r--r--data/LL1.yaml14
-rw-r--r--util/generate_gamedata.rb8
3 files changed, 23 insertions, 5 deletions
diff --git a/Archipelago/load.gd b/Archipelago/load.gd index c720f45..b2e7608 100644 --- a/Archipelago/load.gd +++ b/Archipelago/load.gd
@@ -61,7 +61,8 @@ func _load():
61 "id": panel["id"], 61 "id": panel["id"],
62 "hint": panel_node.text, 62 "hint": panel_node.text,
63 "answer": panel_node.answer, 63 "answer": panel_node.answer,
64 "link": panel["link"] 64 "link": panel["link"],
65 "copy_to_sign": panel["copy_to_sign"]
65 } 66 }
66 ) 67 )
67 68
@@ -90,6 +91,9 @@ func _load():
90 target_panel_node.text = source["hint"] 91 target_panel_node.text = source["hint"]
91 target_panel_node.answer = source["answer"] 92 target_panel_node.answer = source["answer"]
92 93
94 for sign_name in target["copy_to_sign"]:
95 self.get_node("Decorations/PanelSign").get_node(sign_name).value = source["hint"]
96
93 # Handle our other static panels after panel randomization, so that the old 97 # Handle our other static panels after panel randomization, so that the old
94 # values can enter the pool, if necessary. 98 # values can enter the pool, if necessary.
95 set_static_panel("Entry Room/Panel_hi_hi", "hi") 99 set_static_panel("Entry Room/Panel_hi_hi", "hi")
diff --git a/data/LL1.yaml b/data/LL1.yaml index d7fcb36..482e177 100644 --- a/data/LL1.yaml +++ b/data/LL1.yaml
@@ -287,19 +287,27 @@
287 tag: midred 287 tag: midred
288- id: Palindrome Room/Panel_solos_solos 288- id: Palindrome Room/Panel_solos_solos
289 color: black 289 color: black
290 tag: midblack 290 tag: palindrome
291 copy_to_sign:
292 - sign5
293 - sign6
291- id: Palindrome Room/Panel_solos_solos_2 294- id: Palindrome Room/Panel_solos_solos_2
292 color: white 295 color: white
293 tag: midwhite 296 tag: midwhite
297 copy_to_sign:
298 - sign1
299 - sign2
294- id: Palindrome Room/Panel_racecar_racecar 300- id: Palindrome Room/Panel_racecar_racecar
295 color: black 301 color: black
296 tag: forbid # The signs make this and LEVEL too hard for now 302 tag: palindrome
303 copy_to_sign: sign4
297- id: Palindrome Room/Panel_racecar_racecar_2 304- id: Palindrome Room/Panel_racecar_racecar_2
298 color: white 305 color: white
299 tag: midwhite 306 tag: midwhite
307 copy_to_sign: sign3
300- id: Palindrome Room/Panel_level_level 308- id: Palindrome Room/Panel_level_level
301 color: black 309 color: black
302 tag: forbid 310 tag: midblack
303- id: Palindrome Room/Panel_level_level_2 311- id: Palindrome Room/Panel_level_level_2
304 color: white 312 color: white
305 tag: midwhite 313 tag: midwhite
diff --git a/util/generate_gamedata.rb b/util/generate_gamedata.rb index 7f4216f..5940480 100644 --- a/util/generate_gamedata.rb +++ b/util/generate_gamedata.rb
@@ -22,7 +22,13 @@ end.map do |panel|
22 ret["link"] = "\"#{panel["link"]}\"" 22 ret["link"] = "\"#{panel["link"]}\""
23 end 23 end
24 if panel.include? "copy_to_sign" 24 if panel.include? "copy_to_sign"
25 ret["copy_to_sign"] = "\"#{panel["copy_to_sign"]}\"" 25 copytos = []
26 if panel["copy_to_sign"].kind_of? String
27 copytos = [panel["copy_to_sign"]]
28 else
29 copytos = panel["copy_to_sign"]
30 end
31 ret["copy_to_sign"] = "[\"" + copytos.join("\",\"") + "\"]"
26 end 32 end
27 ret 33 ret
28end.map do |panel| 34end.map do |panel|