Jump to content
Sign in to follow this  
Marian /

Online/Offline Nachrichten

Recommended Posts

Guten Tag,

ich bin gerade dabei ein FreundeSystem zu programmieren und würde gerne die Freunde darüber informieren sobald der Spieler Online/Offline ist, das funktioniert soweit auch nur ich habe das Problem das sobald der Spieler den Server wechselt erst die Offline Nachricht kommt und danach die Online Nachricht. Ich würde die Nachrichten gerne nur beim ersten Join und beim letzen Disconnect senden. Danke im vorraus :)

Methode: 

 

@EventHandler
    public void onJoin(ServerConnectEvent e) {
        ProxiedPlayer p = e.getPlayer();
            List<String> friendlist = FriendManager.getFriendList(p.getUniqueId().toString());
            for(String friend : friendlist) {
                ProxiedPlayer target = ProxyServer.getInstance().getPlayer(FriendManager.getNamebyUUID(friend));
                if(target != null) {
                    if(FriendManager.getOnline(FriendManager.getUUIDbyName(FriendManager.getNamebyUUID(friend))).equalsIgnoreCase("true")) {
                        target.sendMessage(new TextComponent(Freunde.getPrefix() + "§7" + p.getName() + "§7 ist nun §aOnline"));
                    }
                }
            }
        }

}

@EventHandler
    public void on(ServerDisconnectEvent e) {
        ProxiedPlayer p = e.getPlayer();
        List<String> friendlist = FriendManager.getFriendList(p.getUniqueId().toString());
        if(FriendManager.getOnlineState(p.getUniqueId().toString()).equalsIgnoreCase("true")) {
            for(String friend : friendlist) {
                ProxiedPlayer target = ProxyServer.getInstance().getPlayer(FriendManager.getNamebyUUID(friend));
                if(target != null) {
                    if(FriendManager.getOnline(FriendManager.getUUIDbyName(FriendManager.getNamebyUUID(friend))).equalsIgnoreCase("true")) {
                        target.sendMessage(new TextComponent(Freunde.getPrefix() + "§7" + p.getName() + "§7 ist nun §cOffline"));
                    }
                }
            }
        }

}

Share this post


Link to post
Share on other sites

Bungecoord hat die Funktion "ServerSwitchEvent" - man prüft ob ein Freund joined, leaved oder switched und gibt dann die entsprechende Message raus

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×
×
  • Create New...