Weapon Panel

Panel de gestion d'armes avancé avec système de customisation complet

Version: 1.0.0 Framework: ESX/QB

Description

Weapon Panel est un système complet de gestion d'armes pour votre serveur FiveM. Il permet aux joueurs de gérer leurs armes, les personnaliser avec des accessoires, et bien plus encore.

Fonctionnalités principales :

  • Interface utilisateur moderne et intuitive
  • Gestion complète des armes (équiper, déséquiper, supprimer)
  • Système de personnalisation d'armes (accessoires, skins)
  • Support ESX et QBCore
  • Optimisé pour de meilleures performances
  • Notifications intégrées

Installation

Étapes d'installation :

  1. Téléchargez le script depuis la boutique Tebex
  2. Extrayez le fichier ZIP dans votre dossier resources
  3. Renommez le dossier en cn-weaponpanel
  4. Ajoutez le script dans votre server.cfg :
ensure cn-weaponpanel

Configuration

Ouvrez le fichier config.lua et configurez selon vos besoins :

Config = {}

-- Framework (esx ou qb)
Config.Framework = "esx"

-- Commande pour ouvrir le panel
Config.OpenCommand = "weaponpanel"

-- Permissions
Config.AdminGroups = {
    "admin",
    "superadmin"
}

-- Options d'armes disponibles
Config.Weapons = {
    ["WEAPON_PISTOL"] = {
        label = "Pistolet",
        components = {
            "COMPONENT_AT_PI_FLSH",
            "COMPONENT_AT_PI_SUPP_02"
        }
    }
}

Utilisation

Ouvrir le panel

Les joueurs peuvent ouvrir le panel avec la commande configurée (par défaut : /weaponpanel)

Exports

Vous pouvez également ouvrir le panel via un export depuis un autre script :

-- Ouvrir le panel
exports['cn-weaponpanel']:OpenPanel()

-- Fermer le panel
exports['cn-weaponpanel']:ClosePanel()

-- Obtenir les armes du joueur
local weapons = exports['cn-weaponpanel']:GetPlayerWeapons()

Events

Le script émet plusieurs events que vous pouvez écouter :

-- Quand une arme est équipée
RegisterNetEvent('cn-weaponpanel:weaponEquipped')
AddEventHandler('cn-weaponpanel:weaponEquipped', function(weaponName)
    print("Arme équipée: " .. weaponName)
end)

-- Quand une arme est déséquipée
RegisterNetEvent('cn-weaponpanel:weaponUnequipped')
AddEventHandler('cn-weaponpanel:weaponUnequipped', function(weaponName)
    print("Arme déséquipée: " .. weaponName)
end)

Configuration avancée

Personnalisation de l'interface

Vous pouvez personnaliser l'apparence du panel dans le fichier html/style.css :

/* Couleurs principales */
:root {
    --primary-color: #3b82f6;
    --secondary-color: #dc2626;
    --background-color: #0f172a;
}

Permissions

Pour ajouter des permissions personnalisées, modifiez le fichier server/main.lua :

function HasPermission(source)
    local xPlayer = ESX.GetPlayerFromId(source)
    if Config.AdminGroups[xPlayer.getGroup()] then
        return true
    end
    return false
end

Support

Si vous rencontrez des problèmes ou avez des questions :

  • Consultez la section FAQ sur notre Discord
  • Ouvrez un ticket de support
  • Vérifiez que toutes les dépendances sont installées
Rejoindre le Discord