about summary refs log tree commit diff stats
path: root/client/Archipelago/player.gd
Commit message (Expand)AuthorAgeFilesLines
* [Client] Display wincon in entryStar Rauchenberger2025-09-111-1/+19
* [Client] Handle symbol shuffleStar Rauchenberger2025-09-091-0/+2
* [Client] Remove door behind X1Star Rauchenberger2025-09-091-0/+5
* [Client] Location scouting for lettersStar Rauchenberger2025-09-061-0/+17
* [Client] Handle roof access optionStar Rauchenberger2025-09-041-1/+1
* [Client] Handle keyholder sanityStar Rauchenberger2025-09-021-0/+24
* [Client] Handle triggering goalStar Rauchenberger2025-09-011-0/+23
* [Client] Batch sending locations on map loadStar Rauchenberger2025-08-311-0/+7
* [Client] Restrict Daedalus roof accessStar Rauchenberger2025-08-311-0/+50
* [Client] Keyholders in locationsStar Rauchenberger2025-08-311-0/+19
* [Client] Handle locations needing specific answersStar Rauchenberger2025-08-301-2/+9
* [Client] Added ending locationsStar Rauchenberger2025-08-291-0/+12
* [Client] Added mastery checksStar Rauchenberger2025-08-291-0/+12
* Client is starting to work!Star Rauchenberger2025-08-281-0/+42
olor: #dd7700 } /* Name.Variable.Global */ .highlight .vi { color: #3333bb } /* Name.Variable.Instance */ .highlight .vm { color: #336699 } /* Name.Variable.Magic */ .highlight .il { color: #0000DD; font-weight: bold } /* Literal.Number.Integer.Long */
extends "res://scripts/nodes/listeners/keyHolderChecker.gd"


func check():
	var ap = global.get_node("Archipelago")
	var matches = []
	for map in ap.keyboard.keyholder_state.keys():
		var nodes = ap.keyboard.keyholder_state[map]
		for node in nodes.keys():
			matches.append([nodes[node], 1, map, "/root/scene/%s" % node])

	var count = 0
	for key_match in matches:
		var active = (
			key_match[2] + String(key_match[3]).replace("/root/scene/Components/KeyHolders/", ".")
		)
		if map[active] == key_match[0]:
			emit_signal("trigger_letter", key_match[0], true)
			count += 1
		else:
			emit_signal("trigger_letter", key_match[0], false)

	if count > 25:
		emit_signal("trigger")