C#:
// Все права принадлежат дискорд сообществу https://discord.gg/VgNHPpNrz6
using Newtonsoft.Json;
namespace Oxide.Plugins
{
[Info("Health Vehicles", "SwenenzY", "1.0.1")]
[Description("Raises vehicles health.")]
public class HealthVehicles : RustPlugin
{
#region Config
private ConfigFile _config;
public class ConfigFile
{
// Mini
[JsonProperty(PropertyName = "Mini start health ( ex : 500 )")]
public float MiniStartHealth;
[JsonProperty(PropertyName = "Mini max health ( ex : 1000 )")]
public float MiniMaxHealth;
// Scrap
[JsonProperty(PropertyName = "Scrap start health ( ex : 500 )")]
public float ScrapStartHealth;
[JsonProperty(PropertyName = "Scrap max health ( ex : 2000 )")]
public float ScrapMaxHealth;
// Balloon
[JsonProperty(PropertyName = "Balloon start health ( ex : 500 )")]
public float BalloonStartHealth;
[JsonProperty(PropertyName = "Balloon max health ( ex : 2000 )")]
public float BalloonMaxHealth;
public static ConfigFile DefaultConfig()
{
return new ConfigFile
{
// Mini
MiniStartHealth = 500f,
MiniMaxHealth = 1000f,
// Scrap
ScrapStartHealth = 500f,
ScrapMaxHealth = 2000f,
// Balloon
BalloonStartHealth = 500f,
BalloonMaxHealth = 2000f
};
}
}
protected override void LoadDefaultConfig() => _config = ConfigFile.DefaultConfig();
protected override void LoadConfig()
{
base.LoadConfig();
_config = Config.ReadObject<ConfigFile>();
}
protected override void SaveConfig() => Config.WriteObject(_config);
#endregion
#region Vehicles
#region Mini Copter
void OnEntitySpawned(MiniCopter mini)
{
if (mini == null)
{
return;
}
mini.SetMaxHealth(_config.MiniMaxHealth);
mini._health = _config.MiniStartHealth;
}
#endregion
#region Scrap Copter
void OnEntitySpawned(ScrapTransportHelicopter scrap)
{
if (scrap == null)
{
return;
}
scrap.SetMaxHealth(_config.ScrapMaxHealth);
scrap._health = _config.ScrapStartHealth;
}
#endregion
#region Balloon
void OnEntitySpawned(HotAirBalloon balloon)
{
if (balloon == null)
{
return;
}
balloon.SetMaxHealth(_config.BalloonMaxHealth);
balloon._health = _config.BalloonStartHealth;
}
#endregion
#endregion
}
}