Aller au contenu
  • 0

Peut-on Loop les blocs autour d'un joueur en cylindre et non en sphere ?


Question

Posté(e)

Bonjour à tous,

Tous d'abord merci de porter votre attention à ma demande :D

 

Voilà, je suis en train de réalisez un skript pour mon projet et pour celà, je dois loop les blocks autour d'une location mais pas en sphère mais en cylindre.

 

je connais le :

loop block in radius 7 around {_target}

 

Mais cela loop tous les blocks en sphère et non pas en cylindre comme je le veux. Il y aurais t-il un moyen de remplacer le radius par autre chose qui fait une sphere, sinon sa serais certainement possible avec les coordonné ? Je n'ai jamais travailler en coordonné du coup je ne suis pas asser calé dans ce domaine :'(

 

Merci de m'aider au plus vite pour que je puisse continuez mon projet :D

2 réponses à cette question

Messages recommandés

  • 0
Posté(e)

Il y a peut-être moyen de faire ce que tu veux en vérifiant la distance entre le loop-block et le joueur, je m'explique:

mettons que tu veux un cylindre de 2 blocs autour du joueur et qui va 2 blocs au dessus du joueur.

Tu fais ceci :

loop blocks in radius 4 around {_target}

Avec un radius un peu plus grand que le rayon de ton cylindre, pour être sûr d'englober complètement ton cylindre, puis à chaque loop-block, tu fait:

if distance between loop-block and {_target} is smaller than 2:
   add location of loop-block to {cylindre::*}

J'ai pas pu vérifier donc teste et dis moi ce que ça donne ^^

  • 0
Posté(e)

Bonjour, je pense que votre solution ne marchera pas car cela fera quand même une sphère et non un cylindre, mais merci d'avoir pris le temps de répondre :D

Après de longues recherche, j'ai enfin trouver la solution, je vais vous donnez une partie du code de mon projet peut-être que cela servira a quelqu'un :) :

            set {_z} to altitude of {_target}

           loop blocks in radius 7 around {_target}:
               set {_z2} to altitude of loop-block
               remove 0.5 from {_z2}
               if {_z2} is equal to {_z}:
                   add location of loop-block to {cylindre.%target%::*}

 

voila :D le "remove 0.5 from {_z2}" est important car je me suis rendu compte en faisant des test que lorsqu'on loop-block on obtient une location du type : 38.5 et du coup si on retire 0.5 on obtient un chiffre pair comme l'altitude du target.

 

Voilà merci encore d'avoir tenté de m'aider et j'espère que mon code servira a quelqu'un un jour :D

 

Je met en résolue

  • J'aime 1
×
×
  • 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.