Aller au contenu

Goetheus

Membre
  • Compteur de contenus

    64
  • Inscription

  • Dernière visite

  • Jours gagnés

    3
  • Crédits

    2 [Faire un don]

Tout ce qui a été posté par Goetheus

  1. Il n'y a pas d’événement pour cela car ça n'en n'est pas un. Le joueur doit cliquer et glisser déposer l'objet dans le slot de sa seconde main. Pour le détecter il te faudra passer par l'événement "On Inventory Click" (addon Skellett), et ajouter la condition IF en fonction du slot (celui de la seconde main, qui doit être le numéro 40 il me semble), un cancel event empêchera le joueur d'y placer n'importe quel item. A toi d'ajouter la condition qui vérifie l'item afin d'en autoriser certains et pas d'autres. Bonne chance !
  2. Oui, c'est pas faux. Surtout que SkQuery est déprécié, et on ne sait pas jusqu'à quand il sera mis à jour de manière non officielle... Il est fort probable qu'une création de GUI soit par la suite intégrée directement à skript. Je préfère SkQuery pour les GUI car c'est beaucoup plus flexible avec l'event inevntory click pour l'usage que j'en ai, notamment pour détecter différent types de cliques, et autres fonctionnalités un peu précises. C'est un choix, ça dépend de ce qu'on veut faire, c'est comme tout.
  3. Salut ! Si tu préfères rester sous skQuery, comme c'est le cas pour moi, tu peux toujours faire ça (en ayant l'addon Skellett) : on inventory click: if inventory name of players's current inventory is "&8Jeux &7/ &8Games": cancel event #do stuff
  4. Goetheus

    Changer de monde ?!

    Salutations @Happy Tu peux utiliser la function location() dans skript de base (Bensku Fork). Voilà un exemple : location(x, y, z, world("%world%")) set {_location} to location(10, 150, 25, world("spawn")) teleport player to {_location}
  5. Salut @Razo ! Wildskript a été déprécié. Il n'est plus supporté et ne sera plus mis à jour (depuis longtemps en fait). Je te suggère le très bon addon SkUtilities pour la gestion des fichiers yaml. Les syntaxes sont claires, simples, et il y a un bon tuto juste ICI.
  6. Salut @Maxl Skript n'est pas content car tu as des loops dans des loops, or il ne sait donc plus de quel loop tu parle quand tu utilise loop-block ou loop-value...etc. loop all players: %loop-player% loop blocks above {_tprandom.loc::new}: %loop-block-1% loop blocks above {_tprandom.loc::new}: %loop-block-2% Tu peux évidemment faire référence à un loop antérieur dans un loop descendant et donc par exemple comparer un bloc du premier loop-block dans le second...etc.
  7. Salut @_MonsterKid_ Si tu t'aventure dans cette voie, et crois moi c'est une mauvaise idée, il te faut CA ! On ne dispense pas de cours de trigonométrie dans le coin et je n'ai hélas pas du tout le temps de t'expliquer... Il te faudra utiliser des formules mathématiques. Bon courage...
  8. Goetheus

    Anti-Dispawn ?

    Salut à toi @Frip25 ! Tu as bien l’événement "on item despawn" avec l'addon Skellett. Il te suffit alors de faire un cancel event pour l'annuler (ce qui le fera avec tous les objets, pense donc à mettre une condition avant, pour le faire seulement si l'objet qui est censé disparaître correspond à un objet précis). Tu peux récupérer l'objet qui va disparaître avec %event-item% Tu peux aussi récupérer le lieu de la disparition avec %event-location% Et n'oublies pas que tu as toujours la possibilité de modifier la "durée de vie" des objets au sol sous Spigot, dans son fichier de configuration. Bon skripting !
  9. Goetheus

    aide addon skript-db

    Ouais je vois ce que tu veux faire, mais je n'ai jamais monté un serveur bungeecoord, et donc jamais eu besoin de faire de lien entre les serveurs, je ne peux rien pour toi à ce niveau là :/ Pour l'Access denied, c'est que tu as un soucis avec ton mot de passe et/ou ton user. Vu que tu as plusieurs serveurs, il te faut un user par serveur (sinon ça te fais des multiconnexions, et ça passera pas). Si tu as ta db sur la même machine que l'un de tes serveurs, là aussi, il vaut mieux y accéder en root avec l'adresse localhost (127.0.0.1) pour le serveur en question.
  10. Goetheus

    aide addon skript-db

    J'ai eu le même soucis d'accès à la db, mais impossible de me rappeler d'où ça venait... Il me semble que c'était côté phpmyadmin... Tu peux utiliser un debug avec %the last sql error% pour voir d'où ça vient exactement. Après tout ce que je peux te dire c'est que côté skellett, le mysql n'est pas sécurisé. Quand tu es connecté au client, facile d'intervenir sur les envois et les réceptions et faire des injections, quelqu'un d'autre l'expliquera sûrement mieux que moi, mais autrement dit, vaut mieux oublier. Et avec skript-db, j'ai finalement abandonné. Impossible de lire le code asynchroniquement, et impossible d'utiliser skript-db dans des fonctions skripts... Quand t'as un script dédié avec 50+ fonctions mysql que tu as besoin d'appeler, bah c'est la merde. Bref, d'une manière générale, tout ce qui concerne le mysql et skript est ultra beuggé. J'en suis retourné aux variables csv après 8 mois d'essais infructueux...
  11. @Arno a suggéré un script pour réaliser ce que je recherchais ! Voici donc la solution ! command /découper <integer> <text>: trigger: set {_text} to arg-2 set {_text::*} to {_text} split by "" set {_dist} to arg-1 set {_pos} to {_dist} set {_ok} to false while {_ok} is not true: set {_posok} to false while {_posok} is not true: if {_text::%{_pos}%} is " ": set {_posok} to true else: remove 1 from {_pos} set {_c} to (amount of {_pos::*}) if {_pos} is {_pos::%{_c}%}: set {_pos} to {_pos::%{_c}%}+{_dist} set {_posok} to true if {_pos} is 1: set {_pos} to {_pos::%{_c}%}+{_dist} set {_posok} to true add {_pos} to {_pos::*} set {_pos} to {_pos}+{_dist}+1 if {_pos} > amount of {_text::*}: set {_ok} to true add amount of {_text::*} to {_pos::*} set {_pos::0} to 0 loop (amount of {_pos::*}) times: broadcast subtext of {_text} between index {_pos::%(loop-value)-1%}+1 and {_pos::%loop-value%}
  12. Salutations ! Pour reset tes variables, soit tu les remet à zéro, soit tu les supprime ! set {red} to 0 delete {red} clear {red} delete ou clear font la même chose. Je n'ai pas compris tout ton jeu, mais tu as des blocs rouges qui envoient l'équipe bleu à la ramasse, et des blocs bleus qui envoient l'équipe rouge à la ramasse ? Le plus simple, ce serait de faire comme avant tes commandes, tu te met à l'emplacement d'un bloc, et au lieu de set une variable, tu set une liste. Il te faudra ton deux commandes, une pour les bleus et une pour les rouges. Par exemple : add %location of player% to {blue.blocklist::*} add %location of player% to {red.blocklist::*} Pour optimiser ton code et éviter de vérifier sans arrêt toutes les locations de tes varaibles afin de savoir si un joueur est sur un bloc. Je rajouterais des pressure plates sur les blocs et j'utiliserais l'évènement "On pressure plate". Ensuite tu loop chaque variable en vérifiant si la position du joueur sur la pressure plate = la position d'une variable. Si ça dis oui, il faut vérifier que le joueur soit dans la bonne équipe. Et si ça dis oui, tu le tp où tu veux. Donc dans un cas vers le spawn bleu, et dans l'autre, le spawn rouge ! Il y a des tas de façons différentes de réaliser ce que tu veux, mais en voici une ! Bon courage !
  13. Salutations à tous ! J'ai réalisé une fonction qui me permet de faire un retour à la ligne automatiquement sur un texte, selon la quantité de caractères. Avec TuSke, c'était censé être simple, puisqu'il existe la syntaxe suivante: set {_text::*} to split {_text} by {_number} characters Ainsi, le texte est découpé en morceau qui ne dépassent pas, dans mon cas, 50 caractères, prenant en compte chaque mot et ne coupant pas au travers d'eux. Or, cet effet ne fonctionne pas correctement, puisque sur certaines phrases, il est possible que deux mots soient collés entre eux... Comme celle-ci : "Salutation les amis ! J'ai un très long discours à faire. Ceci est un nouveau paragraphe, bien évidemment ! Mais la phrase promet d'être longue et fastidieuse car il faut vérifier tout ça correctement !" "longue et" devient alors "longueet". Quelqu'un aurait une petite idée de comment découper un texte selon une quantité de caractères, tout en remettant le code couleur sur la partie suivante, et sans utiliser d'addons exotiques ? Merci pour votre aide ! Des bisous <3
  14. 45 minutes, ça va, c'est rien ! :p Alors oui, utilises des variables ! Par exemple {join_message}, {leave_message} et {death_message} Dans ta commande tu ajoute deux arguments : un pour indiquer quelle variable tu veux modifier, un autre pour indiquer le texte que tu veux afficher. Tu set tes variables à l'argument 2. Ensuite, dans chaque événement, tu mets ta variable entre pourcentage comme %player% pour qu'elle apparaisse comme texte.
  15. Ah oui, Mastersfelix a raison ! Au temps pour moi, ce n'est pas "parsed as time", mais "parsed as timspan"!
  16. Il me semble que tu devrais plutôt l'enregistrer en brut dans ta BDD. Et ce n'est que quand tu la récupère qu'il convient de la parsed as time.
  17. Pour revenir au sujet, l'auteur du topic n'avait pas précisé que la partie nécessitait l'Add-on UMBASKA. Du coup, mon soucis concernant le clicked event est réglé !
  18. Rectification, je n'avais pas Umbaska. Or sur SkUnity il est écrit que les "Clicked item" sont relié à Umbaska... Du coup je suis en train de le mettre, mais ça cause quelques problèmes avec SharpSK... @Mentosh Par exemple, tu as une épée, tu lui donne le nom ALLO, Si l'item s'appelle ALLO, Le joueur fait 20 dégâts de plus de avec.
  19. @Snowach Hélas, ça ne fonctionne pas (et ça ne peut pas fonctionner) puisque j'ai besoin de détecter le clic pour continuer :/
  20. Salutations @Mentosh ! Merci d'être venu à mon secours ah ah :D En réalité j'ai déjà Wildskript, SkQuery, SkRayfall, TuSKe et SharpSk. Concernant les espaces, c'était pour l'exemple en référence au tutoriel, j'ai remplacé cette valeur par le nom de mon item ;)
  21. Il y a une solution par très optimale qui serait, à chaque /command, d'effacer la liste, et de la remettre en mettant l'ordre que tu désires. Mais je pense qu'il doit exister un moyen de faire list +1 (mais qui n'affichera plus le premier du coup). Regarde du côté des loop-value et surtout des loop-index !
  22. Salutations à tous ! J'ai un petit soucis concernant cette ligne : Je me permet alors de répondre à la suite de ce très bon tutoriel car j'ai une erreur que personne ne semble avoir (et ça pourra peut être en aider certains) : [skript] can't understand this condition: 'name of clicked item contains " allo "' Le "if name of clicked item contains" n'est tout simplement pas reconnu :/ J'ai bien SkQuery (j'ai du coup testé plusieurs versions, et toujours pareil).
  23. Mais c'est étonnant. Car avec ma variable liste ça ne fonctionne pas x) J'ai néanmoins réussi lorsque le chiffre est positif SEULEMENT avec la viariable list en faisant comme ça : set {_temp1} to {_temp::1} parsed as a number puis set {_temp1tp} to rounded {_temp1} Lorsque c'est un chiffre avec un signe négatif (-) devant, temp1 ne récupère rien (<none>) :'( EDIT : J'ai trouvé le soucis avec cette première valeur. Devant il y avait le code couleur &f, du coup il n'y avait pas que des chiffres, et donc impossible à convertir parsed as number... Tout simplement x)
  24. Oui bonne idée ! Hélas je ne sais pas pourquoi, j'ai l'impression que le round n'agit tout simplement pas o_O Je viens d'essayer avec ça, à vide : set {_temp1} to 5.4789 set {_temp2} to round x-coord of {_temp1} send "%{_temp1}%" to player send "%{_temp2}%" to player Dans le chat j'ai : 5.48 <none> EDIT : En revanche, ça tout simple, ça fonctionne :D set {_temp1} to 5.4789 set {_temp2} to rounded {_temp1} Merci @Aligatoror :D
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.