Aller au contenu

Azur21

Membre
  • Compteur de contenus

    57
  • Inscription

  • Dernière visite

  • Jours gagnés

    3

Tout ce qui a été posté par Azur21

  1. Azur21

    Flèche directionnelle

    Ca roule, normalement c'est plus chiant que compliqué de "resyntaxisé" ses skripts Bonne chance ! 😃
  2. As-tu testé ton bout de code vraiment tout seul (tu l'isoles dans un nouveau fichier .sk et tu disables tous les autres) ? genre vierge comme ca: every 3 seconds: loop all players: if {role.%loop-player-1%} is "MON_ROLE1": if loop-player-1's gamemode is not spectator: loop all players in radius 5 of location of loop-player-1: if {role.%loop-player-2%} is "MON_ROLE2": if loop-player-2's gamemode is not spectator: remove resistance from loop-player-1 and loop-player-2 apply resistance to loop-player-1 for 3 seconds apply resistance to loop-player-2 for 3 seconds command /UHCtest <text>: trigger: if arg 1 is "1": set {role.%player%} to "MON_ROLE1" if arg 1 is "2": set {role.%player%} to "MON_ROLE2" Peut être que le problème vient d'une des lignes précédentes dans ton fichier .sk que tu ne soupçonnes pas.
  3. Azur21

    Flèche directionnelle

    Essaye : function direction(from: location, to: location) :: text: set pitch of {_from} to 0.001 if (flatDistance({_from} and {_to})) - (flatDistance(location 1 meter behind {_from} and {_to})) > 1/3: set {_behind} to true if (flatDistance({_from} and {_to})) - (flatDistance(location 1 meter in front of {_from} and {_to})) > 1/3: set {_infrontof} to true if (flatDistance({_from} and {_to})) - (flatDistance(location 1 meter right {_from} and {_to})) > 1/3: set {_right} to true if (flatDistance({_from} and {_to})) - (flatDistance(location 1 meter left {_from} and {_to})) > 1/3: set {_left} to true if {_behind} and {_right} are true: return "⬊" if {_behind} and {_left} are true: return "⬋" if {_infrontof} and {_right} are true: return "⬈" if {_infrontof} and {_left} are true: return "⬉" if {_right} and {_left} are not set: if {_infrontof} is true: return "↑" if {_behind} is true: return "↓" if {_infrontof} and {_behind} are not set: if {_left} is true: return "←" if {_right} is true: return "→" return "✔" function flatDistance(from: location, to: location) :: number: set y coordinate of {_from} to y coordinate of {_to} return distance between {_from} and {_to} Si ça ne fonctionne toujours pas, essaye d'update ta version de skript. Personnellement tout fonctionne, je suis en 1.12.2 mais la fonction a été testée de la 1.8 à la 1.16. Tiens moi au courant.
  4. Azur21

    Flèche directionnelle

    Tu as quels addons d'installés ? Peux-tu m'envoyer le message d'erreur complet stp ?
  5. skRayFall / Skript-Gui / DiSky (pour les bots discord) / Skellet / SharpSK
  6. Aucune idée, ton bout de code fonctionne chez moi sans boule d’expérience. Je ne vois pas quel addon pourrait créer de problème. Tiens moi au courant.
  7. Azur21

    Flèche directionnelle

    Salut, tu ne cherches vraiment pas beaucoup. Il y a déjà pleins de topics de ce genre sur le forum dont un très récent: https://skript-mc.fr/forum/topic/19105-fleche-qui-pointe-vers-des-coordonnées/ Je te laisse regarder et adapter le deuxième code que j'ai envoyé.
  8. Azur21

    Items non reconnus

    Salut, tu peux détailler davantage ta demande stp ? Tu as des erreurs ? Que n'arrives tu pas à faire précisément ? Simplement poser un block ? Le block moddé n'est-il pas détecté ? Où veux-tu le poser ? A une location précise ou sous le joueur ? Merci d'avance.
  9. Salut, tu es sûr que la boule d'expérience est un problème lié à ce code ? Personnellement je ne l'ai pas, après je suis en 1.12.2. Tu feras gaffe, quand 2 joueurs restent longtemps cote à cote, le temps de la résistance ne fait qu'augmenter puisque tu la réappliques toutes les 3 secondes alors qu'il reste encore 1 seconde de résistance. Je te conseil de remove l'effet une fois que les joueurs s'éloignent. J'ai testé si tu appliques une résistance de 3 secondes pour qu'elle se reset à chaque fois, il y a 1 tick pendant lequel les joueurs n'ont plus de résistance et peuvent prendre beaucoup de damage.
  10. Salut, tu peux simplement vérifié à chaque fois qu'un joueur enlève un équipement si tous ses équipements sont enlevés, puis remove l'effet dès qu'il en remet un: sharpsk on armor unequip: wait 1 tick if {statu} is "Game": if helmet of player and chestplate of player and leggings of player and boots of player are air: apply invisibility to player for 999 seconds sharpsk on armor equip: if {statut} is "Game": remove invisibility from player Le wait 1 tick est important sinon ça ne prend pas le temps de détecter qu'il n'y a plus l'équipement qui vient d'être enlevé.
  11. Azur21

    Retour dans un Gui

    Ca roule ! N'hésite pas à ajouter le Tag "Résolu" si tu n'as pas d'autres questions.
  12. Azur21

    Retour dans un Gui

    Salut, tu peux utiliser les fonctions. Je te drop le lien d'un tuto que j'ai trouvé plutôt bien fait: https://skript-mc.fr/forum/topic/1408-les-fonctions-avec-skquery/ Ça "ressemble" globalement à l'utilisation des commandes mais sans les soucis que tu soulignes. Et puis si tu te débrouilles bien, c'est extrêmement maniable. Si tu veux un exemple avec ton code, n’hésite pas.
  13. Azur21

    Login

    Bon, tout d’abord je te conseil de mettre à jour ta version de skript, la 2.1.2 date de 2014. (Ici: https://github.com/SkriptLang/Skript/releases) Je te conseil également de mettre à jour tous tes addons: (Ici: https://skripttools.net/addons) Ca réglera surement le problème. Sinon, d'après ce que j'ai lu, cela peut également arriver si tu as beaucoup de skripts et donc un grand nombre de variables, si tu as set énormément de variables dans ce skript spécifiquement ou encore si tu as plusieurs mondes dans ton serveur. Tiens moi au courant !
  14. Azur21

    Login

    Restart ton serveur
  15. Azur21

    Login

    Dans ce cas, essaye tout de même de supprimer le fichier "variables.csv" une fois le serveur éteint et dis moi si ca fonctionne.
  16. Azur21

    Login

    Salut, personnellement cela fonctionne. As-tu des erreurs dans ta console au démarrage ou lors du /stop ? Du genre: [23:38:25] [Server thread/ERROR]: #!#! ===!!!=== Skript variable load error ===!!!=== [23:38:25] [Server thread/ERROR]: #!#! Unable to load (all) variables: ... Si oui, peux tu les envoyer ?
  17. Oui tu as besoin de SkRayfall pour le scoreboard. Perso j'ai effectué mes tests en 1.12.2, mais je ne pense pas que cela change grand chose.
  18. Bizarre, moi ca fonctionne.. Peut être que c'est parce que je suis en 1.12.2 on enchant: set {_item} to event-item set {_lvl} to player's level wait 1 tick if event-item is enchanted with Knockback: message "&c L'enchantement Knockback est bloqué" disenchant {_item} set player's level to {_lvl} Essaye cela, dans ma version ca ne fonctionnait pas, peut être que dans la tienne.. 🤔
  19. Salut, on enchant: set {_item} to slot 0 of player's current inventory set {_lvl} to player's level wait 1 tick if event-item is enchanted with Knockback: message "&c L'enchantement Knockback est bloqué" set player's level to {_lvl} set slot 0 of player's current inventory to {_item} Concernant la fusion dans une enclume, je pense que si tu adaptes ton code en mettant Knockback à la place de Sharpness cela fonctionne non ?
  20. Autant pour moi je me suis mal exprimé. Ce que je veux dire, c'est que tu ne peux pas détecter si un joueur a entré une commande dans le passé à chaque fois qu'il parle dans le chat, sauf si tu set l'info dans une variable. Autant directement set le joueur dans une variable/liste dès qu'il exécute cette commande.
  21. Je n'avais pas pu tester mon skript avec 2 joueurs auparavant et je viens de me rendre compte que le scoreboard ne se mettait à jour que pour le dernier joueur arrivé sur le serveur. J'edit donc mon premier message avec un code fonctionnel. Nb : Je reset un scoreboard entier toutes les secondes à chaque joueur, on peut reset seulement la ligne voulue mais je ne crois pas que le gain de performance soit remarquable Salut on damage: if projectile is an arrow: if attacker and victim is a player: set {victimName::%attacker%} to victim on death: if attacker and victim is a player: delete {victimName::%attacker%} delete {victimName::%player%} on quit: loop all players in world "world": if player is {victimName::%loop-player%}: delete {victimName::%loop-player%} delete {victimName::%player%} every second: loop all players in world "world": wipe loop-player sidebar set name of sidebar of loop-player to "nomChoisi" set score "-------------------" in sidebar of loop-player to 3 set score "&5 " in sidebar of loop-player to 2 set score "&5 " in sidebar of loop-player to 0 if {victimName::%loop-player%} is set: set {_location} to location of {victimName::%loop-player%} set {_direction} to direction(location of loop-player and {_location}) set {_distance} to round(flatDistance(loop-player and {_location})) set score "%{_direction}% (%{_distance}% block(s))" in sidebar of loop-player to 1 else: set score "[Pas de victime]" in sidebar of loop-player to 1 function direction(from: location, to: location) :: text: set pitch of {_from} to 0.001 set {_behind} to true if (flatDistance({_from} and {_to})) - flatDistance(location 1 meter behind {_from} and {_to}) > 1/3 set {_infrontof} to true if (flatDistance({_from} and {_to})) - flatDistance(location 1 meter in front of {_from} and {_to}) > 1/3 set {_right} to true if (flatDistance({_from} and {_to})) - flatDistance(location 1 meter right {_from} and {_to}) > 1/3 set {_left} to true if (flatDistance({_from} and {_to})) - flatDistance(location 1 meter left {_from} and {_to}) > 1/3 return "⬊" if {_behind} and {_right} are true return "⬋" if {_behind} and {_left} are true return "⬈" if {_infrontof} and {_right} are true return "⬉" if {_infrontof} and {_left} are true if {_right} and {_left} are not set: return "↑" if {_infrontof} is true return "↓" if {_behind} is true if {_infrontof} and {_behind} are not set: return "←" if {_left} is true return "➡" if {_right} is true return "✔" function flatDistance(from: location, to: location) :: number: set y coordinate of {_from} to y coordinate of {_to} return distance between {_from} and {_to} Il reprend en majorité la fonction dont j'ai parlé au début du post et le code que j'ai fait pour adapter la fonction en scoreboard. J'ai également rajouté 2, 3 lignes pour qu'il suive le joueur touché par une flèche à la place de coordonnées précises. Tant que la victime n'est pas morte/déco ou que l'attaquant ne tire pas sur un autre joueur, la distance le séparant de sa victime reste affichée, je te laisse modifier si tu souhaites qu'il y ai un timer précis, que la flèche ai un nom précise, que le joueur attaqué ne puis pas déco etc etc.
  22. Salut, tu ne peux pas directement vérifier si un joueur a exécuté une commande. Il faut donc que tu passes pas une variable ou une liste. Je te propose d’ajouter ton joueur dans un liste lorsqu’il choisi son équipe, en plus ça te sera sûrement utile par la suite. command /red: trigger: add player to {redTeam::*} command /blue: trigger: add player to {blueTeam::*} on chat: if {redTeam::*} contains sender: cancel event broadcast "&7[&c&lRouge&7] &c%player% &7: &f%message%" else if {blueTeam::*} contains sender: cancel event broadcast "&7[&b&lBleue&7] &b%player% &7: &f%message%"
  23. Salut, si ce que je t'ai envoyé répond à ta demande, n'oublie pas de mettre ton post en résolu. Et puis par principe, un petit message pour me dire si tout fonctionne bien, ça fait toujours plaisir. 🙃
  24. Pas de problème! 😄
  25. Salut, je me permets de répondre car la solution de @Naipow ne permet pas le drop d'items, ni celui de certains blocks (Granite par exemple). options: blacklistblocks: bedrock, command block, and barrier on load: set {blacklistblocks::*} to {@blacklistblocks} on break of grass: if {statut} is "Game": cancel event set event-block to air set {_items} to random item out of all items while {blacklistblocks::*} contains {_items}: set {_items} to random item out of all items drop 1 of {_items} at event-location Tu as simplement à entrer le nom des blocks ou items que tu souhaites blacklist dans l'option, en faisant bien attention à finir par un ", and [dernierblock]" Attention, il est important de set l'option dans une liste car il est impossible (du moins avec les addons que je possède) de voir si l'item est contenu dans l'option.
×
×
  • 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.