public static void promote(ConsoleSystem.Arg arg)
    {
        BasePlayer basePlayer = arg.Player();

        if (basePlayer.currentTeam == 0)
        {
            return;
        }
        BasePlayer lookingAtPlayer = RelationshipManager.GetLookingAtPlayer(basePlayer);

        if (lookingAtPlayer == null)
        {
            return;
        }
        if (lookingAtPlayer.IsDead())
        {
            return;
        }
        if (lookingAtPlayer == basePlayer)
        {
            return;
        }
        if (lookingAtPlayer.currentTeam == basePlayer.currentTeam)
        {
            RelationshipManager.PlayerTeam item = RelationshipManager.Instance.playerTeams[basePlayer.currentTeam];
            if (item != null && item.teamLeader == basePlayer.userID)
            {
                if (Interface.CallHook("OnTeamPromote", item, lookingAtPlayer) != null)
                {
                    return;
                }
                item.SetTeamLeader(lookingAtPlayer.userID);
            }
        }
    }
示例#2
0
        public static void equipslottarget(Arg arg)
        {
            BasePlayer basePlayer = ArgEx.Player(arg);

            if ((basePlayer.IsAdmin || basePlayer.IsDeveloper || Server.cinematic) && !(basePlayer == null))
            {
                BasePlayer lookingAtPlayer = RelationshipManager.GetLookingAtPlayer(basePlayer);
                if (!(lookingAtPlayer == null))
                {
                    int @int = arg.GetInt(0);
                    EquipItemInSlot(lookingAtPlayer, @int);
                    arg.ReplyWith($"Equipped slot {@int} on player {lookingAtPlayer.displayName}");
                }
            }
        }
    public static void promote(ConsoleSystem.Arg arg)
    {
        BasePlayer source = arg.Player();

        if (source.currentTeam == 0UL)
        {
            return;
        }
        BasePlayer lookingAtPlayer = RelationshipManager.GetLookingAtPlayer(source);

        if (Object.op_Equality((Object)lookingAtPlayer, (Object)null) || lookingAtPlayer.IsDead() || (Object.op_Equality((Object)lookingAtPlayer, (Object)source) || (long)lookingAtPlayer.currentTeam != (long)source.currentTeam))
        {
            return;
        }
        RelationshipManager.PlayerTeam playerTeam = RelationshipManager.Instance.playerTeams[source.currentTeam];
        if (playerTeam == null || (long)playerTeam.teamLeader != (long)source.userID || Interface.CallHook("OnTeamPromote", (object)playerTeam, (object)lookingAtPlayer) != null)
        {
            return;
        }
        playerTeam.SetTeamLeader(lookingAtPlayer.userID);
    }
示例#4
0
        public static void copyTo(Arg arg)
        {
            BasePlayer basePlayer = ArgEx.Player(arg);

            if ((!basePlayer.IsAdmin && !basePlayer.IsDeveloper && !Server.cinematic) || basePlayer == null)
            {
                return;
            }
            BasePlayer basePlayer2 = null;

            if (arg.HasArgs() && arg.GetString(0).ToLower() != "true")
            {
                basePlayer2 = ArgEx.GetPlayer(arg, 0);
                if (basePlayer2 == null)
                {
                    uint uInt = arg.GetUInt(0);
                    basePlayer2 = BasePlayer.FindByID(uInt);
                    if (basePlayer2 == null)
                    {
                        basePlayer2 = BasePlayer.FindBot(uInt);
                    }
                }
            }
            else
            {
                basePlayer2 = RelationshipManager.GetLookingAtPlayer(basePlayer);
            }
            if (basePlayer2 == null)
            {
                return;
            }
            basePlayer2.inventory.containerBelt.Clear();
            basePlayer2.inventory.containerWear.Clear();
            int num = 0;

            foreach (Item item2 in basePlayer.inventory.containerBelt.itemList)
            {
                basePlayer2.inventory.containerBelt.AddItem(item2.info, item2.amount, item2.skin);
                if (item2.contents != null)
                {
                    Item item = basePlayer2.inventory.containerBelt.itemList[num];
                    foreach (Item item3 in item2.contents.itemList)
                    {
                        item.contents.AddItem(item3.info, item3.amount, item3.skin);
                    }
                }
                num++;
            }
            foreach (Item item4 in basePlayer.inventory.containerWear.itemList)
            {
                basePlayer2.inventory.containerWear.AddItem(item4.info, item4.amount, item4.skin);
            }
            if (basePlayer.IsDeveloper)
            {
                basePlayer.ChatMessage("you silently copied items to " + basePlayer2.displayName);
            }
            else
            {
                Chat.Broadcast(basePlayer.displayName + " copied their inventory to " + basePlayer2.displayName, "SERVER", "#eee", 0uL);
            }
        }