Example #1
0
    public override void _Ready()
    {
        hostWindow          = GetNode <WindowDialog>("HostWindow");
        joinWindow          = GetNode <WindowDialog>("JoinWindow");
        hostPortEdit        = (LineEdit)hostWindow.FindNode("PortEdit");
        joinHostEdit        = (LineEdit)joinWindow.FindNode("HostEdit");
        joinPortEdit        = (LineEdit)joinWindow.FindNode("PortEdit");
        easyModeCheckButton = (CheckButton)FindNode("EasyModeCheckButton");

        hostPortEdit.Text           = GameSettings.Instance.ServerPort.ToString();
        joinHostEdit.Text           = GameSettings.Instance.ClientHost;
        joinPortEdit.Text           = GameSettings.Instance.ClientPort.ToString();
        easyModeCheckButton.Pressed = GameSettings.Instance.Easy;

        FindNode("ExitButton").Connect("pressed", this, nameof(OnExitButtonPressed));
        FindNode("SettingsButton").Connect("pressed", this, nameof(OnSettingsButtonPressed));
        FindNode("NewGameButton").Connect("pressed", this, nameof(OnNewGameButtonPressed));
        FindNode("HostGameButton").Connect("pressed", this, nameof(OnHostGameButtonPressed));
        FindNode("JoinGameButton").Connect("pressed", this, nameof(OnJoinGameButtonPressed));
        easyModeCheckButton.Connect("toggled", this, nameof(OnEasyModeCheckButtonPressed));

        joinWindow.Connect("popup_hide", this, nameof(OnJoinWindoPopupHide));
        joinWindow.FindNode("CancelButton").Connect("pressed", this, nameof(OnJoinWindowCancelButtonPressed));
        joinWindow.FindNode("JoinButton").Connect("pressed", this, nameof(OnJoinWindowJoinButtonPressed));
        hostWindow.Connect("popup_hide", this, nameof(OnHostWindowPopupHide));
        hostWindow.FindNode("HostButton").Connect("pressed", this, nameof(OnHostWindowHostButtonPressed));

        Signals.PlayerUpdatedEvent += OnPlayerUpdated;
        GetTree().Connect("server_disconnected", this, nameof(OnServerDisconnected));
        GetTree().Connect("connection_failed", this, nameof(OnConnectionFailed));
    }
Example #2
0
 public override void _Process(float delta)
 {
     if (!Input.IsActionJustPressed("ui_cancel") || Popup != null)
     {
         return;
     }
     Popup = PopupScene.Instance <WindowDialog>();
     Popup.GetNode("Button_quit").Connect("pressed", this, nameof(PopupQuit));
     Popup.Connect("popup_hide", this, nameof(PopupClosed));
     Popup.GetNode("Button_resume").Connect("pressed", this, nameof(PopupClosed));
     CanvasLayer.AddChild(Popup);
     Popup.PopupCentered();
     Input.SetMouseMode(Input.MouseMode.Visible);
     GetTree().Paused = true;
 }