diff options
-rw-r--r-- | data/connections.txtpb | 1 | ||||
-rw-r--r-- | data/maps/the_congruent/connections.txtpb | 45 | ||||
-rw-r--r-- | data/maps/the_congruent/doors.txtpb | 120 | ||||
-rw-r--r-- | data/maps/the_congruent/rooms/C Keyholder.txtpb | 7 | ||||
-rw-r--r-- | data/maps/the_congruent/rooms/C2 Room.txtpb | 7 | ||||
-rw-r--r-- | data/maps/the_congruent/rooms/Flipped Magenta Room.txtpb | 72 | ||||
-rw-r--r-- | data/maps/the_congruent/rooms/Flipped Yellow Room.txtpb | 58 | ||||
-rw-r--r-- | data/maps/the_congruent/rooms/G Keyholder.txtpb | 7 | ||||
-rw-r--r-- | data/maps/the_congruent/rooms/G2 Room.txtpb | 7 | ||||
-rw-r--r-- | data/maps/the_congruent/rooms/Main Area.txtpb | 104 | ||||
-rw-r--r-- | data/maps/the_congruent/rooms/Obverse Magenta Room.txtpb | 15 | ||||
-rw-r--r-- | data/maps/the_congruent/rooms/Obverse Yellow Room.txtpb | 16 | ||||
-rw-r--r-- | data/maps/the_congruent/rooms/T Keyholder.txtpb | 6 | ||||
-rw-r--r-- | proto/human.proto | 10 |
14 files changed, 475 insertions, 0 deletions
diff --git a/data/connections.txtpb b/data/connections.txtpb index 5c6dad3..7cbca9a 100644 --- a/data/connections.txtpb +++ b/data/connections.txtpb | |||
@@ -17,6 +17,7 @@ | |||
17 | # the_colorful/White Room/GREAT | 17 | # the_colorful/White Room/GREAT |
18 | # the_colorful/Cyan Hallway/STURDY | 18 | # the_colorful/Cyan Hallway/STURDY |
19 | # the_colorful/Cyan Hallway/DARKROOM | 19 | # the_colorful/Cyan Hallway/DARKROOM |
20 | # the_congruent/Main Area/DARKROOM | ||
20 | connections { | 21 | connections { |
21 | from { | 22 | from { |
22 | panel { | 23 | panel { |
diff --git a/data/maps/the_congruent/connections.txtpb b/data/maps/the_congruent/connections.txtpb new file mode 100644 index 0000000..2af0a4d --- /dev/null +++ b/data/maps/the_congruent/connections.txtpb | |||
@@ -0,0 +1,45 @@ | |||
1 | connections { | ||
2 | from_room: "Main Area" | ||
3 | to_room: "Flipped Magenta Room" | ||
4 | door { name: "Flipped Magenta Door" } | ||
5 | } | ||
6 | connections { | ||
7 | from_room: "Main Area" | ||
8 | to_room: "Flipped Yellow Room" | ||
9 | door { name: "Flipped Yellow Door" } | ||
10 | } | ||
11 | connections { | ||
12 | from_room: "Main Area" | ||
13 | to_room: "C Keyholder" | ||
14 | door { name: "C Keyholder Blocker" } | ||
15 | } | ||
16 | connections { | ||
17 | from_room: "Main Area" | ||
18 | to_room: "C2 Room" | ||
19 | door { name: "C2 Door" } | ||
20 | } | ||
21 | connections { | ||
22 | from_room: "Main Area" | ||
23 | to_room: "Obverse Yellow Room" | ||
24 | door { name: "Obverse Yellow Door" } | ||
25 | } | ||
26 | connections { | ||
27 | from_room: "Obverse Yellow Room" | ||
28 | to_room: "G Keyholder" | ||
29 | door { name: "G Keyholder Blocker" } | ||
30 | } | ||
31 | connections { | ||
32 | from_room: "Main Area" | ||
33 | to_room: "G2 Room" | ||
34 | door { name: "G2 Door" } | ||
35 | } | ||
36 | connections { | ||
37 | from_room: "Main Area" | ||
38 | to_room: "Obverse Magenta Room" | ||
39 | door { name: "Obverse Magenta Door" } | ||
40 | } | ||
41 | connections { | ||
42 | from_room: "Obverse Magenta Room" | ||
43 | to_room: "T Keyholder" | ||
44 | door { name: "T Keyholder Blocker" } | ||
45 | } | ||
diff --git a/data/maps/the_congruent/doors.txtpb b/data/maps/the_congruent/doors.txtpb new file mode 100644 index 0000000..7c21f55 --- /dev/null +++ b/data/maps/the_congruent/doors.txtpb | |||
@@ -0,0 +1,120 @@ | |||
1 | doors { | ||
2 | name: "Obverse Magenta Door" | ||
3 | type: STANDARD | ||
4 | receivers: "Components/Doors/magenta_enterer2" | ||
5 | panels { room: "Main Area" name: "LAKE" } | ||
6 | panels { room: "Main Area" name: "DIE" } | ||
7 | location_room: "Main Area" | ||
8 | } | ||
9 | doors { | ||
10 | name: "Flipped Magenta Door" | ||
11 | type: STANDARD | ||
12 | receivers: "Components/Doors/magenta_enterer" | ||
13 | panels { room: "Main Area" name: "LOVES" } | ||
14 | panels { room: "Main Area" name: "RANGER" } | ||
15 | panels { room: "Main Area" name: "LACE" } | ||
16 | panels { room: "Main Area" name: "COAT" } | ||
17 | panels { room: "Main Area" name: "LABS (1)" } | ||
18 | panels { room: "Main Area" name: "LABS (2)" } | ||
19 | location_room: "Main Area" | ||
20 | } | ||
21 | doors { | ||
22 | name: "Flipped Yellow Door" | ||
23 | type: STANDARD | ||
24 | receivers: "Components/Doors/yellow_enterer" | ||
25 | panels { room: "Flipped Magenta Room" name: "LOOK" } | ||
26 | panels { room: "Flipped Magenta Room" name: "SLOW" } | ||
27 | panels { room: "Flipped Magenta Room" name: "RULE" } | ||
28 | panels { room: "Flipped Magenta Room" name: "MALE" } | ||
29 | panels { room: "Flipped Magenta Room" name: "LAST" } | ||
30 | panels { room: "Flipped Magenta Room" name: "LATE" } | ||
31 | panels { room: "Flipped Magenta Room" name: "LEFT" } | ||
32 | panels { room: "Flipped Magenta Room" name: "LIST" } | ||
33 | panels { room: "Flipped Magenta Room" name: "LUST" } | ||
34 | panels { room: "Flipped Magenta Room" name: "LAND" } | ||
35 | location_room: "Flipped Magenta Room" | ||
36 | } | ||
37 | doors { | ||
38 | name: "C Keyholder Blocker" | ||
39 | type: STANDARD | ||
40 | receivers: "Components/Doors/controlDoor" | ||
41 | panels { room: "Flipped Yellow Room" name: "DANCER" } | ||
42 | panels { room: "Flipped Yellow Room" name: "CROWN" } | ||
43 | panels { room: "Flipped Yellow Room" name: "CRUEL" } | ||
44 | panels { room: "Flipped Yellow Room" name: "BRICK" } | ||
45 | panels { room: "Flipped Yellow Room" name: "FLACK" } | ||
46 | panels { room: "Flipped Yellow Room" name: "TACK" } | ||
47 | panels { room: "Flipped Yellow Room" name: "CAVE (1)" } | ||
48 | panels { room: "Flipped Yellow Room" name: "CAVE (2)" } | ||
49 | location_room: "Flipped Yellow Room" | ||
50 | } | ||
51 | doors { | ||
52 | name: "C2 Door" | ||
53 | type: STANDARD | ||
54 | receivers: "Components/Doors/c_enterer" | ||
55 | receivers: "Components/Doors/gridC" | ||
56 | keyholders { | ||
57 | room: "C Keyholder" | ||
58 | name: "C" | ||
59 | key: "c" | ||
60 | } | ||
61 | location_room: "C Keyholder" | ||
62 | } | ||
63 | doors { | ||
64 | name: "Obverse Yellow Door" | ||
65 | type: ITEM_ONLY | ||
66 | receivers: "Components/Doors/magenta_enterer4" | ||
67 | rooms { name: "C2 Room" } | ||
68 | } | ||
69 | doors { | ||
70 | name: "Obverse Yellow Puzzles" | ||
71 | type: LOCATION_ONLY | ||
72 | panels { room: "Obverse Yellow Room" name: "CIVIL" } | ||
73 | panels { room: "Obverse Yellow Room" name: "CRABS" } | ||
74 | location_room: "Obverse Yellow Room" | ||
75 | } | ||
76 | doors { | ||
77 | name: "Near C Keyholder Puzzles" | ||
78 | type: LOCATION_ONLY | ||
79 | panels { room: "Main Area" name: "LANE (1)" } | ||
80 | panels { room: "Main Area" name: "LANE (2)" } | ||
81 | panels { room: "Main Area" name: "LANE (3)" } | ||
82 | location_room: "Main Area" | ||
83 | } | ||
84 | doors { | ||
85 | name: "G Keyholder Blocker" | ||
86 | type: ITEM_ONLY | ||
87 | receivers: "Components/Doors/controlDoor2" | ||
88 | panels { room: "Main Area" name: "LANE (1)" } | ||
89 | panels { room: "Main Area" name: "LANE (2)" } | ||
90 | panels { room: "Main Area" name: "LANE (3)" } | ||
91 | panels { room: "Main Area" name: "LIGHT" } | ||
92 | panels { room: "Obverse Yellow Room" name: "CIVIL" } | ||
93 | panels { room: "Obverse Yellow Room" name: "CRABS" } | ||
94 | panels { room: "Flipped Yellow Room" name: "DANCER" } | ||
95 | panels { room: "Flipped Yellow Room" name: "CROWN" } | ||
96 | panels { room: "Flipped Yellow Room" name: "CRUEL" } | ||
97 | panels { room: "Flipped Yellow Room" name: "BRICK" } | ||
98 | panels { room: "Flipped Yellow Room" name: "FLACK" } | ||
99 | panels { room: "Flipped Yellow Room" name: "TACK" } | ||
100 | panels { room: "Flipped Yellow Room" name: "CAVE (1)" } | ||
101 | panels { room: "Flipped Yellow Room" name: "CAVE (2)" } | ||
102 | } | ||
103 | doors { | ||
104 | name: "G2 Door" | ||
105 | type: STANDARD | ||
106 | receivers: "Components/Doors/g_enterer" | ||
107 | receivers: "Components/Doors/gridG" | ||
108 | keyholders { | ||
109 | room: "G Keyholder" | ||
110 | name: "G" | ||
111 | key: "g" | ||
112 | } | ||
113 | location_room: "G Keyholder" | ||
114 | } | ||
115 | doors { | ||
116 | name: "T Keyholder Blocker" | ||
117 | type: ITEM_ONLY | ||
118 | receivers: "Components/Doors/magenta_enterer3" | ||
119 | switches: "lavender_cubes" | ||
120 | } | ||
diff --git a/data/maps/the_congruent/rooms/C Keyholder.txtpb b/data/maps/the_congruent/rooms/C Keyholder.txtpb new file mode 100644 index 0000000..0af0f32 --- /dev/null +++ b/data/maps/the_congruent/rooms/C Keyholder.txtpb | |||
@@ -0,0 +1,7 @@ | |||
1 | name: "C Keyholder" | ||
2 | display_name: "Main Area" | ||
3 | keyholders { | ||
4 | name: "C" | ||
5 | path: "Components/KeyHolders/keyHolder" | ||
6 | # TODO: This will need to be modified so that it doesn't actually take the letter. | ||
7 | } | ||
diff --git a/data/maps/the_congruent/rooms/C2 Room.txtpb b/data/maps/the_congruent/rooms/C2 Room.txtpb new file mode 100644 index 0000000..69c9a46 --- /dev/null +++ b/data/maps/the_congruent/rooms/C2 Room.txtpb | |||
@@ -0,0 +1,7 @@ | |||
1 | name: "C2 Room" | ||
2 | display_name: "Main Area" | ||
3 | letters { | ||
4 | key: "c" | ||
5 | double: true | ||
6 | path: "Components/Collectables/collectable2" | ||
7 | } | ||
diff --git a/data/maps/the_congruent/rooms/Flipped Magenta Room.txtpb b/data/maps/the_congruent/rooms/Flipped Magenta Room.txtpb new file mode 100644 index 0000000..db33a80 --- /dev/null +++ b/data/maps/the_congruent/rooms/Flipped Magenta Room.txtpb | |||
@@ -0,0 +1,72 @@ | |||
1 | name: "Flipped Magenta Room" | ||
2 | display_name: "Flipped Magenta Room" | ||
3 | panels { | ||
4 | name: "LOOK" | ||
5 | path: "Panels/Side Up 1/panel_1" | ||
6 | clue: "look" | ||
7 | answer: "cook" | ||
8 | symbols: "sparkles" | ||
9 | } | ||
10 | panels { | ||
11 | name: "SLOW" | ||
12 | path: "Panels/Side Up 1/panel_2" | ||
13 | clue: "slow" | ||
14 | answer: "show" | ||
15 | symbols: "sparkles" | ||
16 | } | ||
17 | panels { | ||
18 | name: "RULE" | ||
19 | path: "Panels/Side Up 1/panel_3" | ||
20 | clue: "rule" | ||
21 | answer: "rude" | ||
22 | symbols: "sparkles" | ||
23 | } | ||
24 | panels { | ||
25 | name: "MALE" | ||
26 | path: "Panels/Side Up 1/panel_4" | ||
27 | clue: "male" | ||
28 | answer: "mace" | ||
29 | symbols: "sparkles" | ||
30 | } | ||
31 | panels { | ||
32 | name: "LAST" | ||
33 | path: "Panels/Side Up 1/panel_5" | ||
34 | clue: "last" | ||
35 | answer: "fast" | ||
36 | symbols: "sparkles" | ||
37 | } | ||
38 | panels { | ||
39 | name: "LATE" | ||
40 | path: "Panels/Side Up 1/panel_6" | ||
41 | clue: "late" | ||
42 | answer: "date" | ||
43 | symbols: "sparkles" | ||
44 | } | ||
45 | panels { | ||
46 | name: "LEFT" | ||
47 | path: "Panels/Side Up 1/panel_7" | ||
48 | clue: "left" | ||
49 | answer: "heft" | ||
50 | symbols: "sparkles" | ||
51 | } | ||
52 | panels { | ||
53 | name: "LIST" | ||
54 | path: "Panels/Side Up 1/panel_8" | ||
55 | clue: "list" | ||
56 | answer: "fist" | ||
57 | symbols: "sparkles" | ||
58 | } | ||
59 | panels { | ||
60 | name: "LUST" | ||
61 | path: "Panels/Side Up 1/panel_9" | ||
62 | clue: "lust" | ||
63 | answer: "gust" | ||
64 | symbols: "sparkles" | ||
65 | } | ||
66 | panels { | ||
67 | name: "LAND" | ||
68 | path: "Panels/Side Up 1/panel_10" | ||
69 | clue: "land" | ||
70 | answer: "sand" | ||
71 | symbols: "sparkles" | ||
72 | } | ||
diff --git a/data/maps/the_congruent/rooms/Flipped Yellow Room.txtpb b/data/maps/the_congruent/rooms/Flipped Yellow Room.txtpb new file mode 100644 index 0000000..6056ec3 --- /dev/null +++ b/data/maps/the_congruent/rooms/Flipped Yellow Room.txtpb | |||
@@ -0,0 +1,58 @@ | |||
1 | name: "Flipped Yellow Room" | ||
2 | display_name: "Flipped Yellow Room" | ||
3 | panels { | ||
4 | name: "DANCER" | ||
5 | path: "Panels/Back 1/panel_1" | ||
6 | clue: "dancer" | ||
7 | answer: "danger" | ||
8 | symbols: "sparkles" | ||
9 | } | ||
10 | panels { | ||
11 | name: "CROWN" | ||
12 | path: "Panels/Back 1/panel_2" | ||
13 | clue: "crown" | ||
14 | answer: "grown" | ||
15 | symbols: "sparkles" | ||
16 | } | ||
17 | panels { | ||
18 | name: "CRUEL" | ||
19 | path: "Panels/Back 1/panel_3" | ||
20 | clue: "cruel" | ||
21 | answer: "gruel" | ||
22 | symbols: "sparkles" | ||
23 | } | ||
24 | panels { | ||
25 | name: "BRICK" | ||
26 | path: "Panels/Back 1/panel_4" | ||
27 | clue: "brick" | ||
28 | answer: "brisk" | ||
29 | symbols: "sparkles" | ||
30 | } | ||
31 | panels { | ||
32 | name: "FLACK" | ||
33 | path: "Panels/Back 1/panel_5" | ||
34 | clue: "flack" | ||
35 | answer: "flask" | ||
36 | symbols: "sparkles" | ||
37 | } | ||
38 | panels { | ||
39 | name: "TACK" | ||
40 | path: "Panels/Back 1/panel_6" | ||
41 | clue: "tack" | ||
42 | answer: "task" | ||
43 | symbols: "sparkles" | ||
44 | } | ||
45 | panels { | ||
46 | name: "CAVE (1)" | ||
47 | path: "Panels/Back 1/panel_7" | ||
48 | clue: "cave" | ||
49 | answer: "gave" | ||
50 | symbols: "sparkles" | ||
51 | } | ||
52 | panels { | ||
53 | name: "CAVE (2)" | ||
54 | path: "Panels/Back 1/panel_8" | ||
55 | clue: "cave" | ||
56 | answer: "save" | ||
57 | symbols: "sparkles" | ||
58 | } | ||
diff --git a/data/maps/the_congruent/rooms/G Keyholder.txtpb b/data/maps/the_congruent/rooms/G Keyholder.txtpb new file mode 100644 index 0000000..c52d7ba --- /dev/null +++ b/data/maps/the_congruent/rooms/G Keyholder.txtpb | |||
@@ -0,0 +1,7 @@ | |||
1 | name: "G Keyholder" | ||
2 | display_name: "Obverse Yellow Room" | ||
3 | keyholders { | ||
4 | name: "G" | ||
5 | path: "Components/KeyHolders/keyHolder2" | ||
6 | # TODO: This will need to be modified so that it doesn't actually take the letter. | ||
7 | } | ||
diff --git a/data/maps/the_congruent/rooms/G2 Room.txtpb b/data/maps/the_congruent/rooms/G2 Room.txtpb new file mode 100644 index 0000000..ba9d772 --- /dev/null +++ b/data/maps/the_congruent/rooms/G2 Room.txtpb | |||
@@ -0,0 +1,7 @@ | |||
1 | name: "G2 Room" | ||
2 | display_name: "Main Area" | ||
3 | letters { | ||
4 | key: "g" | ||
5 | double: true | ||
6 | path: "Components/Collectables/collectable" | ||
7 | } | ||
diff --git a/data/maps/the_congruent/rooms/Main Area.txtpb b/data/maps/the_congruent/rooms/Main Area.txtpb new file mode 100644 index 0000000..6728c96 --- /dev/null +++ b/data/maps/the_congruent/rooms/Main Area.txtpb | |||
@@ -0,0 +1,104 @@ | |||
1 | name: "Main Area" | ||
2 | display_name: "Main Area" | ||
3 | panels { | ||
4 | name: "LANE (1)" | ||
5 | path: "Panels/Main/panel_1" | ||
6 | clue: "lane" | ||
7 | answer: "came" | ||
8 | symbols: "sparkles" | ||
9 | } | ||
10 | panels { | ||
11 | name: "LANE (2)" | ||
12 | path: "Panels/Main/panel_5" | ||
13 | clue: "lane" | ||
14 | answer: "cane" | ||
15 | symbols: "sparkles" | ||
16 | } | ||
17 | panels { | ||
18 | name: "LANE (3)" | ||
19 | path: "Panels/Main/panel_8" | ||
20 | clue: "lane" | ||
21 | answer: "game" | ||
22 | symbols: "sparkles" | ||
23 | } | ||
24 | panels { | ||
25 | name: "LAKE" | ||
26 | path: "Panels/Cake/panel_1" | ||
27 | clue: "lake" | ||
28 | answer: "cake" | ||
29 | symbols: "sparkles" | ||
30 | } | ||
31 | panels { | ||
32 | name: "DIE" | ||
33 | path: "Panels/Cake/panel_2" | ||
34 | clue: "die" | ||
35 | answer: "lie" | ||
36 | symbols: "sparkles" | ||
37 | } | ||
38 | panels { | ||
39 | name: "LIGHT" | ||
40 | path: "Panels/Main/panel_9" | ||
41 | clue: "light" | ||
42 | answer: "right" | ||
43 | symbols: "sparkles" | ||
44 | } | ||
45 | panels { | ||
46 | name: "LOVES" | ||
47 | path: "Panels/Side 1/panel_2" | ||
48 | clue: "loves" | ||
49 | answer: "coves" | ||
50 | symbols: "sparkles" | ||
51 | } | ||
52 | panels { | ||
53 | name: "RANGER" | ||
54 | path: "Panels/Side 1/panel_4" | ||
55 | clue: "ranger" | ||
56 | answer: "dancer" | ||
57 | symbols: "sparkles" | ||
58 | } | ||
59 | panels { | ||
60 | name: "LACE" | ||
61 | path: "Panels/Side 1/panel_6" | ||
62 | clue: "lace" | ||
63 | answer: "cage" | ||
64 | symbols: "sparkles" | ||
65 | } | ||
66 | panels { | ||
67 | name: "COAT" | ||
68 | path: "Panels/Side 1/panel_7" | ||
69 | clue: "coat" | ||
70 | answer: "goat" | ||
71 | symbols: "sparkles" | ||
72 | } | ||
73 | panels { | ||
74 | name: "LABS (1)" | ||
75 | path: "Panels/Side 1/panel_8" | ||
76 | clue: "labs" | ||
77 | answer: "gabs" | ||
78 | symbols: "sparkles" | ||
79 | } | ||
80 | panels { | ||
81 | name: "LABS (2)" | ||
82 | path: "Panels/Side 1/panel_9" | ||
83 | clue: "labs" | ||
84 | answer: "cabs" | ||
85 | symbols: "sparkles" | ||
86 | } | ||
87 | ports { | ||
88 | name: "DARKROOM" | ||
89 | path: "Components/Warps/worldport2" | ||
90 | } | ||
91 | paintings { | ||
92 | name: "P" | ||
93 | path: "Components/Paintings/p" | ||
94 | orientation: "south" | ||
95 | exit_only: true | ||
96 | display_name: "Near Cyan Painting" | ||
97 | } | ||
98 | paintings { | ||
99 | name: "F" | ||
100 | path: "Components/Paintings/f" | ||
101 | orientation: "south" | ||
102 | exit_only: true | ||
103 | display_name: "Near Yellow Painting" | ||
104 | } | ||
diff --git a/data/maps/the_congruent/rooms/Obverse Magenta Room.txtpb b/data/maps/the_congruent/rooms/Obverse Magenta Room.txtpb new file mode 100644 index 0000000..b69a4d4 --- /dev/null +++ b/data/maps/the_congruent/rooms/Obverse Magenta Room.txtpb | |||
@@ -0,0 +1,15 @@ | |||
1 | name: "Obverse Magenta Room" | ||
2 | display_name: "Obverse Magenta Room" | ||
3 | # TODO: Should these two maybe not be randomizable because they hint the keyholder? | ||
4 | paintings { | ||
5 | name: "TEA" | ||
6 | path: "Components/Paintings/tea" | ||
7 | orientation: "east" | ||
8 | display_name: "Magenta Room Left Painting" | ||
9 | } | ||
10 | paintings { | ||
11 | name: "TEE" | ||
12 | path: "Components/Paintings/tee" | ||
13 | orientation: "west" | ||
14 | display_name: "Magenta Room Right Painting" | ||
15 | } | ||
diff --git a/data/maps/the_congruent/rooms/Obverse Yellow Room.txtpb b/data/maps/the_congruent/rooms/Obverse Yellow Room.txtpb new file mode 100644 index 0000000..d77f60b --- /dev/null +++ b/data/maps/the_congruent/rooms/Obverse Yellow Room.txtpb | |||
@@ -0,0 +1,16 @@ | |||
1 | name: "Obverse Yellow Room" | ||
2 | display_name: "Obverse Yellow Room" | ||
3 | panels { | ||
4 | name: "CIVIL" | ||
5 | path: "Panels/Main/panel_6" | ||
6 | clue: "civil" | ||
7 | answer: "civic" | ||
8 | symbols: "sparkles" | ||
9 | } | ||
10 | panels { | ||
11 | name: "CRABS" | ||
12 | path: "Panels/Main/panel_7" | ||
13 | clue: "crabs" | ||
14 | answer: "grabs" | ||
15 | symbols: "sparkles" | ||
16 | } | ||
diff --git a/data/maps/the_congruent/rooms/T Keyholder.txtpb b/data/maps/the_congruent/rooms/T Keyholder.txtpb new file mode 100644 index 0000000..1cfd2bd --- /dev/null +++ b/data/maps/the_congruent/rooms/T Keyholder.txtpb | |||
@@ -0,0 +1,6 @@ | |||
1 | name: "T Keyholder" | ||
2 | display_name: "Obverse Magenta Room" | ||
3 | keyholders { | ||
4 | name: "T" | ||
5 | path: "Components/KeyHolders/keyHolderT" | ||
6 | } | ||
diff --git a/proto/human.proto b/proto/human.proto index 0de1f0e..7d61fcb 100644 --- a/proto/human.proto +++ b/proto/human.proto | |||
@@ -33,6 +33,13 @@ message PanelIdentifier { | |||
33 | string answer = 4; | 33 | string answer = 4; |
34 | } | 34 | } |
35 | 35 | ||
36 | message KeyholderIdentifier { | ||
37 | string map = 1; | ||
38 | string room = 2; | ||
39 | string name = 3; | ||
40 | string key = 4; | ||
41 | } | ||
42 | |||
36 | message HumanConnection { | 43 | message HumanConnection { |
37 | message Endpoint { | 44 | message Endpoint { |
38 | oneof endpoint { | 45 | oneof endpoint { |
@@ -76,6 +83,8 @@ message HumanDoor { | |||
76 | 83 | ||
77 | string control_center_color = 6; | 84 | string control_center_color = 6; |
78 | repeated string switches = 7; | 85 | repeated string switches = 7; |
86 | repeated KeyholderIdentifier keyholders = 10; | ||
87 | repeated RoomIdentifier rooms = 11; | ||
79 | 88 | ||
80 | DoorType type = 4; | 89 | DoorType type = 4; |
81 | string location_room = 5; | 90 | string location_room = 5; |
@@ -109,6 +118,7 @@ message HumanPainting { | |||
109 | bool move = 6; | 118 | bool move = 6; |
110 | bool enter_only = 7; | 119 | bool enter_only = 7; |
111 | bool flipped = 8; | 120 | bool flipped = 8; |
121 | bool exit_only = 9; | ||
112 | 122 | ||
113 | DoorIdentifier required_door = 5; | 123 | DoorIdentifier required_door = 5; |
114 | } | 124 | } |