1. Заходим в Inventory.cs
ищем case ItemType.BodyArmor и заменяем на это:
2. заходим в Main.cs
Ищем [RemoteEvent("deletearmor")] и заменяем на это:
3. Заходим в Commands.cs
В любом месте между командами добавляем новую комманду:
4. Заходим в FractionManager.cs
Ищем public static bool canUseCommand и добавляем ниже это :
5. Заходим в Character.cs
Ищем player.SetData("RESIST_TIME", 0); и добавляем ниже это :
6. Заходим в базу переходим в adminaccess и добавляем таблицу
Minirank пишем 7
command пишем armorelp
isaadmin пишем 1
idkey смотрите по последнему числу, если там допустип последняя команда 30 то пишем 31
ищем case ItemType.BodyArmor и заменяем на это:
C#:
case ItemType.BodyArmor:
{
if (item.IsActive)
{
item.Data = player.Armor.ToString();
player.Armor = 0;
player.ResetSharedData("HASARMOR");
Customization.CustomPlayerData[Main.Players[player].UUID].Clothes.Bodyarmor.Variation = 0;
Customization.CustomPlayerData[Main.Players[player].UUID].Clothes.Bodyarmor.Texture = 0;
player.SetClothes(9, Customization.CustomPlayerData[Main.Players[player].UUID].Clothes.Bodyarmor.Variation, Customization.CustomPlayerData[Main.Players[player].UUID].Clothes.Bodyarmor.Texture);
nInventory.Items[UUID][index].IsActive = false;
GUI.Dashboard.Update(player, item, index);
}
else
{
var armor = Convert.ToInt32((string)item.Data);
player.Armor = armor;
player.SetSharedData("HASARMOR", true);
switch (Fractions.Manager.FractionTypes[Main.Players[player].FractionID])
{
case -1:
case 1:
Customization.CustomPlayerData[Main.Players[player].UUID].Clothes.Bodyarmor.Texture = 2;
break;
case 0:
Customization.CustomPlayerData[Main.Players[player].UUID].Clothes.Bodyarmor.Texture = 0;
break;
case 2:
Customization.CustomPlayerData[Main.Players[player].UUID].Clothes.Bodyarmor.Texture = 1;
break;
default:
Customization.CustomPlayerData[Main.Players[player].UUID].Clothes.Bodyarmor.Texture = 1;
break;
}
Customization.CustomPlayerData[Main.Players[player].UUID].Clothes.Bodyarmor.Variation = 12;
player.SetClothes(9, Customization.CustomPlayerData[Main.Players[player].UUID].Clothes.Bodyarmor.Variation, Customization.CustomPlayerData[Main.Players[player].UUID].Clothes.Bodyarmor.Texture);
nInventory.UnActiveItem(player, item.Type);
nInventory.Items[UUID][index].IsActive = true;
GUI.Dashboard.Update(player, item, index);
}
return;
}
2. заходим в Main.cs
Ищем [RemoteEvent("deletearmor")] и заменяем на это:
C#:
[RemoteEvent("deletearmor")]
public void ClientEvent_DeleteArmor(Client player)
{
try
{
if (player.Armor == 0)
{
nItem aItem = nInventory.Find(Main.Players[player].UUID, ItemType.BodyArmor);
if (aItem == null || aItem.IsActive == false) return;
nInventory.Remove(player, ItemType.BodyArmor, 1);
Customization.CustomPlayerData[Main.Players[player].UUID].Clothes.Bodyarmor.Variation = 0;
Customization.CustomPlayerData[Main.Players[player].UUID].Clothes.Bodyarmor.Texture = 0;
player.SetClothes(9, Customization.CustomPlayerData[Main.Players[player].UUID].Clothes.Bodyarmor.Variation, Customization.CustomPlayerData[Main.Players[player].UUID].Clothes.Bodyarmor.Texture);
player.ResetSharedData("HASARMOR");
}
}
catch (Exception e) { Log.Write("deletearmor: " + e.Message, nLog.Type.Error); }
}
3. Заходим в Commands.cs
В любом месте между командами добавляем новую комманду:
C#:
[Command("armorelp")]
public static void CMD_armorelp(Player player, int id)
{
try
{
if (!Group.CanUseCmd(player, "armorelp")) return;
Player target = Main.GetPlayerByID(id);
if (target == null)
{
Notify.Send(player, NotifyType.Error, NotifyPosition.BottomCenter, "Игрок с таким ID не найден", 3000);
return;
}
target.StopAnimation();
NAPI.Entity.SetEntityPosition(target, target.Position + new Vector3(0, 0, 0.5));
target.SetSharedData("InDeath", false);
Trigger.ClientEvent(target, "DeathTimer", false);
target.Health = 100;
target.ResetData("IS_DYING");
Main.Players[target].IsAlive = true;
Main.OffAntiAnim(target);
if (target.HasData("DYING_TIMER"))
{
Timers.Stop(target.GetData<string>("DYING_TIMER"));
target.ResetData("DYING_TIMER");
}
Notify.Send(target, NotifyType.Info, NotifyPosition.BottomCenter, $"Игрок ({player.Value}) реанимировал Вас", 3000);
Notify.Send(player, NotifyType.Success, NotifyPosition.BottomCenter, $"Вы реанимировали игрока ({target.Value})", 3000);
if (target.HasData("CALLEMS_BLIP"))
{
NAPI.Entity.DeleteEntity(target.GetData<Entity>("CALLEMS_BLIP"));
}
if (target.HasData("CALLEMS_COL"))
{
NAPI.ColShape.DeleteColShape(target.GetData<ColShape>("CALLEMS_COL"));
}
}
catch
{
}
}
4. Заходим в FractionManager.cs
Ищем public static bool canUseCommand и добавляем ниже это :
C#:
if (Main.Players[player].AdminLVL > 0) return true;
5. Заходим в Character.cs
Ищем player.SetData("RESIST_TIME", 0); и добавляем ниже это :
C#:
player.SetSharedData("ALVL", AdminLVL);
6. Заходим в базу переходим в adminaccess и добавляем таблицу
Minirank пишем 7
command пишем armorelp
isaadmin пишем 1
idkey смотрите по последнему числу, если там допустип последняя команда 30 то пишем 31