TwerkRekt Posté(e) le 18 novembre 2016 Posté(e) le 18 novembre 2016 Bonsoir, j'ai un gros problème ! Donc, voilà je fait présentement un skript, alors j'aimerai que nous pourrions modifier les kits directement sur un kits.yml J'ai suivi le tutoriel de @PsYZiiK mais je m'arrête à la car je ne comprend pas vraiment: on load: if folder "plugins/CrazyBattle" doesn't exists: create folder "plugins/CrazyBattle" if file "plugins/CrazyBattle/Kits.yml" doesn't exists: create file "plugins/CrazyBattle/Kits.yml" J'aimerai un trucs qui ressemble à ça : Liste des kits: Guerrier: Permission: crazybattle.guerrier Items: - 1 iron sword - 2 golden apple - 1 bow - 64 arrows Juste savoir le bout de code et recevoir une explication pas trop dûr, merci à vous !
0 Skripting Posté(e) le 18 novembre 2016 Posté(e) le 18 novembre 2016 function WF(object: text): # On crée une fonction pour écrire dans le fichier plus rapidement ! WF {_object} to "plugins/CrazyBattle/Kits.yml" # On écrira l'argument de la fonction dans le fichier YML ! on script load: # Au rechargement du script ! if file "plugins/CrazyBattle/Kits.yml" does not exists: # Si le dossier "CrazyBattle" ainsi que le fichier "Kits.yml" n'existent pas (on peut vérifier les deux d'un coup) ! create file "plugins/CrazyBattle/Kits.yml" # On crée le dossier ainsi que le fichier. wait 0.5 tick # Nécessaire pour laisser le temps au fichier de se crée WF("Kits:") # On appelle notre fonction pour écrire dans le fichier YML ! Par préférence, ne pas mettre d'espace ! WF(" Guerrier:") # De même... WF(" Permission: 'CrazyBattle.Guerrier'") # Si tu veux insérer un texte, ou même un nombre, il doit toujours être entre apostrophes ! A part les booléens ! WF(" Items:") WF(" - 1 iron sword") WF(" - 2 golden apple") WF(" - 1 bow") WF(" - 64 rows") funtion Value(value: text) :: text: # On crée une fonction qui permettra de lire et récupérer les valeurs du fichier ! set {_result} to single value {_value} get of "plugins/CrazyBattle/Kits.yml" # On récupère la valeur ! return {_result} # ...et on la renvoie ! command /guerrier: # Pour exemple, je vais créer une commande pour récupérer le Kit du fichier YML ! trigger: if player does not have permission (Value("Kits.Guerrier.Permission")): # On récupère commme ceci la value du fichier ! On regarde par la suite si le joueur a la permission ou pas ! send "&cErreur : Vous n'avez pas la permission !" # On dit au joueur qu'il n'a pas la permission ! else: # Sinon... set {_items::*} to value list "Kits.Guerrier.Items" get of "plugins/CrazyBattle/Kits.yml" # On récupère les items du fichier YML ! wait 0.5 tick # On attend un peu... clear player's inventory # On nettoie l'inventaire du joueur ! wait 0.5 tick loop {_items::*}: # On loop la liste qui contient les items ! give ("%loop-value%" parsed as an item) to player # On parse nos items et on les donne au joueur^^ ! # END !
0 Blackmine57 Posté(e) le 18 novembre 2016 Posté(e) le 18 novembre 2016 Il a oublié le "c" à "function" (erreur 1 et 2) et pour la derrière il faut que tu nous donne ton script
0 Skripting Posté(e) le 18 novembre 2016 Posté(e) le 18 novembre 2016 Il a oublié le "c" à "function" (erreur 1 et 2) et pour la derrière il faut que tu nous donne ton script Non car les deux dernières erreurs sont en relation avec la première, donc si on corrige la première, les autres seront corrigées de même. Et comme tu l'as dis, j'ai oublié à "c" à funtion. Merci beaucoup j'avais fait le code sur téléphone de mémoire donc ça m'a pris un peu de temps et j'ai pas vu :c !
0 Blackmine57 Posté(e) le 18 novembre 2016 Posté(e) le 18 novembre 2016 A bon, je savais pas De rien =)
0 TwerkRekt Posté(e) le 18 novembre 2016 Auteur Posté(e) le 18 novembre 2016 Quand je fait /guerrier, je ne reçois pas le kit
0 Blackmine57 Posté(e) le 18 novembre 2016 Posté(e) le 18 novembre 2016 A désolé je ne peux pas t'aider je ne connais pas (encore) les fonctions avec return :p
0 TwerkRekt Posté(e) le 18 novembre 2016 Auteur Posté(e) le 18 novembre 2016 function WF(object: text): # On crée une fonction pour écrire dans le fichier plus rapidement ! WF {_object} to "plugins/CrazyBattle/Kits.yml" # On écrira l'argument de la fonction dans le fichier YML ! on script load: # Au rechargement du script ! if file "plugins/CrazyBattle/Kits.yml" does not exists: # Si le dossier "CrazyBattle" ainsi que le fichier "Kits.yml" n'existent pas (on peut vérifier les deux d'un coup) ! create file "plugins/CrazyBattle/Kits.yml" # On crée le dossier ainsi que le fichier. wait 0.5 tick # Nécessaire pour laisser le temps au fichier de se crée WF("Kits:") # On appelle notre fonction pour écrire dans le fichier YML ! Par préférence, ne pas mettre d'espace ! WF(" Guerrier:") # De même... WF(" Permission: 'CrazyBattle.Guerrier'") # Si tu veux insérer un texte, ou même un nombre, il doit toujours être entre apostrophes ! A part les booléens ! WF(" Items:") WF(" - 1 iron sword") WF(" - 2 golden apple") WF(" - 1 bow") WF(" - 64 arrows") function Value(value: text) :: text: # On crée une fonction qui permettra de lire et récupérer les valeurs du fichier ! set {_result} to single value {_value} get of "plugins/CrazyBattle/Kits.yml" # On récupère la valeur ! return {_result} # ...et on la renvoie ! command /guerrier: # Pour exemple, je vais créer une commande pour récupérer le Kit du fichier YML ! trigger: if player does not have permission (Value("Kits.Guerrier.Permission")): # On récupère commme ceci la value du fichier ! On regarde par la suite si le joueur a la permission ou pas ! send "&cErreur : Vous n'avez pas la permission !" # On dit au joueur qu'il n'a pas la permission ! else: # Sinon... set {_items::*} to value list "Kits.Guerrier.Items" get of "plugins/CrazyBattle/Kits.yml" # On récupère les items du fichier YML ! wait 0.5 tick # On attend un peu... clear player's inventory # On nettoie l'inventaire du joueur ! wait 0.5 tick loop {_items::*}: # On loop la liste qui contient les items ! give ("%loop-value%" parsed as an item) to player # On parse nos items et on les donne au joueur^^ ! send "{@Prefix}&2 Vous avez reçus le kit Guerrier !"
0 Skripting Posté(e) le 18 novembre 2016 Posté(e) le 18 novembre 2016 Je vois ça quand je suis sur PC ;) !
0 TwerkRekt Posté(e) le 19 novembre 2016 Auteur Posté(e) le 19 novembre 2016 Je vois ça quand je suis sur PC ;) ! D'accord :)
0 TwerkRekt Posté(e) le 19 novembre 2016 Auteur Posté(e) le 19 novembre 2016 J'attend encore :) Il se pourrait que ce soit les " à mettre en ' ?
0 Skripting Posté(e) le 19 novembre 2016 Posté(e) le 19 novembre 2016 Re, Après un test, je reçois parfaitement les items. Bizarre.
0 TwerkRekt Posté(e) le 19 novembre 2016 Auteur Posté(e) le 19 novembre 2016 Re, Après un test, je reçois parfaitement les items. Bizarre. J'ai : Skript2,2 fixe Skquery WildSkript Umbaskajava7 Sharsk Piratesk Skrayfall Il en manque?
0 TwerkRekt Posté(e) le 19 novembre 2016 Auteur Posté(e) le 19 novembre 2016 Enfaite, sa clear mon inventaire mais ça ne donne rien
0 Blackmine57 Posté(e) le 19 novembre 2016 Posté(e) le 19 novembre 2016 Je peux pas t'aider, désolé. Mais évite les doubles postes :p
0 TheEnragedDog Posté(e) le 13 janvier 2017 Posté(e) le 13 janvier 2017 Tu a des erreurs java dans la console quand tu fait la commande /Guerrier ?
Question
TwerkRekt
Bonsoir, j'ai un gros problème !
Donc, voilà je fait présentement un skript, alors j'aimerai que nous pourrions modifier les kits directement sur un kits.yml
J'ai suivi le tutoriel de @PsYZiiK mais je m'arrête à la car je ne comprend pas vraiment:
J'aimerai un trucs qui ressemble à ça :
Juste savoir le bout de code et recevoir une explication pas trop dûr, merci à vous !
17 réponses à cette question
Messages recommandés