Donator Job configuration:fr

= Restreindre des jobs à un groupe d'utilisateur donateur/vip/peuimporte =

Cet article a été traduit en français manuellement et directement de son article homologue anglais.

Créer le groupe d'utilisateur
Pour utiliser cela, vous devez tout d'abord avoir quelques joueurs connectés sur le serveur pour pouvoir tester les commandes et créer par la suite le groupe d'utilisateur (donateur, vip ou ce que vous voulez). Pour créer un groupe d'utilisateur sur ulx, la commande est "ulx adduser nom donateur" (avec le nom de la personne et votre groupe d'utilisateur au lieu de donateur). Vous pouvez aussi écrire "ulx adduserid steamid donateur". Voici le guide FAdmin :

TEAM_DONATORJOB = DarkRP.createJob("Cuisinier", { -- Nom  color = Color(238, 99, 99, 255), -- Couleur de la team    model = "models/player/mossman.mdl", -- Modèle du joueur    description = En cuisinier, c'est votre responsabilite de nourrir les personnes de la ville.                             Vous pouvez acheter un micro onde et vendre votre nourriture: /Buymicrowave,  -- Description du job    weapons = {}, -- Armes additionnelles    command = "Cuisinier", -- Commande pour devenir ce job    max = 2, -- Nombre de joueurs pouvant avoir le job au maximum    salary = 45, -- Salaire    admin = 0, -- Faut-il être admin? 2 pour super-admin uniquement, 1 pour admin (et super-admin), 0 pour joueur standard.    vote = false, -- Faut-il un vote? true pour oui, false pour non.    hasLicense = false, -- A une licence    customCheck = function(ply) return ply:GetNWString("usergroup") == "donateur" end -- La fonction customCheck. Mettez nil ou ne rien mettre pour ne pas en avoir. })
 * Assurez vous que vous êtes utilisateur (FAdmin setroot votrenom dans la console rcon/serveur)
 * Avoir le donateur sur le serveur
 * Après avoir appuyé sur TAB, cliquer sur le nom du joueur et sur "Set access" (premier bouton)
 * Cliquer de nouveau
 * Suivre les instructions à l'écran et appelez votre groupe d'utilisateur "donateur" ou "vip" ou ce que vous voulez. Assurez vous cependant de retenir le nom du groupe.
 * Quand vous créez votre job, utilisez ceci:
 * à la dernière partie (customCheck), changez "donateur" en "vip", en "special" ou votre groupe. Si c'est "donateur", vous pouvez laisser comme cela. Vérifiez qu'il y'a bien les guillemets (" ").
 * Redémarrer le serveur
 * Demandez au donateur de se mettre dans le job correspondant pour vérifier s'il peut y accéder.

ULX
Si vous souhaitez utiliser ULX au lieu de FAdmin, remplacez:

ply:GetNWString("usergroup") == "donateur"

Par:

ply:GetUserGroup == "donateur"

Ou si vous souhaitez autoriser les groupes inhérités, (ex: admin/superadmin), remplacer par:

ply:CheckGroup("donateur") Note: Si vous utilisez ces fonctions, cela ne marchera pas si ULX n'est pas installé.

Evolve
Si vous souhaitez utiliser Evolve au lieu de FAdmin, remplacez:

ply:GetNWString("usergroup")

Par:

ply:GetNWString("EV_UserGroup")

customCheck sur plusieurs groupes
Voici un exemple de fonction customCheck. Cela fonctionne pour les shipments et les jobs et tout ce qui peut utiliser des fonctions customCheck.

Donateurs et admins peuvent avoir le job
function(ply) return ply:GetNWString("usergroup") == "donateur" or ply:IsAdmin end

Superadmin uniquement
function(ply) return ply:IsSuperAdmin end

Plusieurs groupes
Exemple 1: function(ply) return ply:GetNWString("usergroup") == "donateur" or ply:GetNWString("usergroup") == "vip" end On peut ensuite rajouter d'autres groupes.

Exemple 2: function(ply) return table.HasValue({"donateur", "vip", "admin", "superadmin", "mingebag"}, ply:GetNWString("usergroup")) end

Exemple 3: customCheck = function(ply) return ply:IsUserGroup("donateur") or ply:IsAdmin end --C'est pour les donateurs FAdmin uniquement, et autorise un admin également.--

Faire en sorte que les clients voient les entités même si ils ne peuvent pas l'acheter
C'est un paramètre par défaut depuis DarkRP 2.5.0. Pour désactiver ceci, mettez GM.Config.hideNonBuyable à true dans settings.lua.

Messages si on ne passe pas le customCheck
Quand le customCheck dit à un joueur qu'il ne peut pas acheter / avoir quelque chose, Vous pouvez changer le message envoyé au joueur lors de l'échec. Voici comment faire: customCheck = function(ply) return ply:IsUserGroup("donateur") end, -- Fonction customCheck CustomCheckFailMsg = "Vous devez etre un donateur pour devenir un clochard." -- Le message envoyé au client Ceci marche avec les shipments, jobs, munitions, vehicules et jobs personnalisés.

Exemple entier: TEAM_HOBO = DarkRP.createJob("Clochard", {	color = Color(80, 45, 0, 255),	model = "models/player/corpse1.mdl",	description = Le membre le plus faible de la societe. Tous les joueurs vous voient mal.		Vous n'avez pas de maison.		Mendiez pour la nourriture et l'argent.		Chantez pour avoir de l'argent.		Faites votre maison dans les bois.,	weapons = {"weapon_bugbait"},	command = "clochard",	max = 5,	salary = 0,	admin = 0,	vote = false,	hasLicense = false,	customCheck = function(ply) return ply:IsUserGroup("donateur") end,	CustomCheckFailMsg = "Vous devez etre un donateur pour devenir un clochard." })

Vous voulez peut être faire en sorte que le message d'échec soit dynamique (afficher un message lorsque le joueur n'est pas donateur ou un autre lorsque le joueur a trop d'argent). customCheck = function(ply) return ply:IsUserGroup("donateur") and ply:getDarkRPVar("money") < 1000 end, -- La fonction customCheck CustomCheckFailMsg = function(ply) return ply:getDarkRPVar("money") >= 1000 and "Vous etes trop riche!" or not ply:IsUserGroup("donateur") and "Vous devez etre un donateur pour devenir clochard." end, -- The message it sends to the client

ATTENTION : Ne pas utiliser d'accents (é,è,ê) dans la ligne de la commande (cmd) afin de ne pas faire planter votre métier. Vous devez également ne pas rajouter d'accents que ce soit dans le nom du job ou dans la description sauf si votre fichier est encodé en UTF8.