Esempio n. 1
0
        public void StartServer()
        {
            ui.SetState(MultiplayerUIState.Server);
            MelonModLogger.Log("Starting server...");
            localRigTransforms = BWUtil.GetLocalRigTransforms();
            partyId            = SteamClient.SteamId + "P" + DateTimeOffset.UtcNow.ToUnixTimeSeconds().ToString();

            RichPresence.SetActivity(
                new Activity()
            {
                Details = "Hosting a server",
                Secrets = new ActivitySecrets()
                {
                    Join = SteamClient.SteamId.ToString()
                },
                Party = new ActivityParty()
                {
                    Id   = partyId,
                    Size = new PartySize()
                    {
                        CurrentSize = 1,
                        MaxSize     = MultiplayerMod.MAX_PLAYERS
                    }
                }
            });
            transportLayer.OnMessageReceived  += TransportLayer_OnMessageReceived;
            transportLayer.OnConnectionClosed += TransportLayer_OnConnectionClosed;
            transportLayer.StartListening();

            MultiplayerMod.OnLevelWasLoadedEvent += MultiplayerMod_OnLevelWasLoadedEvent;

            IsRunning = true;
        }