コード例 #1
0
        public void Test_ConnectionVarsWithDataIsValid()
        {
            ConnectionVariables connvars = new ConnectionVariables();

            ClientVariables clientvars = new ClientVariables();

            clientvars.uptime        = "29m10s";
            clientvars.idle          = "29m5s";
            clientvars.clientId      = 1;
            clientvars.clientName    = "my_client_name";
            clientvars.language      = ".NET";
            clientvars.ipAddress     = "10.10.10.111";
            clientvars.serverId      = "KJGHKJGHJGFTOIUGLKHGJHKFGJKLHIUGYUT";
            clientvars.rtt           = "2.74345s";
            clientvars.inMessages    = 10;
            clientvars.outMessages   = 14;
            clientvars.inBytes       = 3434343;
            clientvars.outBytes      = 1342132423;
            clientvars.subscriptions = 2;
            clientvars.pendingBytes  = 0;

            connvars.connections.Add(clientvars);

            // test things out
            Assert.True(connvars != null);
            Assert.True(connvars.connections != null);
            Assert.True(connvars.connections.Count == 1);
        }
コード例 #2
0
    public override void _Ready()
    {
        OS.WindowMaximized = true;

        //Do directory stuff
        ClientVariables clientVariables  = (ClientVariables)GetNode("/root/ClientVariables");
        Directory       ImportantFolders = new Directory();

        if (ImportantFolders.Open(clientVariables.TokenFolder) != Godot.Error.Ok)
        {
            ImportantFolders.MakeDir(clientVariables.TokenFolder);
        }

        if (ImportantFolders.Open(clientVariables.MapFolder) != Godot.Error.Ok)
        {
            ImportantFolders.MakeDir(clientVariables.MapFolder);
        }

        if (ImportantFolders.Open(clientVariables.DataFolder) != Godot.Error.Ok)
        {
            ImportantFolders.MakeDir(clientVariables.DataFolder);
        }

        Viewport root = GetTree().Root;

        CurrentScene = root.GetChild(root.GetChildCount() - 1);
    }
コード例 #3
0
 public override void _Ready()
 {
     LengthLabel     = (Label)GetNode("Length");
     ClientVariables = (ClientVariables)GetNode("/root/ClientVariables");
     fullTile        = ClientVariables.TileSize;
     halfTile        = fullTile / 2;
 }
コード例 #4
0
ファイル: Map.cs プロジェクト: Vargdidan/DunjanTools
 public override void _Ready()
 {
     ClientVariables = (ClientVariables)GetNode("/root/ClientVariables");
     tileSize        = ClientVariables.TileSize;
     CurrentMap      = "empty";
     TargetScale     = new Vector2(1, 1);
     RsetConfig(nameof(TargetScale), MultiplayerAPI.RPCMode.Remotesync);
 }
コード例 #5
0
    public override void _Ready()
    {
        ClientVariables = (ClientVariables)GetNode("/root/ClientVariables");
        this.Disabled   = !ClientVariables.NetworkOptions.DMRole;

        MapContainer         = (ScrollContainer)GetParent().GetNode("MapContainer");
        MapContainer.Visible = false;
    }
コード例 #6
0
    public void OnConnectPressed()
    {
        ClientVariables.SaveMainMenu();
        NetworkedMultiplayerENet peer = new NetworkedMultiplayerENet();
        Error result = peer.CreateClient(ClientVariables.NetworkOptions.IPAddress, ClientVariables.NetworkOptions.Port);

        if (result == Error.Ok)
        {
            GetTree().NetworkPeer = peer;
        }
    }
コード例 #7
0
    public override void _Ready()
    {
        ClientVariables = (ClientVariables)GetNode("/root/ClientVariables");
        Global          = (Global)GetNode("/root/Global");
        Network         = (Network)GetNode("/root/Network");
        OnlineContainer = (VBoxContainer)GetNode("UI/VBoxContainer/CenterContainer/OnlineContainer");

        OnlineContainer.GetNode("HBoxContainer/Host").Connect("pressed", Network, "OnHostPressed");
        OnlineContainer.GetNode("Connect").Connect("pressed", Network, "OnConnectPressed");
        OnlineContainer.GetNode("HBoxContainer/UPNP").Connect("toggled", Network, "OnUPNPToggled");
        OnlineContainer.GetNode("DM").Connect("toggled", Network, "OnDMToggled");

        ClientVariables.ResetVariables();
        ClientVariables.ConnectedPlayers.Clear();

        if (ClientVariables.NetworkOptions.Username != "Incognito")
        {
            LineEdit username = (LineEdit)OnlineContainer.GetNode("Username");
            username.Text = ClientVariables.NetworkOptions.Username;
        }

        if (ClientVariables.NetworkOptions.IPAddress != "127.0.0.1")
        {
            LineEdit ip = (LineEdit)OnlineContainer.GetNode("IP");
            ip.Text = ClientVariables.NetworkOptions.IPAddress;
        }

        if (ClientVariables.NetworkOptions.Port != 31400)
        {
            LineEdit port = (LineEdit)OnlineContainer.GetNode("Port");
            port.Text = ClientVariables.NetworkOptions.Port.ToString();
        }


        CheckBox dm = (CheckBox)OnlineContainer.GetNode("DM");

        dm.Pressed = ClientVariables.NetworkOptions.DMRole;

        CheckBox upnp = (CheckBox)OnlineContainer.GetNode("HBoxContainer/UPNP");

        upnp.Pressed = ClientVariables.NetworkOptions.UseUPNP;
    }
コード例 #8
0
        public void Test_NewClientVariablesIsValid()
        {
            ClientVariables clientvars = new ClientVariables();

            Assert.True(clientvars != null);
            Assert.True(clientvars.clientId == 0);
            Assert.True(clientvars.uptimeDays == 0);
            Assert.True(clientvars.uptimeHours == 0);
            Assert.True(clientvars.uptimeMinutes == 0);
            Assert.True(clientvars.uptimeSeconds == 0);
            Assert.True(clientvars.idleDays == 0);
            Assert.True(clientvars.idleHours == 0);
            Assert.True(clientvars.idleMinutes == 0);
            Assert.True(clientvars.idleSeconds == 0);
            Assert.True(clientvars.inMessages == 0);
            Assert.True(clientvars.outMessages == 0);
            Assert.True(clientvars.inBytes == 0);
            Assert.True(clientvars.outBytes == 0);
            Assert.True(clientvars.subscriptions == 0);
            Assert.True(clientvars.pendingBytes == 0);
            Assert.True(clientvars.roundTripTime == 0);
        }
コード例 #9
0
ファイル: Session.cs プロジェクト: Vargdidan/DunjanTools
    // Called when the node enters the scene tree for the first time.
    public override void _Ready()
    {
        TokenScene      = (PackedScene)GD.Load("res://Session/Token.tscn");
        TokenCounter    = 0;
        Tokens          = (Node2D)GetNode("Tokens");
        Map             = (Map)GetNode("Map");
        Ping            = (CPUParticles2D)GetNode("Ping");
        Global          = (Global)GetNode("/root/Global");
        ClientVariables = (ClientVariables)GetNode("/root/ClientVariables");

        // Connect signals
        Global.Connect("ChangedMap", this, nameof(RecievedChangeMap));
        GetTree().Connect("files_dropped", this, nameof(OnDropped));

        if (ClientVariables.NetworkOptions.DMRole)
        {
            Control mapList = (Control)GetNode("UI/HBoxContainer/MapList");
            mapList.Visible = true;
        }

        RpcId(1, nameof(RequestAddMe), GetTree().GetNetworkUniqueId(), ClientVariables.NetworkOptions.Username);
    }
コード例 #10
0
        public void Test_ClientVariablesWithDataIsValid()
        {
            ClientVariables clientvars = new ClientVariables();

            clientvars.uptime        = "29m10s";
            clientvars.idle          = "29m5s";
            clientvars.clientId      = 1;
            clientvars.clientName    = "my_client_name";
            clientvars.language      = ".NET";
            clientvars.ipAddress     = "10.10.10.111";
            clientvars.serverId      = "KJGHKJGHJGFTOIUGLKHGJHKFGJKLHIUGYUT";
            clientvars.rtt           = "2.743s";
            clientvars.inMessages    = 10;
            clientvars.outMessages   = 14;
            clientvars.inBytes       = 3434343;
            clientvars.outBytes      = 1342132423;
            clientvars.subscriptions = 2;
            clientvars.pendingBytes  = 0;

            Assert.True(clientvars != null);
            Assert.True(clientvars.clientId == 1);
            Assert.True(clientvars.uptimeDays == 0);
            Assert.True(clientvars.uptimeHours == 0);
            Assert.True(clientvars.uptimeMinutes == 29);
            Assert.True(clientvars.uptimeSeconds == 10);
            Assert.True(clientvars.idleDays == 0);
            Assert.True(clientvars.idleHours == 0);
            Assert.True(clientvars.idleMinutes == 29);
            Assert.True(clientvars.idleSeconds == 5);
            Assert.True(clientvars.inMessages == 10);
            Assert.True(clientvars.outMessages == 14);
            Assert.True(clientvars.inBytes == 3434343);
            Assert.True(clientvars.outBytes == 1342132423);
            Assert.True(clientvars.subscriptions == 2);
            Assert.True(clientvars.pendingBytes == 0);
            Assert.True(clientvars.roundTripTime == Convert.ToDecimal(2.743));
        }
コード例 #11
0
    // Main menu network controls:
    public void OnHostPressed()
    {
        ClientVariables.SaveMainMenu();
        if (ClientVariables.NetworkOptions.UseUPNP)
        {
            UPNP            upnp     = new UPNP();
            UPNP.UPNPResult resultV4 = (UPNP.UPNPResult)upnp.Discover(2000, 2, "InternetGatewayDevice");
            if (resultV4 == UPNP.UPNPResult.Success)
            {
                GD.Print("Will attempt to add port-forward with upnp ip v4");
                upnp.AddPortMapping(ClientVariables.NetworkOptions.Port);
            }
            else
            {
                upnp.DiscoverIpv6 = true;
                UPNP.UPNPResult resultV6 = (UPNP.UPNPResult)upnp.Discover(2000, 2, "InternetGatewayDevice");
                if (resultV6 == UPNP.UPNPResult.Success)
                {
                    GD.Print("Will attemt to add port-forward with upnp ip v6");
                    upnp.AddPortMapping(ClientVariables.NetworkOptions.Port);
                }
            }
        }
        var   peer   = new NetworkedMultiplayerENet();
        Error result = peer.CreateServer(ClientVariables.NetworkOptions.Port);

        if (result == Error.Ok)
        {
            GetTree().NetworkPeer = peer;
            Global.GotoScene("res://Session/Session.tscn");
        }
        else
        {
            GD.Print(result);
            GD.Print("On port:" + ClientVariables.NetworkOptions.Port);
        }
    }
コード例 #12
0
ファイル: SelectionBox.cs プロジェクト: Vargdidan/DunjanTools
 public override void _Ready()
 {
     ClientVariables = (ClientVariables)GetNode("/root/ClientVariables");
 }