Merge branch 'master' into patch-7
6
.github/ISSUE_TEMPLATE/bug_report.md
vendored
@ -7,11 +7,9 @@ assignees: ''
|
||||
|
||||
---
|
||||
|
||||
**Note**: Do not report any new bugs directly relating to the v6 campaign. They will not be fixed or considered at this time.
|
||||
|
||||
**Platform**: *Android/iOS/Mac/Windows/Linux*
|
||||
|
||||
**Build**: *The build number under the title in the main menu. Required.*
|
||||
**Build**: *The build number under the title in the main menu. Required. "LATEST" IS NOT A VERSION, I NEED THE EXACT BUILD NUMBER OF YOUR GAME.*
|
||||
|
||||
**Issue**: *Explain your issue in detail.*
|
||||
|
||||
@ -19,7 +17,7 @@ assignees: ''
|
||||
|
||||
**Link(s) to mod(s) used**: *The mod repositories or zip files that are related to the issue, if applicable.*
|
||||
|
||||
**Save file**: *The save file you were playing on when the bug happened. REQUIRED for any issue that happens in-game.*
|
||||
**Save file**: *The (zipped) save file you were playing on when the bug happened. THIS IS REQUIRED FOR ANY ISSUE HAPPENING IN-GAME, REGARDLESS OF WHETHER YOU THINK IT HAPPENS EVERYWHERE. DO NOT DELETE OR OMIT THIS LINE UNLESS YOU ARE SURE THAT THE ISSUE DOES NOT HAPPEN IN-GAME.*
|
||||
|
||||
**Crash report**: *The contents of relevant crash report files. REQUIRED if you are reporting a crash.*
|
||||
|
||||
|
@ -10,7 +10,7 @@ script:
|
||||
- git clone --depth=1 --branch=master https://github.com/Anuken/MindustryBuilds ../MindustryBuilds
|
||||
- cd ../MindustryBuilds
|
||||
- echo ${TRAVIS_TAG}
|
||||
- if [ -n "$TRAVIS_TAG" ]; then echo versionName=5-fdroid-${TRAVIS_TAG:1}$'\n'versionCode=${TRAVIS_TAG:1} > version_fdroid.txt; git add .; git commit -m "Updating to build ${TRAVIS_TAG}"; fi
|
||||
- if [ -n "$TRAVIS_TAG" ]; then echo versionName=6-fdroid-${TRAVIS_TAG:1}$'\n'versionCode=${TRAVIS_TAG:1} > version_fdroid.txt; git add .; git commit -m "Updating to build ${TRAVIS_TAG}"; fi
|
||||
- git tag ${TRAVIS_BUILD_NUMBER}
|
||||
- git config --global user.name "Build Uploader"
|
||||
- if [ "$TRAVIS_PULL_REQUEST" = "false" ]; then git push https://Anuken:${GH_PUSH_TOKEN}@github.com/Anuken/MindustryBuilds ${TRAVIS_BUILD_NUMBER}; git push https://Anuken:${GH_PUSH_TOKEN}@github.com/Anuken/MindustryBuilds; fi
|
||||
|
20
README.md
@ -9,34 +9,34 @@ _[Trello Board](https://trello.com/b/aE2tcUwF/mindustry-40-plans)_
|
||||
_[Wiki](https://mindustrygame.github.io/wiki)_
|
||||
_[Javadoc](https://mindustrygame.github.io/docs/)_
|
||||
|
||||
### Contributing
|
||||
## Contributing
|
||||
|
||||
See [CONTRIBUTING](CONTRIBUTING.md).
|
||||
|
||||
### Building
|
||||
## Building
|
||||
|
||||
Bleeding-edge builds are generated automatically for every commit. You can see them [here](https://github.com/Anuken/MindustryBuilds/releases).
|
||||
|
||||
If you'd rather compile on your own, follow these instructions.
|
||||
First, make sure you have [JDK 14](https://adoptopenjdk.net/) installed. Open a terminal in the root directory, `cd` to the Mindustry folder and run the following commands:
|
||||
|
||||
#### Windows
|
||||
### Windows
|
||||
|
||||
_Running:_ `gradlew desktop:run`
|
||||
_Building:_ `gradlew desktop:dist`
|
||||
_Sprite Packing:_ `gradlew tools:pack`
|
||||
|
||||
#### Linux/Mac OS
|
||||
### Linux/Mac OS
|
||||
|
||||
_Running:_ `./gradlew desktop:run`
|
||||
_Building:_ `./gradlew desktop:dist`
|
||||
_Sprite Packing:_ `./gradlew tools:pack`
|
||||
|
||||
#### Server
|
||||
### 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
|
||||
### Android
|
||||
|
||||
1. Install the Android SDK [here.](https://developer.android.com/studio#downloads) Make sure you're downloading the "Command line tools only", as Android Studio is not required.
|
||||
2. Set the `ANDROID_HOME` environment variable to point to your unzipped Android SDK directory.
|
||||
@ -44,7 +44,9 @@ Server builds are bundled with each released build (in Releases). If you'd rathe
|
||||
|
||||
To debug the application on a connected phone, run `gradlew android:installDebug android:run`.
|
||||
|
||||
##### Troubleshooting
|
||||
### 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.*
|
||||
|
||||
@ -53,11 +55,11 @@ If the terminal returns `Permission denied` or `Command not found` on Mac/Linux,
|
||||
Gradle may take up to several minutes to download files. Be patient. <br>
|
||||
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
|
||||
## Feature Requests
|
||||
|
||||
Post feature requests and feedback [here](https://github.com/Anuken/Mindustry-Suggestions/issues/new/choose).
|
||||
|
||||
### Downloads
|
||||
## Downloads
|
||||
|
||||
[<img src="https://static.itch.io/images/badge.svg"
|
||||
alt="Get it on Itch.io"
|
||||
|
@ -76,7 +76,7 @@ android{
|
||||
targetSdkVersion 29
|
||||
|
||||
versionName versionNameResult
|
||||
versionCode vcode
|
||||
versionCode = (System.getenv("TRAVIS_BUILD_ID") != null ? System.getenv("TRAVIS_BUILD_ID").toInteger() : vcode)
|
||||
|
||||
if(project.hasProperty("release")){
|
||||
props['androidBuildCode'] = (vcode + 1).toString()
|
||||
@ -98,15 +98,20 @@ android{
|
||||
storePassword RELEASE_STORE_PASSWORD
|
||||
keyAlias RELEASE_KEY_ALIAS
|
||||
keyPassword RELEASE_KEY_PASSWORD
|
||||
}else if(System.getenv("CI") == "true"){
|
||||
storeFile = file("../../bekeystore.jks")
|
||||
storePassword = System.getenv("keystore_password")
|
||||
keyAlias = System.getenv("keystore_alias")
|
||||
keyPassword = System.getenv("keystore_alias_password")
|
||||
}else{
|
||||
println("No keystore property found. Releases will be unsigned.")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(project.hasProperty("RELEASE_STORE_FILE")) {
|
||||
buildTypes {
|
||||
release {
|
||||
if(project.hasProperty("RELEASE_STORE_FILE") || System.getenv("CI") == "true"){
|
||||
buildTypes{
|
||||
release{
|
||||
signingConfig signingConfigs.release
|
||||
}
|
||||
}
|
||||
|
@ -204,10 +204,10 @@ public abstract class BaseProcessor extends AbstractProcessor{
|
||||
context = ((JavacProcessingEnvironment)env).getContext();
|
||||
maker = TreeMaker.instance(javacProcessingEnv.getContext());
|
||||
|
||||
Log.setLogLevel(LogLevel.info);
|
||||
Log.level = LogLevel.info;
|
||||
|
||||
if(System.getProperty("debug") != null){
|
||||
Log.setLogLevel(LogLevel.debug);
|
||||
Log.level = LogLevel.debug;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -378,7 +378,7 @@ public class EntityProcess extends BaseProcessor{
|
||||
.addModifiers(Modifier.PUBLIC)
|
||||
.addStatement("return $S + $L", name + "#", "id").build());
|
||||
|
||||
EntityIO io = new EntityIO(type.name(), builder, allFieldSpecs, serializer, rootDirectory.child("annotations/src/main/resources/revisions").child(name));
|
||||
EntityIO io = new EntityIO(type.name(), builder, allFieldSpecs, serializer, rootDirectory.child("annotations/src/main/resources/revisions").child(type.name()));
|
||||
//entities with no sync comp and no serialization gen no code
|
||||
boolean hasIO = ann.genio() && (components.contains(s -> s.name().contains("Sync")) || ann.serialize());
|
||||
|
||||
|
@ -43,9 +43,9 @@ public class LogicStatementProcessor extends BaseProcessor{
|
||||
String name = c.annotation(RegisterStatement.class).value();
|
||||
|
||||
if(beganWrite){
|
||||
writer.nextControlFlow("else if(obj instanceof $T)", c.mirror());
|
||||
writer.nextControlFlow("else if(obj.getClass() == $T.class)", c.mirror());
|
||||
}else{
|
||||
writer.beginControlFlow("if(obj instanceof $T)", c.mirror());
|
||||
writer.beginControlFlow("if(obj.getClass() == $T.class)", c.mirror());
|
||||
beganWrite = true;
|
||||
}
|
||||
|
||||
@ -53,6 +53,7 @@ public class LogicStatementProcessor extends BaseProcessor{
|
||||
writer.addStatement("out.append($S)", name);
|
||||
|
||||
Seq<Svar> fields = c.fields();
|
||||
fields.addAll(c.superclass().fields());
|
||||
|
||||
String readSt = "if(tokens[0].equals($S))";
|
||||
if(beganRead){
|
||||
|
@ -14,6 +14,8 @@ mindustry.entities.comp.EffectStateComp=9
|
||||
mindustry.entities.comp.FireComp=10
|
||||
mindustry.entities.comp.LaunchCoreComp=11
|
||||
mindustry.entities.comp.PlayerComp=12
|
||||
mindustry.entities.comp.PosTeam=27
|
||||
mindustry.entities.comp.PosTeamDef=28
|
||||
mindustry.entities.comp.PuddleComp=13
|
||||
mindustry.type.Weather.WeatherStateComp=14
|
||||
mindustry.world.blocks.campaign.LaunchPad.LaunchPayloadComp=15
|
||||
|
@ -1 +0,0 @@
|
||||
{fields:[{name:ammo,type:float},{name:armor,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:health,type:float},{name:isShooting,type:boolean},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:payloads,type:arc.struct.Seq<mindustry.world.blocks.payloads.Payload>},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:x,type:float},{name:y,type:float}]}
|
@ -1 +0,0 @@
|
||||
{fields:[{name:ammo,type:float,size:4},{name:armor,type:float,size:4},{name:baseRotation,type:float,size:4},{name:controller,type:mindustry.entities.units.UnitController,size:-1},{name:deactivated,type:boolean,size:1},{name:elevation,type:float,size:4},{name:health,type:float,size:4},{name:isShooting,type:boolean,size:1},{name:mounts,type:"mindustry.entities.units.WeaponMount[]",size:-1},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>,size:-1},{name:rotation,type:float,size:4},{name:shield,type:float,size:4},{name:spawnedByCore,type:boolean,size:1},{name:stack,type:mindustry.type.ItemStack,size:-1},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>,size:-1},{name:team,type:mindustry.game.Team,size:-1},{name:type,type:mindustry.type.UnitType,size:-1},{name:x,type:float,size:4},{name:y,type:float,size:4}]}
|
@ -1 +0,0 @@
|
||||
{fields:[{name:ammo,type:float,size:4},{name:armor,type:float,size:4},{name:controller,type:mindustry.entities.units.UnitController,size:-1},{name:deactivated,type:boolean,size:1},{name:elevation,type:float,size:4},{name:health,type:float,size:4},{name:isShooting,type:boolean,size:1},{name:mineTile,type:mindustry.world.Tile,size:-1},{name:mounts,type:"mindustry.entities.units.WeaponMount[]",size:-1},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>,size:-1},{name:rotation,type:float,size:4},{name:shield,type:float,size:4},{name:spawnedByCore,type:boolean,size:1},{name:stack,type:mindustry.type.ItemStack,size:-1},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>,size:-1},{name:team,type:mindustry.game.Team,size:-1},{name:type,type:mindustry.type.UnitType,size:-1},{name:x,type:float,size:4},{name:y,type:float,size:4}]}
|
@ -1 +0,0 @@
|
||||
{fields:[{name:ammo,type:float,size:4},{name:armor,type:float,size:4},{name:baseRotation,type:float,size:4},{name:controller,type:mindustry.entities.units.UnitController,size:-1},{name:deactivated,type:boolean,size:1},{name:elevation,type:float,size:4},{name:health,type:float,size:4},{name:isShooting,type:boolean,size:1},{name:mounts,type:"mindustry.entities.units.WeaponMount[]",size:-1},{name:rotation,type:float,size:4},{name:shield,type:float,size:4},{name:spawnedByCore,type:boolean,size:1},{name:stack,type:mindustry.type.ItemStack,size:-1},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>,size:-1},{name:team,type:mindustry.game.Team,size:-1},{name:type,type:mindustry.type.UnitType,size:-1},{name:x,type:float,size:4},{name:y,type:float,size:4}]}
|
@ -1 +0,0 @@
|
||||
{version:1,fields:[{name:ammo,type:float,size:4},{name:armor,type:float,size:4},{name:baseRotation,type:float,size:4},{name:controller,type:mindustry.entities.units.UnitController,size:-1},{name:elevation,type:float,size:4},{name:health,type:float,size:4},{name:isShooting,type:boolean,size:1},{name:mounts,type:"mindustry.entities.units.WeaponMount[]",size:-1},{name:rotation,type:float,size:4},{name:shield,type:float,size:4},{name:spawnedByCore,type:boolean,size:1},{name:stack,type:mindustry.type.ItemStack,size:-1},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>,size:-1},{name:team,type:mindustry.game.Team,size:-1},{name:type,type:mindustry.type.UnitType,size:-1},{name:x,type:float,size:4},{name:y,type:float,size:4}]}
|
@ -0,0 +1 @@
|
||||
{fields:[{name:team,type:mindustry.game.Team},{name:x,type:float},{name:y,type:float}]}
|
@ -1 +0,0 @@
|
||||
{fields:[{name:ammo,type:float,size:4},{name:armor,type:float,size:4},{name:controller,type:mindustry.entities.units.UnitController,size:-1},{name:deactivated,type:boolean,size:1},{name:elevation,type:float,size:4},{name:health,type:float,size:4},{name:isShooting,type:boolean,size:1},{name:mounts,type:"mindustry.entities.units.WeaponMount[]",size:-1},{name:rotation,type:float,size:4},{name:shield,type:float,size:4},{name:spawnedByCore,type:boolean,size:1},{name:stack,type:mindustry.type.ItemStack,size:-1},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>,size:-1},{name:team,type:mindustry.game.Team,size:-1},{name:type,type:mindustry.type.UnitType,size:-1},{name:x,type:float,size:4},{name:y,type:float,size:4}]}
|
@ -1 +0,0 @@
|
||||
{version:1,fields:[{name:ammo,type:float,size:4},{name:armor,type:float,size:4},{name:controller,type:mindustry.entities.units.UnitController,size:-1},{name:elevation,type:float,size:4},{name:health,type:float,size:4},{name:isShooting,type:boolean,size:1},{name:mounts,type:"mindustry.entities.units.WeaponMount[]",size:-1},{name:rotation,type:float,size:4},{name:shield,type:float,size:4},{name:spawnedByCore,type:boolean,size:1},{name:stack,type:mindustry.type.ItemStack,size:-1},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>,size:-1},{name:team,type:mindustry.game.Team,size:-1},{name:type,type:mindustry.type.UnitType,size:-1},{name:x,type:float,size:4},{name:y,type:float,size:4}]}
|
1
annotations/src/main/resources/revisions/block/2.json
Normal file
@ -0,0 +1 @@
|
||||
{version:2,fields:[{name:ammo,type:float},{name:armor,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:x,type:float},{name:y,type:float}]}
|
1
annotations/src/main/resources/revisions/corvus/2.json
Normal file
@ -0,0 +1 @@
|
||||
{version:2,fields:[{name:ammo,type:float},{name:armor,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:x,type:float},{name:y,type:float}]}
|
1
annotations/src/main/resources/revisions/flare/2.json
Normal file
@ -0,0 +1 @@
|
||||
{version:2,fields:[{name:ammo,type:float},{name:armor,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:x,type:float},{name:y,type:float}]}
|
1
annotations/src/main/resources/revisions/mace/2.json
Normal file
@ -0,0 +1 @@
|
||||
{version:2,fields:[{name:ammo,type:float},{name:armor,type:float},{name:baseRotation,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:x,type:float},{name:y,type:float}]}
|
1
annotations/src/main/resources/revisions/mega/2.json
Normal file
@ -0,0 +1 @@
|
||||
{version:2,fields:[{name:ammo,type:float},{name:armor,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:payloads,type:arc.struct.Seq<mindustry.world.blocks.payloads.Payload>},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:x,type:float},{name:y,type:float}]}
|
1
annotations/src/main/resources/revisions/mono/2.json
Normal file
@ -0,0 +1 @@
|
||||
{version:2,fields:[{name:ammo,type:float},{name:armor,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:x,type:float},{name:y,type:float}]}
|
1
annotations/src/main/resources/revisions/nova/2.json
Normal file
@ -0,0 +1 @@
|
||||
{version:2,fields:[{name:ammo,type:float},{name:armor,type:float},{name:baseRotation,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:x,type:float},{name:y,type:float}]}
|
1
annotations/src/main/resources/revisions/oct/1.json
Normal file
@ -0,0 +1 @@
|
||||
{version:1,fields:[{name:ammo,type:float},{name:armor,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:payloads,type:arc.struct.Seq<mindustry.world.blocks.payloads.Payload>},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:x,type:float},{name:y,type:float}]}
|
1
annotations/src/main/resources/revisions/poly/2.json
Normal file
@ -0,0 +1 @@
|
||||
{version:2,fields:[{name:ammo,type:float},{name:armor,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:x,type:float},{name:y,type:float}]}
|
1
annotations/src/main/resources/revisions/quad/2.json
Normal file
@ -0,0 +1 @@
|
||||
{version:2,fields:[{name:ammo,type:float},{name:armor,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:payloads,type:arc.struct.Seq<mindustry.world.blocks.payloads.Payload>},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:x,type:float},{name:y,type:float}]}
|
1
annotations/src/main/resources/revisions/risso/2.json
Normal file
@ -0,0 +1 @@
|
||||
{version:2,fields:[{name:ammo,type:float},{name:armor,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:x,type:float},{name:y,type:float}]}
|
1
annotations/src/main/resources/revisions/spiroct/2.json
Normal file
@ -0,0 +1 @@
|
||||
{version:2,fields:[{name:ammo,type:float},{name:armor,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:x,type:float},{name:y,type:float}]}
|
@ -32,7 +32,7 @@ allprojects{
|
||||
|
||||
ext{
|
||||
versionNumber = '6'
|
||||
if(!project.hasProperty("versionModifier")) versionModifier = 'alpha'
|
||||
if(!project.hasProperty("versionModifier")) versionModifier = 'beta'
|
||||
if(!project.hasProperty("versionType")) versionType = 'official'
|
||||
appName = 'Mindustry'
|
||||
steamworksVersion = '891ed912791e01fe9ee6237a6497e5212b85c256'
|
||||
@ -262,6 +262,8 @@ project(":ios"){
|
||||
project(":core"){
|
||||
apply plugin: "java-library"
|
||||
|
||||
compileJava.options.fork = true
|
||||
|
||||
task preGen{
|
||||
outputs.upToDateWhen{ false }
|
||||
generateLocales()
|
||||
@ -303,7 +305,7 @@ project(":core"){
|
||||
|
||||
compileOnly project(":annotations")
|
||||
annotationProcessor project(":annotations")
|
||||
annotationProcessor 'com.github.Anuken:jabel:40eec868af'
|
||||
annotationProcessor 'com.github.Anuken:jabel:34e4c172e65b3928cd9eabe1993654ea79c409cd'
|
||||
|
||||
}
|
||||
}
|
||||
|
Before Width: | Height: | Size: 258 B After Width: | Height: | Size: 274 B |
BIN
core/assets-raw/sprites/blocks/environment/cliff0.png
Normal file
After Width: | Height: | Size: 456 B |
BIN
core/assets-raw/sprites/blocks/environment/cliff1.png
Normal file
After Width: | Height: | Size: 351 B |
BIN
core/assets-raw/sprites/blocks/environment/cliff2.png
Normal file
After Width: | Height: | Size: 429 B |
BIN
core/assets-raw/sprites/blocks/environment/cliff3.png
Normal file
After Width: | Height: | Size: 377 B |
BIN
core/assets-raw/sprites/blocks/environment/cliff4.png
Normal file
After Width: | Height: | Size: 416 B |
BIN
core/assets-raw/sprites/blocks/environment/cliff5.png
Normal file
After Width: | Height: | Size: 405 B |
BIN
core/assets-raw/sprites/blocks/environment/cliff6.png
Normal file
After Width: | Height: | Size: 365 B |
BIN
core/assets-raw/sprites/blocks/environment/cliff7.png
Normal file
After Width: | Height: | Size: 359 B |
Before Width: | Height: | Size: 256 B After Width: | Height: | Size: 389 B |
Before Width: | Height: | Size: 239 B After Width: | Height: | Size: 377 B |
BIN
core/assets-raw/sprites/blocks/environment/space.png
Normal file
After Width: | Height: | Size: 120 B |
2
core/assets/baseparts/1603214918168.msch
Normal file
@ -0,0 +1,2 @@
|
||||
mschxœ5<C593>Ë
|
||||
!E¯Ïy-J·ý‡ù(q¤£Gú÷<C3BA>„ââä&'›„Î.<Zl.Çž®Vª{lG¸|<7C>ŸK4ÌíúÙðü{»/ùßR±ÅÒ~•^=ÝùäГkÑïG<C3AF>ç àzRPm!&ÆÌX+ ÉÓ†4©¨²¼H}E“y$9’À˜’¢XQÜÔü‰æd8ZQŠ¡†acf,Œê˜ã"
|
2
core/assets/baseparts/1603214945791.msch
Normal file
@ -0,0 +1,2 @@
|
||||
mschxœ5<C593>A E¿JkêÊStã<74><08>˜I
|
||||
4”šx{¡ðòÿ¼¸vÐѽpq‘<71>°—”Ý›^˜Ú}æpŠ€Æą¼§#{Âã¯Ï>Å}SÆm‹tWØÏKæuÅXGÅq¤àY¬z\P?E½:<18>ÅYŽ
ªÍΤÅÔ¢h)<29>(¦%UDK½”½(¶.©%Ð#èV0F¨N#Ô
|
1
core/assets/baseparts/1603214967392.msch
Normal file
@ -0,0 +1 @@
|
||||
mschxœ%ÍAƒ …ᧀÖZc\ô.z$ƒÓdƒÐ¤·/täƒ?“3†ÚoŽ`Þù¢Æ<>.ùL< ±$N›çìVü‡¾!b>=e·%¶ëù80r"·^!GKÐu€g9耦Ð×{S_@+±•¨$jÁ<08>ÐWê\oJSÀMú Ü…±¢0ý?ÂCâTŠªhÁÔqW
|
3
core/assets/baseparts/1603214996033.msch
Normal file
@ -0,0 +1,3 @@
|
||||
mschxœ%<25>Á
|
||||
à ƒÓªmic×½C/{£bU‡ÕÁÞ~¦ÿA>“ˆ·:nÁÁ¼ëé^XvwÚì?ŧ<Š/[ô5¬6ůû¥Œû'º¶âíºgX|qa=SÍÖAsCNµ¸àÙNÛA×0ðÞQ½˜=Mb‚¢9óMID‰Ò’ÔÑb‰Q§ÆÆAјٟZ¯}<ò™ê
|
||||
sFŠ£†‘©U.Œ‚ÖüBIÙ
|
BIN
core/assets/baseparts/1603215024189.msch
Normal file
2
core/assets/baseparts/1603215113546.msch
Normal file
@ -0,0 +1,2 @@
|
||||
mschx°%п[nц пЬAв}╗Й"Ры
t'▒C$╓ь▌┬]╘╩ОВц
лcП┘яю.≈9бщЖgЭF╦фГ■сcKК8Xщф╦╔М╡╓}>OКРЪж÷в}▀цc┴Ш|ырt╬Фt©#╓-нГГ╨Г)ЬД┐▒еd╘qPр▓▌r$╫b╓@Й*bые2r║ТtрЁRZр▒@▌╓W<╩x╘⌠ф^oWй╣5оj=+Sjт0Ёяq∙@й─╜╕Xа:ю≈█Rз╠╢⌠?╗■
|
||||
∙,#G<╘ICZр▒@▌╓''%HЁРZ┘·°х@^ТеG<╘ICZми+y#ОДC>СrА#Ё
|
2
core/assets/baseparts/1603215171294.msch
Normal file
@ -0,0 +1,2 @@
|
||||
mschx<>%<25>с<EFBFBD><D181> <10>AБњЃiп<69><D0BF>тpяBЂ`лјюMЎЛ
|
||||
!п0;060Щ/ћЛoфKР8бJ\kЬ шa|Tk~Sq)O-Щћ<D0A9>h_|<7C>СM%Ю35V<35>тОИ<D09E>г<EFBFBD><D0B3>\№иђь<D192>[}ЂйБњ#<23>БвтЖМ<D096>@0ђ-<2D>'hhХ0Н<30>њџ@С <13>Wн@<40>JаCi4bj<62>лpД<70>2gу<67>На_И]фЁ<D184>EгБА-ЮK+О<19>ўЗ.щ
|
1
core/assets/baseparts/1603215272794.msch
Normal file
@ -0,0 +1 @@
|
||||
mschxśM<C59B>KnÄ DŚ1±ŁÉ̲ćPČ&#$¶ó9yv™tCYŔë_Ń%đŚ«„Jnő<6E>ŢÎÝo®Äč>1-~źKŘŽ<C598>đ„i?ËÝŰ#řBIŽ®ŘÍ%q;ÂáR8W;çôîżrÁË–üąş#Ěv)!F\7ÖŮ”oIy÷¸ý{âŻ4…ĂŻvĎg™=›<>!;®ú^é`4čEťä`¨–ő
şah¨:I:!ę¬<C499>Ňu0hRFCĺÇ7†Ç˝¨:«T›W0t<30>á=÷z*] %wX ›#ÝéćH7Gşé4}mWWłŔ0¸3őÄ®§ćbŔČ6
eňŔ>
|
4
core/assets/baseparts/1603215345320.msch
Normal file
@ -0,0 +1,4 @@
|
||||
mschxśEĎën‚@ŕĂĹ\EíŐôřŰ÷!şdͲ´éĂ:ĂiŇ<69>řqvfÇاȇöćP^¦Ń]|<7C>°g7žBwŹť€
|
||||
ąVp<EFBFBD>]l‡nş5'?|ą`»čnÍč§pr°};şĐśC×÷0ÁOŃěďţ[vM߆«Ś˝Ľ4÷vpýß‘'ˇ‰Ú*áżŕHäY~2dJNVÄ(©<>¦BµL¦r +bHˇčw-cKM™¤52e«ó*ţWĹR!K˛L–{XÝ#SAJR‘5±dC¶¤V6r]m`Ët~Ěóü<C3B3>ťŚ´ÔHÁ覵Rv™ľÓX
|
||||
2H©ÉNk{Ţ8<C5A2>'ňL^Č+y#ď
|
||||
p”U%%%JAJ$żć?M
|
2
core/assets/baseparts/1603215415778.msch
Normal file
@ -0,0 +1,2 @@
|
||||
mschxœ-‹k
|
||||
1„ÇMÅîуôPÅ
²PÛÒ®èÕEdM¬?’o2“Á€cý<>1e_BðÏš‚/g®—²äuI08åôàâbšÙI~eŒõ.p«ú°RöÚÆù×wÙGÿO`<60>ÁÁîÑmȾadh{ÑN²Þ‚:õŒ‚Ä'Õ"IZ}ä°í²z}‰o)"
|
BIN
core/assets/baseparts/1603215454977.msch
Normal file
2
core/assets/baseparts/1603215491407.msch
Normal file
@ -0,0 +1,2 @@
|
||||
mschxœ5Ïኃ0à1µµmjï9äàÞ(h~ÔHŒÂ½ýeÁ<>ufCÄn
|
||||
Õj‡Ç¶ÍÅÝÎgøA7¹}Œ~K>¬@
}ÚcNè“OvõÇ2Œa=ÝoˆÐ×Úc<C39A>ƒ<EFBFBD>\Dç“[†=qt0ÛêŽÅ&?Sôóà(Ð (p=òR¤$Ñ‚’ôJ T&ge¦Öù âªJ¬IM¡Ê´Ò*´ü~#÷”d÷|ÚEE4©I#t¹©„Fxpzpzʤ3% hù¹'³›/™4ol¸`¸`¸`¸ðæ›SÏfÏfÏfÏìÃæG¦?J
(,
|
BIN
core/assets/baseparts/1603215563717.msch
Normal file
BIN
core/assets/baseparts/1603215697527.msch
Normal file
BIN
core/assets/baseparts/1603215771822.msch
Normal file
1
core/assets/baseparts/1603215801163.msch
Normal file
@ -0,0 +1 @@
|
||||
mschxœ-Œ[ƒ D<>J¬JŸaQ¤’ÆÄMÓµ÷£½<C2A3>~<7E>¹g&—3—åíÓ1å°ÚdS²oôìò=-q[‚‡Ž[íL´ÞFÒÃq<C383>áå’ñav£ó.0[ñÀ
š”äŠSA/ÿ¤é‡†îû‘é<E28098>ciFÑ(ädPD~Ã+ï
|