コード例 #1
0
ファイル: PlayerLeaveEvent.cs プロジェクト: js6pak/EXILED
        public static void Prefix(ReferenceHub __instance)
        {
            if (EventPlugin.PlayerLeaveEventPatchDisable)
            {
                return;
            }

            EventPlugin.ToMultiAdmin("Player disconnect: ");

            try
            {
                Events.InvokePlayerLeave(__instance);
            }
            catch (Exception exception)
            {
                Log.Error($"PlayerLeaveEvent error: {exception}");
            }
        }
コード例 #2
0
        public static void Prefix(PlayerStats __instance)
        {
            if (EventPlugin.RoundRestartEventPatchDisable)
            {
                return;
            }

            EventPlugin.ToMultiAdmin("Round restarting");

            try
            {
                Events.InvokeRoundRestart();
                Events.InvokeRoundEnd();
            }
            catch (Exception exception)
            {
                Log.Error($"RoundRestartEvent/RoundEndEvent error: {exception}");
            }
        }
コード例 #3
0
        public static void Postfix(NicknameSync __instance)
        {
            if (EventPlugin.PlayerJoinEventPatchDisable)
            {
                return;
            }

            EventPlugin.ToMultiAdmin($"Player connect: ");

            if (PlayerManager.players.Count >= CustomNetworkManager.slots)
            {
                EventPlugin.ToMultiAdmin($"Server full");
            }

            try
            {
                ReferenceHub player = __instance.gameObject.GetPlayer();

                Timing.CallDelayed(0.25f, () =>
                {
                    if (player != null && player.IsMuted())
                    {
                        player.characterClassManager.SetDirtyBit(1UL);
                    }
                });

                if (!string.IsNullOrEmpty(player.characterClassManager.UserId))
                {
                    Events.InvokePlayerJoin(player);
                }
            }
            catch (Exception exception)
            {
                Log.Error($"PlayerJoinEvent error: {exception}");
            }
        }