PLUGIN.name = "Fortifications"
PLUGIN.author = "Fortic (Портирован для Helix)"
PLUGIN.description = "Система строительства укреплений: окопы, баррикады, мешки с песком"

-- Конфигурация
ix.config.Add("fortificationsBuildingEnabled", true, "Включить систему строительства укреплений", nil, {
	category = "Fortifications"
})

ix.config.Add("fortificationsMaxStructures", 50, "Максимальное количество структур на карте", nil, {
	data = {min = 1, max = 200},
	category = "Fortifications"
})

ix.config.Add("fortificationsBuildTime", 3, "Время постройки структуры (секунды)", nil, {
	data = {min = 1, max = 30},
	category = "Fortifications"
})

ix.config.Add("fortificationsRepairAmount", 100, "Количество HP восстановления за использование ремонтного инструмента", nil, {
	data = {min = 10, max = 1000},
	category = "Fortifications"
})

ix.config.Add("fortificationsSkinChangeEnabled", true, "Разрешить смену скинов сущностей (дроны, транспорт)", nil, {
	category = "Fortifications"
})

-- Network strings
if SERVER then
	util.AddNetworkString("openmenu")
	util.AddNetworkString("setentity")
	util.AddNetworkString("buildtrench")
	util.AddNetworkString("buildanim")
	util.AddNetworkString("buildstop12")
	util.AddNetworkString("additem")
	util.AddNetworkString("CheckAllowedEntity")
	util.AddNetworkString("EntityAllowed")
	util.AddNetworkString("RequestSkinData")
	util.AddNetworkString("ReceiveSkinData")
	util.AddNetworkString("ChangeEntitySkin")
end

function PLUGIN:Initialize()
	print("[Fortifications] Система строительства загружена!")
end

-- Звуки оружия (регистрация дополнительных звуков)
for i = 1, 6 do
	sound.Add({
		name = "Universal.Draw",
		channel = CHAN_ITEM,
		volume = 1.0,
		soundlevel = 75,
		sound = "weapons/universal/uni_weapon_draw_0" .. i .. ".wav"
	})
	
	sound.Add({
		name = "Universal.Holster",
		channel = CHAN_ITEM,
		volume = 1.0,
		soundlevel = 75,
		sound = "weapons/universal/uni_weapon_holster_0" .. i .. ".wav"
	})
end

-- Клиентская часть
ix.util.Include("cl_menu.lua")
ix.util.Include("cl_skin.lua")

-- Серверная часть
ix.util.Include("sv_net.lua")
ix.util.Include("sv_skin.lua")

