Пример #1
0
        private void RpcManager_RpcReceived(object sender, RpcEventArgs e)
        {
            if (e.Command != QuantumTunneling.QuantumTunnelingRpc)
            {
                return;
            }

            var cmd = e.MessageReader.ReadByte();

            switch (cmd)
            {
            case 0:
            {
                OnTime = e.MessageReader.ReadInt32();
                break;
            }

            case 1:
            {
                UseCooldown = e.MessageReader.ReadInt32();
                break;
            }

            case 2:
            {
                var plId    = e.MessageReader.ReadByte();
                var enabled = Convert.ToBoolean(e.MessageReader.ReadByte());

                var player = PlayerController.FromPlayerId(plId);

                player.HasCollision = !enabled;
                break;
            }
            }
        }
        private void RpcManager_RpcReceived(object sender, RpcEventArgs e)
        {
            if (e.Command != Confusion.ConfusionRpc)
            {
                return;
            }

            var cmd = e.MessageReader.ReadByte();

            switch (cmd)
            {
            case 0:
            {
                var playerId = e.MessageReader.ReadByte();
                var colorId  = e.MessageReader.ReadByte();
                var name     = e.MessageReader.ReadString();

                var player = PlayerController.FromPlayerId(playerId);

                if (player.IsLocalPlayer)
                {
                    player.RpcSetColor((ColorType)colorId);
                    player.RpcSetHat(HatType.NoHat);
                    player.RpcSetName(name);
                    player.RpcSetSkin(SkinType.None);
                    player.RpcSetPet(PetType.NoPet);
                }

                break;
            }
            }
        }
Пример #3
0
        private void RpcManager_RpcReceived(object sender, RpcEventArgs e)
        {
            if (e.Command == ColorSwap.ColorSwapRpc)
            {
                var cmd = e.MessageReader.ReadByte();
                switch (cmd)
                {
                case 0:
                {
                    SwapDelay = e.MessageReader.ReadInt32();
                    break;
                };

                case 1:
                {
                    var pid   = e.MessageReader.ReadByte();
                    var color = e.MessageReader.ReadByte();

                    var player = PlayerController.FromPlayerId(pid);

                    if (player.IsLocalPlayer)
                    {
                        player.RpcSetColor((ColorType)color);
                        player.RpcSetHat(HatType.NoHat);
                        player.RpcSetName("");
                        player.RpcSetSkin(SkinType.None);
                        player.RpcSetPet(PetType.NoPet);
                    }

                    break;
                }
                }
            }
        }
Пример #4
0
        private void RpcManager_RpcReceived(object sender, RpcEventArgs e)
        {
            if (e.Command != TheJester.JesterRpc)
            {
                return;
            }

            var cmd = e.MessageReader.ReadByte();

            switch (cmd)
            {
            case (byte)TheJester.CustomRpc.UpdateJesterCount:
            {
                NumJesters = e.MessageReader.ReadByte();
                break;
            }

            case (byte)TheJester.CustomRpc.SetJester:
            {
                setJester(PlayerController.FromPlayerId(e.MessageReader.ReadByte()));
                break;
            }

            case (byte)TheJester.CustomRpc.JesterExiled:
            {
                JesterWon();
                break;
            }
            }
        }
        private void RpcManager_RpcReceived(object sender, RpcEventArgs e)
        {
            if (e.Command != ImpostorInvisibility.ImpostorInvisibilityRpc)
            {
                return;
            }

            var cmd = e.MessageReader.ReadByte();

            switch (cmd)
            {
            case 0:
            {
                OnTime = e.MessageReader.ReadInt32();
                break;
            }

            case 1:
            {
                UseCooldown = e.MessageReader.ReadInt32();
                break;
            }

            case 2:
            {
                var plId    = e.MessageReader.ReadByte();
                var enabled = Convert.ToBoolean(e.MessageReader.ReadByte());

                if (enabled)
                {
                    InvisiblePlayers.Add(plId);
                }
                else if (InvisiblePlayers.Contains(plId))
                {
                    InvisiblePlayers.Remove(plId);

                    var player = PlayerController.FromPlayerId(plId);
                    player.SetOpacity(1);
                    player.IsVisible = true;
                }
                break;
            }
            }
        }
Пример #6
0
        private void RpcManager_RpcReceived(object sender, RpcEventArgs e)
        {
            if (e.Command != Cleaner.CleanerRpc)
            {
                return;
            }

            var cmd = e.MessageReader.ReadByte();

            switch (cmd)
            {
            case (byte)CustomRpc.UpdateSettings:
            {
                Enabled = Convert.ToBoolean(e.MessageReader.ReadByte());
                break;
            }

            case (byte)CustomRpc.SetCleaner:
            {
                var ctrl = PlayerController.FromPlayerId(e.MessageReader.ReadByte());

                setCleaner(ctrl);
                break;
            }

            case (byte)CustomRpc.CleanBody:
            {
                var id = e.MessageReader.ReadByte();

                removeBody(id);

                break;
            }

            case (byte)CustomRpc.UpdateCooldown:
            {
                CleanCooldown = e.MessageReader.ReadInt32();

                break;
            }
            }
        }
Пример #7
0
        private void RpcManager_RpcReceived(object sender, RpcEventArgs e)
        {
            if (e.Command != Teleportation.TeleportationRpc)
            {
                return;
            }

            var cmd = e.MessageReader.ReadByte();

            switch (cmd)
            {
            case 0:
            {
                TeleportationDelay = e.MessageReader.ReadInt32();
                break;
            }

            case 1:
            {
                Teleport();
                break;
            }
            }
        }
 private static void OnRpcError(object sender, RpcEventArgs e)
 {
     Debug.WriteLine("Rpc Call with Id - " + e.RpcError.RpcResponsetId + " error :" + e.RpcError.Error);
 }
 private static void OnRpcRequestTopic(object sender, RpcEventArgs e)
 {
     ReflectionHelper.InvokeRpcMethod(e.RpcRequest);
 }
        private void RpcManager_RpcReceived(object sender, RpcEventArgs e)
        {
            if (e.Command != BattleRoyale.BattleRoyalRpc)
            {
                return;
            }

            var command = e.MessageReader.ReadByte();

            switch (command)
            {
            case (byte)BattleRoyale.CustomRpcCalls.UpdateRandomStartLocation:
            {
                RandomStartLocation = Convert.ToBoolean(e.MessageReader.ReadByte());
                break;
            }

            case (byte)BattleRoyale.CustomRpcCalls.SendStartLocation:
            {
                var   playerId = e.MessageReader.ReadByte();
                float x        = e.MessageReader.ReadSingle();
                float y        = e.MessageReader.ReadSingle();

                var loc = new Vector2(x, y);

                var player = PlayerController.FromPlayerId(playerId);

                if (player.IsLocalPlayer)
                {
                    player.RpcSnapTo(loc);
                }
                break;
            }

            case (byte)BattleRoyale.CustomRpcCalls.SetWinner:
            {
                var winner = PlayerController.FromPlayerId(e.MessageReader.ReadByte());

                RolePlayer MyRole = new RolePlayer(PlayerController.LocalPlayer, "Default");

                MyRole.RoleOutro.UseRoleOutro = true;

                if (winner.IsLocalPlayer)
                {
                    MyRole.RoleOutro.WinText         = "Victory Royale";
                    MyRole.RoleOutro.WinTextColor    = new Color(255 / 255f, 174 / 255f, 0 / 255f);
                    MyRole.RoleOutro.BackgroundColor = new Color(1f, 0.8f, 0f);
                }
                else
                {
                    MyRole.RoleOutro.WinText         = winner.PlayerData.PlayerName;
                    MyRole.RoleOutro.WinTextColor    = new Color(255 / 255f, 174 / 255f, 0 / 255f);
                    MyRole.RoleOutro.BackgroundColor = new Color(1f, 0f, 0f);
                }

                winner.PlayerData.IsImpostor = true;
                break;
            }

            case (byte)BattleRoyale.CustomRpcCalls.KillPlayer:
            {
                var killer = PlayerController.FromPlayerId(e.MessageReader.ReadByte());
                var target = PlayerController.FromPlayerId(e.MessageReader.ReadByte());

                if (!killer.PlayerData.IsDead && !target.PlayerData.IsDead && CheepsAmongUsMod.CheepsAmongUsMod.IsDecidingClient)
                {
                    RpcManager.SendRpc(BattleRoyale.BattleRoyalRpc, new byte[] { (byte)BattleRoyale.CustomRpcCalls.MurderPlayer, killer.PlayerId, target.PlayerId });

                    killer.PlayerControl.MurderPlayer(target.PlayerControl);
                    target.PlayerData.IsDead = true;
                }
                break;
            }

            case (byte)BattleRoyale.CustomRpcCalls.MurderPlayer:
            {
                var killer = PlayerController.FromPlayerId(e.MessageReader.ReadByte());
                var target = PlayerController.FromPlayerId(e.MessageReader.ReadByte());

                killer.PlayerControl.MurderPlayer(target.PlayerControl);
                target.PlayerData.IsDead = true;
                break;
            }
            }
        }
Пример #11
0
 private static void OnAttributesResponseTopic(object sender, RpcEventArgs e)
 {
     Console.WriteLine("Attributes Response" + e.AttributesResponse.ToString() + " ok");
 }
Пример #12
0
 private static void OnRpcResponseTopic(object sender, RpcEventArgs e)
 {
     Console.WriteLine("Rpc Call with Id" + e.RpcResponse.RpcResponsetId + " ok");
 }