about summary refs log tree commit diff stats
path: root/client/Archipelago/settings_buttons.gd
blob: 9e61cb0d35858021da93dfea81203c60efd06edb (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
extends Button


func _ready():
	pass


func _connect_pressed():
	self.disabled = true

	var ap = global.get_node("Archipelago")
	ap.ap_server = self.get_parent().get_node("server_box").text
	ap.ap_user = self.get_parent().get_node("player_box").text
	ap.ap_pass = self.get_parent().get_node("password_box").text
	ap.saveSettings()

	ap.connectToServer()


func _back_pressed():
	var ap = global.get_node("Archipelago")
	ap.disconnect_from_ap()

	get_tree().change_scene_to_file("res://objects/scenes/menus/main_menu.tscn")
eric.Deleted */ .highlight .ge { font-style: italic } /* Generic.Emph */ .highlight .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */ .highlight .gr { color: #aa0000 } /* Generic.Error */ .highlight .gh { color: #333333 } /* Generic.Heading */ .highlight .gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */ .highlight .go { color: #888888 } /* Generic.Output */ .highlight .gp { color: #555555 } /* Generic.Prompt */ .highlight .gs { font-weight: bold } /* Generic.Strong */ .highlight .gu { color: #666666 } /* Generic.Subheading */ .highlight .gt { color: #aa0000 } /* Generic.Traceback */ .highlight .kc { color: #008800; font-weight: bold } /* Keyword.Constant */ .highlight .kd { color: #008800; font-weight: bold } /* Keyword.Declaration */ .highlight .kn { color: #008800; font-weight: bold } /* Keyword.Namespace */ .highlight .kp { color: #008800 } /* Keyword.Pseudo */ .highlight .kr { color: #008800; font-weight: bold } /* Keyword.Reserved */ .highlight .kt { color: #888888; font-weight: bold } /* Keyword.Type */ .highlight .m { color: #0000DD; font-weight: bold } /* Literal.Number */ .highlight .s { color: #dd2200; background-color: #fff0f0 } /* Literal.String */ .highlight .na { color: #336699 } /* Name.Attribute */ .highlight .nb { color: #003388 } /* Name.Builtin */ .highlight .nc { color: #bb0066; font-weight: bold } /* Name.Class */ .highlight .no { color: #003366; font-weight: bold } /* Name.Constant */ .highlight .nd { color: #555555 } /* Name.Decorator */ .highlight .ne { color: #bb0066; font-weight: bold } /* Name.Exception */ .highlight .nf { color: #0066bb; font-weight: bold } /* Name.Function */ .highlight .nl { color: #336699; font-style: italic } /* Name.Label */ .highlight .nn { color: #bb0066; font-weight: bold } /* Name.Namespace */ .highlight .py { color: #336699; font-weight: bold } /* Name.Property */ .highlight .nt { color: #bb0066; font-weight: bold } /* Name.Tag */ .highlight .nv { color: #336699 } /* Name.Variable */ .highlight .ow { color: #008800 } /* Operator.Word */ .highlight .w { color: #bbbbbb } /* Text.Whitespace */ .highlight .mb { color: #0000DD; font-weight: bold } /* Literal.Number.Bin */ .highlight .mf { color: #0000DD; font-weight: bold } /* Literal.Number.Float */ .highlight .mh { color: #0000DD; font-weight: bold } /* Literal.Number.Hex */ .highlight .mi { color: #0000DD; font-weight: bold } /* Literal.Number.Integer */ .highlight .mo { color: #0000DD; font-weight: bold } /* Literal.Number.Oct */ .highlight .sa { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Affix */ .highlight .sb { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Backtick */ .highlight .sc { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Char */ .highlight .dl { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Delimiter */ .highlight .sd { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Doc */ .highlight .s2 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Double */ .highlight .se { color: #0044dd; background-color: #fff0f0 } /* Literal.String.Escape */ .highlight .sh { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Heredoc */ .highlight .si { color: #3333bb; background-color: #fff0f0 } /* Literal.String.Interpol */ .highlight .sx { color: #22bb22; background-color: #f0fff0 } /* Literal.String.Other */ .highlight .sr { color: #008800; background-color: #fff0ff } /* Literal.String.Regex */ .highlight .s1 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Single */ .highlight .ss { color: #aa6600; background-color: #fff0f0 } /* Literal.String.Symbol */ .highlight .bp { color: #003388 } /* Name.Builtin.Pseudo */ .highlight .fm { color: #0066bb; font-weight: bold } /* Name.Function.Magic */ .highlight .vc { color: #336699 } /* Name.Variable.Class */ .highlight .vg { color: #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 */
syntax = "proto2";

package com.fourisland.lingo2_archipelago;

message Proxy {
  optional string answer = 1;
  optional string path = 2;
}

enum DoorType {
  DOOR_TYPE_UNKNOWN = 0;

  // This door is a location unless panelsanity is on, and it is an item as long as door shuffle is on.
  STANDARD = 1;

  // This door is never an item or a location.
  EVENT = 2;

  // This door is never a location, and is an item as long as door shuffle is on.
  ITEM_ONLY = 3;

  // This door is never a location, and is an item as long as control center color shuffle is on.
  CONTROL_CENTER_COLOR = 4;

  // This door is never an item, and is a location as long as panelsanity is not on.
  LOCATION_ONLY = 5;

  // This door is an item if gravestone shuffle is enabled, and is a location as long as panelsanity is not on.
  GRAVESTONE = 6;
}

enum DoorGroupType {
  DOOR_GROUP_TYPE_UNKNOWN = 0;

  // These doors border a worldport. They should be grouped when connections are
  // not shuffled.
  CONNECTOR = 1;

  // Similar to CONNECTOR, but these doors are also ordinarily opened by solving
  // the COLOR panel in the Control Center. These should be grouped when
  // connections are not shuffled, but are not items at all when control center
  // colors are not shuffled.
  COLOR_CONNECTOR = 2;

  // Groups with this type become an item if cyan door behavior is set to item.
  CYAN_DOORS = 3;

  // Groups with this type always become an item if door shuffle is on.
  SHUFFLE_GROUP = 4;
}

enum AxisDirection {
  AXIS_DIRECTION_UNKNOWN = 0;

  X_PLUS = 1;
  X_MINUS = 2;
  Y_PLUS = 3;
  Y_MINUS = 4;
  Z_PLUS = 5;
  Z_MINUS = 6;
}

enum PuzzleSymbol {
  PUZZLE_SYMBOL_UNKNOWN = 0;

  SUN = 1;
  SPARKLES = 2;
  ZERO = 3;
  EXAMPLE = 4;
  BOXES = 5;
  PLANET = 6;
  PYRAMID = 7;
  CROSS = 8;
  SWEET = 9;
  GENDER = 10;
  AGE = 11;
  SOUND = 12;
  ANAGRAM = 13;
  JOB = 14;
  STARS = 15;
  NULL = 16;
  EVAL = 17;
  LINGO = 18;
  QUESTION = 19;
}

message ProxyIdentifier {
  optional uint64 panel = 1;
  optional string answer = 2;
}

message KeyholderAnswer {
  optional uint64 keyholder = 1;
  optional string key = 2;
}

message Connection {
  optional uint64 from_room = 1;
  optional uint64 to_room = 2;
  optional uint64 required_door = 3;

  oneof trigger {
    uint64 port = 4;
    uint64 painting = 5;
    ProxyIdentifier panel = 6;
  }

  optional bool roof_access = 7;
}

message Door {
  optional uint64 id = 1;
  optional uint64 ap_id = 11;
  optional uint64 map_id = 9;
  optional uint64 room_id = 10;
  optional string name = 2;

  repeated string receivers = 3;
  repeated uint64 move_paintings = 4;

  repeated ProxyIdentifier panels = 5;
  optional uint64 complete_at = 12;

  optional string control_center_color = 6;
  repeated KeyholderAnswer keyholders = 13;
  repeated uint64 rooms = 14;
  repeated uint64 doors = 15;
  repeated uint64 endings = 16;
  optional bool double_letters = 18;

  optional DoorType type = 8;

  optional string location_name = 17;
}

message PanelData {
  optional uint64 id = 1;
  optional uint64 ap_id = 10;
  optional uint64 room_id = 2;
  optional string name = 3;

  optional string path = 4;
  optional string clue = 5;
  optional string answer = 6;
  repeated PuzzleSymbol symbols = 7;

  repeated Proxy proxies = 8;

  optional uint64 required_door = 9;
  optional uint64 required_room = 11;

  optional string display_name = 12;
}

message PaintingData {
  optional uint64 id = 1;
  optional uint64 room_id = 2;
  optional string name = 9;

  optional string path = 10;
  optional string display_name = 4;

  optional string orientation = 3;
  optional bool move = 6;
  optional bool enter_only = 7;
  optional AxisDirection gravity = 8;
  optional bool exit_only = 11;
  
  optional uint64 required_door = 5;
}

message Port {
  optional uint64 id = 1;
  optional uint64 room_id = 2;
  optional string name = 3;

  optional string path = 4;
  optional string orientation = 5;
  optional AxisDirection gravity = 7;

  optional uint64 required_door = 6;
}

message KeyholderData {
  optional uint64 id = 1;
  optional uint64 ap_id = 6;
  optional uint64 room_id = 2;

  optional string name = 3;
  optional string path = 4;
  optional string key = 5;
}

message Letter {
  optional uint64 id = 3;
  optional uint64 ap_id = 5;
  optional uint64 room_id = 4;

  optional string key = 1;
  optional bool level2 = 2;

  optional string path = 6;
}

message Mastery {
  optional uint64 id = 1;
  optional uint64 ap_id = 2;
  optional uint64 room_id = 3;

  optional string name = 4;
  optional string path = 5;
}

message Ending {
  optional uint64 id = 1;
  optional uint64 ap_id = 2;
  optional uint64 room_id = 3;

  optional string name = 4;

  optional string path = 5;
}

message Room {
  optional uint64 id = 1;
  optional uint64 map_id = 8;
  optional string name = 2;
  optional string display_name = 3;
  optional string panel_display_name = 13;

  repeated uint64 panels = 4;
  repeated uint64 paintings = 5;
  repeated uint64 letters = 6;
  repeated uint64 ports = 7;
  repeated uint64 doors = 9;
  repeated uint64 masteries = 10;
  repeated uint64 keyholders = 11;
  repeated uint64 endings = 12;
}

message Map {
  optional uint64 id = 1;
  optional string name = 2;
  optional string display_name = 3;
}

message Progressive {
  optional uint64 id = 1;
  optional string name = 2;
  optional uint64 ap_id = 3;
  repeated uint64 doors = 4;
}

message DoorGroup {
  optional uint64 id = 1;
  optional string name = 2;
  optional uint64 ap_id = 3;
  optional DoorGroupType type = 4;
  repeated uint64 doors = 5;
}

message AllObjects {
  optional uint64 version = 15;

  repeated Map maps = 7;
  repeated Room rooms = 1;
  repeated Door doors = 2;
  repeated PanelData panels = 3;
  repeated PaintingData paintings = 4;
  repeated Port ports = 5;
  repeated KeyholderData keyholders = 11;
  repeated Letter letters = 9;
  repeated Mastery masteries = 10;
  repeated Ending endings = 12;
  repeated Connection connections = 6;
  repeated Progressive progressives = 13;
  repeated DoorGroup door_groups = 14;
  map<string, uint64> special_ids = 8;
}