When I double click on the game nothing is drawn on the screen. There are menus however. When I launch via cmd, things are drawn. I assume this error comes from Java 2D, as when used it sometimes is picky as to whether it works with the java that runs via cmd or the java that runs via double-clicking (I'm pretty sure they are separate). This isn't worth stressing over. I looked a tiny bit at your source code and I really dislike your Variables class. Tons of static fields really aren't pretty. I highly suggest you revise that.

When I double click on the game nothing is drawn on the screen. There are menus however. When I launch via cmd, things are drawn. I assume this error comes from Java 2D, as when used it sometimes is picky as to whether it works with the java that runs via cmd or the java that runs via double-clicking (I'm pretty sure they are separate). This isn't worth stressing over. I looked a tiny bit at your source code and I really dislike your Variables class. Tons of static fields really aren't pretty. I highly suggest you revise that.

EDIT: Methods class too. Everything is static there as well.

When you load the jar, sometimes the graphics don't draw, minimize it and open it again. Sometimes the KeyListener doesnt respond. Just close and re open

And everything in the methods class is static for a reason. Less typing. I.E

You are missing the point of statics. Statics are supposed to be independent of the object, a value/method of the class. For example getHealth() is not to be used as a static method because the health is different per object of that class. Overall, you should (almost) always take readability/good oop design over "less typing". And in this case, it's not even really less typing because it's not like you would instantiate a new object every time you would want to call a method.

java-gaming.org is not responsible for the content posted by its members, including references to external websites,
and other references that may or may not have a relation with our primarily
gaming and game production oriented community.
inquiries and complaints can be sent via email to the info‑account of the
company managing the website of java‑gaming.org