codingteam / Hyperspace

Simple 2D game written in Clojure and Kotlin.
MIT License
9 stars 4 forks source link

Client doesn't start #33

Closed ForNeVeR closed 6 years ago

ForNeVeR commented 7 years ago
$ lein run client
Exception in thread "main" java.lang.NullPointerException, compiling:(T:\Temp\form-init7564624643793564877.clj:1:78)
        at clojure.lang.Compiler.load(Compiler.java:7391)
        at clojure.lang.Compiler.loadFile(Compiler.java:7317)
        at clojure.main$load_script.invokeStatic(main.clj:275)
        at clojure.main$init_opt.invokeStatic(main.clj:277)
        at clojure.main$init_opt.invoke(main.clj:277)
        at clojure.main$initialize.invokeStatic(main.clj:308)
        at clojure.main$null_opt.invokeStatic(main.clj:342)
        at clojure.main$null_opt.invoke(main.clj:339)
        at clojure.main$main.invokeStatic(main.clj:421)
        at clojure.main$main.doInvoke(main.clj:384)
        at clojure.lang.RestFn.invoke(RestFn.java:421)
        at clojure.lang.Var.invoke(Var.java:383)
        at clojure.lang.AFn.applyToHelper(AFn.java:156)
        at clojure.lang.Var.applyTo(Var.java:700)
        at clojure.main.main(main.java:37)
Caused by: java.lang.NullPointerException
        at clojure.lang.Numbers.ops(Numbers.java:1013)
        at clojure.lang.Numbers.multiply(Numbers.java:148)
        at clojure.lang.Numbers.multiply(Numbers.java:3740)
        at hyperspace.client.ui$render_player.invokeStatic(ui.clj:98)
        at hyperspace.client.ui$render_player.invoke(ui.clj:88)
        at hyperspace.client.ui$render_world.invokeStatic(ui.clj:117)
        at hyperspace.client.ui$render_world.invoke(ui.clj:105)
        at hyperspace.client.ui$ui_loop.invokeStatic(ui.clj:148)
        at hyperspace.client.ui$ui_loop.invoke(ui.clj:136)
        at hyperspace.client.ui$start.invokeStatic(ui.clj:157)
        at hyperspace.client.ui$start.invoke(ui.clj:154)
        at hyperspace.client.main$run.invokeStatic(main.clj:6)
        at hyperspace.client.main$run.doInvoke(main.clj:5)
        at clojure.lang.RestFn.invoke(RestFn.java:397)
        at clojure.lang.AFn.applyToHelper(AFn.java:152)
        at clojure.lang.RestFn.applyTo(RestFn.java:132)
        at clojure.core$apply.invokeStatic(core.clj:646)
        at clojure.core$apply.invoke(core.clj:641)
        at hyperspace.main$_main.invokeStatic(main.clj:7)
        at hyperspace.main$_main.doInvoke(main.clj:5)
        at clojure.lang.RestFn.invoke(RestFn.java:410)
        at clojure.lang.Var.invoke(Var.java:379)
        at user$eval5.invokeStatic(form-init7564624643793564877.clj:1)
        at user$eval5.invoke(form-init7564624643793564877.clj:1)
        at clojure.lang.Compiler.eval(Compiler.java:6927)
        at clojure.lang.Compiler.eval(Compiler.java:6917)
        at clojure.lang.Compiler.load(Compiler.java:7379)
        ... 14 more
ForNeVeR commented 7 years ago

It seems that we're trying to access player's :heading while rendering him, but that parameter is no more created by make-player, i.e. it's not a part of the player type. I hate the dynamic typing :(