26thmeusoc/adventure-of-umalu

Inventar geht nicht mehr auf nachdem gekämpft wurde

Closed this issue · 4 comments

Das Inventar lässt sich nicht mehr öffnen man gekämpft hat:

Exception in thread "main" java.lang.NullPointerException
    at rogue.creature.Player.showInventoryScreen(Player.java:298)
    at rogue.creature.Player.act(Player.java:111)
    at jade.core.World.playertick(World.java:72)
    at rogue.Rogue.main(Rogue.java:183)

das liegt, daran, dass wenn man gekämpft hat, dass testschwert, womit man grade ausgerüstet ist, weg ist,da es nur ein haltbarkeitswert hat und danach hat man nichts mehr an dieser stelle. und deswegen kommt es zu einer fehlermeldung, da es eben auf null zeigt, wo es ein schwer erwartet. i

ist es denn gar nicht möglich, einfach nichts zu tragen? oder sollte man die haltbarkeit auf "unendlich setzen?

Man müsste dann vielleicht nach nur anders auslesen wenn man anzeigt:

if (wornItems[Item.ITEMTYPE_HEAD] != null) {
   lines.add("<K>opf: " + wornItems[Item.ITEMTYPE_HEAD].getName() + " [+DMG: " + wornItems[Item.ITEMTYPE_HEAD].getDamageBonus() + ", +HP: " + wornItems[Item.ITEMTYPE_HEAD].getHealthBonus() + "]");
} else {
   lines.add("Nichts [+DMG: -4, +HP: -10]);"
}

Dann nur noch beim Hotkey prüfen ob überhaupt was angelegt ist an der Stelle.

also ich hab bei mir erstmal die stabilität vom standard schwer auf integer max value gesetzt, aber leider hat gituhbu wieder n detached head verursacht, sodass ich keine pull request und sowas starten kann. wie komm ich da raus? -.-

Fixed with 0f13239