Téléportation au moment du /login

EnesSensei

Aventurier
17 Janvier 2020
1
0
1
24
Bonjour tout le monde.
J'ai un petit soucis dont je ne trouve pas de solution.
Je suis pas expert dans tout ce qui est création de serveur mais je me débrouille pas mal.
Mon problème: j'ai fais en sorte que tout les joueurs soit au spawn pour le /login mais je voudrai bien qu'ils regagnent leur dernière emplacement avant de déco.
Donc la les joueurs apparaissent au spawn pour le login ça c'est ok. Comment je pourrai faire pour qu'il regagne leurs dernière emplacement après avoir effectuer le /login.
Merci d'avance pour votre aide!
 

Detobel36

Créateur de plugins (PhoenixRebirth)
Support
17 Août 2012
10 530
24
2 247
347
27
Bruxelles - Belgique
www.phoenix-rebirth.fr
Salut,

Alors tout d'abord, tu as posté ce message dans la section "Tutoriels serveur"... Peux-tu m'expliquer pourquoi ?
Il y a une section qui s'appelle "Support serveur et plugins", cela me semble plus approprié.

Ensuite, pour pouvoir t'aider il faudrait que tu nous dise quel plugin de "login" tu utilises...
Enfin, si tu veux vraiment qu'on t'aide précisément, il faudrait que tu nous donnes ta configuration (tout est expliqué ici: https://minecraft.fr/forum/threads/trucs-pour-résoudre-un-problème.77248/ ).


Cordialement,
Detobel36
 

Americium

Aventurier
7 Février 2020
13
2
3
28
Bonjour,

Une solution très simple existe pour ton problème !
Avant que tu téléportes le joueur au spawn pour qu'il puisse se logger. Tu dois faire un :
Location loc = joueur.getLocation();

Avec ça tu auras la position initiale du joueur.

Après je t'invite à faire une classe avec les deux attributs suivants :
  • Player player;
  • Location loc;
Java:
public class LocBack {
    Player player;
    Location loc;
  
    public LocBack(Player p, Location location)
    {
        this.player = p;
        this.loc = location;
    }
}

De créer une liste de LocBack.
Et dès qu'ils ont fini de se logger tu les téléportes à la location que tu as sauvegardé ^^.
(Je te mets pas tout le code quand même !!)

Petit Edit :
Tu n'as même pas besoin de la majeure partie des trucs que je dis ici en faite.
Tu récupères la location et à la fin du le re téléporte. Pas besoin de stocker ça dans une class ^^
Java:
        if (cmd.getName().equalsIgnoreCase("login")) {
            Player p = (Player)sender;
            Location loc = p.getLocation();
            //Ta fonction pour le login
            p.teleport(loc);
        }


Cordialement,
Americium.
 
Dernière édition: