code-explorer786 282d21db05 Update jump heights only when necessary.
This method uses signaling (through a boolean) and I feel like it's
extremely hacky, but I tested this and it (kind of?) works.
Unfortunately I found this to potentially lag when resizing.

I am not sure if this is guaranteed to work (as in, produce correct
behaviour) or not, but to my understanding only LogicDialog uses LCanvas
(grep out "LCanvas\|canvas" and see) so it will most likely work?

I tested this and accidentally found an unrelated issue related to
LCanvas.maxJumpsDrawn, but I hope this will be fixed in the near future.
2024-09-23 21:04:45 +07:00
2024-09-13 17:58:11 -04:00
2024-07-10 16:40:32 -04:00
2024-06-16 01:11:54 -04:00
2023-12-16 09:05:30 -05:00
2024-09-06 15:07:54 -04:00
2024-09-18 09:02:05 -04:00
2021-06-14 10:41:19 -04:00
2021-06-14 10:41:19 -04:00
2020-12-04 10:03:54 -05:00
2022-09-19 11:04:33 -04:00
2024-02-10 13:41:39 -05:00
2023-10-31 19:37:48 -04:00
2024-09-16 20:31:18 -04:00
2021-10-10 13:47:44 -04:00

Logo

Build Status Discord

The automation tower defense RTS, written in Java.

Trello Board
Wiki
Javadoc

Contributing

See CONTRIBUTING.

Building

Bleeding-edge builds are generated automatically for every commit. You can see them here.

If you'd rather compile on your own, follow these instructions. First, make sure you have JDK 17 installed. Other JDK versions will not work. Open a terminal in the Mindustry directory and run the following commands:

Windows

Running: gradlew desktop:run
Building: gradlew desktop:dist
Sprite Packing: gradlew tools:pack

Linux/Mac OS

Running: ./gradlew desktop:run
Building: ./gradlew desktop:dist
Sprite Packing: ./gradlew tools:pack

Server

Server builds are bundled with each released build (in Releases). If you'd rather compile on your own, replace 'desktop' with 'server', e.g. gradlew server:dist.

Android

  1. Install the Android SDK here. Make sure you're downloading the "Command line tools only", as Android Studio is not required.
  2. In the unzipped Android SDK folder, find the cmdline-tools directory. Then create a folder inside of it called latest and put all of its contents into the newly created folder.
  3. In the same directory run the command sdkmanager --licenses (or ./sdkmanager --licenses if on linux/mac)
  4. Set the ANDROID_HOME environment variable to point to your unzipped Android SDK directory.
  5. Enable developer mode on your device/emulator. If you are on testing on a phone you can follow these instructions, otherwise you need to google how to enable your emulator's developer mode specifically.
  6. Run gradlew android:assembleDebug (or ./gradlew if on linux/mac). This will create an unsigned APK in android/build/outputs/apk.

To debug the application on a connected device/emulator, run gradlew android:installDebug android:run.

Troubleshooting

Permission Denied

If the terminal returns Permission denied or Command not found on Mac/Linux, run chmod +x ./gradlew before running ./gradlew. This is a one-time procedure.


Gradle may take up to several minutes to download files. Be patient.
After building, the output .JAR file should be in /desktop/build/libs/Mindustry.jar for desktop builds, and in /server/build/libs/server-release.jar for server builds.

Feature Requests

Post feature requests and feedback here.

Downloads

Languages
Java 99.3%
GLSL 0.4%
JavaScript 0.2%