PREVIEW
Sosomods Print — Imprimante & Photocopieur RP
Système d'imprimante et photocopieur complet pour serveurs RP. Impression de documents personnalisés avec image et nom, système d'encre par couleur, gestion du papier, builder admin avec Gizmo, et accès restreint par job. Compatible ESX et QBCore, multi-inventaires.
Fonctionnalités
Impression de documents personnalisés
Interface NUI pour saisir un nom et une URL d'image. L'item printerdocument généré contient les métadonnées du document (nom, image, auteur) et s'utilise depuis l'inventaire pour afficher un clipboard 3D en jeu. Jusqu'à 25 copies par impression.
Système d'encre par couleur
5 couleurs indépendantes : rouge, jaune, bleu, vert, noir. Chaque impression consomme 1 point d'encre par couleur. Si une couleur est à 0, l'impression est bloquée. Rechargement via item dédié dans l'inventaire (ink_red, ink_black…). Désactivable dans la config.
Système de papier
L'imprimante nécessite du papier pour fonctionner. Rechargement via l'item a4sheets : 1 paquet = +20 feuilles dans l'imprimante. Capacité configurable par imprimante dans le builder. Désactivable globalement.
Builder admin complet avec Gizmo
Commande /printbuilder réservée aux grades configurés. Placement libre du prop avec le Gizmo (déplacer, rotation, coller au sol, valider). Choix du modèle 3D, restriction par job, capacité papier initiale, encre activée/non. Modification et suppression d'imprimantes existantes en live, sans redémarrage.
Accès restreint par job
Chaque imprimante peut être limitée à un job spécifique (police, weazel, ambulance…) ou ouverte à tous. La vérification est faite côté client (masque le bouton) ET côté serveur (bloque l'action) — aucune contournement possible.
Sécurité serveur complète
Toutes les actions validées côté serveur : distance, job, cooldown, type de données. Rate-limiting indépendant sur impression, rechargement papier et rechargement encre. Métadonnées sanitisées avant insertion en inventaire. Mode RestrictMode pour limiter les domaines d'image autorisés.
Multi-framework & multi-inventaires
Compatible ESX Legacy et QBCore. Supporte ox_inventory, qb-inventory, qs-inventory et linden_inventory. Target compatible ox_target et qb-target. Un seul paramètre à changer dans la config.
Modèles d'imprimantes disponibles
Imprimante bureau — v_res_printer — Petit modèle sur bureau
Imprimante 01 / 02 — prop_printer_01/02 — Modèles alternatifs bureau
Photocopieur — prop_copier_01 — Grand format ~2m, zone cible ajustée
Prop monde existant — Aucun prop spawné, interagit avec un objet déjà placé dans le monde
Configuration détaillée
Config.Core / Config.CoreFolderName
Framework utilisé — "ESX" ou "QBCore" & nom du dossier correspondant ("es_extended" ou "qb-core")
Config.Inventory
Système d'inventaire — "ox" · "qb" · "qs" · "qsv2" · "linden"
Config.Target
Système de target — "ox" (ox_target) ou "qb" (qb-target)
Config.Lang
Langue du script — "fr" ou "en" — fichiers dans locale/
Config.PaperSystem
true = l'imprimante doit avoir du papier pour imprimer · false = impression illimitée
Config.InkSystem
true = chaque impression consomme 1 point d'encre par couleur, bloque si 0 · false = aucun suivi d'encre
Config.InkDefault
Durabilité de départ (défaut 100) et nom de l'item de recharge pour chaque couleur (ink_red, ink_yellow, ink_blue, ink_green, ink_black)
Config.MaxDocumentsToPrint
Nombre maximum de copies par impression (défaut : 25)
Config.MaxPrinters
Nombre maximum d'imprimantes créables via le builder (défaut : 200)
Config.TargetDistance
Distance d'interaction ox_target en mètres (défaut : 1.5)
Config.PrintDistance
Distance maximale côté serveur pour valider une action — protection anti-cheat (défaut : 3.0)
Config.RestrictMode
true = seuls les domaines listés dans Config.AllowedImageDomains sont acceptés pour les URLs d'image (ex: cdn.discordapp.com, i.imgur.com)
Config.BuilderMenu
Menu du builder — "ox_lib" (registerMenu + inputDialog) recommandé
Config.BuilderRank
Grades autorisés à utiliser /printbuilder — string ou table — ex: { "superadmin", "admin", "mod" }
Config.PrinterModels
Liste des modèles disponibles dans le builder avec label, valeur du prop (value) et décalage vertical de la zone target (target_z). Ajoutez vos propres modèles custom.
Config.BuilderJobs
Jobs affichés dans la liste d'accès du builder — "all" = tout le monde, sinon nom exact du job en base de données
Config.DrawText / Config.ShowHelpNotification
Alternatives à ox_target si vous n'utilisez pas de système de target (DrawText ou HelpNotif touche E)
Config.okokNotify / Config.pNotify / Config.mythicNotify
Systèmes de notifications alternatifs — activez un seul à la fois, ou laissez tout à false pour utiliser le notify ESX/QBCore natif
Config.Debug
true = logs détaillés console serveur + client — à activer uniquement en développement, jamais en production
Dépendances
Informations

