Aller au contenu

Casser des arbres instantanément.


Messages recommandés

Posté(e)

salut a tous.

en fait ce que je demande c'est pas un skript complet.

mais la méthode la plus simple et la plus optimisé de pouvoirs casser un arbre instantanément avec une Hache " un peut comme dans les Speed UHC "

 

 

comment l'appliquer a la fois a des arbres de petite taille et a des arbres de grande taille sans avoir un Skript trop lourd a l’exécution ?

 

merci a ceux qui m'aiguillerons :)

Posté(e)

Salut. J'ai deux méthodes qui pourraient résoudre ton problème, mais je n'ai pas le temps de réfléchir au code que ça donnerait. Tu peux soit:

- vérifier le bloc au dessus de celui qui est cassé et si c'est du bois, ça le casse aussi (ça ne fonctionnerai pas pour les grands arbres)

- casser tous les blocs de bois dans un rayon de 5 blocs autour de celui cassé.

 

Si tu veux casser aussi les feuilles, ces deux méthodes ne vont pas convenir. Il faudrait vérifier si le bloc est en contact avec un autre bloc (sauf de la "grass" pour le bloc d'en dessous, les autres blocs sont également cassé, mais le code commencerai à s'alourdir et je ne sais pas comment faire.

 

En espérant t'avoir aidé.

Cordialement,

Skillb0w

Posté(e)

le problème des feuilles c'est que des arbres sont lié par les feuilles :(

 

un rayon de 5 me parais beaucoup vue certaine foret ou les arbres sont très proche, je risquerais de détruire tous les arbres ^^

 

@Doc le skript qui a été posté na pas l'air très optimiser, mais pourrais me servir de base.

 

en tous cas merci pour ces pistes de réflexion ;)

Posté(e)
l

un rayon de 5 me parais beaucoup vue certaine foret ou les arbres sont très proche, je risquerais de détruire tous les arbres ^^

Si tu mets 3, par exemple, tu n'aura que 3 blocs détruits et donc forcément pas l'arbre entier. Après, je ne pense pas que ça soit une bonne solution non plus étant donné que les blocs en dessous serait également détruits...

 

Cordialement,

Skillb0w

Posté(e)

En gros ce que tu dois faire c'est un loop-block upward et ensuite une conditions if loop-block is wood.

En éspérant t'avoir aider.

PS:

nJe n'ai pas vu les messages au dessus, peutêtre que ça a déjà été résolu si c'est le cas désoler :)

  • 3 semaines après...
Posté(e)

Bon je viens de passer 2h a chercher une solution efficace, et plutôt optimisé suite a une demande de @Nelwen qui chercher a faire la même chose.

 

voici ce que je propose :

on break:
   if id of event-block is 162 or 17:
       set {_idblock} to id of event-block
       cancel event

       loop blocks downwards:
           if id of loop-block is not 162 or 17:
               set {_loc} to location of loop-block
               exit loop

       set {_posX1} to x-coordinate of {_loc}
       set {_posX2} to x-coordinate of {_loc}
       set {_posZ1} to z-coordinate of {_loc}
       set {_posZ2} to z-coordinate of {_loc}
       set {_posX1} to {_posX1} -2
       set {_posX2} to {_posX2} +2
       set {_posZ1} to {_posZ1} -2
       set {_posZ2} to {_posZ2} +2
       set {_posY} to y-coordinate of {_loc}

       loop 20 times:
           set {_pos1} to the location at {_posX1}, {_posY}, {_posZ1}
           set {_pos2} to the location at {_posX2}, {_posY}, {_posZ2}
           loop blocks within location of {_pos1} to location of {_pos2}:
               if {_idblock} is id of loop-block:
                   drop loop-block at event-block
                   set loop-block to air
           set {_posY} to {_posY} +1

       message  "&5Arbre Coupé."

 

en gros je fait quoi ?

 

au lieu de faire une recherche sur un Rayon ( ce qui peut posé problème car les cube au dessus et en dessous sont compté )

je fait une recherche sur une surface plane

 

quand ont casse une bûche, sa cherche le point le plus bas de l'arbre, puis a partir de la base, sa remonte en cherchent dans une surface plane de 5x5 sur une hauteur de 1 block ( attention c'est pas un rayon de 5 mais un rayon de 2 )

puis remonte de 1 block effectue la même opération ...

cela 20 fois de suite comme le montre le loop " loop 20 times:"

la recherche s'effectue sur le même ID de bûche que celle couper, donc si ont as des Dark oak a coté de simple boulot, sa prendras en compte que celui qui avais été cassé au départ.

 

si vous avez des améliorations a apporter au skript je suis preneur ;) même si j'ai fait en sorte de le rendre le plus optimisé que possible ( mais je peut me trompé :D )

 

Salutation Angelus

×
×
  • 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.