нашел еще баг
когда происходит выбор монитора 3-го или 1-го уровня в desktop версии
стактрейс:
14:23:44.887 [main] ERROR ocelot.desktop.OcelotDesktop$ - java.lang.NullPointerException
at ocelot.desktop.node.nodes.ScreenNode.ocelot$desktop$node$nodes$ScreenNode$$changeTier(ScreenNode.scala:72)
at ocelot.desktop.node.nodes.ScreenNode$$anon$1.$anonfun$new$3(ScreenNode.scala:50)
at ocelot.desktop.ui.widget.contextmenu.ContextMenuEntry.clicked(ContextMenuEntry.scala:57)
at ocelot.desktop.ui.widget.contextmenu.ContextMenuEntry$$anonfun$1.applyOrElse(ContextMenuEntry.scala:49)
at ocelot.desktop.ui.widget.contextmenu.ContextMenuEntry$$anonfun$1.applyOrElse(ContextMenuEntry.scala:48)
at scala.runtime.AbstractPartialFunction.apply(AbstractPartialFunction.scala:35)
at ocelot.desktop.ui.widget.EventHandlers.$anonfun$apply$1(EventHandlers.scala:19)
at ocelot.desktop.ui.widget.EventHandlers.$anonfun$apply$1$adapted(EventHandlers.scala:17)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:920)
at ocelot.desktop.ui.widget.EventHandlers.apply(EventHandlers.scala:17)
at ocelot.desktop.ui.widget.Widget.handleEvent(Widget.scala:138)
at ocelot.desktop.ui.event.handlers.ClickHandler$$anonfun$1.applyOrElse(ClickHandler.scala:22)
at ocelot.desktop.ui.event.handlers.ClickHandler$$anonfun$1.applyOrElse(ClickHandler.scala:14)
at scala.runtime.AbstractPartialFunction.apply(AbstractPartialFunction.scala:35)
at ocelot.desktop.ui.widget.EventHandlers.$anonfun$apply$1(EventHandlers.scala:19)
at ocelot.desktop.ui.widget.EventHandlers.$anonfun$apply$1$adapted(EventHandlers.scala:17)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:920)
at ocelot.desktop.ui.widget.EventHandlers.apply(EventHandlers.scala:17)
at ocelot.desktop.ui.widget.Widget.handleEvent(Widget.scala:138)
at ocelot.desktop.ui.UiHandler$.$anonfun$update$12(UiHandler.scala:223)
at ocelot.desktop.ui.UiHandler$.$anonfun$update$12$adapted(UiHandler.scala:223)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterator.foreach(Iterator.scala:1279)
at ocelot.desktop.ui.UiHandler$.$anonfun$update$10(UiHandler.scala:223)
at ocelot.desktop.ui.UiHandler$.$anonfun$update$10$adapted(UiHandler.scala:219)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterator.foreach(Iterator.scala:1279)
at ocelot.desktop.ui.UiHandler$.update(UiHandler.scala:219)
at ocelot.desktop.ui.UiHandler$.start(UiHandler.scala:177)
at ocelot.desktop.OcelotDesktop$.mainInner(OcelotDesktop.scala:45)
at ocelot.desktop.OcelotDesktop$.main(OcelotDesktop.scala:58)
at ocelot.desktop.OcelotDesktop.main(OcelotDesktop.scala)
раскурил исходники, думаю что ошибка где-то в totoro.ocelot.brain.entity.Screen
ибо дальше вызов не пошел, значит вызываемая функция null, значит что-то от сюда newScreen.node.network.remap имеет значение null
увы, я понятия не имею где взять исходники totoro.ocelot.brain.entity.Screen, потому не могу ничего утверждать на 100%
P.S. хорошо знаю Java, писал пару простых игр на LWJGL 3, но со Scala не знаком