Merge branch 'master' of https://github.com/Anuken/Mindustry into v105

This commit is contained in:
Petr Gašparík
2020-06-07 23:56:42 +02:00
262 changed files with 9460 additions and 7181 deletions

View File

@@ -2,7 +2,7 @@
name: Bug report
about: Create a report to help fix an issue.
title: ''
labels: ''
labels: bug
assignees: ''
---

8
.github/ISSUE_TEMPLATE/config.yml vendored Normal file
View File

@@ -0,0 +1,8 @@
blank_issues_enabled: false
contact_links:
- name: Feature request
url: https://github.com/Anuken/Mindustry-Suggestions/issues/new/choose
about: Do not make a new issue for feature requests! Instead, post it in suggestions repository.
- name: Question
url: https://discord.com/invite/mindustry
about: Questions about the game should be asked in the Discord, not in the issue tracker.

View File

@@ -1,11 +0,0 @@
---
name: Feature request
about: Do not make a new issue for feature requests! Instead, post in the suggestions
repository. See the README.
title: ''
labels: invalid
assignees: ''
---
**Do not make a new issue for feature requests!** Instead, post it in suggestions repository: https://github.com/Anuken/Mindustry-Suggestions/issues/new/choose

7
.gitignore vendored
View File

@@ -10,6 +10,7 @@ logs/
/desktop/mindustry-saves/
/desktop/mindustry-maps/
/desktop/gifexport/
/gifs/
/core/lib/
/ios/assets/
/core/assets-raw/sprites/generated/
@@ -28,7 +29,6 @@ core/assets/saves/
/core/assets/saves/
steam_appid.txt
/test_files/
/annotations/build/
/android/assets/mindustry-maps/
/android/assets/mindustry-saves/
/core/assets/gifexport/
@@ -40,12 +40,9 @@ steam_appid.txt
ios/robovm.properties
packr-out/
config/
changelog
*.gif
/core/assets/saves/
/out/
/core/assets-raw/fontgen/out/
/core/assets/basepartnames
version.properties
.attach_*

View File

@@ -4,7 +4,7 @@ dist: xenial
android:
components:
- android-29
- build-tools-29.0.2
- build-tools-29.0.3
script:
- git clone --depth=1 --branch=master https://github.com/Anuken/MindustryBuilds ../MindustryBuilds

View File

@@ -31,7 +31,7 @@ This means:
Import [this style file](.github/Mindustry-CodeStyle-IJ.xml) into IntelliJ to get correct formatting when developing Mindustry.
#### Do not use incompatible Java features (java.util.function, java.awt).
Android [does not support](https://developer.android.com/studio/write/java8-support#supported_features) many of Java 8's features, such as the packages `java.util.function`, `java.util.stream` or `forEach` in collections. Do not use these in your code.
Android and RoboVM (iOS) do not support many of Java 8's features, such as the packages `java.util.function`, `java.util.stream` or `forEach` in collections. Do not use these in your code.
If you need to use functional interfaces, use the ones in `arc.func`, which are more or less the same with different naming schemes.
The same applies to any class *outside* of the standard `java.[n]io` / `java.net` / `java.util` packages: Most of them are not supported.

View File

@@ -8,6 +8,8 @@ buildscript{
}
dependencies{
//IMPORTANT NOTICE: any version of the plugin after 3.4.1 will break builds for every API level < 24, perhaps even higher.
//it appears abstract methods don't get desugared properly (if at all)
classpath 'com.android.tools.build:gradle:3.4.1'
}
}

View File

@@ -1,6 +1,7 @@
package mindustry.android;
import android.*;
import android.annotation.*;
import android.app.*;
import android.content.*;
import android.content.pm.*;

View File

@@ -196,14 +196,14 @@ public class EntityProcess extends BaseProcessor{
//skip double classes
if(usedNames.containsKey(name)){
extraNames.getOr(usedNames.get(name), ObjectSet::new).add(type.name());
extraNames.get(usedNames.get(name), ObjectSet::new).add(type.name());
continue;
}
usedNames.put(name, type);
extraNames.getOr(type, ObjectSet::new).add(name);
extraNames.get(type, ObjectSet::new).add(name);
if(!type.isType()){
extraNames.getOr(type, ObjectSet::new).add(type.name());
extraNames.get(type, ObjectSet::new).add(type.name());
}
TypeSpec.Builder builder = TypeSpec.classBuilder(name).addModifiers(Modifier.PUBLIC);
@@ -222,6 +222,8 @@ public class EntityProcess extends BaseProcessor{
Array<Svar> syncedFields = new Array<>();
Array<Svar> allFields = new Array<>();
boolean isSync = components.contains(s -> s.name().contains("Sync"));
//add all components
for(Stype comp : components){
@@ -257,7 +259,7 @@ public class EntityProcess extends BaseProcessor{
allFields.add(f);
//add extra sync fields
if(f.has(SyncField.class)){
if(f.has(SyncField.class) && isSync){
if(!f.tname().toString().equals("float")) err("All SyncFields must be of type float", f);
syncedFields.add(f);
@@ -277,7 +279,7 @@ public class EntityProcess extends BaseProcessor{
//get all utility methods from components
for(Smethod elem : comp.methods()){
methods.getOr(elem.toString(), Array::new).add(elem);
methods.get(elem.toString(), Array::new).add(elem);
}
}
@@ -552,8 +554,8 @@ public class EntityProcess extends BaseProcessor{
idStore.addStatement("idMap[$L] = $L::new", def.classID, def.name);
extraNames.get(def.base).each(extra -> {
idStore.addStatement("nameMap.put($S, $L::new)", extra, def.name);
if(!camelToKebab(extra).equals(extra)){
idStore.addStatement("nameMap.put($S, $L::new)", camelToKebab(extra), def.name);
if(!Strings.camelToKebab(extra).equals(extra)){
idStore.addStatement("nameMap.put($S, $L::new)", Strings.camelToKebab(extra), def.name);
}
});
@@ -749,22 +751,6 @@ public class EntityProcess extends BaseProcessor{
return comps.toString("", s -> s.name().replace("Comp", "")) + "Entity";
}
static String camelToKebab(String s){
StringBuilder result = new StringBuilder(s.length() + 1);
for(int i = 0; i < s.length(); i++){
char c = s.charAt(i);
if(i > 0 && Character.isUpperCase(s.charAt(i))){
result.append('-');
}
result.append(Character.toLowerCase(c));
}
return result.toString();
}
boolean isComponent(Stype type){
return type.annotation(Component.class) != null;
}

View File

@@ -30,7 +30,7 @@ public class LoadRegionProcessor extends BaseProcessor{
err("@LoadRegion field must be public", field);
}
fieldMap.getOr(field.enclosingType(), Array::new).add(field);
fieldMap.get(field.enclosingType(), Array::new).add(field);
}
for(Entry<Stype, Array<Svar>> entry : fieldMap){

View File

@@ -12,9 +12,11 @@ mindustry.entities.comp.PlayerComp=8
mindustry.entities.comp.PuddleComp=9
mindustry.entities.comp.TileComp=10
mindustry.type.Weather.WeatherComp=11
mindustry.world.blocks.storage.LaunchPad.LaunchPayloadComp=12
mindustry.world.blocks.campaign.CoreLauncher.LaunchCoreComp=20
mindustry.world.blocks.campaign.LaunchPad.LaunchPayloadComp=12
oculon=13
phantom=14
tau=19
titan=15
trident=18
vanguard=16

View File

@@ -0,0 +1 @@
{fields:[{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:mineTile,type:mindustry.world.Tile,size:-1},{name:requests,type:arc.struct.Queue<mindustry.entities.units.BuildRequest>,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.Array<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}]}

View File

@@ -0,0 +1 @@
{fields:[{name:lifetime,type:float,size:4},{name:team,type:mindustry.game.Team,size:-1},{name:time,type:float,size:4},{name:x,type:float,size:4},{name:y,type:float,size:4}]}

View File

@@ -0,0 +1 @@
{version:1,fields:[{name:block,type:mindustry.world.Block,size:-1},{name:lifetime,type:float,size:4},{name:team,type:mindustry.game.Team,size:-1},{name:time,type:float,size:4},{name:x,type:float,size:4},{name:y,type:float,size:4}]}

View File

@@ -0,0 +1 @@
{version:2,fields:[{name:block,type:mindustry.world.Block,size:-1},{name:lifetime,type:float,size:4},{name:time,type:float,size:4},{name:x,type:float,size:4},{name:y,type:float,size:4}]}

View File

@@ -0,0 +1 @@
{fields:[{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: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.Array<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}]}

View File

@@ -106,6 +106,7 @@ allprojects{
output += other.name.substring("bundle".length() + 1, other.name.lastIndexOf('.')) + "\n"
}
new File(project(':core').projectDir, 'assets/locales').text = output
new File(project(':core').projectDir, 'assets/basepartnames').text = new File(project(':core').projectDir, 'assets/baseparts/').list().join("\n")
}
writeVersion = {

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

Before

Width:  |  Height:  |  Size: 186 B

After

Width:  |  Height:  |  Size: 186 B

View File

Before

Width:  |  Height:  |  Size: 1.3 KiB

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 516 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 794 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 129 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1000 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 720 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 513 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 307 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 174 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 98 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 283 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 302 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 474 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 488 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 327 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 339 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 965 B

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 226 B

After

Width:  |  Height:  |  Size: 347 B

View File

Before

Width:  |  Height:  |  Size: 779 B

After

Width:  |  Height:  |  Size: 779 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 713 B

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 430 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 299 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 701 B

After

Width:  |  Height:  |  Size: 693 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 678 B

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 418 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 640 B

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 375 B

After

Width:  |  Height:  |  Size: 620 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 662 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 279 B

After

Width:  |  Height:  |  Size: 641 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 408 B

After

Width:  |  Height:  |  Size: 660 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 359 B

View File

Before

Width:  |  Height:  |  Size: 230 B

After

Width:  |  Height:  |  Size: 230 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 273 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 450 B

After

Width:  |  Height:  |  Size: 400 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.2 KiB

After

Width:  |  Height:  |  Size: 7.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 820 B

After

Width:  |  Height:  |  Size: 950 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 470 B

After

Width:  |  Height:  |  Size: 467 B

View File

@@ -0,0 +1,2 @@
mschxœ-ŒÑ
à E¯U»BÊ>ć}³aZÕ<E280B9>ýýv ¹9¹$Á„›‚Ù|&¨Çˆ{(ûNÕ}|J.ùú"èµ̱QvGé5}£ž}Á­5¦„y<E2809E>G«ñÙ[©˜BÙÞôe. <C3AA>SIÓPÂÆŠ¯™þÀaΙ

View File

@@ -0,0 +1,2 @@
mschxś%LŃ
Ă <*…AÇ>ħ}kC+ŘV˘˛ßźYIrwÜ%Á„É`<ĂÁ0o‡×rĺĚâż!%źlŚq+ľ\MĆ3źÜŽPăâW‰©§k,Uâ§ŐK0oňŢ÷}.ŔÜ<07>ąače”Fµµ€%ęĘuKAwB*ţ™˝?X=V"5ť~˙[ë

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,2 @@
mschxś%Ś]<0E> „GD4ńˇ>ôjĹŤ5A0@Űxů¶KÍţfgö<67><C3B6>i íŚ~ÉTs@KÉaÚŮ=(lŽĽ]Ňć=ú™JátbĚŃS˛ö\ />cÂtÄ7'âÂVô•qwqźźąl1Ř•'*â·Â»Íń™¸IAA52Z4
uQ˛I´şÚ%şú~ÄjęţZ <0B>zz]'fačˇ/†ľřúňU<C588>ú\ą,Ä

View File

@@ -0,0 +1,2 @@
mschŠA
!Û…À^rÈ7|”q‡]A•|?cº(hƒï©1üexœcéÍqÊ<71>Ÿ,í»Æ,ÒãÍ<C3A3>5MQ¼ç'õS<E28099>ZqÉ-@Àæ:L´Ëí"o—@ƒ4'

View File

@@ -0,0 +1,2 @@
mschxœE<C593><45>
ƒ0 „¯¦þÀ`{Ž>T¦A µ–*Œ½ûÀõg°@øÂå.<2E>Æ  =on)Õãv쎣 ìÅA¯lºMü,ý“ÏSâã&ÓÊÞNìÌ­s¸/ÃjO1!Êq` ûK¢ñû,&<26>[ÀÿR Œ¤(O€®»6 EÖ * ?»Ê».¡šëº>hRSÉ-êTQBTP5PýAÙù–Ø(¢

View File

@@ -0,0 +1 @@
mschxœ-Ïknƒ0à±<C3A0>]Ò$mZ”ªgàP!’Á/©·ï.S~ðY »;Æ ßÅ>>ãü ¸üŒÝ:Ä¥oÇÔ§„²ÍãÖýæ ~ŽiË(×1åøè&TýÒ

View File

@@ -0,0 +1 @@
mschx<>M־a0 אַLDB׀sp¨)ֵ<>ְF&‰סלˆ³sׁר£i³ץֻ+NP ₪ׁAך¾ןsה£6rhnvװ®<D7B0>µ¡±ויJPg½,ה88<38>ץְ<D7A5>v0 צ³½“k<E2809C>םשD¦c

View File

@@ -0,0 +1,2 @@
mschxœ%ŒA
Ã0 'VKÝB ~ˆeãKjçÐÇ—J HbwV,<2C>0p«é<C2AB>y”´/%ARŸymí“{¬mÉ„½­©Ç-Õ¼FU%O]<n@ðÞq‡ãâzez°Tµ¦\¹˜Í_er¾Mö6ZÉÏ™¬ûÐâe

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1 @@
mschxœ%ŠQƒ0 C]RÐÄ>v>9Ê"µˆ¶S(HÜ~)X±_dƒƒÏKŒa•YëD­Ý¹(¼¸äS®¢øü²§¯ÆmÃ;VIÓ^es-@

View File

@@ -0,0 +1,3 @@
mschxœ=Љnƒ0 `çpKK·Òco±>TшÄ!¨Ô·¯<C2B7>_*øc'Á´£C~
c¤Csˆ¹ÿLU;OÏøš35clû0¥6 <0C>.§a ×m3Õ]ZÖœþ¶Urê´Æñ±Ì[n#ýRy ^ ðŸ¸b1ñ ÒCp58<35>
ÎØßƒJ·³´2nd”;#g—ýÎs(p(pZàdÜôËË0

View File

@@ -0,0 +1 @@
mschxœ=Ž]ƒ „Gå§IoÑ7e”¨I•†jMo_—IÊ3;» nôÖ¯vžòyæi6°CÚ>ñ2î¯-k¿/C7æåùDXö¸vïtä!B<>GB“ à<>r*^ý÷5š¹RS´kJÌú3%rÉ6\b8Ìp‰á#…F”¾ Q‰,Z¶[F¬˜G‰8iÐ UC´„eÍÉ?<U<>vÏažÃ¼˜?·ì1

View File

@@ -0,0 +1,2 @@
mschxś%ŚA<0E>0 7lh
ŠD6%Eüľ öÁcÉŁ<C389>ĹĂŔĆ%žŰëüČvZp- <09>Kń'WĘý!aţ¦ť`zG)a9Ľ×ě÷Ŕ„{hę2ŠNA…Uô`WÓ7ŹőŞVC}7ő.P Ôµ@-°ţµf

Binary file not shown.

Binary file not shown.

View File

@@ -14,9 +14,8 @@ uniform float OriginalIntensity;
varying MED vec2 v_texCoords;
void main(){
vec3 original = texture2D(u_texture0, v_texCoords).rgb;
vec3 bloom = texture2D(u_texture1, v_texCoords).rgb * BloomIntensity;
original = OriginalIntensity * (original - original * bloom);
gl_FragColor.rgb = original + bloom;
vec4 original = texture2D(u_texture0, v_texCoords) * OriginalIntensity;
vec4 bloom = texture2D(u_texture1, v_texCoords) * BloomIntensity;
original = original * (vec4(1.0) - bloom);
gl_FragColor = original + bloom;
}

View File

@@ -496,7 +496,6 @@ error.bloom = Failed to initialize bloom.\nYour device may not support it.
#NOTE TO TRANSLATORS: don't bother editing these, they'll be removed and/or rewritten anyway
sector.groundZero.name = Ground Zero
sector.desertWastes.name = Desert Wastes
sector.craters.name = The Craters
sector.frozenForest.name = Frozen Forest
sector.ruinousShores.name = Ruinous Shores
@@ -514,7 +513,6 @@ sector.fungalPass.name = Fungal Pass
sector.groundZero.description = The optimal location to begin once more. Low enemy threat. Few resources.\nGather as much lead and copper as possible.\nMove on.
sector.frozenForest.description = Even here, closer to mountains, the spores have spread. The frigid temperatures cannot contain them forever.\n\nBegin the venture into power. Build combustion generators. Learn to use menders.
sector.desertWastes.description = These wastes are vast, unpredictable, and criss-crossed with derelict sector structures.\nCoal is present in the region. Burn it for power, or synthesize graphite.\n\n[lightgray]This landing location cannot be guaranteed.
sector.saltFlats.description = On the outskirts of the desert lie the Salt Flats. Few resources can be found in this location.\n\nThe enemy has erected a resource storage complex here. Eradicate their core. Leave nothing standing.
sector.craters.description = Water has accumulated in this crater, relic of the old wars. Reclaim the area. Collect sand. Smelt metaglass. Pump water to cool turrets and drills.
sector.ruinousShores.description = Past the wastes, is the shoreline. Once, this location housed a coastal defense array. Not much of it remains. Only the most basic defense structures have remained unscathed, everything else reduced to scrap.\nContinue the expansion outwards. Rediscover the technology.
@@ -540,6 +538,7 @@ settings.clearall.confirm = [scarlet]WARNING![]\nThis will clear all data, inclu
paused = [accent]< Paused >
clear = Clear
banned = [scarlet]Banned
unplaceable.sectorcaptured = [scarlet]Requires captured sector
yes = Yes
no = No
info.title = Info
@@ -785,8 +784,6 @@ rules.unitdrops = Unit Drops
rules.unitbuildspeedmultiplier = Unit Production Speed Multiplier
rules.unithealthmultiplier = Unit Health Multiplier
rules.blockhealthmultiplier = Block Health Multiplier
rules.playerhealthmultiplier = Player Health Multiplier
rules.playerdamagemultiplier = Player Damage Multiplier
rules.unitdamagemultiplier = Unit Damage Multiplier
rules.enemycorebuildradius = Enemy Core No-Build Radius:[lightgray] (tiles)
rules.wavespacing = Wave Spacing:[lightgray] (sec)
@@ -796,12 +793,11 @@ rules.deconstructrefundmultiplier = Deconstruct Refund Multiplier
rules.waitForWaveToEnd = Waves Wait for Enemies
rules.dropzoneradius = Drop Zone Radius:[lightgray] (tiles)
rules.title.waves = Waves
rules.title.respawns = Respawns
rules.title.resourcesbuilding = Resources & Building
rules.title.player = Players
rules.title.enemy = Enemies
rules.title.unit = Units
rules.title.experimental = Experimental
rules.title.environment = Environment
rules.lighting = Lighting
rules.ambientlight = Ambient Light
rules.solarpowermultiplier = Solar Power Multiplier

View File

@@ -88,3 +88,4 @@ Alicila
Daniel Dusek
DeltaNedas
GioIacca9
SnakkiZXZ

View File

@@ -235,3 +235,10 @@
63509=basic-reconstructor|block-basic-reconstructor-medium
63508=block-loader|block-block-loader-medium
63507=block-unloader|block-block-unloader-medium
63506=core-silo|block-core-silo-medium
63505=data-processor|block-data-processor-medium
63504=payload-router|block-payload-router-medium
63503=silicon-crucible|block-silicon-crucible-medium
63502=segment|block-segment-medium
63501=large-overdrive-projector|block-large-overdrive-projector-medium
63500=disassembler|block-disassembler-medium

Binary file not shown.

View File

@@ -24,70 +24,72 @@ const extend = function(classType, params){
const newEffect = (lifetime, renderer) => new Effects.Effect(lifetime, new Effects.EffectRenderer({render: renderer}))
Call = Packages.mindustry.gen.Call
importPackage(Packages.mindustry.game)
importPackage(Packages.arc.func)
importPackage(Packages.mindustry.entities)
importPackage(Packages.mindustry.graphics.g3d)
importPackage(Packages.mindustry.ctype)
importPackage(Packages.mindustry.gen)
importPackage(Packages.mindustry.core)
importPackage(Packages.mindustry.world.blocks.storage)
importPackage(Packages.mindustry.ui.dialogs)
importPackage(Packages.arc.scene.ui)
importPackage(Packages.mindustry.world.blocks.defense.turrets)
importPackage(Packages.mindustry.world.blocks.distribution)
importPackage(Packages.mindustry.ui)
importPackage(Packages.mindustry.content)
importPackage(Packages.mindustry.world.blocks.liquid)
importPackage(Packages.arc.struct)
importPackage(Packages.arc.scene.ui.layout)
importPackage(Packages.mindustry.world.modules)
importPackage(Packages.arc.util)
importPackage(Packages.arc.graphics)
importPackage(Packages.mindustry.entities.def)
importPackage(Packages.mindustry.maps.generators)
importPackage(Packages.arc.scene.actions)
importPackage(Packages.mindustry.graphics)
importPackage(Packages.mindustry.entities.bullet)
importPackage(Packages.mindustry.world.blocks.legacy)
importPackage(Packages.mindustry.world.blocks.experimental)
importPackage(Packages.mindustry.editor)
importPackage(Packages.mindustry.type)
importPackage(Packages.arc.scene.ui)
importPackage(Packages.arc.math.geom)
importPackage(Packages.mindustry.game)
importPackage(Packages.mindustry.maps.filters)
importPackage(Packages.arc.struct)
importPackage(Packages.arc.scene.style)
importPackage(Packages.mindustry.ui.dialogs)
importPackage(Packages.mindustry.entities.comp)
importPackage(Packages.mindustry.world.blocks.defense.turrets)
importPackage(Packages.mindustry.async)
importPackage(Packages.mindustry.world.blocks.distribution)
importPackage(Packages.mindustry.world.blocks.environment)
importPackage(Packages.mindustry.world.blocks.campaign)
importPackage(Packages.mindustry.world.blocks.liquid)
importPackage(Packages.mindustry.ui)
importPackage(Packages.mindustry.world.blocks.production)
importPackage(Packages.mindustry.ai)
importPackage(Packages.mindustry.world.blocks.defense)
importPackage(Packages.mindustry.world.meta)
importPackage(Packages.mindustry.world.blocks.legacy)
importPackage(Packages.mindustry.world.blocks.units)
importPackage(Packages.arc.graphics)
importPackage(Packages.arc.func)
importPackage(Packages.mindustry.content)
importPackage(Packages.mindustry.world.blocks.power)
importPackage(Packages.mindustry.ui.layout)
importPackage(Packages.mindustry.world.blocks)
importPackage(Packages.arc.scene.event)
importPackage(Packages.mindustry.logic)
importPackage(Packages.arc.math)
importPackage(Packages.mindustry.world)
importPackage(Packages.mindustry.maps)
importPackage(Packages.mindustry.maps.generators)
importPackage(Packages.mindustry.world.meta.values)
importPackage(Packages.mindustry.entities)
importPackage(Packages.arc.util)
importPackage(Packages.mindustry.graphics)
importPackage(Packages.mindustry.world.modules)
importPackage(Packages.mindustry.world.blocks.sandbox)
importPackage(Packages.mindustry.input)
importPackage(Packages.mindustry.world.consumers)
importPackage(Packages.mindustry.ui.fragments)
importPackage(Packages.mindustry.ai.formations)
importPackage(Packages.mindustry.type)
importPackage(Packages.mindustry.world.blocks.production)
importPackage(Packages.arc.scene.event)
importPackage(Packages.arc.math)
importPackage(Packages.arc.scene.utils)
importPackage(Packages.mindustry.world.blocks.defense)
importPackage(Packages.mindustry.graphics.g3d)
importPackage(Packages.mindustry.world.meta)
importPackage(Packages.mindustry.world.blocks.payloads)
importPackage(Packages.mindustry.world)
importPackage(Packages.mindustry.async)
importPackage(Packages.arc.scene.style)
importPackage(Packages.mindustry.world.blocks)
importPackage(Packages.arc.math.geom)
importPackage(Packages.mindustry.ai)
importPackage(Packages.mindustry.maps.filters)
importPackage(Packages.arc.graphics.g2d)
importPackage(Packages.mindustry.ai.formations.patterns)
importPackage(Packages.mindustry.world.blocks.environment)
importPackage(Packages.mindustry)
importPackage(Packages.mindustry.entities.units)
importPackage(Packages.mindustry.ctype)
importPackage(Packages.arc.scene.ui.layout)
importPackage(Packages.mindustry.ai.types)
importPackage(Packages.mindustry.maps)
importPackage(Packages.mindustry.world.meta.values)
importPackage(Packages.mindustry.world.producers)
importPackage(Packages.mindustry.world.blocks.units)
importPackage(Packages.mindustry.ai.formations.patterns)
importPackage(Packages.arc.scene.utils)
importPackage(Packages.mindustry.ai.formations)
importPackage(Packages.mindustry.ui.fragments)
importPackage(Packages.mindustry.world.blocks.experimental)
importPackage(Packages.mindustry.world.blocks.storage)
importPackage(Packages.mindustry.audio)
importPackage(Packages.mindustry.ui.layout)
importPackage(Packages.mindustry.entities.bullet)
importPackage(Packages.mindustry.world.consumers)
importPackage(Packages.mindustry.core)
importPackage(Packages.arc.scene)
importPackage(Packages.mindustry.maps.planet)
importPackage(Packages.mindustry)
importPackage(Packages.arc)
importPackage(Packages.mindustry.world.blocks.logic)
importPackage(Packages.mindustry.world.blocks.payloads)
importPackage(Packages.mindustry.world.producers)
importPackage(Packages.arc.graphics.g2d)
importPackage(Packages.mindustry.maps.planet)
const PlayerIpUnbanEvent = Packages.mindustry.game.EventType.PlayerIpUnbanEvent
const PlayerIpBanEvent = Packages.mindustry.game.EventType.PlayerIpBanEvent
const PlayerUnbanEvent = Packages.mindustry.game.EventType.PlayerUnbanEvent
@@ -95,8 +97,7 @@ const PlayerBanEvent = Packages.mindustry.game.EventType.PlayerBanEvent
const PlayerLeave = Packages.mindustry.game.EventType.PlayerLeave
const PlayerConnect = Packages.mindustry.game.EventType.PlayerConnect
const PlayerJoin = Packages.mindustry.game.EventType.PlayerJoin
const MechChangeEvent = Packages.mindustry.game.EventType.MechChangeEvent
const ResizeEvent = Packages.mindustry.game.EventType.ResizeEvent
const UnitChangeEvent = Packages.mindustry.game.EventType.UnitChangeEvent
const UnitCreateEvent = Packages.mindustry.game.EventType.UnitCreateEvent
const UnitDestroyEvent = Packages.mindustry.game.EventType.UnitDestroyEvent
const BlockDestroyEvent = Packages.mindustry.game.EventType.BlockDestroyEvent
@@ -107,12 +108,19 @@ const ResearchEvent = Packages.mindustry.game.EventType.ResearchEvent
const UnlockEvent = Packages.mindustry.game.EventType.UnlockEvent
const StateChangeEvent = Packages.mindustry.game.EventType.StateChangeEvent
const TileChangeEvent = Packages.mindustry.game.EventType.TileChangeEvent
const WorldLoadEvent = Packages.mindustry.game.EventType.WorldLoadEvent
const GameOverEvent = Packages.mindustry.game.EventType.GameOverEvent
const TapConfigEvent = Packages.mindustry.game.EventType.TapConfigEvent
const TapEvent = Packages.mindustry.game.EventType.TapEvent
const DepositEvent = Packages.mindustry.game.EventType.DepositEvent
const WithdrawEvent = Packages.mindustry.game.EventType.WithdrawEvent
const SectorCaptureEvent = Packages.mindustry.game.EventType.SectorCaptureEvent
const ZoneConfigureCompleteEvent = Packages.mindustry.game.EventType.ZoneConfigureCompleteEvent
const ZoneRequireCompleteEvent = Packages.mindustry.game.EventType.ZoneRequireCompleteEvent
const PlayerChatEvent = Packages.mindustry.game.EventType.PlayerChatEvent
const CommandIssueEvent = Packages.mindustry.game.EventType.CommandIssueEvent
const LaunchItemEvent = Packages.mindustry.game.EventType.LaunchItemEvent
const WorldLoadEvent = Packages.mindustry.game.EventType.WorldLoadEvent
const ClientLoadEvent = Packages.mindustry.game.EventType.ClientLoadEvent
const BlockInfoEvent = Packages.mindustry.game.EventType.BlockInfoEvent
const CoreItemDeliverEvent = Packages.mindustry.game.EventType.CoreItemDeliverEvent
const TurretAmmoDeliverEvent = Packages.mindustry.game.EventType.TurretAmmoDeliverEvent
@@ -123,17 +131,13 @@ const PlayEvent = Packages.mindustry.game.EventType.PlayEvent
const DisposeEvent = Packages.mindustry.game.EventType.DisposeEvent
const ContentReloadEvent = Packages.mindustry.game.EventType.ContentReloadEvent
const ServerLoadEvent = Packages.mindustry.game.EventType.ServerLoadEvent
const ClientLoadEvent = Packages.mindustry.game.EventType.ClientLoadEvent
const ClientCreateEvent = Packages.mindustry.game.EventType.ClientCreateEvent
const SaveLoadEvent = Packages.mindustry.game.EventType.SaveLoadEvent
const ZoneConfigureCompleteEvent = Packages.mindustry.game.EventType.ZoneConfigureCompleteEvent
const ZoneRequireCompleteEvent = Packages.mindustry.game.EventType.ZoneRequireCompleteEvent
const PlayerChatEvent = Packages.mindustry.game.EventType.PlayerChatEvent
const CommandIssueEvent = Packages.mindustry.game.EventType.CommandIssueEvent
const MapPublishEvent = Packages.mindustry.game.EventType.MapPublishEvent
const MapMakeEvent = Packages.mindustry.game.EventType.MapMakeEvent
const LaunchItemEvent = Packages.mindustry.game.EventType.LaunchItemEvent
const ResizeEvent = Packages.mindustry.game.EventType.ResizeEvent
const LaunchEvent = Packages.mindustry.game.EventType.LaunchEvent
const LoseEvent = Packages.mindustry.game.EventType.LoseEvent
const WinEvent = Packages.mindustry.game.EventType.WinEvent
const TurnEvent = Packages.mindustry.game.EventType.TurnEvent
const Trigger = Packages.mindustry.game.EventType.Trigger

Binary file not shown.

Before

Width:  |  Height:  |  Size: 724 B

After

Width:  |  Height:  |  Size: 761 B

File diff suppressed because it is too large Load Diff

Some files were not shown because too many files have changed in this diff Show More