Install Steam
login
|
language
简体中文 (Simplified Chinese)
繁體中文 (Traditional Chinese)
日本語 (Japanese)
한국어 (Korean)
ไทย (Thai)
Български (Bulgarian)
Čeština (Czech)
Dansk (Danish)
Deutsch (German)
Español - España (Spanish - Spain)
Español - Latinoamérica (Spanish - Latin America)
Ελληνικά (Greek)
Français (French)
Italiano (Italian)
Bahasa Indonesia (Indonesian)
Magyar (Hungarian)
Nederlands (Dutch)
Norsk (Norwegian)
Polski (Polish)
Português (Portuguese - Portugal)
Português - Brasil (Portuguese - Brazil)
Română (Romanian)
Русский (Russian)
Suomi (Finnish)
Svenska (Swedish)
Türkçe (Turkish)
Tiếng Việt (Vietnamese)
Українська (Ukrainian)
Report a translation problem
Nous ne supprimons pas les scripts payants, pourquoi cela serait interdit ? Un gros travail peut (doit) mériter de l'argent parfois.
En ce qui concerne ta demande, tu devrais donner plus de précisions sur comment ça marcherait. Personnellement, je ne comprends pas comment cela se ferait : En fonction du job, il y'a certains models qui sont donnés mais des personnes de rang supérieur peuvent se donner des models aussi ? Essaie de plus développer s'il te plait, j'essaierais de voir si je peux te faire ça.
Bonne journée!
Un script qui permet :
- A certain métiers de ne pas le pouvoir le prendre via Le F4 même si on le voit
- Si je me met un métier que je peux ex : Recrue et que je veux passer Soldat
- Il faut que un supérieur ex : Commander procure une tenue en faisant F4/Objet : Tenue de Soldat et cela fait spawn un model (donc sa je le changerais moi même )
- Et dés que la recrue prend la tenue cela le transforme en Soldat ! (changement de metier)
-Et comme sa on peut prendre les gens qui sont apte a devenir soldat , sergent ...
- Et impossible que le ex : Le Commender prend une tenue via F4/Objet et la prenne !
- Que l'on puisse config par exemple le commender peut mettre un Bras droit (mais que le commander ne puisse pas mettre les grades que a accès le bras droit ) et que le bras droit peut mettre caporal et que caporal puisse mettre soldat et soldat II ...
Mais je pense qu'il faut pas que tu te base sur les métiers direct !
Mais que tu fasse un système qui permet de crée les irritants ...
J’espère t'avoir mieux expliqué
Merci d'avance
Fait-moi part de tes éventuels soucis rencontrés, je t'aiderais en conséquence mais inutile de s'embêter à payer car c'est pas très compliqué.
Bonne journée!
Donc alors j'ai regardé les entites d'un autre addon pour voir comment cela se présenter !
voici :
Et je le transforme en :
Voilas après je commences ENT:USE ...
Et je t'envois au fur et a mesure
Mettre un if ENT:Use( Entity caller ) then n'a aucun sens : L'entité gère des fonctions prédéfinies, donc on met pas un "if" (plutôt un "function") : c'est soit on va utiliser l'entité et déclencher la fonction, soit non. De plus, regarde bien les arguments (regarde la page Wiki de Garry's Mod ci-dessus) : Tu mets Entity caller, pas de virgule pour les différencier, et tu n'as pas écrit tous les arguments demandés par la fonction : parfois, ils sont optionnels, mais quand ce n'est pas précisé, tu peux tout de même les écrire si tu ne les utilises pas.
Ensuite, dans la fonction ENT:Use, tu écris la ligne Player:changeTeam(TEAM_SSOBERSHUTZE). Des soucis élémentaires : Player n'est pas initialisé, en regardant la description de la fonction ENT:Use sur le Wiki on voit que c'est le deuxième argument qui représente le joueur, (le "caller", donc la personne qui appelle la fonction). Ca serait donc caller au lieu de Player.
Un autre soucis : regarde les arguments de changeTeam (tout est donné au dessus pour les liens si tu ne trouves pas) : on demande deux paramètres optionnels dont le premier serait de forcer le joueur à aller dans la Team, une valeur booléenne où il faut donc renseigner true pour que le joueur puisse y'aller. Le code final corrigé (je ne devrais pas le donner pour te laisser apprendre, mais bon je suis gentil) serait donc :
A savoir que AdminSpawnable ne sert, à mes yeux, à rien. Je n'ai pas utilisé de fonction ENT:Initialize ce qui serait quand même conseillé, pour gérer la façon dont va retomber l'entité et d'autres paramètres à prendre en compte. Je mettrais dans ton exemple :
Egalement et pour finir, sache que nous utilisons toujours self quand nous parlons de l'entité elle-même et nous sommes dans une fonction spécifique à l'entité. Il est important de comprendre toutes les lignes écrites au-dessus pour que tu comprennes un minimum ce que tu fais : Tu peux donc te renseigner sur chaque ligne (même si j'ai déjà mis des commentaires à côté) en allant sur le Wiki de Garry's Mod qui peut te donner de plus amples informations : voir ici[wiki.garrysmod.com].
Il ne tient plus qu'à toi de placer ma fonction ENT:Initialize() puis ma fonction ENT:Use().
Bonne journée/soirée!
C'est trés gentils de ta pars de m'expliquer car cela ne me donne pas que le code mais aussi sa permet d'apprend a quoi sert car tu détailles TOUT !!
Merci Merci
Une idée ?
Pour le premier cas, une erreur de code ou de gestion des fonctions : essaie de différencier côté client, serveur et partagé (avec des fichiers cl_init, init et shared), en mettant tout de même des fonctions (car sinon tu peux tomber sur le deuxième problème au-dessus), comme faire function ENT:Draw() end dans le côté client.
De toute façon, j'essaie ça ce soir et je te dis alors la source du problème si tu ne la trouves pas.
Mais cela n'a pas fonctionné et la pour séparé je ne comprend pas bien ce qu'il faut faire
Pour séparer un côté, c'est très simple. Il y'a trois côtés: Partagé (shared.lua), Client (cl_init.lua) et Serveur (init.lua). Dans chaque fichier correspondant, tu mets les fonctions adéquates.
Prenons par simple exemple la fonction ENT:Use[wiki.garrysmod.com]. Nous voyons à gauche de la fonction avec ses arguments un petit carré bleu, qui indique que cette fonction se déclare en côté serveur. Nous mettrons donc cette fonction dans un fichier serveur (init.lua). Les carrés jaunes indiquent quant à eux des côtés clients, et un mélange des deux indique forcément le côté. Je te dis de bien structurer par fichier comme cela par méthode logique, après pour être honnête il y'a tellement peu de choses à mettre dans ton entité que tu peux faire un fichier shared.lua en utilisant des conditions comme if CLIENT then return end (dans la fonction ENT:Use, pour arrêter le côté client car nous fonctionnons dans le côté serveur). Le problème est que parfois, on utilise des classes côté client dans une fonction côté serveur : le tout est alors de bien gérer son code. On peut alors aussi utiliser des conditions comme if CLIENT then BLABLAH elseif SERVER then BLABLAH (avec au lieu de BLABLAH le code bien évidemment) [on peut aussi mettre else car c'est soit client, soit serveur].
Pour finir avec cette histoire de côté, retiens que quand tu as une erreur "attempt to index 'theentity' (a nil value)", c'est soit car tu as mal initialisé/déclaré quelque chose (ici "theentity"), soit car tu te trompes de côté : On ne peut pas ouvrir une fenêtre dans le côté du serveur puisque c'est le client qui va la voir.
Bref, ne nous égarons pas du sujet : cette histoire de côté est utile sur des entités assez importantes, ici pour être honnête je ne pense pas que tu en aurais besoin : essaie de mettre le nom en minuscule ("tenue" au lieu de "Tenue"), puis redémarre. Essaie aussi sur serveur dédié et non en solo. Si ça ne marche pas, envoie le code entier de l'entité ici. J'essaierais de voir ça demain et de le tester pour voir un peu comment tout cela se passe.
Tiens-moi au courant!
Je te kiff mais tu peux pas t'imaginer a quels point !!!!
PS : c'était la majuscule faussait tout !
Et il y a cette erreur dans la console j'essai regarder pourquoi j'ai suprimé les deux dernier setuse type et value ... mais rien .. Voici l'erreur :
Tu vois je sais que avec Darkrp on peut choisir si cela nous tp ou met directement la tenue !
Mais moi je veux que sa ne TP pas lorrsqu'il achete via le F4 l'entities mais Je veux que sa TP si c'est d'autre metiers Et qu'il font F4/Metiers ...
Encore un autre truc le seul problème c'est que les joueurs ne sont pas obligé de passez par le commender ils peuvent toujours faire F4/Metiers et le prendre
Aurais tu une idée pour qu'ils ne puissent le prendre via F4 ?
Merci d'avance
Envoie donc le code.
Pour ton dernier message, je vois totalement ce que tu veux dire et je comprends le problème, d'où il vient. Il faudrait simplement que je fasse des tests, car pour le premier problème de téléportation c'est car GM.Config.norespawn est à false. Je vais regarder de plus près le code du DarkRP mais je pense qu'il faudra modifier un peu les cores pour faire en sorte qu'en fonction de la Team, le respawn ne se fait pas.
Pour le menu F4, il faut que tu rajoutes un customCheck qui bloquera les joueurs à pouvoir y'aller, ou encore avec un "NeedToChangeFrom". Etant donné que je préfère te donner une méthode la plus optimisée et fonctionnelle possible, je préfère faire ça demain et t'envoyer les bonnes procédures à suivre dès demain soir.
EDIT : Déjà trouvé pour la seconde méthode, je te donnerais les deux demain
Bonne soirée!