Beiträge von Felix Payne

    Hallo Community,


    Zuersteinmal, ich weiß, ich muss objekt orientiert programmieren. Nur fällt mir das Verstehen von gettern und settern so schwer.


    Hier zu meinem Problem:




    Das ist jetzt nur ein Ausschnitt zusammengeschrieben. Der Eintrag Lobbymap in der Config wird durch einen Befehl gesetzt. Zeitgleich wird ein Eintrag in Location.spawns gesetzt. Ich kann also über die args[0] einen String eingeben, welcher dann in die config an beide Stellen eingetragen wird.


    Jetzt möchte ich alle Einträge von Location.spawns in ArrayList Zwischenspeicher speichern.


    Später in der for schleife möchte ich die Lobbymap dort aber raus nehmen.

    Also loope ich durch alle Einträge des Zwischenspeichers und und Vergleiche ob der Mapname den configeintrag Lobbymap entspricht. Wenn ja, wird dieser Wert nicht in die ArrayList map & Hashmap votemaps eingetragen.


    Aber das Ergebnis der ifschleife ist immer false.

    Es macht kein Sinn.

    Ich habe mir beide Werte einzeln ausgeben lassen (komplett identisch). Habe versucht jeweils einen Wert direkt durch einen String zu ersetzen, immer false.

    Wenn ich jetzt beide Werte eindeutig durch einen String ersetze, z.b. "A" wird das Ergebnis wie erwartet true.


    Ich raff es einfach nicht ||

    Ich bin gerade nicht am Rechner, aber sollte das nicht gehen wenn du im InventoryClickEvent nach dem if e.getClicked (keine ahnung wie das genau war) == material.AIR? und dann cancelst du das event innerhalb der if abfrage. Somit sollte alles andere funktionieren.


    Oder, und das denke ich funktioniert mehr:


    Du gehst über die e.getSlot (wieder keine Ahnung wie das genau heißt) du fragst nach dem slot und wenn der slot dann z.b. 0-10 || 15 || 28-35 ist cancelst du das event.