Intégration Client
🖥️ Guide d'Intégration Client - Admin Menu v2.1
Auteur: ProtoMehka Version: 2.1 Date: 10 Janvier 2025 Framework: Altis Life 5.0+
📋 Table des Matières
- Prérequis
- Fichiers à Copier
- Modifications des Fichiers de Configuration
- Vérification de l'Installation
- Troubleshooting
✅ Prérequis
Avant de commencer, assurez-vous d'avoir :
- Framework Altis Life 5.0 ou supérieur
- Accès aux fichiers de la mission (
admin_menu.Altis/) - Éditeur de texte (Notepad++, VSCode, etc.)
- Backup complet de votre mission
📦 Fichiers à Copier
Étape 1 : Nouveaux Fichiers
Copiez les fichiers suivants dans votre mission admin_menu.Altis/ :
Configuration (1 fichier)
admin_menu.Altis/config/
└── Config_Admin.hpp ✨ NOUVEAU
Interface (3 fichiers)
admin_menu.Altis/dialog/
├── admin_menu.hpp ⚠️ REMPLACER
├── server_message.hpp ⚠️ REMPLACER
└── object_manager.hpp ✨ NOUVEAU (v2.1)
Fonctions Admin Core (12 fichiers)
admin_menu.Altis/core/admin/
├── fn_adminMenu.sqf ⚠️ REMPLACER
├── fn_adminMenuTabChange.sqf ⚠️ REMPLACER
├── fn_adminRefreshList.sqf ⚠️ REMPLACER
├── fn_adminSearchPlayer.sqf ⚠️ REMPLACER
├── fn_adminPlayerSelected.sqf ⚠️ REMPLACER
├── fn_adminQueryFinances.sqf ⚠️ REMPLACER
├── fn_adminReceiveFinances.sqf ⚠️ REMPLACER
├── fn_adminRepairObject.sqf ⚠️ REMPLACER
├── fn_adminDeleteObject.sqf ⚠️ REMPLACER
├── fn_adminServerMsg.sqf ⚠️ REMPLACER
├── fn_adminSendServerMsg.sqf ⚠️ REMPLACER
└── fn_adminBroadcastMsg.sqf ⚠️ REMPLACER
Fonctions Admin - Corrections v2.1 (5 fichiers)
admin_menu.Altis/core/admin/
├── fn_adminSpectate.sqf ⚠️ REMPLACER (TFAR compatible)
├── fn_adminTpHere.sqf ⚠️ REMPLACER (IDC corrigé)
├── fn_adminFreeze.sqf ⚠️ REMPLACER (IDC corrigé)
└── fn_adminGodMode.sqf ⚠️ REMPLACER (closeDialog supprimé)
Object Manager - NOUVEAU v2.1 (4 fichiers)
admin_menu.Altis/core/admin/
├── fn_adminObjectManager.sqf ✨ NOUVEAU
├── fn_adminObjectRefresh.sqf ✨ NOUVEAU
├── fn_adminObjectSelect.sqf ✨ NOUVEAU
└── fn_adminObjectDelete.sqf ✨ NOUVEAU
Autres Fonctions Admin (3 fichiers)
admin_menu.Altis/core/admin/
├── fn_adminCompensate.sqf ⚠️ REMPLACER (logging ajouté)
├── fn_adminDebugCon.sqf ⚠️ REMPLACER (logging ajouté)
└── fn_adminMarkers.sqf ⚠️ REMPLACER (logging ajouté)
Fonction Teleport (1 fichier)
admin_menu.Altis/core/functions/
└── fn_teleport.sqf ⚠️ REMPLACER (logging ajouté)
🔧 Modifications des Fichiers de Configuration
Étape 2 : Config_Master.hpp
Localiser la section des includes (généralement au début du fichier, après class Life_Settings).
Ajouter cette ligne :
#include "Config_Admin.hpp"
Exemple de placement :
class Life_Settings {
/* ... autres paramètres ... */
};
#include "Config_Admin.hpp" // ← AJOUTER ICI
#include "Config_Master.hpp"
#include "Config_Clothing.hpp"
// ... autres includes ...
Étape 3 : Functions.hpp
Localiser la classe Admin (environ ligne 70-90).
Remplacer ou compléter avec les nouvelles fonctions :
class Admin {
file = "core\admin";
// Fonctions existantes (conserver si elles existent)
class adminCompensate {};
class adminDebugCon {};
class adminFreeze {};
class admingetID {};
class adminGodMode {};
class adminid {};
class admininfo {};
class adminMarkers {};
class adminQuery {};
class adminSpectate {};
class adminTeleport {};
class adminTpHere {};
// ✨ NOUVELLES FONCTIONS - Admin Menu v2.1
class adminMenu {};
class adminMenuTabChange {};
class adminRefreshList {};
class adminSearchPlayer {};
class adminPlayerSelected {};
class adminQueryFinances {};
class adminReceiveFinances {};
class adminRepairObject {};
class adminDeleteObject {};
class adminServerMsg {};
class adminSendServerMsg {};
class adminBroadcastMsg {};
// ✨ Object Manager v2.1
class adminObjectManager {};
class adminObjectRefresh {};
class adminObjectSelect {};
class adminObjectDelete {};
};
Étape 4 : MasterHandler.hpp
Localiser les includes de dialogs admin.
Modifier pour inclure les nouveaux dialogs :
// Admin Menu v2.1
#include "admin_menu.hpp"
#include "server_message.hpp"
#include "object_manager.hpp"
⚠️ Important : Supprimez l'ancien include si présent :
// #include "admin_menu_new.hpp" ← SUPPRIMER si présent
Étape 5 : CfgRemoteExec.hpp
Ajouter les permissions pour les nouvelles fonctions client :
// Admin Menu v2.1 - Client Functions
F(life_fnc_adminQueryFinances,CLIENT)
F(life_fnc_adminReceiveFinances,CLIENT)
F(life_fnc_adminBroadcastMsg,CLIENT)
Ajouter les permissions pour les fonctions serveur :
// Admin Menu v2.1 - Server Functions
F(TON_fnc_getPlayerFinances,SERVER)
F(TON_fnc_logAdminAction,SERVER)
Exemple complet d'une section :
class CfgRemoteExec {
class Functions {
mode = 1;
jip = 0;
// ... autres fonctions ...
// Admin Menu v2.0 - Client
F(life_fnc_adminQueryFinances,CLIENT)
F(life_fnc_adminReceiveFinances,CLIENT)
F(life_fnc_adminBroadcastMsg,CLIENT)
// Admin Menu v2.0 - Server
F(TON_fnc_getPlayerFinances,SERVER)
F(TON_fnc_logAdminAction,SERVER)
};
};
Étape 6 : player_inv.hpp
Localiser le bouton "Admin Menu" (généralement IDC 2021).
Modifier l'action onButtonClick :
class ButtonAdminMenu: Life_RscButtonMenu {
idc = 2021;
text = "$STR_PM_AdminMenu";
colorBackground[] = {"(profilenamespace getvariable ['GUI_BCG_RGB_R',0.3843])", "(profilenamespace getvariable ['GUI_BCG_RGB_G',0.7019])", "(profilenamespace getvariable ['GUI_BCG_RGB_B',0.8862])", 0.5};
onButtonClick = "closeDialog 0; createDialog ""life_admin_menu"";"; // ← MODIFIER ICI
x = 0.0204 * safezoneW + safezoneX;
y = 0.82 * safezoneH + safezoneY;
w = 0.0392 * safezoneW;
h = 0.033 * safezoneH;
};
⚠️ Important : L'ancien nom était potentiellement life_admin_menu_new, vérifiez et changez en life_admin_menu.
Étape 7 : common.hpp (Optionnel)
Ce fichier a reçu des modifications mineures (+1 ligne). Si vous avez des customisations importantes dans votre common.hpp, vérifiez les différences.
Conseil : Si vous n'avez pas modifié ce fichier, remplacez-le par la nouvelle version.
🆕 Nouveautés v2.1
Corrections de Bugs
- ✅ TP Here : IDC corrigé (2902 → 29020)
- ✅ Freeze Player : IDC corrigé (2902 → 29020)
- ✅ God Mode : Ne ferme plus le menu
- ✅ Server Message : Fonction et remoteExec corrigés
- ✅ Spectate : Touche F fonctionnelle, caméra repositionnée, compatible TFAR
Nouvelle Fonctionnalité
- ✨ Object Manager : Gestionnaire d'items au sol
- Détection items dans rayon personnalisable (1-50m)
- Affichage contenu WeaponHolder détaillé
- Flèche 3D rouge sur item sélectionné
- Suppression individuelle d'items
- Les autres items restent au sol
Version 2.1 - 10 Janvier 2025