Пример #1
0
        void OnPlayerChat(ConsoleSystem.Arg arg)
        {
            if (!isStart)
            {
                return;
            }
            var player = arg.Player();

            if (!inEvent.Contains(player.userID) && arg.Args[0].Replace("\"", "") == "event10" && free)
            {
                if (inEvent.Count >= max)
                {
                    player.ChatMessage("<size=16><color=red>Всё, все слоты заняты, ожидайте след. ивент</color></size>");
                    return;
                }
                free = false;
                timer.Once(2f, () => { free = true; });
                admin.ChatMessage(player.displayName + " Присоединился к Event-у");
                inEvent.Add(player.userID);
                rust.RunServerCommand($"grant user {player.userID} noescape.ignore");
                player.inventory.Strip();
                rust.RunServerCommand("inv.giveplayer " + player.UserIDString + " pickaxe 24");
                rust.RunServerCommand("inv.giveplayer " + player.UserIDString + " hat.miner 150");
                core.Teleport(player, eventPos);
            }
        }
Пример #2
0
        void cmdChatBanTP(BasePlayer player, string command, string[] args)
        {
            if (!PermissionService.HasPermission(player.userID, BAN_PERM))
            {
                SendReply(player, "Недостаточно прав!");
                return;
            }
            var bannedPlayers =
                BasePlayer.sleepingPlayerList.Where(p => ServerUsers.Get(p.userID)?.@group == ServerUsers.UserGroup.Banned ||
                                                    bans.ContainsKey(p.userID)).ToList();

            if (args.Length == 0)
            {
                string msgPlayers = "";
                for (var i = 0; i < bannedPlayers.Count; i++)
                {
                    var p = bannedPlayers[i];
                    msgPlayers += $"[<color=orange>{i}</color> ({p.userID}/{p.displayName})] ";
                }
                SendReply(player, msgPlayers);
                return;
            }
            int index;

            if (!int.TryParse(args[0], out index))
            {
                SendReply(player, "НЕВЕРНО: пример /bantp 0");
                return;
            }
            core.Teleport(player, bannedPlayers[index]);
        }