Izychiel Posté(e) le 4 septembre 2016 Posté(e) le 4 septembre 2016 Hello ! Je codais un script de jeu et j'ai rencontré un problème :eek: Je voyais aussi que pas mal de demandes d'aide étaient postées sur ce sujet, dorénavant on pourra les punir pour "Non recherche" ou leur donner ce lien ! :D Comment regen efficacement une map ou un fragment de map ? J'ai donc essayé de mes propres moyens mais sans succès, j'ai cherché un peu et je suis tombé sur ce que je voulais mais sous forme de script pas hyper optimisé et long :') Mon code est parti de cela je mets donc la référence -> World_Regenerate par brianx2x Le code contient plusieurs parties, la partie sauvegarde de blocs cassés et détruits, la fonction de régénération de ces blocs et enfin une commande pour accéder à la fonction. Sauvegarder les blocs dans des variables n'est sûrement pas le plus optimisé mais je ne me suis pas plus penché sur le sujet. # FONCTION DE RÉGÉNÉRATION function regenWorld(i: integer): set {_Count} to size of {BlockLoc::*} loop {BlockLoc::*}: set block at {BlockLoc::%{_Count}%} to {BlockType::%{_Count}%} remove 1 from {_Count} delete {BlockLoc::*} delete {BlockType::*} # SAUVEGARDE DES BLOCS DÉTRUITS on break: add type of block to {BlockType::*} add location of block to {BlockLoc::*} # SAUVEGARDE DES BLOCS POSÉS on place: add air to {BlockType::*} add location of block to {BlockLoc::*} # COMMANDE DE RÉGÉNÉRATION command /worldregenerate: aliases: /wr, /wrg, /rg, /regen trigger: regenWorld(1) send "&aMonde regénéré." Il faut donc utiliser Skript 2.2 pour pouvoir se servir des fonctions. 1
Skripting Posté(e) le 4 septembre 2016 Posté(e) le 4 septembre 2016 Pas mal^^ ! J'ai déjà fait 2 tutoriels pour cela (1 ici, 2 ici) mais le tiens a l'air mieux optimisé que mon premier tutoriel^^ ! Sinon, on peut régénérer blocs & coffres (et même les GamesRules x)) grâce à Multiverse & Skript : https://www.youtube.com/watch?v=JfXG_CO31i8
Izychiel Posté(e) le 4 septembre 2016 Auteur Posté(e) le 4 septembre 2016 Oui c'est sûr, avec Multiverse pour regen totalement un monde c'est largement le best ! :P Mais là c'était juste pour la map et totalement Skript, puis je suis tombé dessus et y'a plein de demandes donc autant en profiter xD Et désolé je n'avais pas vu tes posts :/
KustyPro Posté(e) le 10 septembre 2016 Posté(e) le 10 septembre 2016 Après, il et possible de vérifier les blocks détruit par la TNT puis les faire regen ^^ [spoiler=code] on explode: add type of exploded blocks to {BlockType::*} loop exploded blocks: add location of loop-block to {BlockLoc::*}
Alessevan Posté(e) le 11 septembre 2016 Posté(e) le 11 septembre 2016 Y'a un léger problème, si tu cases un bloc et que tu replace le même, si tu régen la map ça le ré-enlèvera a part si tu le recasse avant de régen la map :/
kumakuma215 Posté(e) le 24 septembre 2016 Posté(e) le 24 septembre 2016 Y'a un léger problème, si tu cases un bloc et que tu replace le même, si tu régen la map ça le ré-enlèvera a part si tu le recasse avant de régen la map :/ Après, c'est un fragment de code, rien ne t'empêche de le modifier à ta guise c:
Messages recommandés
Créer un compte ou se connecter pour commenter
Vous devez être membre afin de pouvoir déposer un commentaire
Créer un compte
Créez un compte sur notre communauté. C’est facile !
Créer un nouveau compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant