showRanks #57
@ -1,5 +1,6 @@
|
|||||||
package de.steamwar.schematicsystem.commands;
|
package de.steamwar.schematicsystem.commands;
|
||||||
|
|
||||||
|
import com.google.common.collect.Lists;
|
||||||
import de.steamwar.inventory.SWInventory;
|
import de.steamwar.inventory.SWInventory;
|
||||||
import de.steamwar.inventory.SWItem;
|
import de.steamwar.inventory.SWItem;
|
||||||
import de.steamwar.inventory.SWListInv;
|
import de.steamwar.inventory.SWListInv;
|
||||||
@ -100,7 +101,9 @@ class GUI {
|
|||||||
if(schem.getSchemOwner() == SteamwarUser.get(p.getUniqueId()).getId()){
|
if(schem.getSchemOwner() == SteamwarUser.get(p.getUniqueId()).getId()){
|
||||||
if(schem.getSchemType().writeable()){
|
if(schem.getSchemType().writeable()){
|
||||||
List<CheckedSchematic> checkedSchematics = CheckedSchematic.getLastDeclined(p.getUniqueId());
|
List<CheckedSchematic> checkedSchematics = CheckedSchematic.getLastDeclined(p.getUniqueId());
|
||||||
for(CheckedSchematic checkedSchematic : checkedSchematics) {
|
ListIterator<CheckedSchematic> i = checkedSchematics.listIterator(checkedSchematics.size());
|
||||||
|
|||||||
|
while(i.hasPrevious()) {
|
||||||
|
CheckedSchematic checkedSchematic = i.previous();
|
||||||
if(checkedSchematic.getSchemName().equals(schem.getSchemName()) &&
|
if(checkedSchematic.getSchemName().equals(schem.getSchemName()) &&
|
||||||
checkedSchematic.getSchemOwner() == schem.getSchemOwner()) {
|
checkedSchematic.getSchemOwner() == schem.getSchemOwner()) {
|
||||||
inv.setItem(1, SWItem.getDye(10), (byte) 10, "§eStatus " + schem.getSchemType().name(), Collections.singletonList("§7" + checkedSchematic.getDeclineReason()), false, click -> {});
|
inv.setItem(1, SWItem.getDye(10), (byte) 10, "§eStatus " + schem.getSchemType().name(), Collections.singletonList("§7" + checkedSchematic.getDeclineReason()), false, click -> {});
|
||||||
@ -165,6 +168,8 @@ class GUI {
|
|||||||
m = SWItem.getMaterial(schem.getItem());
|
m = SWItem.getMaterial(schem.getItem());
|
||||||
|
|
||||||
SWItem item = new SWItem(m, "§e" + schem.getSchemName(), Collections.singletonList("§7" + schem.getSchemType().name()), !schem.getSchemType().writeable(), click -> {});
|
SWItem item = new SWItem(m, "§e" + schem.getSchemName(), Collections.singletonList("§7" + schem.getSchemType().name()), !schem.getSchemType().writeable(), click -> {});
|
||||||
|
if(schem.getRank() > 0)
|
||||||
|
item.setLore(Lists.newArrayList("§7" + schem.getSchemType().name(), "§8Rang " + schem.getRank()));
|
||||||
schemList.add(new SWListInv.SWListEntry<>(item, schem));
|
schemList.add(new SWListInv.SWListEntry<>(item, schem));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -292,6 +292,9 @@ public class SchematicCommand implements CommandExecutor {
|
|||||||
type.setHoverEvent(new HoverEvent(HoverEvent.Action.SHOW_TEXT, TextComponent.fromLegacyText("§eTyp ändern")));
|
type.setHoverEvent(new HoverEvent(HoverEvent.Action.SHOW_TEXT, TextComponent.fromLegacyText("§eTyp ändern")));
|
||||||
type.setClickEvent(new ClickEvent(ClickEvent.Action.RUN_COMMAND, "/schem changetype " + schematic.getSchemName()));
|
type.setClickEvent(new ClickEvent(ClickEvent.Action.RUN_COMMAND, "/schem changetype " + schematic.getSchemName()));
|
||||||
}
|
}
|
||||||
|
if(schematic.getRank() > 0){
|
||||||
|
type.addExtra("§8Rang " + schematic.getRank());
|
||||||
|
}
|
||||||
player.spigot().sendMessage(type);
|
player.spigot().sendMessage(type);
|
||||||
|
|
||||||
if(SteamwarUser.get(schematic.getSchemOwner()).getUUID().equals(player.getUniqueId())){
|
if(SteamwarUser.get(schematic.getSchemOwner()).getUUID().equals(player.getUniqueId())){
|
||||||
|
In neuem Issue referenzieren
Einen Benutzer sperren
ich kenn micj nicht mit iteratoren aus, aber ich dachte sie gehen mittels eines befehls von vorne nach hinten durch -> while(hasPrevious) ist immer true und du erhöhst es auch nie
kann sein, dass ich die komplett falsch verstanden habe oder, dass du hier while(true) hast
Nein, ich iteriere mit i.previous() ja rückwärts durch die Liste durch.
und starte ja überhaupt erstmal am Ende der Liste