Merge branch 'master' into master

This commit is contained in:
Vanguard
2020-01-24 06:33:32 +03:00
committed by GitHub
13 changed files with 222 additions and 52 deletions

View File

@@ -164,12 +164,6 @@
"code": 59414,
"src": "typicons"
},
{
"uid": "b90868gfogj970a1g0dnot6hm5r4uj55",
"css": "chat",
"code": 59415,
"src": "typicons"
},
{
"uid": "890649841b2c37d56ff90065872fecf3",
"css": "chart-bar",
@@ -182,12 +176,6 @@
"code": 59418,
"src": "typicons"
},
{
"uid": "bczb7qup4axmc490xmuuv8qdhcnbgeyf",
"css": "user",
"code": 59420,
"src": "typicons"
},
{
"uid": "4109c474ff99cad28fd5a2c38af2ec6f",
"css": "filter",
@@ -296,12 +284,6 @@
"code": 59439,
"src": "typicons"
},
{
"uid": "e45e9f27ce40ba9837cc984076d98067",
"css": "zoom",
"code": 59441,
"src": "elusive"
},
{
"uid": "0e26e70b4aa537cc206f41b21dcf2fcc",
"css": "lock",
@@ -903,6 +885,40 @@
"search": [
"command-retreat"
]
},
{
"uid": "1bc31b80669cb5edc2ee5d1370554bc9",
"css": "players",
"code": 59483,
"src": "custom_icons",
"selected": true,
"svg": {
"path": "M370.1 55.1Q401.6 23.6 448.8 7.9 496.1-7.9 543.3 7.9 590.6 23.6 622 55.1 653.5 86.6 685 118.1 716.5 149.6 732.3 196.9 748 244.1 732.3 291.3 716.5 338.6 685 370.1 653.5 401.6 653.5 433.1 653.5 464.6 685 496.1 716.5 527.6 748 559.1 779.5 590.6 811 622 842.5 653.5 874 685 905.5 716.5 937 748 968.5 779.5 984.3 826.8 1000 874 984.3 921.3 968.5 968.5 921.3 984.3 874 1000 811 1000 748 1000 685 1000 622 1000 559.1 1000 496.1 1000 433.1 1000 370.1 1000 307.1 1000 244.1 1000 181.1 1000 118.1 1000 70.9 984.3 23.6 968.5 7.9 921.3-7.9 874 7.9 826.8 23.6 779.5 55.1 748 86.6 716.5 118.1 685 149.6 653.5 181.1 622 212.6 590.6 244.1 559.1 275.6 527.6 307.1 496.1 338.6 464.6 338.6 433.1 338.6 401.6 307.1 370.1 275.6 338.6 259.8 291.3 244.1 244.1 259.8 196.9 275.6 149.6 307.1 118.1 338.6 86.6 370.1 55.1",
"width": 992
},
"search": [
"players"
]
},
{
"uid": "2073dbd997e5d8e1ffc1322d13ba5585",
"css": "chat",
"code": 59484,
"src": "custom_icons",
"selected": true,
"svg": {
"path": "M129 64.5Q161.3 32.3 209.7 16.1 258.1 0 322.6 0 387.1 0 451.6 0 516.1 0 580.6 0 645.2 0 709.7 0 774.2 0 822.6 16.1 871 32.3 903.2 64.5 935.5 96.8 967.7 129 1000 161.3 1016.1 209.7 1032.3 258.1 1032.3 322.6 1032.3 387.1 1032.3 451.6 1032.3 516.1 1016.1 564.5 1000 612.9 967.7 645.2 935.5 677.4 903.2 709.7 871 741.9 822.6 758.1 774.2 774.2 709.7 774.2 645.2 774.2 580.6 774.2 516.1 774.2 451.6 774.2 387.1 774.2 338.7 790.3 290.3 806.5 274.2 854.8 258.1 903.2 241.9 951.6 225.8 1000 193.5 1000 161.3 1000 129 967.7 96.8 935.5 64.5 903.2 32.3 871 16.1 822.6 0 774.2 0 709.7 0 645.2 0 580.6 0 516.1 0 451.6 0 387.1 0 322.6 0 258.1 16.1 209.7 32.3 161.3 64.5 129 96.8 96.8 129 64.5",
"width": 1032
},
"search": [
"chat"
]
},
{
"uid": "9dd9e835aebe1060ba7190ad2b2ed951",
"css": "zoom",
"code": 59415,
"src": "fontawesome"
}
]
}

View File

@@ -0,0 +1,62 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.1"
id="svg2"
width="8"
height="7.75"
viewBox="0 0 8 7.75"
sodipodi:docname="chat.svg"
inkscape:version="0.92.4 (f8dce91, 2019-08-02)">
<metadata
id="metadata8">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<defs
id="defs6" />
<sodipodi:namedview
pagecolor="#000000"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="2560"
inkscape:window-height="1318"
id="namedview4"
showgrid="false"
inkscape:zoom="23.6"
inkscape:cx="-8.033898"
inkscape:cy="4.0042373"
inkscape:window-x="0"
inkscape:window-y="27"
inkscape:window-maximized="1"
inkscape:current-layer="g16" />
<g
id="g16"
transform="translate(-1,-1)">
<path
style="fill:#ffffff;fill-opacity:1"
d="M 2,1.5 Q 2.25,1.25 2.625,1.125 3,1 3.5,1 4,1 4.5,1 5,1 5.5,1 6,1 6.5,1 7,1 7.375,1.125 7.75,1.25 8,1.5 8.25,1.75 8.5,2 8.75,2.25 8.875,2.625 9,3 9,3.5 9,4 9,4.5 9,5 8.875,5.375 8.75,5.75 8.5,6 8.25,6.25 8,6.5 7.75,6.75 7.375,6.875 7,7 6.5,7 6,7 5.5,7 5,7 4.5,7 4,7 3.625,7.125 3.25,7.25 3.125,7.625 3,8 2.875,8.375 2.75,8.75 2.5,8.75 2.25,8.75 2,8.5 1.75,8.25 1.5,8 1.25,7.75 1.125,7.375 1,7 1,6.5 1,6 1,5.5 1,5 1,4.5 1,4 1,3.5 1,3 1.125,2.625 1.25,2.25 1.5,2 1.75,1.75 2,1.5"
id="path14"
inkscape:connector-curvature="0" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

@@ -0,0 +1,62 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.1"
id="svg2"
width="7.875"
height="7.9375"
viewBox="0 0 7.875 7.9375"
sodipodi:docname="players.svg"
inkscape:version="0.92.4 (f8dce91, 2019-08-02)">
<metadata
id="metadata8">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<defs
id="defs6" />
<sodipodi:namedview
pagecolor="#000000"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="2560"
inkscape:window-height="1318"
id="namedview4"
showgrid="false"
inkscape:zoom="23.6"
inkscape:cx="-14.960805"
inkscape:cy="3.4067797"
inkscape:window-x="0"
inkscape:window-y="27"
inkscape:window-maximized="1"
inkscape:current-layer="g16" />
<g
id="g16"
transform="translate(-1.0625,-1.0625)">
<path
style="fill:#ffffff;fill-opacity:1"
d="M 4,1.5 Q 4.25,1.25 4.625,1.125 5,1 5.375,1.125 5.75,1.25 6,1.5 6.25,1.75 6.5,2 6.75,2.25 6.875,2.625 7,3 6.875,3.375 6.75,3.75 6.5,4 6.25,4.25 6.25,4.5 6.25,4.75 6.5,5 6.75,5.25 7,5.5 7.25,5.75 7.5,6 7.75,6.25 8,6.5 8.25,6.75 8.5,7 8.75,7.25 8.875,7.625 9,8 8.875,8.375 8.75,8.75 8.375,8.875 8,9 7.5,9 7,9 6.5,9 6,9 5.5,9 5,9 4.5,9 4,9 3.5,9 3,9 2.5,9 2,9 1.625,8.875 1.25,8.75 1.125,8.375 1,8 1.125,7.625 1.25,7.25 1.5,7 1.75,6.75 2,6.5 2.25,6.25 2.5,6 2.75,5.75 3,5.5 3.25,5.25 3.5,5 3.75,4.75 3.75,4.5 3.75,4.25 3.5,4 3.25,3.75 3.125,3.375 3,3 3.125,2.625 3.25,2.25 3.5,2 3.75,1.75 4,1.5"
id="path14"
inkscape:connector-curvature="0" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.3 KiB

View File

@@ -141,14 +141,14 @@ players = {0} Spieler online
players.single = {0} Spieler online
server.closing = [accent]Schließe den Server ...
server.kicked.kick = Du wurdest vom Server gekickt!
server.kicked.whitelist = Du bist nicht auf der Whitelist.
server.kicked.whitelist = Du bist hier nicht auf der Whitelist.
server.kicked.serverClose = Server geschlossen.
server.kicked.vote = Es wurde abgestimmt, dich zu kicken. Tschüss.
server.kicked.clientOutdated = Veralteter Client! Aktualisiere dein Spiel!
server.kicked.serverOutdated = Veralteter Server! Bitte den Host um ein Update!
server.kicked.banned = Du wurdest vom Server verbannt.
server.kicked.typeMismatch = Der Server ist nicht mit deinem Versionstyp kompatibel.
server.kicked.playerLimit = Der Server ist voll.\nWarte für einen freien Platz.
server.kicked.playerLimit = Dieser Server ist voll. Warte auf einen freien Platz.
server.kicked.recentKick = Du wurdest gerade gekickt.\nWarte bevor du dich wieder verbindest.
server.kicked.nameInUse = Es ist bereits ein Spieler \nmit diesem Namen auf dem Server.
server.kicked.nameEmpty = Dein Name muss mindestens einen Buchstaben oder eine Zahl enthalten.
@@ -190,7 +190,7 @@ server.version = [lightgray]Version: {0}
server.custombuild = [yellow]Benutzerdefinierter Build
confirmban = Bist du sicher, dass du diesen Spieler verbannen möchtest?
confirmkick = Bist du sicher, dass du diesen Spieler kicken willst?
confirmvotekick = Willst du wirklich eine Abstimmung zum kicken des spielers machen?
confirmvotekick = Bist du sicher diesen Spieler mit einer Abstimmung rauszuwerfen?
confirmunban = Bist du sicher, dass du die Verbannung des Spielers rückgängig machen willst?
confirmadmin = Bist du sicher, dass du diesen Spieler zu einem Admin machen möchtest?
confirmunadmin = Bis du sicher, dass dieser Spieler kein Admin mehr sein soll?
@@ -199,9 +199,9 @@ joingame.ip = IP:
disconnect = Verbindung unterbrochen.
disconnect.error = Verbindungsfehler.
disconnect.closed = Verbindung geschlossen.
disconnect.timeout = Zu langer Verbindungsversuch.
disconnect.timeout = Zeit Überschreitung.
disconnect.data = Fehler beim Laden der Welt!
cantconnect = Unfähig, dem Spiel beizutreten ([accent]{0}[]).
cantconnect = Nicht möglich beizutreten ([accent]{0}[]).
connecting = [accent] Verbinde...
connecting.data = [accent] Welt wird geladen...
server.port = Port:
@@ -226,7 +226,7 @@ save.rename = Umbenennen
save.rename.text = Neuer Name
selectslot = Wähle einen Spielstand
slot = [accent] Platz {0}
editmessage = Edit Message
editmessage = Nachricht bearbeiten
save.corrupted = [accent] Datei beschädigt oder ungültig!
empty = <leer>
on = An
@@ -392,7 +392,7 @@ filters.empty = [LIGHT_GRAY]Keine Filter! Füge einen mit dem unteren Knopf hinz
filter.distort = Verzerren
filter.noise = Rauschen
filter.median = Mittelwert
filter.oremedian = Ore Median
filter.oremedian =Erz Median
filter.blend = Mischen
filter.defaultores = Standard Erze
filter.ore = Erz
@@ -569,11 +569,11 @@ bar.drillspeed = Bohrgeschwindigkeit: {0}/s
bar.pumpspeed = Pump Speed: {0}/s
bar.efficiency = Effizienz: {0}%
bar.powerbalance = Strom: {0}
bar.powerstored = Stored: {0}/{1}
bar.powerstored = Gespeichert: {0}/{1}
bar.poweramount = Strom: {0}
bar.poweroutput = Stromgeneration: {0}
bar.items = Items: {0}
bar.capacity = Capacity: {0}
bar.capacity = Kapazität: {0}
bar.liquid = Flüssigkeit
bar.heat = Hitze
bar.power = Strom
@@ -800,7 +800,7 @@ item.pyratite.name = Pyratit
item.metaglass.name = Metaglass
item.scrap.name = Schrott
liquid.water.name = Wasser
liquid.slag.name = Schlacke
liquid.slag.name = Lava
liquid.oil.name = Öl
liquid.cryofluid.name = Kryoflüssigkeit
mech.alpha-mech.name = Alpha
@@ -820,7 +820,7 @@ mech.dart-ship.weapon = Mehrlader
mech.javelin-ship.name = Javelin
mech.javelin-ship.weapon = Raketensalve
mech.javelin-ship.ability = Statische Entladung
mech.trident-ship.name = Trident
mech.trident-ship.name = Dreizack
mech.trident-ship.weapon = Bombenschacht
mech.glaive-ship.name = Glaive
mech.glaive-ship.weapon = Flammen-Mehrlader
@@ -924,9 +924,9 @@ block.thorium-wall.name = Thorium-Mauer
block.thorium-wall-large.name = Große Thorium-Mauer
block.door.name = Tor
block.door-large.name = Großes Tor
block.duo.name = Duo
block.scorch.name = Flammenwerfer
block.scatter.name = Scatter
block.duo.name = Doppelgeschütz
block.scorch.name = Scatter
block.scatter.name = Luftgeschütz
block.hail.name = Streuer
block.lancer.name = Lanzer
block.conveyor.name = Förderband
@@ -938,7 +938,7 @@ block.router.name = Verteiler
block.distributor.name = Großer Verteiler
block.sorter.name = Sortierer
block.inverted-sorter.name = Inverted Sorter
block.message.name = Message
block.message.name = Nachricht
block.illuminator.name = Illuminator
block.illuminator.description = A small, compact, configurable light source. Requires power to function.
block.overflow-gate.name = Überlauftor
@@ -969,7 +969,7 @@ block.cultivator.name = Kultivierer
block.dart-mech-pad.name = Dart Mech-Pad
block.delta-mech-pad.name = Delta Mech-Pad
block.javelin-ship-pad.name = Javelin Luftschiff-Pad
block.trident-ship-pad.name = Trident Luftschiff-Pad
block.trident-ship-pad.name = Dreizack Luftschiff-Pad
block.glaive-ship-pad.name = Glaive Luftschiff-Pad
block.omega-mech-pad.name = Omega Mech-Pad
block.tau-mech-pad.name = Tau Mech-Pad
@@ -986,7 +986,7 @@ block.vault.name = Tresor
block.wave.name = Welle
block.swarmer.name = Schwärmer
block.salvo.name = Salve
block.ripple.name = Riffel
block.ripple.name = Zerstörer
block.phase-conveyor.name = Phasen-Transportband
block.bridge-conveyor.name = Brücken-Transportband
block.plastanium-compressor.name = Plastanium-Verdichter
@@ -995,7 +995,7 @@ block.blast-mixer.name = Sprengmixer
block.solar-panel.name = Solarpanel
block.solar-panel-large.name = Großes Solarpanel
block.oil-extractor.name = Öl-Extraktor
block.command-center.name = Command Center
block.command-center.name = Kommandozentrum
block.draug-factory.name = Draug Miner-Drohnenfactory
block.spirit-factory.name = Spirit-Drohnenfabrik
block.phantom-factory.name = Phantom-Drohnenfabrik
@@ -1010,7 +1010,7 @@ block.repair-point.name = Reparaturpunkt
block.pulse-conduit.name = Impulskanal
block.plated-conduit.name = Plated Conduit
block.phase-conduit.name = Phasenkanal
block.liquid-router.name = Flüssigkeits-Router
block.liquid-router.name = Flüssigkeits-Verteiler
block.liquid-tank.name = Flüssigkeitstank
block.liquid-junction.name = Flüssigkeits-Kreuzung
block.bridge-conduit.name = Kanalbrücke
@@ -1120,7 +1120,7 @@ unit.eruptor.description = Ein schwerer Mech, der Strukturen abbaut. Feuert eine
unit.wraith.description = Eine schneller Abfangjäger.
unit.ghoul.description = Ein schwerer Flächenbomber.
unit.revenant.description = Eine schwere, schwebende Raketengruppe.
block.message.description = Stores a message. Used for communication between allies.
block.message.description = Benutzt um Nachrichten mit Verbündeten auszutauschen.
block.graphite-press.description = Komprimiert Kohlestücke zu reinen Graphitplatten.
block.multi-press.description = Eine aktualisierte Version der Graphitpresse. Setzt Wasser und Strom ein, um Kohle schnell und effizient zu verarbeiten.
block.silicon-smelter.description = Reduziert Sand mit hochreinem Kohlenstoff, um Silizium zu produzieren.
@@ -1236,7 +1236,7 @@ block.wraith-factory.description = Produziert schnelle Abfangjäger.
block.ghoul-factory.description = Produziert schwere Flächenbomber.
block.revenant-factory.description = Produziert schwere Raketen basierte Flugeinheiten.
block.dagger-factory.description = Produziert Standard-Bodeneinheiten.
block.crawler-factory.description = Produziert schnelle selbstzerstörende Schwarmeinheiten.
block.crawler-factory.description = Produziert schnelle, selbstzerstörende Schwarmeinheiten.
block.titan-factory.description = Produziert fortgeschrittene, gepanzerte Bodeneinheiten.
block.fortress-factory.description = Produziert schwere Artillerie-Bodeneinheiten.
block.repair-point.description = Heilt durchgehend die nächste befreundete, beschädigte Einheit in der Umgebung.

View File

@@ -1253,4 +1253,4 @@ block.tau-mech-pad.description = Обеспечивает превращение
block.omega-mech-pad.description = Обеспечивает превращение в тяжелобронированный ракетный мех.\nИспользуйте, нажав, стоя на нём.
block.javelin-ship-pad.description = Обеспечивает превращение в быстрый перехватчик в лёгкой броне.\nИспользуйте, нажав, стоя на нём.
block.trident-ship-pad.description = Обеспечивает превращение в тяжёлый бомбардировщик поддержки.\nИспользуйте, нажав, стоя на нём.
block.glaive-ship-pad.description = Обеспечивает превращение в большой, хорошо бронированный боевой корабль.\nИспользуйте, нажав, стоя на нём.
block.glaive-ship-pad.description = Обеспечивает превращение в большой, хорошо бронированный боевой корабль.\nИспользуйте, нажав, стоя на нём.

Binary file not shown.

Binary file not shown.

View File

@@ -398,12 +398,37 @@ public class Blocks implements ContentList{
//endregion
//region ore
oreCopper = new OreBlock(Items.copper);
oreLead = new OreBlock(Items.lead);
oreCopper = new OreBlock(Items.copper){{
oreDefault = true;
oreThreshold = 0.81f;
oreScale = 23.47619f;
}};
oreLead = new OreBlock(Items.lead){{
oreDefault = true;
oreThreshold = 0.828f;
oreScale = 23.952381f;
}};
oreScrap = new OreBlock(Items.scrap);
oreCoal = new OreBlock(Items.coal);
oreTitanium = new OreBlock(Items.titanium);
oreThorium = new OreBlock(Items.thorium);
oreCoal = new OreBlock(Items.coal){{
oreDefault = true;
oreThreshold = 0.846f;
oreScale = 24.428572f;
}};
oreTitanium = new OreBlock(Items.titanium){{
oreDefault = true;
oreThreshold = 0.864f;
oreScale = 24.904762f;
}};
oreThorium = new OreBlock(Items.thorium){{
oreDefault = true;
oreThreshold = 0.882f;
oreScale = 25.380953f;
}};
//endregion
//region crafting

View File

@@ -201,6 +201,8 @@ public class TechTree implements ContentList{
node(liquidRouter, () -> {
node(liquidTank);
node(bridgeConduit);
node(pulseConduit, () -> {
node(phaseConduit, () -> {
@@ -217,7 +219,6 @@ public class TechTree implements ContentList{
});
});
});
node(bridgeConduit);
});
});
});

View File

@@ -338,11 +338,11 @@ public class Maps{
}
public void addDefaultOres(Array<GenerateFilter> filters){
int index = 0;
for(Block block : new Block[]{Blocks.oreCopper, Blocks.oreLead, Blocks.oreCoal, Blocks.oreTitanium, Blocks.oreThorium}){
Array<Block> ores = content.blocks().select(b -> b.isOverlay() && b.asFloor().oreDefault);
for(Block block : ores){
OreFilter filter = new OreFilter();
filter.threshold += index ++ * 0.018f;
filter.scl += index/2.1f;
filter.threshold = block.asFloor().oreThreshold;
filter.scl = block.asFloor().oreScale;
filter.ore = block;
filters.add(filter);
}

View File

@@ -12,7 +12,7 @@ import org.mozilla.javascript.*;
public class Scripts implements Disposable{
private final Array<String> blacklist = Array.with("net", "files", "reflect", "javax", "rhino", "file", "channels", "jdk",
"runtime", "util.os", "rmi", "security", "org.", "sun.", "beans", "sql", "http", "exec", "compiler", "process", "system",
".awt", "socket", "mod.scripts", "classloader");
".awt", "socket", "mod.scripts", "classloader", "oracle");
private final Array<String> whitelist = Array.with("mindustry.net");
private final Context context;
private final String wrapper;

View File

@@ -75,7 +75,7 @@ public class HudFragment extends Fragment{
}
}).name("pause").update(i -> {
if(net.active()){
i.getStyle().imageUp = Icon.user;
i.getStyle().imageUp = Icon.players;
}else{
i.setDisabled(false);
i.getStyle().imageUp = state.is(State.paused) ? Icon.play : Icon.pause;

View File

@@ -52,6 +52,10 @@ public class Floor extends Block{
public Effect updateEffect = Fx.none;
/** Array of affinities to certain things. */
public Attributes attributes = new Attributes();
/** Whether this ore generates in maps by default. */
public boolean oreDefault = false;
/** Ore generation params. */
public float oreScale = 24f, oreThreshold = 0.828f;
protected TextureRegion[][] edges;
protected byte eq = 0;