jesssiiiiii Geschrieben 10. Januar 2021 Share Geschrieben 10. Januar 2021 Hey, ich habe folgendes Problem: Ich versuche ein System zu machen, wo man z.B, "/setthema Thema" macht und dieses Thema dann bei einer anderen Ausgabe in einer anderen Klasse rauskommt. Also folgendes: 1. Klasse: /setthema Thema 2. Klasse: p.sendMessage("..." + Thema + "...") Kann mir da eventuell jemand helfen? Ich habe es mit einem statischen (public static) String probiert, allerdings geht das anscheinend in einer "onCommand" Methode nicht. Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
FireSpirit15 Geschrieben 10. Januar 2021 Share Geschrieben 10. Januar 2021 (bearbeitet) Hey @jesssiiiiii! Anscheinend führst du deine Variable innerhalb der Methode ein. Das funktioniert nicht, du musst die statische Variable vor bzw. über der Methode deklarieren. Andernfalls wird sie als lokale Variable erzeugt und wird nach dem Befehl wieder gelöscht. public static String thema; onCommand(...) { thema = "text"; } Wenn das nicht klappt musst du sie in deiner Hauptklasse (meistens Main.java) deklarieren. Anschließend kannst du über Klassenname.variablenname auf die statische Variable zugreifen. p.sendMessage(Klassenname.thema + "..."); Ich hoffe, ich konnte dir weiterhelfen! Mit freundlichen Grüßen FireSpirit15 bearbeitet 10. Januar 2021 von FireSpirit15 Beispieländerung 2 Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
jesssiiiiii Geschrieben 14. Januar 2021 Autor Share Geschrieben 14. Januar 2021 (bearbeitet) okey, ich versuchs, danke bearbeitet 16. Januar 2021 von jesssiiiiii Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
jesssiiiiii Geschrieben 16. Januar 2021 Autor Share Geschrieben 16. Januar 2021 Am 10.1.2021 um 18:46 schrieb FireSpirit15: Hey @jesssiiiiii! Anscheinend führst du deine Variable innerhalb der Methode ein. Das funktioniert nicht, du musst die statische Variable vor bzw. über der Methode deklarieren. Andernfalls wird sie als lokale Variable erzeugt und wird nach dem Befehl wieder gelöscht. public static String thema; onCommand(...) { thema = "text"; } Wenn das nicht klappt musst du sie in deiner Hauptklasse (meistens Main.java) deklarieren. Anschließend kannst du über Klassenname.variablenname auf die statische Variable zugreifen. p.sendMessage(Klassenname.thema + "..."); Ich hoffe, ich konnte dir weiterhelfen! Mit freundlichen Grüßen FireSpirit15 Das Problem hier ist aber, nach dem Reload/Restart whatever, ist der String direkt wieder auf null gesetzt und das Thema sogesagt "gelöscht". Gibt es irgend eine Möglichkeit, den String zu speichern oder Alternativen, die auch nach dem Restart noch da sind? Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
FireSpirit15 Geschrieben 19. Januar 2021 Share Geschrieben 19. Januar 2021 Hey, @jesssiiiiii! Am 16.1.2021 um 16:57 schrieb jesssiiiiii: Das Problem hier ist aber, nach dem Reload/Restart whatever, ist der String direkt wieder auf null gesetzt und das Thema sogesagt "gelöscht". Gibt es irgend eine Möglichkeit, den String zu speichern oder Alternativen, die auch nach dem Restart noch da sind? Klar, so eine Möglichkeit besteht. Du musst dazu den String in einer YAML-Configuration abspeichern. Die wird dann jedes Mal beim Serverstart geladen. Mit freundlichen GrüßenFireSpirit15 3 Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden