Coding mit Java | Java-basierten APIs

  • Ersteller Ersteller ij9F_i0FaF-d9lrDSDDpDbfo
  • Erstellt am Erstellt am
Status
Für weitere Antworten geschlossen.
kann einer bitte sagen wo der Fehler ist?

Code:
    @EventHandler
    public void onLogin(PlayerLoginEvent e) {
       
        MySQL.getPermBanned(e.getPlayer().getUniqueId().toString(), new Synchronous() {
           
            @Override
            public void get(String name, String reason) {
                if(reason.equalsIgnoreCase("true")) {
                    e.disallow(Result.KICK_OTHER, "x");
                }
            }
        });
    }

ich weiß, dass man glaube ich mit asynchronen sachen keine bukkit "codes" verwenden kann. aber gibt es eine andere möglichkeit?
ich habe asynchron mit mysql + interface für das resultset verwendet.
kann einer bitte sagen, wie ich voran gehen soll? will nicht, dass der server einfriert, wenn man den server betritt (wenn eine schlechte mysql vorhanden ist)

danke im voraus!
 
kann einer bitte sagen wo der Fehler ist?

Code:
    @EventHandler
    public void onLogin(PlayerLoginEvent e) {
     
        MySQL.getPermBanned(e.getPlayer().getUniqueId().toString(), new Synchronous() {
         
            @Override
            public void get(String name, String reason) {
                if(reason.equalsIgnoreCase("true")) {
                    e.disallow(Result.KICK_OTHER, "x");
                }
            }
        });
    }

ich weiß, dass man glaube ich mit asynchronen sachen keine bukkit "codes" verwenden kann. aber gibt es eine andere möglichkeit?
ich habe asynchron mit mysql + interface für das resultset verwendet.
kann einer bitte sagen, wie ich voran gehen soll? will nicht, dass der server einfriert, wenn man den server betritt (wenn eine schlechte mysql vorhanden ist)

danke im voraus!
Du musst uns halt schon mehr Informationen geben. Wir wissen nicht mal genau, was für ein Fehler vorliegt.
 
Du musst uns halt schon mehr Informationen geben. Wir wissen nicht mal genau, was für ein Fehler vorliegt.
danke erstmal, dass du antwortest. :)
ich habe MySQL asynchron mit einem Interface gemacht (ohne callbacks)
das klappt alles.
das plugin ist erfolgreich asynchron und läuft super bisauf das playerloginevent!
Wenn ich eine Message sende, dann geht das. aber e.disallow wird einfach nicht akzeptiert.

Code:
Code:
@EventHandler
public void onLogin(PlayerLoginEvent e) {

MySQL.getPermBanned(e.getPlayer().getUniqueId().toString(), new Synchronous() {

@Override
public void get(String name, String reason) {
if(reason.equalsIgnoreCase("true")) {
e.disallow(Result.KICK_OTHER, "x");
}
}
});
}
Ich habe vor e.disallow noch bukkit.broadcastmessage("x"); geschrieben und geschaut, ob das gelesen wird.
Es wird in der tat gelesen, aber e.disallow wird einfach nicht erkannt
in der konsole steht auch kein fehler
 
danke erstmal, dass du antwortest. :)
ich habe MySQL asynchron mit einem Interface gemacht (ohne callbacks)
das klappt alles.
das plugin ist erfolgreich asynchron und läuft super bisauf das playerloginevent!
Wenn ich eine Message sende, dann geht das. aber e.disallow wird einfach nicht akzeptiert.

Code:

Ich habe vor e.disallow noch bukkit.broadcastmessage("x"); geschrieben und geschaut, ob das gelesen wird.
Es wird in der tat gelesen, aber e.disallow wird einfach nicht erkannt
in der konsole steht auch kein fehler
Klar, weil du es ja asynchron ausführst, Bukkit callt also das Event, bevor dein Callback überhaupt ausgeführt wurde und überprüft, ob es disallowed ist. Da es ja noch nicht disallowed ist, wird der Bukkit Code einfach weiter ausgeführt.
 
Klar, weil du es ja asynchron ausführst, Bukkit callt also das Event, bevor dein Callback überhaupt ausgeführt wurde und überprüft, ob es disallowed ist. Da es ja noch nicht disallowed ist, wird der Bukkit Code einfach weiter ausgeführt.
danke für deine antwort :)
aber wie soll ich das dann machen? wie macht es z.b. der gomme server oder so?
Außerhalb von MySQL.permbanned kann ich ja nicht machen. Und asynchron entfernen ist auch keine gute idee.
 
Noch eine frage
ich hatte ein anti kill aura plugin programmiert. das problem daran ist, dass der npc vor dem spieler spawnt. ich habe eingestellt, dass der npc hinter dem spieler erscheint. das problem daran ist, dass kill aura (standard huzuni einstellungen) den NPC hinter dem Spieler gar nicht erkennt. selbst, wenn ich mich nicht bewege. ich habe multiply(-0.5D) -1.0, 0.8 versucht.

Liegt das an huzuni oder an dem Plugin?

meine einzige Überlegung wäre jetzt, dass du das AsyncPlayerPreLoginEvent benutzt und dann die Abfrage synchron ausführst, da das Event ja schon asynchron ausgeführt wird.
Danke. :) ich probiers mal.
 
Noch eine frage
ich hatte ein anti kill aura plugin programmiert. das problem daran ist, dass der npc vor dem spieler spawnt. ich habe eingestellt, dass der npc hinter dem spieler erscheint. das problem daran ist, dass kill aura (standard huzuni einstellungen) den NPC hinter dem Spieler gar nicht erkennt. selbst, wenn ich mich nicht bewege. ich habe multiply(-0.5D) -1.0, 0.8 versucht.

Liegt das an huzuni oder an dem Plugin?


Danke. :) ich probiers mal.
Will Huzuni den dann einfach nicht schlagen?^^
Der Code klappt! Vielen dank! :)
Nice :)
 
In Huzuni gibt es meines Wissens nach eine Einstellung, um wie viel Grad sich der Spieler maximal dreht. Liegt es vielleicht daran?
 
@Gelox_ & @Sheigutn
Ich habe ein Video gemacht:
das soll keine werbung sein, nur ich brauche da hilfe.
ich habe 0.5 - 1.0 blöcke (minus) verwendet und 1 blöcke vor.
dabei habe ich die standard huzuni eingestellungen verwendet, d.h. huzuni ordner gelöscht (auch in .minecraft) und neu installiert.

Warum erkennt kill aura den spieler hinten nicht? ich würde zu gern bei gomme testen :D will aber nicht gebannt werden. ich habe keine ahnung, ob es bei gomme auch so ist

hoffe ihr könnt mir helfen! danke im voraus :)
 
@Gelox_ & @Sheigutn
Ich habe ein Video gemacht:
das soll keine werbung sein, nur ich brauche da hilfe.
ich habe 0.5 - 1.0 blöcke (minus) verwendet und 1 blöcke vor.
dabei habe ich die standard huzuni eingestellungen verwendet, d.h. huzuni ordner gelöscht (auch in .minecraft) und neu installiert.

Warum erkennt kill aura den spieler hinten nicht? ich würde zu gern bei gomme testen :D will aber nicht gebannt werden. ich habe keine ahnung, ob es bei gomme auch so ist

hoffe ihr könnt mir helfen! danke im voraus :)
hat jemand eine Idee wo der fehler ist?
 
Status
Für weitere Antworten geschlossen.

Soziale Medien

  • X
  • TikTok

Über uns

  • GommeHD.net ist einer der größten Minecraft-Server der Welt. Dir gefällt unser Server? Dann unterstütze uns durch einen Kauf im Shop!
  • Shop