geforce Posté(e) le 16 juillet 2018 Posté(e) le 16 juillet 2018 Version Skript : 1.8 Bonjour, Ce matin, j'ai voulu créer une nouvelle armure plus résistante que le diamant grâce à la côte de mailles. Pour ce faire, j'ai pensé à un stratagème : Lorsque le joueur subit des dégâts sont armure en côte de mailles se transforme en armure de diamants avec protection 2. Cependant j'aimerais aussi que si l'armure en côte de mailles est enchantée, elle se transforme en armure en diamant tout en gardant ses propriétés d'enchantement d'origine et en ajoutant +2 niveau en protection. on damage: if helmet of victim is chainmail helmet: set {_r} to 0 loop 4 times: add 1 to {_r} if victim's helmet is enchanted with protection {_r}: set {_r} to {_r} + 2 equip victim with diamond helmet of protection {_r} set victim's helmet to chainmail helmet else: set victim's helmet to diamond helmet of protection 2 wait 2 ticks set victim's helmet to chainmail helmet Merci d'avance !
uiytt Posté(e) le 16 juillet 2018 Posté(e) le 16 juillet 2018 Il y a 8 heures, geforce a dit : Version Skript : 1.8 Bonjour, Ce matin, j'ai voulu créer une nouvelle armure plus résistante que le diamant grâce à la côte de mailles. Pour ce faire, j'ai pensé à un stratagème : Lorsque le joueur subit des dégâts sont armure en côte de mailles se transforme en armure de diamants avec protection 2. Cependant j'aimerais aussi que si l'armure en côte de mailles est enchantée, elle se transforme en armure en diamant tout en gardant ses propriétés d'enchantement d'origine et en ajoutant +2 niveau en protection. on damage: if helmet of victim is chainmail helmet: set {_r} to 0 loop 4 times: add 1 to {_r} if victim's helmet is enchanted with protection {_r}: set {_r} to {_r} + 2 equip victim with diamond helmet of protection {_r} set victim's helmet to chainmail helmet else: set victim's helmet to diamond helmet of protection 2 wait 2 ticks set victim's helmet to chainmail helmet Merci d'avance ! moyen plus simple : dans l'event on damage tu peux récupérer et modifier les dommages reçus en utilisant la syntaxe dommage, donc tu as juste à faire en sort que ça enlève moins
KyloRen3600 Posté(e) le 17 juillet 2018 Posté(e) le 17 juillet 2018 Salut ! Il y a 17 heures, uiytt a dit : moyen plus simple : dans l'event on damage tu peux récupérer et modifier les dommages reçus en utilisant la syntaxe dommage, donc tu as juste à faire en sort que ça enlève moins J'ai déjà essayé de faire ça c'est galère, je te conseille d'utiliser les nbt pour modifier la protection de l'armure
geforce Posté(e) le 17 juillet 2018 Auteur Posté(e) le 17 juillet 2018 il y a 57 minutes, KyloRen3600 a dit : Salut ! J'ai déjà essayé de faire ça c'est galère, je te conseille d'utiliser les nbt pour modifier la protection de l'armure Je veux bien le faire, mais comment je suis censé le faire, j'ai cherché sur le forum mais il n'y a rien à ce sujet !
KyloRen3600 Posté(e) le 17 juillet 2018 Posté(e) le 17 juillet 2018 https://minecraft.gamepedia.com/Attribute L'attribut est generic.armor
uiytt Posté(e) le 18 juillet 2018 Posté(e) le 18 juillet 2018 Il y a 22 heures, KyloRen3600 a dit : Salut ! J'ai déjà essayé de faire ça c'est galère, je te conseille d'utiliser les nbt pour modifier la protection de l'armure en quoi c'est galère tu fais juste remove 2 from damage et boum 2 dégat en moin ?
KyloRen3600 Posté(e) le 18 juillet 2018 Posté(e) le 18 juillet 2018 La fonction de gestion de dégâts de Minecraft est un peu plus complexe que ça, on peut en effet enlever 2 au dégâts mais ce ne sera pas très "propre"
Itexe Posté(e) le 18 juillet 2018 Posté(e) le 18 juillet 2018 Salut vous essayez des retirer des dommages causer mais on pourrait pas plutôt laisser les dommages tel qu'ils sont si c'est compliquer et géré plutôt la vie du joueur, par exemple on pourrait simplement relevé les dégâts que subis le joueur lors d'un on damage puis on heal en fonction des dégâts reçu ? J'essaie simplement d'apporter un autre point de vu j'ai pas eu le temps de faire des recherches pour voir si c'était possible je suis un nouveau skripteur donc je connais pas tout tout encore ?
geforce Posté(e) le 18 juillet 2018 Auteur Posté(e) le 18 juillet 2018 C'est-à-dire qu'une armure prend en compte bien plus que les simples dégâts de base de l'attaque. dégâtsSubis = pointsdAttaque × ( 1 − max( pointsDeDéfense / 5, pointsDeDéfense − pointsdAttaque / ( 2 + robustesse / 4 ) ) / 25 ) Donc, le plus simple est de loin, de mettre un nbt qui change le generic.armor de l'armure, c'est assez facile à réaliser avec un commande bloc, Cependant, sur skript la réalité est toute autre ! Je n'y arrive pas !
KyloRen3600 Posté(e) le 18 juillet 2018 Posté(e) le 18 juillet 2018 Ah tu as trouvé cette fameuse fonction, j'ai déjà essayé de m'en servir mais ça n'a pas vraiment marché. Pour appliquer des NBT en skript il faut SkStuff.
geforce Posté(e) le 21 juillet 2018 Auteur Posté(e) le 21 juillet 2018 J'ai réussi, par contre il m'a fallu changer la version de mon serveur de la 1.8 à la 1.9 ! on load: #évenement: new Recipe "rune" #/!\ Très important : déclaration du craft : new recipe "nomducraft" "rune".Recipe.setIngredient{1, 1 of glowing bowl named "&fDionite instable"}; #| "rune".Recipe.setIngredient{2, 1 of glowing bowl named "&fDionite instable"}; #| "rune".Recipe.setIngredient{3, 1 of glowing bowl named "&fDionite instable"}; #| "rune".Recipe.setIngredient{4, 1 of glowing bowl named "&fDionite instable"}; #| #|-Set des ingrédients,içi:"nomducraft".recipe.setIngredient{(Slot dans la table de craft), nombre item); "rune".Recipe.setIngredient{6, 1 of glowing bowl named "&fDionite instable"}; # | On verra plus tard la différence avec les autres addons "rune".Recipe.setResult{1 chainmail helmet named "&f Casque en Dionite" with nbt "{AttributeModifiers:[{AttributeName:""generic.armor"",Name:""generic.armor"",Amount:10,Operation:0,UUIDLeast:324464,UUIDMost:154531,Slot:""head""}]}"}; "rune".Recipe.register{}; # /!\ Très important : register du craft
Messages recommandés