LUA:DarkRP Chat Command:fr

Commencer
Le code suivant doit être placé dans un fichier serveur dans un module. Voir ici pour plus d'informations à ce sujet.

Coder
Ajoutez le code suivant à l'intérieur de votre fichier serverside :

local function CreateCash(ply, args) if args == "" or not tonumber(args) then return "" end local amount = math.floor(tonumber(args))

if amount <= 1 then DarkRP.notify(ply, 1, 4, DarkRP.getPhrase("invalid_x", DarkRP.getPhrase("arguments"), "")) return "" end if ply:IsSuperAdmin then ply:ChatPrint("Vous creez " .. DarkRP.formatMoney(amount) .. "!") else ply:ChatPrint("Vous n'etes pas autorise a utiliser cette commande de chat !") return "" end

local trace = {} trace.start = ply:EyePos trace.endpos = trace.start + ply:GetAimVector * 85 trace.filter = ply

local tr = util.TraceLine(trace) DarkRP.createMoneyBag(tr.HitPos, amount)

return "" end DarkRP.defineChatCommand("createcash", CreateCash) DarkRP.defineChatCommand("createmoney", CreateCash)

Et ceci dans un fichier shared :

DarkRP.declareChatCommand{ command = "createcash", description = "Creez de l'argent!", delay = 1.5 } DarkRP.declareChatCommand{ command = "createmoney", description = "Creez de l'argent!", delay = 1.5 }

Voyons maintenant comment tout cela fonctionne.

Tout d'abord, nous vérifions si le joueur a fourni quelque chose et si c'est une valeur numérique, par exemple /dropmoney

if args == "" or not tonumber(args) then return "" end

Ensuite, nous vérifions sur la valeur qu'il essaie de créer est plus petite que 1, ou si le joueur qui essaie de créer de l'argent n'est pas un superadmin.

local amount = math.floor(tonumber(args))

if amount <= 1 then DarkRP.notify(ply, 1, 4, DarkRP.getPhrase("invalid_x", DarkRP.getPhrase("arguments"), "")) return "" end if ply:IsSuperAdmin then ply:ChatPrint("Vous creez " .. DarkRP.formatMoney(amount) .. "!") else ply:ChatPrint("Vous n'etes pas autorise a utiliser cette commande de chat !") return "" end

Ensuite, nous créons le fait que l'objet qui apparaîtra sera à l'endroit où le joueur regarde...

local trace = {} trace.start = ply:EyePos trace.endpos = trace.start + ply:GetAimVector * 85 trace.filter = ply

local tr = util.TraceLine(trace)

Et finalement, nous créons l'argent en utilisant l'information "trace" :

DarkRP.createMoneyBag(tr.HitPos, amount)

Quand vous utilisez une commande de chat DarkRP, vous devez retourner une valeur vide. Sinon, tous les joueurs verront la commande de chat (ainsi que le montant) dans leurs chats !

return ""

Nous devons définir la commande à écrire, donc cela fonctionne : DarkRP.defineChatCommand("createcash", CreateCash) DarkRP.defineChatCommand("createmoney", CreateCash) Dans le fichier shared (partagé) nous devons déclarer la commande. Cela ajoute un délai pour prévenir du spam et une courte description qui est utilisé dans le menu d'aide F1. In the shared file we then declare the command. This adds a delay to prevent spam and a short description that's used in the F1 help menu.

DarkRP.declareChatCommand{ command = "createcash", description = "Creez de l'argent!", delay = 1.5 } DarkRP.declareChatCommand{ command = "createmoney", description = "Creez de l'argent!", delay = 1.5 }

Dans ce script, nous avons ajouté une commande de chat qui crée de l'argent.