Иконка ресурса

FREE WaterGunHeal : 1.0.0 1.0.0

Нет прав для скачивания
C#:
// Все права принадлежат дискорд сообществу https://discord.gg/VgNHPpNrz6
using Facepunch;
using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
using System.Linq;
using UnityEngine;
using UnityEngine.AI;
using UnityEngine.SceneManagement;
using Oxide.Core;
using Oxide.Core.Configuration;

namespace Oxide.Plugins
{
    [Info("WaterGunHeal", "jerky", "1.0.0")]
    [Description("Water Gun Heal plugin for Rust")]
    public class WaterGunHeal : RustPlugin
    {
        private const string HealPermission = "watergunheal.lv1";
        private const string RevivePermission = "watergunheal.lv2";
        private const ulong WaterGunSkinID = 3332607397;

        void Init()
        {
            permission.RegisterPermission(HealPermission, this);
            permission.RegisterPermission(RevivePermission, this);
        }

        void OnEntityTakeDamage(BaseCombatEntity entity, HitInfo info)
        {
            if (entity is BasePlayer && info.WeaponPrefab != null && info.WeaponPrefab.name.Contains("waterpistol.entity"))
            {
                BasePlayer shooter = info.InitiatorPlayer;
                if (shooter != null && permission.UserHasPermission(shooter.UserIDString, HealPermission))
                {
                    Item wp = shooter.GetActiveItem();
                    if (wp != null && wp.skin == WaterGunSkinID)
                    {
                        BasePlayer player = entity as BasePlayer;
                        if (shooter.UserIDString == player.UserIDString) return;
                        if (player.IsWounded() && permission.UserHasPermission(shooter.UserIDString, RevivePermission))
                        {
                            player.StopWounded();
                        }
                        player.Heal(10f); // Configure it later.}
                }
            }
        }

        private void GiveWaterGunToPlayer(ulong steamID)
        {
            BasePlayer targetPlayer = BasePlayer.FindByID(steamID) ?? BasePlayer.FindSleeping(steamID);
            if (targetPlayer == null)
            {
                Puts("Player not found.");
                return;
            }

            Item waterGun = ItemManager.CreateByName("pistol.water", 1, WaterGunSkinID);
            waterGun.skin = WaterGunSkinID;
            waterGun.name = "Healing Water Pistol";
            targetPlayer.GiveItem(waterGun);
            Puts($"Water gun given to {targetPlayer.displayName}.");
        }


        [ConsoleCommand("givewatergun")]
        private void GiveWaterGunConsole(ConsoleSystem.Arg arg)
        {
            if (arg.Args == null || arg.Args.Length != 1)
            {
                arg.ReplyWith("givewatergun <steamID>");
                return;
            }

            ulong steamID;
            if (!ulong.TryParse(arg.Args[0], out steamID))
            {
                arg.ReplyWith("Invalid SteamID.");
                return;
            }

            GiveWaterGunToPlayer(steamID);
        }

    }
}

Автор
15FPS
Скачиваний
0
Просмотры
1
Первый выпуск
Обновление
Оценка
0.00 звёзд 0 оценок
Сверху