Furious^ONE! Posted August 11, 2014 Share Posted August 11, 2014 Bonjour, Je souhaite faire un script , que quand un joueurs prend un skin par exemple l'id 217 ( Skin du staff ) , se fait remettre son skin en id 0. Mais que les Admin peuvent avoir ce skin. Merci d'avance. Link to comment
pRemi Posted August 11, 2014 Share Posted August 11, 2014 Bonsoir, Va peut-être falloir essayer de comprendre le LUA car c'est vraiment pas compliqué. Mais bon, je t'es fait le script : A mettre côté client : function checkPlayerSkin() triggerServerEvent("goCheckSkin", getLocalPlayer()) end setTimer(checkPlayerSkin, 5000, 0) A mettre côté server : function checkSkin(thePlayer) if not isObjectInACLGroup("user." getAccountName(getPlayerAccount(thePlayer)), aclGetGroup("Admin")) then -- Si il n'est pas admin alors local id = getElementModel(thePlayer) -- Permet de regarder l'ID du skin du joueur if id == 217 then -- Si l'ID du vêtement est 217 alors setElementModel(thePlayer, 0) -- Met le skin de CJ end end end addEvent("goCheckSkin", true) addEventHandler("goCheckSkin", getRootElement(), checkSkin) C'est pas le code le plus optimisé, mais au moins, normalement ça devrai marcher. Rémi Link to comment
Furious^ONE! Posted August 11, 2014 Author Share Posted August 11, 2014 Merci de ton aide , car j'ai cherché les function a mettre etc.. mais j'ai encore un peux de mal sa faire ça. Bref sinon encore merci de ton aide. Link to comment
pRemi Posted August 11, 2014 Share Posted August 11, 2014 Bonjour, Pas de problème Rémi Link to comment
Furious^ONE! Posted August 11, 2014 Author Share Posted August 11, 2014 Je viens de rencontré un soucis , quand je met le skin 217 sans avoir les droit admin ( ACL ) sa le met quand même , sa ne me revoie pas au skin 0 ( CJ ) Link to comment
pRemi Posted August 11, 2014 Share Posted August 11, 2014 Bonjour, Ah d'accord.. Essais ça (normalement ça réglera ton problème) : function checkSkin(thePlayer) if isObjectInACLGroup("user." getAccountName(getPlayerAccount(thePlayer)), aclGetGroup("Everyone")) then -- Si il n'est pas admin alors local id = getElementModel(thePlayer) -- Permet de regarder l'ID du skin du joueur if id == 217 then -- Si l'ID du vêtement est 217 alors setElementModel(thePlayer, 0) -- Met le skin de CJ end end end addEvent("goCheckSkin", true) addEventHandler("goCheckSkin", getRootElement(), checkSkin) Link to comment
Moderators Citizen Posted August 14, 2014 Moderators Share Posted August 14, 2014 Bonsoir,Va peut-être falloir essayer de comprendre le LUA car c'est vraiment pas compliqué. Mais bon, je t'es fait le script : A mettre côté client : function checkPlayerSkin() triggerServerEvent("goCheckSkin", getLocalPlayer()) end setTimer(checkPlayerSkin, 5000, 0) A mettre côté server : function checkSkin(thePlayer) if not isObjectInACLGroup("user." getAccountName(getPlayerAccount(thePlayer)), aclGetGroup("Admin")) then -- Si il n'est pas admin alors local id = getElementModel(thePlayer) -- Permet de regarder l'ID du skin du joueur if id == 217 then -- Si l'ID du vêtement est 217 alors setElementModel(thePlayer, 0) -- Met le skin de CJ end end end addEvent("goCheckSkin", true) addEventHandler("goCheckSkin", getRootElement(), checkSkin) C'est pas le code le plus optimisé, mais au moins, normalement ça devrai marcher. Rémi Dit moi Rémi, les conseils que je te donnes, tu t'en fou ? (ton "anticheat" sur github) Les triggers ne sont pas fait pour ça ! Les triggers sont les fonctions les plus gourmandes en ressources cpu et réseaux. Nouvelle version (côté serveur): function checkSkin(thePlayer) if isObjectInACLGroup("user." getAccountName(getPlayerAccount(thePlayer)), aclGetGroup("Everyone")) then -- Si il n'est pas admin alors local id = getElementModel(thePlayer) -- Permet de regarder l'ID du skin du joueur if id == 217 then -- Si l'ID du vêtement est 217 alors setElementModel(thePlayer, 0) -- Met le skin de CJ end end end setTimer( function () for k, player in ipairs(getElementsByType("player")) do checkSkin( player ) end end, 5000, 0) Je suis pas méchant mais voir quelqu'un continuer a faire ce genre de code crade et en plus de le partager à d'autres comme étant une bonne solution de le faire alors qu'on lui explique le contraire. Link to comment
pRemi Posted August 15, 2014 Share Posted August 15, 2014 Bonjour Citizen, J'ai bien précisé que ce n'est absolument pas le code le plus optimisé plus haut : "C'est pas le code le plus optimisé, mais au moins, normalement ça devrai marcher." Et si, j'ai dis ça, c'est tout simplement parce que tu m'a partagé la méthode que tu montre ci-dessus sur GitHub. Je reconnais que ma méthode est crade, absolument crade d'ailleurs. Mais la dernière fois que j'avais fait des essais avec ta méthode ça n'a pas fonctionné (J'ai pas eu le temps de regarder encore d'avantage le problème par ailleurs, je le reconnais). Rémi Link to comment
Moderators Citizen Posted August 15, 2014 Moderators Share Posted August 15, 2014 Ouai je me suis un peu emporté aussi, c'est juste que ça m'énerve de voir des personnes donner de mauvaises pratiques à ceux qui apprennent et qu'on va se retrouver avec soit de nouveau topic sur le forum qu'on aurait pu éviter ou d'avoir des serveurs français qui laguent parce que le serveur se prends trop de trigger dans la figure. Link to comment
pRemi Posted August 15, 2014 Share Posted August 15, 2014 Ouai je me suis un peu emporté aussi, c'est juste que ça m'énerve de voir des personnes donner de mauvaises pratiques à ceux qui apprennent et qu'on va se retrouver avec soit de nouveau topic sur le forum qu'on aurait pu éviter ou d'avoir des serveurs français qui laguent parce que le serveur se prends trop de trigger dans la figure. Pas de soucis, c'est parfaitement compréhensible ta réaction. Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now