Erreur avec mes printer (ply)

  • Initiateur de la discussion BCZ Gaming
  • Date de début
  • Initiateur de la discussion
BCZ Gaming

BCZ Gaming

Psychopathe
Messages
1 301
Score réaction
129
Points
275
Bonjour, j'ai cette erreur qui arrive toute les 2min dans la consol mtx! voici l'erreur:
Code:
[ERROR] addons/printer/lua/autorun/server/resource.lua:16: attempt to index global 'ply' (a nil value)
1. fn - addons/printer/lua/autorun/server/resource.lua:16
2. unknown - addons/ulib/lua/ulib/shared/hook.lua:109
Le fichier en question:
Code:
--workshop file
resource.AddWorkshop( "449576946" )
resource.AddWorkshop( "751584776" )
function RemovePrintersNitemsOnDisconnect() for k, v in pairs(ents.FindByClass("register_tray")) do if v.SID == ply.SID then v:Remove() end end for k, v in pairs(ents.FindByClass("printer_display")) do if v.SID == ply.SID then v:Remove() end end for k, v in pairs(ents.FindByClass("print_scanner")) do if v.SID == ply.SID then v:Remove() end end for k, v in pairs(ents.FindByClass("paper_money")) do if v.SID == ply.SID then v:Remove() end end for k, v in pairs(ents.FindByClass("money_stamp_100")) do if v.SID == ply.SID then v:Remove() end end for k, v in pairs(ents.FindByClass("money_stamp_20")) do if v.SID == ply.SID then v:Remove() end end for k, v in pairs(ents.FindByClass("money_stamp_10")) do if v.SID == ply.SID then v:Remove() end end for k, v in pairs(ents.FindByClass("money_stamp_5")) do if v.SID == ply.SID then v:Remove() end end for k, v in pairs(ents.FindByClass("money_printer")) do if v.SID == ply.SID then v:Remove() end end for k, v in pairs(ents.FindByClass("extra_storage")) do if v.SID == ply.SID then v:Remove() end end for k, v in pairs(ents.FindByClass("extra_print_speed")) do if v.SID == ply.SID then v:Remove() end end for k, v in pairs(ents.FindByClass("extra_current_amount")) do if v.SID == ply.SID then v:Remove() end end for k, v in pairs(ents.FindByClass("cooler")) do if v.SID == ply.SID then v:Remove() end end
end
hook.Add("PlayerDisconnected","RemovePrinternstuff",RemovePrintersNitemsOnDisconnect)
l'addond en question: https://steamcommunity.com/sharedfiles/filedetails/?id=874053982

VOila merci d'avance!
 
xLomble77

xLomble77

Psychopathe
Messages
2 191
Score réaction
348
Points
290
Je ne suis pas le meilleur en lua mais essaye :

Code:
--workshop file
resource.AddWorkshop( "449576946" )
resource.AddWorkshop( "751584776" )
function RemovePrintersNitemsOnDisconnect( ply ) for k, v in pairs(ents.FindByClass("register_tray")) do if v.SID == ply.SID then v:Remove() end end for k, v in pairs(ents.FindByClass("printer_display")) do if v.SID == ply.SID then v:Remove() end end for k, v in pairs(ents.FindByClass("print_scanner")) do if v.SID == ply.SID then v:Remove() end end for k, v in pairs(ents.FindByClass("paper_money")) do if v.SID == ply.SID then v:Remove() end end for k, v in pairs(ents.FindByClass("money_stamp_100")) do if v.SID == ply.SID then v:Remove() end end for k, v in pairs(ents.FindByClass("money_stamp_20")) do if v.SID == ply.SID then v:Remove() end end for k, v in pairs(ents.FindByClass("money_stamp_10")) do if v.SID == ply.SID then v:Remove() end end for k, v in pairs(ents.FindByClass("money_stamp_5")) do if v.SID == ply.SID then v:Remove() end end for k, v in pairs(ents.FindByClass("money_printer")) do if v.SID == ply.SID then v:Remove() end end for k, v in pairs(ents.FindByClass("extra_storage")) do if v.SID == ply.SID then v:Remove() end end for k, v in pairs(ents.FindByClass("extra_print_speed")) do if v.SID == ply.SID then v:Remove() end end for k, v in pairs(ents.FindByClass("extra_current_amount")) do if v.SID == ply.SID then v:Remove() end end for k, v in pairs(ents.FindByClass("cooler")) do if v.SID == ply.SID then v:Remove() end end
end
hook.Add("PlayerDisconnected","RemovePrinternstuff",RemovePrintersNitemsOnDisconnect)
En gros il te dit qu'il ne reconnait pas le "ply" je crois, car il n'est pas dans ta fonction.
 
  • Initiateur de la discussion
BCZ Gaming

BCZ Gaming

Psychopathe
Messages
1 301
Score réaction
129
Points
275
xLomble77 à dit:
Je ne suis pas le meilleur en lua mais essaye :

Code:
--workshop file
resource.AddWorkshop( "449576946" )
resource.AddWorkshop( "751584776" )
function RemovePrintersNitemsOnDisconnect( ply ) for k, v in pairs(ents.FindByClass("register_tray")) do if v.SID == ply.SID then v:Remove() end end for k, v in pairs(ents.FindByClass("printer_display")) do if v.SID == ply.SID then v:Remove() end end for k, v in pairs(ents.FindByClass("print_scanner")) do if v.SID == ply.SID then v:Remove() end end for k, v in pairs(ents.FindByClass("paper_money")) do if v.SID == ply.SID then v:Remove() end end for k, v in pairs(ents.FindByClass("money_stamp_100")) do if v.SID == ply.SID then v:Remove() end end for k, v in pairs(ents.FindByClass("money_stamp_20")) do if v.SID == ply.SID then v:Remove() end end for k, v in pairs(ents.FindByClass("money_stamp_10")) do if v.SID == ply.SID then v:Remove() end end for k, v in pairs(ents.FindByClass("money_stamp_5")) do if v.SID == ply.SID then v:Remove() end end for k, v in pairs(ents.FindByClass("money_printer")) do if v.SID == ply.SID then v:Remove() end end for k, v in pairs(ents.FindByClass("extra_storage")) do if v.SID == ply.SID then v:Remove() end end for k, v in pairs(ents.FindByClass("extra_print_speed")) do if v.SID == ply.SID then v:Remove() end end for k, v in pairs(ents.FindByClass("extra_current_amount")) do if v.SID == ply.SID then v:Remove() end end for k, v in pairs(ents.FindByClass("cooler")) do if v.SID == ply.SID then v:Remove() end end
end
hook.Add("PlayerDisconnected","RemovePrinternstuff",RemovePrintersNitemsOnDisconnect)
En gros il te dit qu'il ne reconnait pas le "ply" je crois, car il n'est pas dans ta fonction.
Comment résoudre cette erreur? Car j'ai juste config les printer j'ia pas touché a sa xD
 
thepsyca

thepsyca

Psychopathe
Messages
2 164
Score réaction
648
Points
365
BCZ Gaming à dit:
Comment résoudre cette erreur? Car j'ai juste config les printer j'ia pas touché a sa xD
Franchement, change d'addon de printer.

- Des variables en globales
- Des fonctions en globales
- Des overwrite de ses propres fonctions
- Un manque d'optimisation flagrant
- Un code non fonctionnel
 
  • Initiateur de la discussion
BCZ Gaming

BCZ Gaming

Psychopathe
Messages
1 301
Score réaction
129
Points
275
thepsyca à dit:
Franchement, change d'addon de printer.

- Des variables en globales
- Des fonctions en globales
- Des overwrite de ses propres fonctions
- Un manque d'optimisation flagrant
- Un code non fonctionnel
Bah le script fonction et il est gratuit :) est il est pas mal!
 
xLomble77

xLomble77

Psychopathe
Messages
2 191
Score réaction
348
Points
290
BCZ Gaming à dit:
Bah le script fonction et il est gratuit :) est il est pas mal!
Comme indiqué au-dessus je t'ai ajouté le code à essayer
je ne suis pas sûr que sa fonctionne mais à tester^^
 
  • Initiateur de la discussion
BCZ Gaming

BCZ Gaming

Psychopathe
Messages
1 301
Score réaction
129
Points
275
xLomble77 à dit:
Comme indiqué au-dessus je t'ai ajouté le code à essayer
je ne suis pas sûr que sa fonctionne mais à tester^^
Ha oui merci j'avais pas vue xD
 
  • Initiateur de la discussion
BCZ Gaming

BCZ Gaming

Psychopathe
Messages
1 301
Score réaction
129
Points
275
xLomble77 à dit:
Comme indiqué au-dessus je t'ai ajouté le code à essayer
je ne suis pas sûr que sa fonctionne mais à tester^^
Je te dit si sa marche à 13h!
 
xLomble77

xLomble77

Psychopathe
Messages
2 191
Score réaction
348
Points
290
G-F-CD TheFrench

G-F-CD TheFrench

namespace Arthur;
Messages
451
Score réaction
38
Points
140
Il a déclarer ce que voulez dire "ply"

sinon tien :
Code:
local ply = LocalPlayer()
 
  • Initiateur de la discussion
BCZ Gaming

BCZ Gaming

Psychopathe
Messages
1 301
Score réaction
129
Points
275
  • J'aime
Réactions: Ant00ine
xLomble77

xLomble77

Psychopathe
Messages
2 191
Score réaction
348
Points
290
De rien :D
 
Caesarovich

Caesarovich

Geek
Messages
182
Score réaction
31
Points
85
G-F-CD TheFrench à dit:
Il a déclarer ce que voulez dire "ply"

sinon tien :
Code:
local ply = LocalPlayer()
C'est un script côté serveur dont "ply" est l'argument du hook PlayerDisconnect --"
 
Caesarovich

Caesarovich

Geek
Messages
182
Score réaction
31
Points
85
BCZ Gaming à dit:
Plus d'erreur! Merci
Informe le créateur de l'addon si tu as le temps...
 
  • Initiateur de la discussion
BCZ Gaming

BCZ Gaming

Psychopathe
Messages
1 301
Score réaction
129
Points
275
Caesarovich à dit:
Informe le créateur de l'addon si tu as le temps...
Déjà essayer il répond pas xD
 
Discord d'entraide
Rejoignz-nous sur Discord