ServerPlugin Spieler Variablen

Dieses Thema im Forum "Programmierung" wurde erstellt von waoler, 9. Juli 2015.

  1. waoler
    Offline

    waoler

    Registriert seit:
    31. März 2012
    Beiträge:
    72
    Ort:
    Auf dem Mond
    Minecraft:
    waoler
    Also das ganze nochmal hier als Thread... Im Chat ist das nicht zu klären :)

    Ausgangssituation:
    Ich versuche für unsere Teammitglieder eine Art "Duty" Befehl zu erstellen. (wie SAMP früher, falls es noch jemand kennt)
    Und da brauche ich eine feste Variable an jedem Spieler bzw. Teammitglied. Diese soll nur temporär existieren und muss nicht gespeichert werden.
    Diese soll einfach nur speichern ob der Spieler im moment im Duty Modus ist oder nicht um beim Befehl zu toggeln.
    Nach vielem hin und her habe ich mich dazu entschlossen eine Klasse zu erstellen, damit für spätere Updates alles erweiterbar ist. (Für mehr Variablen oder anderen Sachen die den Spieler betreffen).

    Die Überlegung ist jetzt, wie ich das genau anstellen soll? Erstelle ich eine neue Klasse bei jedem Join von einem Spieler? Oder soll ich in der Klasse eine HachMap erstellen in der ich die Spieler beim joinen reinschreibe und beim leften wieder lösche ? Oder soll ich es am besten komplett anders machen?

    Da ich selbst noch neu auf dem Gebiet Java bin, brauche ich eure Hilfe und das so, das ich das auch verstehe :D

    Wenn noch was unklar ist, fragt einfach nach... Weiß nicht ob ihr das schon so versteht wie ich das da geschrieben habe :)

    MfG Jony
     
    #1
  2. waoler
    Offline

    waoler

    Registriert seit:
    31. März 2012
    Beiträge:
    72
    Ort:
    Auf dem Mond
    Minecraft:
    waoler
    Ups, das ist das falsche Forum, könnte hier ein Mod das ganze vielleicht verschieben ? Danke ihr liebsten <3

    MfG
     
    #2
  3. AgentLV
    Offline

    AgentLV

    Registriert seit:
    29. November 2013
    Beiträge:
    7
    Minecraft:
    AgentLV
    Wie genau du es verwenden willst, weiß ich nicht, jedoch aus dem Gefühl heraus würde ich sagen, erstelle eine Klasse und packe die Spieler in die HashMap, du könntest auch eine Liste benutzen, wenn deine Klasse sich so verwenden lässt, jedoch ist dir das selbst überlassen ;).
    Mut zur Lücke!
     
    #3
  4. ShareLock
    Offline

    ShareLock

    Registriert seit:
    2. November 2011
    Beiträge:
    70
    Das hat nichts mit "Anfänger in Java" zu tun. Das sind absolute Basics und offenbaren einfach nur, dass du faul bist. Wenn man ohne Ahnung einfach vor sich hin schreibt, kopiert und generell nichts tut um dieses Wissen zu erweitern.

    Bukkit ist absolut keine Schnittstelle, die man sich ansehen sollte, wenn man keine Ahnung von der Materie hat.

    Im übrigen: Man erstellt keine neuen Klassen, sondern nur neue Objekte. Klassen sind Baupläne für Objekte.

    Metadaten sind genau für dieses Problem (temporäre Daten) geeignet, jedoch sind die hier genannten Thematiken für den Themenersteller viel zu hoch und daher ungeeignet.

    PS: Oben genanntes ist auch bereits in mehrfacher Ausführung von mehreren Personen in der Chatbox genannt worden.
     
    #4
    [Dev] iTzSasukeHDxLP gefällt das.
  5. waoler
    Offline

    waoler

    Registriert seit:
    31. März 2012
    Beiträge:
    72
    Ort:
    Auf dem Mond
    Minecraft:
    waoler
    Erstmal die Frage: hast du irgendwas gegen mich, oder warum bist du so komisch drauf? Denkst wohl du wärst der Schlauste hier.

    Womit hat es denn dann bitte zu tun? Wie kommst du auf die Idee das ich irgendetwas kopiert habe? Ich versuche mein Wissen zu erweitern, deswegen beschäftige ich mich damit doch und frage hier.

    Aber ich brauche das ja gerade für Bukkit.

    Vollkommen richtig. Ich habe hier einen Fehler gemacht, weil ich nicht wie andere hier eintausend Stunden damit verbringe Texte in diesem Forum zu schreiben. Ich habe eine Frage und versuche sie möglichst schnell und präzise zu lösen. Ich bin mir sicher du versuchst immer alles Möglichst lange heraus zu zögern und wartest mit allem, damit du keine Fehler machst.

    Ja, wieso hättest du mir das nicht einfach sagen können? Außerdem habe ich ja auch schon geschrieben, dass ich das System offen für größeres halten will und deswegen das nicht auf so eine "simple" Art versuche umzusetzen.
    Und das du das zu hoch und ungeeignet für mich findest, empfinde ich als Beleidigung, wieso glaubst du das?

    Aber weiter hat mir niemand auf meine Fragen geantwortet.


    Ja ich bin Anfänger bei Java und nein ich will kein Profi werden und mein Gehalt damit verdienen, deswegen empfinde ich es nicht als nötig mich erst komplett in die Materie einzulesen. Ich mache das ganz nach dem Motto: Learning by doing. Ich überlege mir eine Idee und versuche diese umzusetzen. Und das hat bisher immer ganz gut geklappt. Aber mir scheint es als wären in diesem "Forum" (hier im Programmier Bereich) nur so Gurken unterwegs, die meinen weil sie etwas besser könnten als andere, diese schlecht machen zu müssen. Sowas geht mir total gegen den Strich und ich verstehe nicht wieso man dann nicht gleich seine Klappe hält. Oder eben versucht dem der was Fragt irgendwie nützlich zu unterstützen und versucht sein Problem zu lösen. Und bevor du jetzt hier versucht alles irgendwie auseinander zu nehmen, lass dir gesagt sein, ich werden nicht drauf antoworten, dafür ist mir meine Zeit zu kostbar. Ich habe schließlich noch weitere Dinge zu tun als mich hier irgendwie Gerechtfertigen zu müssen.

    MfG
     
    #5
    JTK222 gefällt das.
  6. ShareLock
    Offline

    ShareLock

    Registriert seit:
    2. November 2011
    Beiträge:
    70
    Ja ich habe etwas gegen Menschen. Es gibt fast nichts gutes an Menschen, aber das ist eine andere Sache. - Ach, du meinst gegen dich persönlich? Natürlich nicht. Du interessierst mich absolut nicht, ich kenne dich nicht.

    Wenn es dir darum gehen würde, dann wärst du an eine Lösung in den letzten 5(?) Tagen bereits gekommen. Die Lösung wurde bereits in mehrfacher Ausführung dargelegt. Man hätte halt nur mal lesen müssen.

    Was soll mich dass interessieren? Ich fange auch nicht an ein Haus zu bauen, ohne Ahnung von static zu haben. Alles andere wäre grob fahrlässig.

    Falsch. Ich habe solche Probleme nicht, denn ich habe die Möglichkeit logisch und systematisch an ein Problem heran zu gehen.

    Es ist eine Feststellung. Metadaten erfordern grundlegende Kenntnisse der Objekt-Orientierten-Programmierung.

    2015-07-07 21:43:12 SpiritWalker
    Protip: Erstell ein eigenes Objekt, dass die Spielerinformationen enthält und erstell dann ne HashMap<UUID, MyPluginData> wo du alles relevante für dein plugin speicherst.

    Learning by doing definiert sich nicht dadurch, dass man jegliche Grundlagen ablehnt. Programmieren ist nun mal kein Zuckerschlecken. Wenn man programmieren will, darf man keine Grundlagen ignorieren. Besonders nicht, wenn man die Lösung derart einfach präsentiert bekommt - Ob man das per HashMap oder per Metadaten macht ist für deine Zwecke sowieso vollkommen irrelevant.

    1. von dir lasse ich mir definitiv nicht meine Meinungsfreiheit einschränken. (Auch nicht von drittklassigen "Programmierern" die deinen Beitrag gefällt.)
    2. habe ich dich unterstützt und in beiden Beiträgen gesagt, wie man es lösen könnte. - Was du davon umsetzt ist nicht mein Problem.
    3. Ist das hier kein wünsch-dir-was Konzert. Wir werden hier nicht bezahlt um dir den Ar*** abzuwischen. Du hast auch dein Gehirn einzuschalten.
    4. Dein Problem wurde an diversen stellen bereits abgelöst. - aber das ist ein anderes Problem.

    Meine Zeit ist auch kostbar, aber ich habe durchaus meinen Spaß Aussagen von Menschen wie dir zu widerlegen und auszuweiden. Ob du dich rechtfertigst ist mir doch egal <3.
     
    #6
    pasce1998 und [Dev] iTzSasukeHDxLP gefällt das.
  7. Inkemann
    Offline

    Inkemann

    Registriert seit:
    3. Mai 2015
    Beiträge:
    341
    Ort:
    Aachen
    Minecraft:
    Inkemann
    Also @ShareLock ist zwar sehr drastisch, aber Unrecht hat er nicht ^^ Wenn es dir darum ginge zu lernen oder selbst zu denken, dann hättest du die Lösung schon längst finden können. Zu mal ja sogar hier Lösungen vorgeschlagen wurden.
     
    #7