using System.Collections.Generic;
using System.Globalization;
using UnityEngine;
namespace NecromancerTome
{
/// Ноша одержимого стервятника (курица, кролик): высота под лапами и запрет разгона с грузом (22.10.2026).
public class ConsoleCmdNecroCarry : ConsoleCmdAbstract
{
public override string[] getCommands() => new[] { "necrocarry" };
public override string getDescription() => "NecromancerTome: ноша стервятника - gap <м, минус - выше>|run on|off|show";
void Out(string _s)
{
SdtdConsole.Instance.Output(_s);
Debug.Log("[NecromancerTome] necrocarry: " + _s);
}
public override void Execute(List _params, CommandSenderInfo _senderInfo)
{
string cmd = _params.Count > 0 ? _params[0] : "show";
switch (cmd)
{
case "gap":
if (_params.Count > 1 && float.TryParse(_params[1].Replace(',', '.'), NumberStyles.Float, CultureInfo.InvariantCulture, out float g))
{
Possession.CarryGap = Mathf.Clamp(g, -0.6f, 0.3f);
}
break;
case "run":
if (_params.Count > 1 && (_params[1] == "on" || _params[1] == "off"))
{
Possession.CarryNoRun = _params[1] == "on";
}
break;
}
Out("gap " + Possession.CarryGap.ToString("0.###", CultureInfo.InvariantCulture) + ", без разгона с ношей - " +
(Possession.CarryNoRun ? "да" : "нет"));
}
}
}