-- shared.lua — Définition du SENT sdf_trash (partie partagée).
-- Chargé des deux côtés. Déclare le type, la base et les NetworkVars.

ENT.Type      = "anim"
ENT.Base      = "base_gmodentity"
ENT.PrintName = "Poubelle SDF"
ENT.Author    = "SDFSystem"
ENT.Spawnable      = false
ENT.AdminSpawnable = false

-- NetworkVars partagées (lues des deux côtés pour le rendu 3D2D et le skill-check client)
--   SearchEnd     : CurTime() de fin de fouille (0 = pas de fouille)
--   CooldownEnd   : CurTime() de fin de cooldown (0 = pas de cooldown)
--   Searcher      : joueur en train de fouiller (NULL = aucun)
--   DbId          : ID en base de données (menu admin)
--   SearchStart   : CurTime() de début de fouille (0 = aucune)
--   LastRarity    : index 0-based du tier de rareté du dernier loot (0=commun, 1=rare, 2=epique, 3=legendaire)
--   RarityFlashTime : CurTime() du flash de rareté 3D2D (0 = pas de flash)
function ENT:SetupDataTables()
    self:NetworkVar("Float",  0, "SearchEnd")       -- fin de fouille
    self:NetworkVar("Float",  1, "CooldownEnd")     -- fin de cooldown
    self:NetworkVar("Entity", 0, "Searcher")        -- joueur fouillant
    self:NetworkVar("Int",    0, "DbId")            -- ID DB admin
    self:NetworkVar("Float",  2, "SearchStart")     -- début de fouille (pour skill-check HUD)
    self:NetworkVar("Int",    1, "LastRarity")      -- dernier tier de rareté (0-3)
    self:NetworkVar("Float",  3, "RarityFlashTime") -- timestamp du flash 3D2D
end
