local PLUGIN = PLUGIN

net.Receive("ixKitSync", function()
	PLUGIN.kits = net.ReadTable()
end)

net.Receive("ixKitMenu", function()
	if (IsValid(ix.gui.kitMenu)) then
		ix.gui.kitMenu:Remove()
	end

	ix.gui.kitMenu = vgui.Create("DFrame")
	local menu = ix.gui.kitMenu
	menu:SetSize(500, 400)
	menu:SetTitle("Меню донатных наборов")
	menu:Center()
	menu:MakePopup()

	local scroll = menu:Add("DScrollPanel")
	scroll:Dock(FILL)

	for weaponClass, kit in pairs(PLUGIN.kits) do
		local panel = scroll:Add("DPanel")
		panel:Dock(TOP)
		panel:SetHeight(60)
		panel:DockMargin(5, 5, 5, 5)

		local name = panel:Add("DLabel")
		name:SetText(kit.name)
		name:SetFont("ixMediumFont")
		name:SetTextColor(color_black)
		name:Dock(LEFT)
		name:DockMargin(10, 0, 0, 0)
		name:SizeToContents()

		local btn = panel:Add("DButton")
		btn:SetText("Взять")
		btn:Dock(RIGHT)
		btn:SetWidth(100)
		btn:DockMargin(10, 10, 10, 10)

		btn.DoClick = function()
			net.Start("ixKitClaim")
				net.WriteString(weaponClass)
			net.SendToServer()
			menu:Remove()
		end

		-- Обработка отображения КД (простая версия)
		local character = LocalPlayer():GetCharacter()
		if (character) then
			local cooldowns = character:GetData("kit_cooldowns", {})
			local lastClaim = cooldowns[weaponClass] or 0
			local remaining = (lastClaim + kit.cooldown) - os.time()

			if (remaining > 0) then
				btn:SetEnabled(false)
				btn:SetText(math.ceil(remaining / 60) .. " мин.")
			end
		end
	end
end)
