inf112-v20 / crawling-crow

🤖 The winning team!
0 stars 0 forks source link

[BUG] Debug controls not up to date with ProgramCardsView #251

Closed buzzdead closed 4 years ago

buzzdead commented 4 years ago

Når man bruker debug controls til å ta skade så fungerer ikke programcardsview slik som det skal. I stedet for å få opp antall kort man har å velge sammen med de manglende kortene fra det som er låst i registeret så får man kun opp de kortene man har å velge mellom. Videre kaller man på nextCard i registeret med kort som er null og spillet avsluttes.

timharek commented 4 years ago

Kanskje lurt å refere til hvilke manuelle tester det gjelder?

thomashusebo commented 4 years ago

Ble funnet i forbindelse med manuell tester for utdelte kort

  1. Sett Debug Mode til true
  2. Skad robot slik at noen kort blir låst, ved å bruke lasere. Se Debug Mode
    • Hvis du tar skade med SPACE, til du har noen låste kort, så skjer det. Men hvis man bruker T og deretter bruker C (for å gjøre cleanUp()) så fungerer det fint...

  3. Sørg for at cleanup kjører. Se Debug Mode
  4. Trykk ENTER for å dele ut kort
    • Legg merke til at låste kort ikke viser
  5. Velg kort
  6. Trykk godkjenn
    • Spillet crasher:
Exception in thread "LWJGL Application" java.lang.IllegalArgumentException: Argument for @NotNull parameter 'card' of roborally/gameview/ui/ProgramCardsView.addCard must not be null
    at roborally.gameview.ui.ProgramCardsView.$$$reportNull$$$0(ProgramCardsView.java)
    at roborally.gameview.ui.ProgramCardsView.addCard(ProgramCardsView.java)
    at roborally.game.Game.setRegisterCardsView(Game.java:183)
    at roborally.game.Game.orderTheUserRobotsCards(Game.java:191)
    at roborally.events.AnimateEvent.drawCardsInHand(AnimateEvent.java:172)
    at roborally.events.AnimateEvent.drawCardsInHandAndRegister(AnimateEvent.java:54)
    at roborally.events.AnimateEvent.drawEvents(AnimateEvent.java:43)
    at roborally.gameview.GameView.runGameStates(GameView.java:152)
    at roborally.gameview.GameView.render(GameView.java:121)
    at com.badlogic.gdx.backends.lwjgl.LwjglApplication.mainLoop(LwjglApplication.java:225)
    at com.badlogic.gdx.backends.lwjgl.LwjglApplication$1.run(LwjglApplication.java:126)
timharek commented 4 years ago
  1. Skad robot slik at noen kort blir låst, ved å bruke lasere. Se Debug Mode
  1. Hvis du tar skade med SPACE, til du har noen låste kort, så skjer det. Men hvis man bruker T og deretter bruker C (for å gjøre cleanUp()) så fungerer det fint...
thomashusebo commented 4 years ago

Oppdaterer testsiden på wiki om hvordan vi kan gjøre dette, og lukker saken