[resolu ]aide lua

  • Initiateur de la discussion Quentin Litoria
  • Date de début
  • Initiateur de la discussion
Quentin Litoria

Quentin Litoria

Geek suprême
Messages
64
Score réaction
7
Points
105
Bonjour, je galère à faire un script, je voudrais que lorsque que la personne est mise en jail par ulx jail la personne dans la cage (target) aye un derma qui appraise (code client). Si quelqu'un aurait un petit script ça m'aiderait.
Cordialement
 
edouard292

edouard292

Geek suprême
Messages
423
Score réaction
108
Points
150
ULibPlayerTargets

Defines - ULib
 
  • Initiateur de la discussion
Quentin Litoria

Quentin Litoria

Geek suprême
Messages
64
Score réaction
7
Points
105
J'en suis la, a la ligne 16 je veux que calling_ply ou v aye un derma sauf que je n'ais jamais utiliser tout ce qui est ulx. ou ulib. et je ne trouve pas tout ce qui est derma et autre genre dans un shared.lua je met if client then et genre net.receive bim bal boum derma mais la ba je sais comment ca marche.
Code:
------------------------------ Jail ------------------------------
local doJail
local jailableArea
function ulx.jail( calling_ply, target_plys, seconds, should_unjail ) local affected_plys = {} for i=1, #target_plys do local v = target_plys[ i ] if not should_unjail then if ulx.getExclusive( v, calling_ply ) then ULib.tsayError( calling_ply, ulx.getExclusive( v, calling_ply ), true ) elseif not jailableArea( v:GetPos() ) then ULib.tsayError( calling_ply, v:Nick() .. " is not in an area where a jail can be placed!", true ) else doJail( v, seconds ) table.insert( affected_plys, v ) end elseif v.jail then v.jail.unjail() v.jail = nil table.insert( affected_plys, v ) end end if not should_unjail then local str = "#A jailed #T" if seconds > 0 then str = str .. " for #i seconds" end ulx.fancyLogAdmin( calling_ply, str, affected_plys, seconds ) else ulx.fancyLogAdmin( calling_ply, "#A unjailed #T", affected_plys ) end
end
local jail = ulx.command( CATEGORY_NAME, "ulx jail", ulx.jail, "!jail" )
jail:addParam{ type=ULib.cmds.PlayersArg }
jail:addParam{ type=ULib.cmds.NumArg, min=0, default=0, hint="seconds, 0 is forever", ULib.cmds.round, ULib.cmds.optional }
jail:addParam{ type=ULib.cmds.BoolArg, invisible=true }
jail:defaultAccess( ULib.ACCESS_ADMIN )
jail:help( "Jails target(s)." )
jail:setOpposite( "ulx unjail", {_, _, _, true}, "!unjail" )
 
Dernière édition:
Z3k4

Z3k4

Helpeur Divin
Messages
4 495
Score réaction
1 513
Points
580
Perso, j'utiliserais le hook "ULibPlayerTarget" qui donne le joueur executant la commande, la commande, et la cible
Ensuite, j'appelerais une library

Java:
hook.Add("ULibCommandCalled", "SendPlayerJailInfo", function(caller, cmd, target) if cmd == "jail" then net.Start("C_PlayerJailed") net.WriteBool(true) net.Send(target) elseif cmd == "unjail" then net.Start("C_PlayerJailed") net.WriteBool(false) net.Send(target) end
end)
Et après, il te suffirait de récupérer l'info côté client avec un

Java:
local isjailed = false
local tframe
local function ShowDermaWhenJailed() if isjailed then tframe = vgui.Create("DFrame") end if tframe && !isjailed then tframe:Remove() end
end
net.Receive("SendPlayerJailInfo", function() isjailed = net.ReadBool() ShowDermaWhenJailed()
end
j'ai pas testé, mais tu devrais avoir compris
 
Dernière édition:
  • J'aime
Réactions: Quentin Litoria
  • Initiateur de la discussion
Quentin Litoria

Quentin Litoria

Geek suprême
Messages
64
Score réaction
7
Points
105
Merci pour l'explication il y a des choses que je n'avais pigé et j aurais eu du mal mais maintenant j ai pigé.
Je continuerais a etudier cette science demain et je passerais en résolue si j ai pas d autre question
 
Z3k4

Z3k4

Helpeur Divin
Messages
4 495
Score réaction
1 513
Points
580
De rien, prend ton temps, si t'as jamais utilisé les hooks & net, ça peut prendre du temps pour comprendre parfaitement :)
 
  • Initiateur de la discussion
Quentin Litoria

Quentin Litoria

Geek suprême
Messages
64
Score réaction
7
Points
105
Utiliser des hook et des net je n ais pas de problemes mais pourquoi je ne sais pas je me suis dit avant de poster sur mtx que le "wiki" ulx c etait que pour ce qui est dans l addon ulx et ducoup je cherchais a comprendre les modules ulx, alors que pas du tout ce qui en plus, est logique et plus simple de faire dans d'autres fichiers a part du module de jail mais ducoup merci surtout que je n avais pas pige le cmd qu il me sufisait juste de mettre jail
 
Z3k4

Z3k4

Helpeur Divin
Messages
4 495
Score réaction
1 513
Points
580
On apprend / réapprend tout les jours :)
 
  • J'aime
Réactions: Quentin Litoria
  • Initiateur de la discussion
Quentin Litoria

Quentin Litoria

Geek suprême
Messages
64
Score réaction
7
Points
105
Je viens de regarder tout ça j'aimerais savoir pourquoi :
Ne marche pas :
if cmd == "jail" then
Ne marche pas :
if cmd == "ulx jail" then
Ne marche pas :
if cmd == "ulx god" then
Marche :
if cmd == "ulx teleport" then

je pense qu'il doit y avoir une histoire genre mais j'ai pas trouvé d"exemple lua
if cmd == "ulx jail...name " then
 
Z3k4

Z3k4

Helpeur Divin
Messages
4 495
Score réaction
1 513
Points
580
Modifie le nom du hook par "ULibCommandCalled", je viens de voir que c'est mieux xD

Ensuite, pas besoin de modifié le reste de ton code ;)
 
  • Initiateur de la discussion
Quentin Litoria

Quentin Litoria

Geek suprême
Messages
64
Score réaction
7
Points
105
Merci beaucoup pour ton aide
 
Discord d'entraide
Rejoignz-nous sur Discord