C#:
// Все права принадлежат дискорд сообществу https://discord.gg/VgNHPpNrz6
using System.Collections.Generic;
namespace Oxide.Plugins
{
[Info("NoRaidRepair", "Ryan", "1.0.0")]
[Description("Prevents the player from repairing their base whilst raidblocked.")]
class NoRaidRepair : RustPlugin
{
[PluginReference] RustPlugin NoEscape;
void LoadDefaultMessages()
{
lang.RegisterMessages(new Dictionary<string, string>
{
["CantRepair"] = "You can't repair whilst raidblocked."
}, this);
}
bool isRaidBlocked(BasePlayer player) => (bool)NoEscape.Call("IsRaidBlocked", player);
void OnHammerHit(BasePlayer player, HitInfo info)
{
if (NoEscape == null) return;
if (isRaidBlocked(player)) PrintToChat(player, Lang("CantRepair"));
}
object OnStructureRepair(BaseCombatEntity entity, BasePlayer player)
{
if (NoEscape == null || !isRaidBlocked(player)) return null;
return false;
}
string Lang(string key, string id = null, params object[] args) => string.Format(lang.GetMessage(key, this, id), args);
}
}