@Max, mostly - thanks for the fast turnaround on the Deck issue. Unfortunately it looks like another bug popped up as a result - can you confirm a problem with questData.getDeck()? I've got a working build but my tests are breaking in QuestMainPanel, when the human deck is "summoned" from questData. I'm guessing this has to do with the new deck handling stuff? Not a compile error, but a null pointer exception:
- | Open
- java.lang.NullPointerException
at forge.GameAction.newGame(GameAction.java:1161)
at forge.GameAction.newGame(GameAction.java:1080)
at forge.quest.gui.QuestMainPanel.setupDuel(QuestMainPanel.java:705)
at forge.quest.gui.QuestMainPanel.launchGame(QuestMainPanel.java:686)
at forge.quest.gui.QuestMainPanel.access$2(QuestMainPanel.java:651)
at forge.quest.gui.QuestMainPanel$5.actionPerformed(QuestMainPanel.java:214)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
at java.awt.Component.processMouseEvent(Component.java:6288)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
at java.awt.Component.processEvent(Component.java:6053)
at java.awt.Container.processEvent(Container.java:2041)
at java.awt.Component.dispatchEventImpl(Component.java:4651)
at java.awt.Container.dispatchEventImpl(Container.java:2099)
at java.awt.Component.dispatchEvent(Component.java:4481)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4577)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
at java.awt.Container.dispatchEventImpl(Container.java:2085)
at java.awt.Window.dispatchEventImpl(Window.java:2478)
at java.awt.Component.dispatchEvent(Component.java:4481)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:643)
at java.awt.EventQueue.access$000(EventQueue.java:84)
at java.awt.EventQueue$1.run(EventQueue.java:602)
at java.awt.EventQueue$1.run(EventQueue.java:600)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:98)
at java.awt.EventQueue$2.run(EventQueue.java:616)
at java.awt.EventQueue$2.run(EventQueue.java:614)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:613)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
This is caused by
- Code: Select all
Deck humanDeck = questData.getDeck(humanDeckName);
.
Human deck is then used by "setupDuel()" to start a "newGame()" instance and crashes since humanDeck is null.
I tried a fresh build, fully reverted with none of my changes in place, and this still happened (at "setupBattle()"). So, I'm not sure what to do next.
Otherwise, I've got a BIG clean commit ready to go, once it gets past play testing.