Aller au contenu
  • 0

Système de Respawn vers le point le plus proche


Question

Posté(e) (modifié)

Version de Minecraft : 1.15.2
Version de Skript : 2.4.1

Addons utilisés: Ersatz

Type du skript : Création d'un Skript de respawn automatique au point défini le plus proche.

Description du script :

Bonjour à tous, j'essaye de mettre en place un système de respawn sur mon serveur. Les joueurs peuvent définir un point de respawn en utilisant les feux de camps disséminés sur la map. 

Lorsqu'un Player meurt, j'aimerais qu'il soit respawn soit à son feu de camp, soit au point de respawn le plus proche (village, ville, etc).

Actuellement les joueurs respawn effectivement à leurs derniers checkpoints définis. Mais lorsqu'ils sont en dehors de la distance autorisée avec un feux de camps, ils respawn toujours au spawn de la map et non au point de respawn définis par les {graveyard::}. 

 

Quelqu'un a une idée ? 😕

Merci par avance pour votre aide 🙂 !

 

 

Le Skript :

on Skript start:
  #Husnar
  set {graveyard::1} to location(1445, 63, 4834, world("worldmap"), 0, 0)
  #Grotte
  set {graveyard::2} to location(1325, 137, 5137, world("worldmap"), 0, 0)


on death of player:
  set {lp.%player%} to player's location
  set {%player%.distance} to distance between {lp.%player%} and {%player%.checkpoint}

on respawn:
  if {%player%.distance} is smaller than 75:
    set respawn location to {%player%.checkpoint}
    send "&9Voix: &eHum... Pas simple n'est-ce pas ?" to player
  else:
    #Village
    set {graveyard::1} to location(1445, 63, 4834, world("worldmap"), 0, 0)
    #Grotte
    set {graveyard::2} to location(1325, 137, 5137, world("worldmap"), 0, 0)
    set {_distance::1} to distance between {lp.%player%} and {graveyard::1}
    set {_distance::2} to distance between {lp.%player%} and {graveyard::2}    
    set {_min} to {distance::1}
    loop {_distance::*}:
      if {_min} is smaller than loop-value:
        set {_min} to loop-value
        set {_index} to loop-index
    set respawn location to {graveyard::%{_index}%}
    send "&9Voix: &eHum... Le dernier feu de camp était visiblement trop loin %player%."

on right click on a campfire:
  set {%player%.checkpoint} to player's location
  play sound "minecraft:block.fire.extinguish" for player
  send "&6Point de sauvegarde enregistré." to player

 

Modifié par Er_Zad
fautes :3

1 réponse à cette question

Messages recommandés

Invité
Ce sujet ne peut plus recevoir de nouvelles réponses.
×
×
  • 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.