edition = "2023"; import "common.proto"; package com.fourisland.lingo2_archipelago; message ProxyIdentifier { uint64 panel = 1; string answer = 2; } message Connection { uint64 from_room = 1; uint64 to_room = 2; uint64 required_door = 3; oneof trigger { uint64 port = 4; uint64 painting = 5; ProxyIdentifier panel = 6; } } message Door { uint64 id = 1; uint64 map_id = 9; string name = 2; repeated string receivers = 3; repeated uint64 move_paintings = 4; repeated ProxyIdentifier panels = 5; string control_center_color = 6; repeated string switches = 7; DoorType type = 8; } message Panel { uint64 id = 1; uint64 room_id = 2; string name = 3; string path = 4; string clue = 5; string answer = 6; repeated string symbols = 7; repeated Proxy proxies = 8; uint64 required_door = 9; } message Painting { uint64 id = 1; uint64 room_id = 2; string name = 9; string path = 10; string display_name = 4; string orientation = 3; bool move = 6; bool enter_only = 7; bool flipped = 8; uint64 required_door = 5; } message Port { uint64 id = 1; uint64 room_id = 2; string name = 3; string path = 4; string orientation = 5; uint64 required_door = 6; } message Room { uint64 id = 1; uint64 map_id = 8; string name = 2; string display_name = 3; repeated uint64 panels = 4; repeated uint64 paintings = 5; repeated Letter letters = 6; repeated uint64 ports = 7; } message Map { uint64 id = 1; string name = 2; } message AllObjects { repeated Map maps = 7; repeated Room rooms = 1; repeated Door doors = 2; repeated Panel panels = 3; repeated Painting paintings = 4; repeated Port ports = 5; repeated Connection connections = 6; }