Compare commits
127 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
34b22f292c | ||
|
|
11ad5a0373 | ||
|
|
f4fabecce7 | ||
|
|
60fc2fb5cd | ||
|
|
04eba618d2 | ||
|
|
ac7b694e91 | ||
|
|
4fcb338d94 | ||
|
|
6dc3b7e729 | ||
|
|
cdb9fa0d7d | ||
|
|
2b11e1fb1e | ||
|
|
697c6a927a | ||
|
|
72b456fca2 | ||
|
|
f67e2c71e7 | ||
|
|
bee977cadc | ||
|
|
183ebb33b7 | ||
|
|
f6665de2e6 | ||
|
|
97390d25c0 | ||
|
|
3f1d957e28 | ||
|
|
e62a5888ef | ||
|
|
6d71bcd2eb | ||
|
|
2075a226e1 | ||
|
|
f55363a932 | ||
|
|
76f151789a | ||
|
|
1413b479ef | ||
|
|
b322b1165f | ||
|
|
fa02d8d280 | ||
|
|
251e10b000 | ||
|
|
6630f88613 | ||
|
|
c5c65d4475 | ||
|
|
c267743874 | ||
|
|
45ce8c8dec | ||
|
|
25c65e80cd | ||
|
|
e51ab514a8 | ||
|
|
21d64157a0 | ||
|
|
fff8f567d0 | ||
|
|
1e2e0a48a1 | ||
|
|
affa30730a | ||
|
|
b326bdf0e8 | ||
|
|
cc3694ce4a | ||
|
|
3048e38bff | ||
|
|
b88a215dc5 | ||
|
|
36e5522694 | ||
|
|
226e8b8a20 | ||
|
|
43424547f2 | ||
|
|
d2f2189441 | ||
|
|
e81cd5b68e | ||
|
|
c30cbc0f20 | ||
|
|
e79a97ed92 | ||
|
|
ac19c3f160 | ||
|
|
375837eef5 | ||
|
|
c59d3d5279 | ||
|
|
d1c506330b | ||
|
|
b81e942479 | ||
|
|
e36a70749c | ||
|
|
4db085bd07 | ||
|
|
cd7088d241 | ||
|
|
821569aafb | ||
|
|
83a059b2da | ||
|
|
0de2c95f6e | ||
|
|
fcb44e4952 | ||
|
|
af26e60a4f | ||
|
|
6b936aa7f6 | ||
|
|
f6a8c7509d | ||
|
|
deb814ce58 | ||
|
|
da4371baf8 | ||
|
|
47a2afd294 | ||
|
|
0122b735a0 | ||
|
|
9c3ddc398c | ||
|
|
0ccbe68a65 | ||
|
|
30cd6a7de6 | ||
|
|
23a2596e29 | ||
|
|
b88422b17e | ||
|
|
09a9b68331 | ||
|
|
08f63122ba | ||
|
|
355f33b0a4 | ||
|
|
90f7bbae65 | ||
|
|
4be7cf5c0e | ||
|
|
58eef49284 | ||
|
|
b030a51485 | ||
|
|
aec3e178f5 | ||
|
|
ee47d8a20a | ||
|
|
5c05c9f1d1 | ||
|
|
172f47cad6 | ||
|
|
a8b3350d61 | ||
|
|
b324194295 | ||
|
|
663fa2bd3f | ||
|
|
4ddb78e8d5 | ||
|
|
f23d203095 | ||
|
|
dfce361afc | ||
|
|
2553891c25 | ||
|
|
e4bef567b5 | ||
|
|
0daafc5ff3 | ||
|
|
d07706e039 | ||
|
|
ca2b51d4fe | ||
|
|
bae3884d96 | ||
|
|
515a6f9c8d | ||
|
|
d937af7497 | ||
|
|
a216c9c56e | ||
|
|
0e9f250e93 | ||
|
|
10e0be9d68 | ||
|
|
29d4246019 | ||
|
|
65c5d206a8 | ||
|
|
3a73a97746 | ||
|
|
a3f8ca9ca5 | ||
|
|
a046f0f11b | ||
|
|
2cc486febc | ||
|
|
3c9b3680bc | ||
|
|
0a1957eb13 | ||
|
|
75e1e6f166 | ||
|
|
327a8fc61b | ||
|
|
a857eaed74 | ||
|
|
028c189dc8 | ||
|
|
11f8e06708 | ||
|
|
0760923943 | ||
|
|
219084fe3c | ||
|
|
4f314afe21 | ||
|
|
6750cfead8 | ||
|
|
b569646310 | ||
|
|
cc207d3d7c | ||
|
|
e234ac43a6 | ||
|
|
2388091ed6 | ||
|
|
a38351d41f | ||
|
|
4d8de72a8e | ||
|
|
ab2138d8e7 | ||
|
|
46c75af9e4 | ||
|
|
8eb3c16c50 | ||
|
|
39e88ae614 |
2
.github/workflows/push.yml
vendored
@@ -40,6 +40,8 @@ jobs:
|
|||||||
- name: Update JITpack repo
|
- name: Update JITpack repo
|
||||||
if: ${{ github.repository == 'Anuken/Mindustry' }}
|
if: ${{ github.repository == 'Anuken/Mindustry' }}
|
||||||
run: |
|
run: |
|
||||||
|
git config --global user.name "Github Actions"
|
||||||
|
git config --global user.email "cli@github.com"
|
||||||
cd ../
|
cd ../
|
||||||
cp -r ./Mindustry ./MindustryJitpack
|
cp -r ./Mindustry ./MindustryJitpack
|
||||||
cd MindustryJitpack
|
cd MindustryJitpack
|
||||||
|
|||||||
@@ -25,6 +25,6 @@ For example, if your server address is `example.com:6000`, you would add a comma
|
|||||||
"address": "example.com:6000"
|
"address": "example.com:6000"
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
> Note that Mindustry also support SRV records. This allows you to use a subdomain for your server address instead of specifying the port. For example, if you want to use `play.example.com` instead of `example.com:6000`, in the dns settings of your domain, add an SRV record with `_mindustry` as the service, `tcp` as the protocol, `play` as the target and `6000` as the port. You can also setup fallback servers by modifing the weight or priority of the record.
|
> Note that Mindustry also support SRV records. This allows you to use a subdomain for your server address instead of specifying the port. For example, if you want to use `play.example.com` instead of `example.com:6000`, in the dns settings of your domain, add an SRV record with `_mindustry` as the service, `tcp` as the protocol, `play` as the target and `6000` as the port. You can also setup fallback servers by modifying the weight or priority of the record. Although SRV records are very convenient, keep in mind they are slower than regular addresses. Avoid using them in the server list, but rather as an easy way to share your server address.
|
||||||
|
|
||||||
Then, press the *'submit pull request'* button and I'll take a look at your server. If I have any issues with it, I'll let you know in the PR comments.
|
Then, press the *'submit pull request'* button and I'll take a look at your server. If I have any issues with it, I'll let you know in the PR comments.
|
||||||
|
|||||||
@@ -1,18 +1,17 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
<svg
|
<svg
|
||||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||||
xmlns:cc="http://creativecommons.org/ns#"
|
xmlns:cc="http://creativecommons.org/ns#"
|
||||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-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="http://www.w3.org/2000/svg"
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
width="12"
|
||||||
width="12"
|
height="12"
|
||||||
height="12"
|
version="1.1"
|
||||||
version="1.1"
|
id="svg380"
|
||||||
id="svg380"
|
sodipodi:docname="admin.svg"
|
||||||
sodipodi:docname="admin.svg"
|
inkscape:version="1.0.1 (0767f8302a, 2020-10-17)">
|
||||||
inkscape:version="1.0.1 (0767f8302a, 2020-10-17)">
|
|
||||||
<metadata
|
<metadata
|
||||||
id="metadata386">
|
id="metadata386">
|
||||||
<rdf:RDF>
|
<rdf:RDF>
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 1.9 KiB After Width: | Height: | Size: 2.0 KiB |
@@ -1,18 +1,17 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
<svg
|
<svg
|
||||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||||
xmlns:cc="http://creativecommons.org/ns#"
|
xmlns:cc="http://creativecommons.org/ns#"
|
||||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-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="http://www.w3.org/2000/svg"
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
width="10"
|
||||||
width="10"
|
height="10"
|
||||||
height="10"
|
version="1.1"
|
||||||
version="1.1"
|
id="svg192"
|
||||||
id="svg192"
|
sodipodi:docname="distribution.svg"
|
||||||
sodipodi:docname="distribution.svg"
|
inkscape:version="1.0.1 (0767f8302a, 2020-10-17)">
|
||||||
inkscape:version="1.0.1 (0767f8302a, 2020-10-17)">
|
|
||||||
<metadata
|
<metadata
|
||||||
id="metadata198">
|
id="metadata198">
|
||||||
<rdf:RDF>
|
<rdf:RDF>
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 1.9 KiB After Width: | Height: | Size: 1.9 KiB |
@@ -1,18 +1,17 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
<svg
|
<svg
|
||||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||||
xmlns:cc="http://creativecommons.org/ns#"
|
xmlns:cc="http://creativecommons.org/ns#"
|
||||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-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="http://www.w3.org/2000/svg"
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
width="10"
|
||||||
width="10"
|
height="10"
|
||||||
height="10"
|
version="1.1"
|
||||||
version="1.1"
|
id="svg252"
|
||||||
id="svg252"
|
sodipodi:docname="effect.svg"
|
||||||
sodipodi:docname="effect.svg"
|
inkscape:version="1.0.1 (0767f8302a, 2020-10-17)">
|
||||||
inkscape:version="1.0.1 (0767f8302a, 2020-10-17)">
|
|
||||||
<metadata
|
<metadata
|
||||||
id="metadata258">
|
id="metadata258">
|
||||||
<rdf:RDF>
|
<rdf:RDF>
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 1.9 KiB |
@@ -1,18 +1,17 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
<svg
|
<svg
|
||||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||||
xmlns:cc="http://creativecommons.org/ns#"
|
xmlns:cc="http://creativecommons.org/ns#"
|
||||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-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="http://www.w3.org/2000/svg"
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
width="10"
|
||||||
width="10"
|
height="13"
|
||||||
height="13"
|
version="1.1"
|
||||||
version="1.1"
|
id="svg310"
|
||||||
id="svg310"
|
sodipodi:docname="file-image.svg"
|
||||||
sodipodi:docname="file-image.svg"
|
inkscape:version="1.0.1 (0767f8302a, 2020-10-17)">
|
||||||
inkscape:version="1.0.1 (0767f8302a, 2020-10-17)">
|
|
||||||
<metadata
|
<metadata
|
||||||
id="metadata316">
|
id="metadata316">
|
||||||
<rdf:RDF>
|
<rdf:RDF>
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 2.1 KiB After Width: | Height: | Size: 2.1 KiB |
@@ -1,18 +1,17 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
<svg
|
<svg
|
||||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||||
xmlns:cc="http://creativecommons.org/ns#"
|
xmlns:cc="http://creativecommons.org/ns#"
|
||||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-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="http://www.w3.org/2000/svg"
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
width="12"
|
||||||
width="12"
|
height="12"
|
||||||
height="12"
|
version="1.1"
|
||||||
version="1.1"
|
id="svg300"
|
||||||
id="svg300"
|
sodipodi:docname="info.svg"
|
||||||
sodipodi:docname="info.svg"
|
inkscape:version="1.0.1 (0767f8302a, 2020-10-17)">
|
||||||
inkscape:version="1.0.1 (0767f8302a, 2020-10-17)">
|
|
||||||
<metadata
|
<metadata
|
||||||
id="metadata306">
|
id="metadata306">
|
||||||
<rdf:RDF>
|
<rdf:RDF>
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 1.8 KiB |
@@ -1,17 +1,16 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
<svg
|
<svg
|
||||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||||
xmlns:cc="http://creativecommons.org/ns#"
|
xmlns:cc="http://creativecommons.org/ns#"
|
||||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-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="http://www.w3.org/2000/svg"
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
sodipodi:docname="logic.svg"
|
||||||
sodipodi:docname="logic.svg"
|
inkscape:version="1.0 (9f2f71dc58, 2020-08-02)"
|
||||||
inkscape:version="1.0 (9f2f71dc58, 2020-08-02)"
|
id="svg8"
|
||||||
id="svg8"
|
version="1.1"
|
||||||
version="1.1"
|
viewBox="0 0 128 128">
|
||||||
viewBox="0 0 128 128">
|
|
||||||
<defs
|
<defs
|
||||||
id="defs2" />
|
id="defs2" />
|
||||||
<sodipodi:namedview
|
<sodipodi:namedview
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 2.0 KiB After Width: | Height: | Size: 2.0 KiB |
@@ -1,18 +1,17 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
<svg
|
<svg
|
||||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||||
xmlns:cc="http://creativecommons.org/ns#"
|
xmlns:cc="http://creativecommons.org/ns#"
|
||||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-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="http://www.w3.org/2000/svg"
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
width="16"
|
||||||
width="16"
|
height="16"
|
||||||
height="16"
|
version="1.1"
|
||||||
version="1.1"
|
id="svg542"
|
||||||
id="svg542"
|
sodipodi:docname="planet.svg"
|
||||||
sodipodi:docname="planet.svg"
|
inkscape:version="1.0.1 (0767f8302a, 2020-10-17)">
|
||||||
inkscape:version="1.0.1 (0767f8302a, 2020-10-17)">
|
|
||||||
<metadata
|
<metadata
|
||||||
id="metadata548">
|
id="metadata548">
|
||||||
<rdf:RDF>
|
<rdf:RDF>
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 2.7 KiB After Width: | Height: | Size: 2.8 KiB |
BIN
core/assets-raw/sprites/blocks/turrets/duo/duo-barrel-l.png
Normal file
|
After Width: | Height: | Size: 203 B |
BIN
core/assets-raw/sprites/blocks/turrets/duo/duo-barrel-r.png
Normal file
|
After Width: | Height: | Size: 209 B |
|
Before Width: | Height: | Size: 373 B After Width: | Height: | Size: 373 B |
BIN
core/assets-raw/sprites/blocks/turrets/duo/duo.png
Normal file
|
After Width: | Height: | Size: 367 B |
@@ -900,6 +900,7 @@ stat.repairspeed = Repair Speed
|
|||||||
stat.weapons = Weapons
|
stat.weapons = Weapons
|
||||||
stat.bullet = Bullet
|
stat.bullet = Bullet
|
||||||
stat.moduletier = Module Tier
|
stat.moduletier = Module Tier
|
||||||
|
stat.unittype = Unit Type
|
||||||
stat.speedincrease = Speed Increase
|
stat.speedincrease = Speed Increase
|
||||||
stat.range = Range
|
stat.range = Range
|
||||||
stat.drilltier = Drillables
|
stat.drilltier = Drillables
|
||||||
@@ -952,7 +953,7 @@ ability.unitspawn = {0} Factory
|
|||||||
ability.shieldregenfield = Shield Regen Field
|
ability.shieldregenfield = Shield Regen Field
|
||||||
ability.movelightning = Movement Lightning
|
ability.movelightning = Movement Lightning
|
||||||
ability.shieldarc = Shield Arc
|
ability.shieldarc = Shield Arc
|
||||||
ability.suppressionfield = Regen Suppression Field
|
ability.suppressionfield = Repair Suppression Field
|
||||||
ability.energyfield = Energy Field: [accent]{0}[] damage ~ [accent]{1}[] blocks / [accent]{2}[] targets
|
ability.energyfield = Energy Field: [accent]{0}[] damage ~ [accent]{1}[] blocks / [accent]{2}[] targets
|
||||||
|
|
||||||
bar.onlycoredeposit = Only Core Depositing Allowed
|
bar.onlycoredeposit = Only Core Depositing Allowed
|
||||||
@@ -989,10 +990,12 @@ bar.strength = [stat]{0}[lightgray]x strength
|
|||||||
units.processorcontrol = [lightgray]Processor Controlled
|
units.processorcontrol = [lightgray]Processor Controlled
|
||||||
|
|
||||||
bullet.damage = [stat]{0}[lightgray] damage
|
bullet.damage = [stat]{0}[lightgray] damage
|
||||||
bullet.splashdamage = [stat]{0}[lightgray] area dmg ~[stat] {1}[lightgray] tiles
|
bullet.splashdamage = [stat]{0}[lightgray] area dmg ~ [stat]{1}[lightgray] tiles
|
||||||
bullet.incendiary = [stat]incendiary
|
bullet.incendiary = [stat]incendiary
|
||||||
bullet.homing = [stat]homing
|
bullet.homing = [stat]homing
|
||||||
bullet.armorpierce = [stat]armor piercing
|
bullet.armorpierce = [stat]armor piercing
|
||||||
|
bullet.suppression = [stat]{0}[lightgray] seconds of repair suppression ~ [stat]{1}[lightgray] tiles
|
||||||
|
bullet.interval = [stat]{0}/sec[lightgray] interval bullets:
|
||||||
bullet.frags = [stat]{0}[lightgray]x frag bullets:
|
bullet.frags = [stat]{0}[lightgray]x frag bullets:
|
||||||
bullet.lightning = [stat]{0}[lightgray]x lightning ~ [stat]{1}[lightgray] damage
|
bullet.lightning = [stat]{0}[lightgray]x lightning ~ [stat]{1}[lightgray] damage
|
||||||
bullet.buildingdamage = [stat]{0}%[lightgray] building damage
|
bullet.buildingdamage = [stat]{0}%[lightgray] building damage
|
||||||
@@ -1106,8 +1109,8 @@ setting.bridgeopacity.name = Bridge Opacity
|
|||||||
setting.playerchat.name = Display Player Bubble Chat
|
setting.playerchat.name = Display Player Bubble Chat
|
||||||
setting.showweather.name = Show Weather Graphics
|
setting.showweather.name = Show Weather Graphics
|
||||||
setting.hidedisplays.name = Hide Logic Displays
|
setting.hidedisplays.name = Hide Logic Displays
|
||||||
public.confirm = Do you want to make your game public?\n[accent]Anyone will be able to join your games.\n[lightgray]This can be changed later in Settings->Game->Public Game Visibility.
|
steam.friendsonly = Friends Only
|
||||||
public.confirm.really = If you want to play with friends, use [green]Invite Friend[] instead of a [scarlet]Public server[]!\nAre you sure you want to make your game [scarlet]public[]?
|
steam.friendsonly.tooltip = Whether only Steam friends will be able to join your game.\nUnchecking this box will make your game public - anyone can join.
|
||||||
public.beta = Note that beta versions of the game cannot make public lobbies.
|
public.beta = Note that beta versions of the game cannot make public lobbies.
|
||||||
uiscale.reset = UI scale has been changed.\nPress "OK" to confirm this scale.\n[scarlet]Reverting and exiting in[accent] {0}[] seconds...
|
uiscale.reset = UI scale has been changed.\nPress "OK" to confirm this scale.\n[scarlet]Reverting and exiting in[accent] {0}[] seconds...
|
||||||
uiscale.cancel = Cancel & Exit
|
uiscale.cancel = Cancel & Exit
|
||||||
@@ -1159,8 +1162,8 @@ keybind.select.name = Select/Shoot
|
|||||||
keybind.diagonal_placement.name = Diagonal Placement
|
keybind.diagonal_placement.name = Diagonal Placement
|
||||||
keybind.pick.name = Pick Block
|
keybind.pick.name = Pick Block
|
||||||
keybind.break_block.name = Break Block
|
keybind.break_block.name = Break Block
|
||||||
keybind.select_all_units = Select All Units
|
keybind.select_all_units.name = Select All Units
|
||||||
keybind.select_all_unit_factories = Select All Unit Factories
|
keybind.select_all_unit_factories.name = Select All Unit Factories
|
||||||
keybind.deselect.name = Deselect
|
keybind.deselect.name = Deselect
|
||||||
keybind.pickupCargo.name = Pickup Cargo
|
keybind.pickupCargo.name = Pickup Cargo
|
||||||
keybind.dropCargo.name = Drop Cargo
|
keybind.dropCargo.name = Drop Cargo
|
||||||
@@ -1794,54 +1797,54 @@ hint.payloadDrop.mobile = [accent]Tap and hold[] an empty location to drop a pay
|
|||||||
hint.waveFire = [accent]Wave[] turrets with water as ammunition will automatically put out nearby fires.
|
hint.waveFire = [accent]Wave[] turrets with water as ammunition will automatically put out nearby fires.
|
||||||
hint.generator = \uF879 [accent]Combustion Generators[] burn coal and transmit power to adjacent blocks.\n\nPower transmission range can be extended with \uF87F [accent]Power Nodes[].
|
hint.generator = \uF879 [accent]Combustion Generators[] burn coal and transmit power to adjacent blocks.\n\nPower transmission range can be extended with \uF87F [accent]Power Nodes[].
|
||||||
hint.guardian = [accent]Guardian[] units are armored. Weak ammo such as [accent]Copper[] and [accent]Lead[] is [scarlet]not effective[].\n\nUse higher tier turrets or \uF835 [accent]Graphite[] \uF861Duo/\uF859Salvo ammunition to take Guardians down.
|
hint.guardian = [accent]Guardian[] units are armored. Weak ammo such as [accent]Copper[] and [accent]Lead[] is [scarlet]not effective[].\n\nUse higher tier turrets or \uF835 [accent]Graphite[] \uF861Duo/\uF859Salvo ammunition to take Guardians down.
|
||||||
hint.coreUpgrade = Cores can be upgraded by [accent]placing higher-tier cores over them[].\n\nPlace a \uf868 [accent]Foundation[] core over the \uf869 [accent]Shard[] core. Make sure it is free from nearby obstructions.
|
hint.coreUpgrade = Cores can be upgraded by [accent]placing higher-tier cores over them[].\n\nPlace a \uF868 [accent]Foundation[] core over the \uF869 [accent]Shard[] core. Make sure it is free from nearby obstructions.
|
||||||
hint.presetLaunch = Gray [accent]landing zone sectors[], such as [accent]Frozen Forest[], can be launched to from anywhere. They do not require capture of nearby territory.\n\n[accent]Numbered sectors[], such as this one, are [accent]optional[].
|
hint.presetLaunch = Gray [accent]landing zone sectors[], such as [accent]Frozen Forest[], can be launched to from anywhere. They do not require capture of nearby territory.\n\n[accent]Numbered sectors[], such as this one, are [accent]optional[].
|
||||||
hint.presetDifficulty = This sector has a [scarlet]high enemy threat level[].\nLaunching to such sectors is [accent]not recommended[] without proper technology and preparation.
|
hint.presetDifficulty = This sector has a [scarlet]high enemy threat level[].\nLaunching to such sectors is [accent]not recommended[] without proper technology and preparation.
|
||||||
hint.coreIncinerate = After the core is filled to capacity with an item, any extra items of that type it receives will be [accent]incinerated[].
|
hint.coreIncinerate = After the core is filled to capacity with an item, any extra items of that type it receives will be [accent]incinerated[].
|
||||||
hint.factoryControl = To set a unit factory's [accent]output destination[], click a factory block while in command mode, then right-click a location.\nUnits produced by it will automatically move there.
|
hint.factoryControl = To set a unit factory's [accent]output destination[], click a factory block while in command mode, then right-click a location.\nUnits produced by it will automatically move there.
|
||||||
hint.factoryControl.mobile = To set a unit factory's [accent]output destination[], tap a factory block while in command mode, then tap a location.\nUnits produced by it will automatically move there.
|
hint.factoryControl.mobile = To set a unit factory's [accent]output destination[], tap a factory block while in command mode, then tap a location.\nUnits produced by it will automatically move there.
|
||||||
|
|
||||||
gz.mine = Move near the \uf8c4 [accent]copper ore[] on the ground and click to begin mining.
|
gz.mine = Move near the \uF8C4 [accent]copper ore[] on the ground and click to begin mining.
|
||||||
gz.mine.mobile = Move near the \uf8c4 [accent]copper ore[] on the ground and tap it to begin mining.
|
gz.mine.mobile = Move near the \uF8C4 [accent]copper ore[] on the ground and tap it to begin mining.
|
||||||
gz.research = Open the \ue875 tech tree.\nResearch the \uf870 [accent]Mechanical Drill[], then select it from the menu in the bottom right.\nClick on a copper patch to place it.
|
gz.research = Open the \uE875 tech tree.\nResearch the \uF870 [accent]Mechanical Drill[], then select it from the menu in the bottom right.\nClick on a copper patch to place it.
|
||||||
gz.research.mobile = Open the \ue875 tech tree.\nResearch the \uf870 [accent]Mechanical Drill[], then select it from the menu in the bottom right.\nTap on a copper patch to place it.\n\nPress the \uE800 [accent]checkmark[] at the bottom right to confirm.
|
gz.research.mobile = Open the \uE875 tech tree.\nResearch the \uF870 [accent]Mechanical Drill[], then select it from the menu in the bottom right.\nTap on a copper patch to place it.\n\nPress the \uE800 [accent]checkmark[] at the bottom right to confirm.
|
||||||
gz.conveyors = Research and place \uf896 [accent]conveyors[] to move the mined resources\nfrom drills to the core.\n\nClick and drag to place multiple conveyors.\n[accent]Scroll[] to rotate.
|
gz.conveyors = Research and place \uF896 [accent]conveyors[] to move the mined resources\nfrom drills to the core.\n\nClick and drag to place multiple conveyors.\n[accent]Scroll[] to rotate.
|
||||||
gz.conveyors.mobile = Research and place \uf896 [accent]conveyors[] to move the mined resources\nfrom drills to the core.\n\nHold down your finger for a second and drag to place multiple conveyors.
|
gz.conveyors.mobile = Research and place \uF896 [accent]conveyors[] to move the mined resources\nfrom drills to the core.\n\nHold down your finger for a second and drag to place multiple conveyors.
|
||||||
gz.drills = Expand the mining operation.\nPlace more Mechanical Drills.\nMine 100 copper.
|
gz.drills = Expand the mining operation.\nPlace more Mechanical Drills.\nMine 100 copper.
|
||||||
gz.lead = \uf837 [accent]Lead[] is another commonly used resource.\nSet up drills to mine lead.
|
gz.lead = \uF837 [accent]Lead[] is another commonly used resource.\nSet up drills to mine lead.
|
||||||
gz.moveup = \ue804 Move up for further objectives.
|
gz.moveup = \uE804 Move up for further objectives.
|
||||||
gz.turrets = Research and place 2 \uf861 [accent]Duo[] turrets to defend the core.\nDuo turrets require \uf838 [accent]ammo[] from conveyors.
|
gz.turrets = Research and place 2 \uF861 [accent]Duo[] turrets to defend the core.\nDuo turrets require \uF838 [accent]ammo[] from conveyors.
|
||||||
gz.duoammo = Supply the Duo turrets with [accent]copper[], using conveyors.
|
gz.duoammo = Supply the Duo turrets with [accent]copper[], using conveyors.
|
||||||
gz.walls = [accent]Walls[] can prevent oncoming damage from reaching buildings.\nPlace \uf8ae [accent]copper walls[] around the turrets.
|
gz.walls = [accent]Walls[] can prevent oncoming damage from reaching buildings.\nPlace \uF8AE [accent]copper walls[] around the turrets.
|
||||||
gz.defend = Enemy incoming, prepare to defend.
|
gz.defend = Enemy incoming, prepare to defend.
|
||||||
gz.aa = Flying units cannot easily be dispatched with standard turrets.\n\uf860 [accent]Scatter[] turrets provide excellent anti-air, but require \uf837 [accent]lead[] as ammo.
|
gz.aa = Flying units cannot easily be dispatched with standard turrets.\n\uF860 [accent]Scatter[] turrets provide excellent anti-air, but require \uF837 [accent]lead[] as ammo.
|
||||||
gz.scatterammo = Supply the Scatter turret with \uf837 [accent]lead[], using conveyors.
|
gz.scatterammo = Supply the Scatter turret with \uF837 [accent]lead[], using conveyors.
|
||||||
gz.supplyturret = [accent]Supply Turret
|
gz.supplyturret = [accent]Supply Turret
|
||||||
gz.zone1 = This is the enemy drop zone.
|
gz.zone1 = This is the enemy drop zone.
|
||||||
gz.zone2 = Anything built in the radius is destroyed when a wave starts.
|
gz.zone2 = Anything built in the radius is destroyed when a wave starts.
|
||||||
gz.zone3 = A wave will begin now.\nGet ready.
|
gz.zone3 = A wave will begin now.\nGet ready.
|
||||||
gz.finish = Build more turrets, mine more resources,\nand defend against all the waves to [accent]capture the sector[].
|
gz.finish = Build more turrets, mine more resources,\nand defend against all the waves to [accent]capture the sector[].
|
||||||
|
|
||||||
onset.mine = Click to mine \uf748 [accent]beryllium[] from walls.\n\nUse [accent][[WASD] to move.
|
onset.mine = Click to mine \uF748 [accent]beryllium[] from walls.\n\nUse [accent][[WASD] to move.
|
||||||
onset.mine.mobile = Tap to mine \uf748 [accent]beryllium[] from walls.
|
onset.mine.mobile = Tap to mine \uF748 [accent]beryllium[] from walls.
|
||||||
onset.research = Open the \ue875 tech tree.\nResearch, then place a \uf73e [accent]turbine condenser[] on the vent.\nThis will generate [accent]power[].
|
onset.research = Open the \uE875 tech tree.\nResearch, then place a \uF73E [accent]turbine condenser[] on the vent.\nThis will generate [accent]power[].
|
||||||
onset.bore = Research and place a \uf741 [accent]plasma bore[].\nThis automatically mines resources from walls.
|
onset.bore = Research and place a \uF741 [accent]plasma bore[].\nThis automatically mines resources from walls.
|
||||||
onset.power = To [accent]power[] the plasma bore, research and place a \uf73d [accent]beam node[].\nConnect the turbine condenser to the plasma bore.
|
onset.power = To [accent]power[] the plasma bore, research and place a \uF73D [accent]beam node[].\nConnect the turbine condenser to the plasma bore.
|
||||||
onset.ducts = Research and place \uf799 [accent]ducts[] to move the mined resources from the plasma bore to the core.\nClick and drag to place multiple ducts.\n[accent]Scroll[] to rotate.
|
onset.ducts = Research and place \uF799 [accent]ducts[] to move the mined resources from the plasma bore to the core.\nClick and drag to place multiple ducts.\n[accent]Scroll[] to rotate.
|
||||||
onset.ducts.mobile = Research and place \uf799 [accent]ducts[] to move the mined resources from the plasma bore to the core.\n\nHold down your finger for a second and drag to place multiple ducts.
|
onset.ducts.mobile = Research and place \uF799 [accent]ducts[] to move the mined resources from the plasma bore to the core.\n\nHold down your finger for a second and drag to place multiple ducts.
|
||||||
onset.moremine = Expand the mining operation.\nPlace more Plasma Bores and use beam nodes and ducts to support them.\nMine 200 beryllium.
|
onset.moremine = Expand the mining operation.\nPlace more Plasma Bores and use beam nodes and ducts to support them.\nMine 200 beryllium.
|
||||||
onset.graphite = More complex blocks require \uf835 [accent]graphite[].\nSet up plasma bores to mine graphite.
|
onset.graphite = More complex blocks require \uF835 [accent]graphite[].\nSet up plasma bores to mine graphite.
|
||||||
onset.research2 = Begin researching [accent]factories[].\nResearch the \uf74d [accent]cliff crusher[] and \uf779 [accent]silicon arc furnace[].
|
onset.research2 = Begin researching [accent]factories[].\nResearch the \uF74D [accent]cliff crusher[] and \uF779 [accent]silicon arc furnace[].
|
||||||
onset.arcfurnace = The arc furnace needs \uf834 [accent]sand[] and \uf835 [accent]graphite[] to create \uf82f [accent]silicon[].\n[accent]Power[] is also required.
|
onset.arcfurnace = The arc furnace needs \uF834 [accent]sand[] and \uF835 [accent]graphite[] to create \uF82F [accent]silicon[].\n[accent]Power[] is also required.
|
||||||
onset.crusher = Use \uf74d [accent]cliff crushers[] to mine sand.
|
onset.crusher = Use \uF74D [accent]cliff crushers[] to mine sand.
|
||||||
onset.fabricator = Use [accent]units[] to explore the map, defend buildings, and attack the enemy. Research and place a \uf6a2 [accent]tank fabricator[].
|
onset.fabricator = Use [accent]units[] to explore the map, defend buildings, and attack the enemy. Research and place a \uF6A2 [accent]tank fabricator[].
|
||||||
onset.makeunit = Produce a unit.\nUse the "?" button to see selected factory requirements.
|
onset.makeunit = Produce a unit.\nUse the "?" button to see selected factory requirements.
|
||||||
onset.turrets = Units are effective, but [accent]turrets[] provide better defensive capabilities if used effectively.\nPlace a \uf6eb [accent]Breach[] turret.\nTurrets require \uf748 [accent]ammo[].
|
onset.turrets = Units are effective, but [accent]turrets[] provide better defensive capabilities if used effectively.\nPlace a \uF6EB [accent]Breach[] turret.\nTurrets require \uF748 [accent]ammo[].
|
||||||
onset.turretammo = Supply the turret with [accent]beryllium ammo.[]
|
onset.turretammo = Supply the turret with [accent]beryllium ammo.[]
|
||||||
onset.walls = [accent]Walls[] can prevent oncoming damage from reaching buildings.\nPlace some \uf6ee [accent]beryllium walls[] around the turret.
|
onset.walls = [accent]Walls[] can prevent oncoming damage from reaching buildings.\nPlace some \uF6EE [accent]beryllium walls[] around the turret.
|
||||||
onset.enemies = Enemy incoming, prepare to defend.
|
onset.enemies = Enemy incoming, prepare to defend.
|
||||||
onset.attack = The enemy is vulnerable. Counter-attack.
|
onset.attack = The enemy is vulnerable. Counter-attack.
|
||||||
onset.cores = New cores can be placed on [accent]core tiles[].\nNew cores function as forward bases and share a resource inventory with other cores.\nPlace a \uf725 core.
|
onset.cores = New cores can be placed on [accent]core tiles[].\nNew cores function as forward bases and share a resource inventory with other cores.\nPlace a \uF725 core.
|
||||||
onset.detect = The enemy will be able to detect you in 2 minutes.\nSet up defenses, mining, and production.
|
onset.detect = The enemy will be able to detect you in 2 minutes.\nSet up defenses, mining, and production.
|
||||||
|
|
||||||
split.pickup = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(Default keys are [[ and ] to pick up and drop)
|
split.pickup = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(Default keys are [[ and ] to pick up and drop)
|
||||||
@@ -2233,6 +2236,7 @@ lst.flushmessage = Display a message on the screen from the text buffer.\nWill w
|
|||||||
lst.cutscene = Manipulate the player camera.
|
lst.cutscene = Manipulate the player camera.
|
||||||
lst.setflag = Set a global flag that can be read by all processors.
|
lst.setflag = Set a global flag that can be read by all processors.
|
||||||
lst.getflag = Check if a global flag is set.
|
lst.getflag = Check if a global flag is set.
|
||||||
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
|
||||||
logic.nounitbuild = [red]Unit building logic is not allowed here.
|
logic.nounitbuild = [red]Unit building logic is not allowed here.
|
||||||
|
|
||||||
|
|||||||
@@ -886,6 +886,7 @@ stat.repairspeed = Repair Speed
|
|||||||
stat.weapons = Оръжия
|
stat.weapons = Оръжия
|
||||||
stat.bullet = Муниции
|
stat.bullet = Муниции
|
||||||
stat.moduletier = Module Tier
|
stat.moduletier = Module Tier
|
||||||
|
stat.unittype = Unit Type
|
||||||
stat.speedincrease = Ускорение
|
stat.speedincrease = Ускорение
|
||||||
stat.range = Обхват
|
stat.range = Обхват
|
||||||
stat.drilltier = Изкопаеми ресурси
|
stat.drilltier = Изкопаеми ресурси
|
||||||
@@ -979,6 +980,8 @@ bullet.splashdamage = [stat]{0}[lightgray] щети на площ ~[stat] {1}[li
|
|||||||
bullet.incendiary = [stat]Подпалване
|
bullet.incendiary = [stat]Подпалване
|
||||||
bullet.homing = [stat]Самонасочване
|
bullet.homing = [stat]Самонасочване
|
||||||
bullet.armorpierce = [stat]armor piercing
|
bullet.armorpierce = [stat]armor piercing
|
||||||
|
bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles
|
||||||
|
bullet.interval = [stat]{0}/sec[lightgray] interval bullets:
|
||||||
bullet.frags = [stat]{0}[lightgray]x frag bullets:
|
bullet.frags = [stat]{0}[lightgray]x frag bullets:
|
||||||
bullet.lightning = [stat]{0}[lightgray]x светкавица ~ [stat]{1}[lightgray] щети
|
bullet.lightning = [stat]{0}[lightgray]x светкавица ~ [stat]{1}[lightgray] щети
|
||||||
bullet.buildingdamage = [stat]{0}%[lightgray] щети на сгради
|
bullet.buildingdamage = [stat]{0}%[lightgray] щети на сгради
|
||||||
@@ -1092,8 +1095,8 @@ setting.bridgeopacity.name = Плътност на Мостовете
|
|||||||
setting.playerchat.name = Показвай Мехурчета с Чат
|
setting.playerchat.name = Показвай Мехурчета с Чат
|
||||||
setting.showweather.name = Показвай Графики за Климата
|
setting.showweather.name = Показвай Графики за Климата
|
||||||
setting.hidedisplays.name = Hide Logic Displays
|
setting.hidedisplays.name = Hide Logic Displays
|
||||||
public.confirm = Искате ли да направите вашата игра публична?\n[accent]Всеки ще може да се присъедини към вашата игра.\n[lightgray]Това може да бъде променено по-късно в Настройки->Игри->Видимост на Публичните Игри.
|
steam.friendsonly = Friends Only
|
||||||
public.confirm.really = Ако искате да играете с приятел, използвате [green]Покани Приятел[] вместо [scarlet]Публикувай Сървър[]!\nСигурни ли сте, че искате да направите вашата игра [scarlet]публична[]?
|
steam.friendsonly.tooltip = Whether only Steam friends will be able to join your game.\nUnchecking this box will make your game public - anyone can join.
|
||||||
public.beta = Имайте в предвид, че бета версии на играта не могат да стартират публични игри.
|
public.beta = Имайте в предвид, че бета версии на играта не могат да стартират публични игри.
|
||||||
uiscale.reset = Размерът на интерфейса беше променен.\nНатиснете "ОК" за да потвърдите този размер.\n[scarlet]Възстановяване и рестартиране след[accent] {0}[] секунди...
|
uiscale.reset = Размерът на интерфейса беше променен.\nНатиснете "ОК" за да потвърдите този размер.\n[scarlet]Възстановяване и рестартиране след[accent] {0}[] секунди...
|
||||||
uiscale.cancel = Отакз & Изход
|
uiscale.cancel = Отакз & Изход
|
||||||
@@ -1145,8 +1148,8 @@ keybind.select.name = Избери/Стреляй
|
|||||||
keybind.diagonal_placement.name = Диагонално Поставяне
|
keybind.diagonal_placement.name = Диагонално Поставяне
|
||||||
keybind.pick.name = Вземи Блок
|
keybind.pick.name = Вземи Блок
|
||||||
keybind.break_block.name = Унищожи Блок
|
keybind.break_block.name = Унищожи Блок
|
||||||
keybind.select_all_units = Select All Units
|
keybind.select_all_units.name = Select All Units
|
||||||
keybind.select_all_unit_factories = Select All Unit Factories
|
keybind.select_all_unit_factories.name = Select All Unit Factories
|
||||||
keybind.deselect.name = Премахни избора
|
keybind.deselect.name = Премахни избора
|
||||||
keybind.pickupCargo.name = Вземи Товар
|
keybind.pickupCargo.name = Вземи Товар
|
||||||
keybind.dropCargo.name = Остави Товар
|
keybind.dropCargo.name = Остави Товар
|
||||||
@@ -2200,6 +2203,7 @@ lst.flushmessage = Display a message on the screen from the text buffer.\nWill w
|
|||||||
lst.cutscene = Manipulate the player camera.
|
lst.cutscene = Manipulate the player camera.
|
||||||
lst.setflag = Set a global flag that can be read by all processors.
|
lst.setflag = Set a global flag that can be read by all processors.
|
||||||
lst.getflag = Check if a global flag is set.
|
lst.getflag = Check if a global flag is set.
|
||||||
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
|
||||||
logic.nounitbuild = [red]Действия за строене на единици не са позволени тук.
|
logic.nounitbuild = [red]Действия за строене на единици не са позволени тук.
|
||||||
|
|
||||||
|
|||||||
@@ -101,7 +101,7 @@ database = Base de dades del nucli
|
|||||||
database.button = Base de dades
|
database.button = Base de dades
|
||||||
savegame = Desa la partida
|
savegame = Desa la partida
|
||||||
loadgame = Carrega una partida
|
loadgame = Carrega una partida
|
||||||
joingame = Unir-se a una partida
|
joingame = Uneix-me a una partida
|
||||||
customgame = Partida personalitzada
|
customgame = Partida personalitzada
|
||||||
newgame = Partida nova
|
newgame = Partida nova
|
||||||
none = <cap>
|
none = <cap>
|
||||||
@@ -149,15 +149,15 @@ mod.incompatiblemod = [red]Incompatible
|
|||||||
mod.blacklisted = [red]Unsupported
|
mod.blacklisted = [red]Unsupported
|
||||||
mod.unmetdependencies = [red]Depèndencies sense resoldre
|
mod.unmetdependencies = [red]Depèndencies sense resoldre
|
||||||
mod.erroredcontent = [scarlet]Errors del contingut
|
mod.erroredcontent = [scarlet]Errors del contingut
|
||||||
mod.circulardependencies = [red]Circular Dependencies
|
mod.circulardependencies = [red]Dependències circulars
|
||||||
mod.incompletedependencies = [red]Incomplete Dependencies
|
mod.incompletedependencies = [red]Dependències incompletes
|
||||||
mod.requiresversion.details = Requereix la versió: [accent]{0}[]\nCal actualitzar la vostra versió del joc. El mod necessita una versió nova (potser una distribució alfa o beta) per a funcionar.
|
mod.requiresversion.details = Requereix la versió: [accent]{0}[]\nCal actualitzar la vostra versió del joc. El mod necessita una versió nova (potser una distribució alfa o beta) per a funcionar.
|
||||||
mod.outdatedv7.details = Aquest mod és incompatible amb l’última versió del joc. L’autor l’ha d’actualitzar i afegir [accent]minGameVersion: 136[] al seu fitxer [accent]mod.json[].
|
mod.outdatedv7.details = Aquest mod és incompatible amb l’última versió del joc. L’autor l’ha d’actualitzar i afegir [accent]minGameVersion: 136[] al seu fitxer [accent]mod.json[].
|
||||||
mod.blacklisted.details = Aquest mod s’ha afegit manualment a la llista negra perquè causa problemes amb aquesta versió del joc. No el feu servir.
|
mod.blacklisted.details = Aquest mod s’ha afegit manualment a la llista negra perquè causa problemes amb aquesta versió del joc. No el feu servir.
|
||||||
mod.missingdependencies.details = A aquest mod li falten dependències: {0}
|
mod.missingdependencies.details = A aquest mod li falten dependències: {0}
|
||||||
mod.erroredcontent.details = Aquesta partida ha causat errors mentre es carregava. Pregunteu a l’autor del mod si pot arreglar-ho.
|
mod.erroredcontent.details = Aquesta partida ha causat errors mentre es carregava. Pregunteu a l’autor del mod si pot arreglar-ho.
|
||||||
mod.circulardependencies.details = This mod has dependencies that depends on each other.
|
mod.circulardependencies.details = Aquest mod depèn d’un segon mod que, al seu torn, depèn del mod anterior. No es permeten dependències circulars.
|
||||||
mod.incompletedependencies.details = This mod is unable to be loaded due to invalid or missing dependencies: {0}.
|
mod.incompletedependencies.details = Aquest mod no es pot carregar perquè té una dependència no vàlida o que no es pot trobar: {0}.
|
||||||
mod.requiresversion = Cal la versió [red]{0}[] del joc.
|
mod.requiresversion = Cal la versió [red]{0}[] del joc.
|
||||||
mod.errors = S’han produït errors quan es carregava el contingut.
|
mod.errors = S’han produït errors quan es carregava el contingut.
|
||||||
mod.noerrorplay = [scarlet]S’executen mods amb errors.[] Desactiveu els mods afectats o arregleu les errades abans de jugar.
|
mod.noerrorplay = [scarlet]S’executen mods amb errors.[] Desactiveu els mods afectats o arregleu les errades abans de jugar.
|
||||||
@@ -335,7 +335,7 @@ command.repair = Repara
|
|||||||
command.rebuild = Reconstrueix
|
command.rebuild = Reconstrueix
|
||||||
command.assist = Assisteix al jugador
|
command.assist = Assisteix al jugador
|
||||||
command.move = Mou
|
command.move = Mou
|
||||||
command.boost = Boost
|
command.boost = Sobrevola
|
||||||
openlink = Obre l’enllaç
|
openlink = Obre l’enllaç
|
||||||
copylink = Copia l’enllaç
|
copylink = Copia l’enllaç
|
||||||
back = Enrere
|
back = Enrere
|
||||||
@@ -890,6 +890,7 @@ stat.repairspeed = Velocitat de reparació
|
|||||||
stat.weapons = Armes
|
stat.weapons = Armes
|
||||||
stat.bullet = Bala
|
stat.bullet = Bala
|
||||||
stat.moduletier = Nivell del mòdul
|
stat.moduletier = Nivell del mòdul
|
||||||
|
stat.unittype = Unit Type
|
||||||
stat.speedincrease = Augment de velocitat
|
stat.speedincrease = Augment de velocitat
|
||||||
stat.range = Abast
|
stat.range = Abast
|
||||||
stat.drilltier = Perforables
|
stat.drilltier = Perforables
|
||||||
@@ -983,6 +984,8 @@ bullet.splashdamage = [stat]{0}[lightgray] de dany a l’àrea ~[stat] {1}[light
|
|||||||
bullet.incendiary = [stat]incendiari
|
bullet.incendiary = [stat]incendiari
|
||||||
bullet.homing = [stat]munició guiada
|
bullet.homing = [stat]munició guiada
|
||||||
bullet.armorpierce = [stat]perforador d’armadures
|
bullet.armorpierce = [stat]perforador d’armadures
|
||||||
|
bullet.suppression = [stat]Supressió de reparacions cada {0} s[lightgray] ~ [stat]{1}[lightgray] caselles
|
||||||
|
bullet.interval = [stat]Interval de bales de {0}/s[lightgray]:
|
||||||
bullet.frags = [stat]{0}[lightgray]× de bales de fragmentació:
|
bullet.frags = [stat]{0}[lightgray]× de bales de fragmentació:
|
||||||
bullet.lightning = [stat]{0}[lightgray]× llampec ~ [stat]{1}[lightgray] de dany
|
bullet.lightning = [stat]{0}[lightgray]× llampec ~ [stat]{1}[lightgray] de dany
|
||||||
bullet.buildingdamage = [stat]{0}%[lightgray] de dany a les estructures
|
bullet.buildingdamage = [stat]{0}%[lightgray] de dany a les estructures
|
||||||
@@ -1096,8 +1099,8 @@ setting.bridgeopacity.name = Opacitat de cintes i canonades subterrànies
|
|||||||
setting.playerchat.name = Mostra el xat bombolla de jugadors
|
setting.playerchat.name = Mostra el xat bombolla de jugadors
|
||||||
setting.showweather.name = Mostra l’estat meteorològic
|
setting.showweather.name = Mostra l’estat meteorològic
|
||||||
setting.hidedisplays.name = Amaga els monitors lògics
|
setting.hidedisplays.name = Amaga els monitors lògics
|
||||||
public.confirm = Voleu que la vostra partida sigui pública?\n[accent]Qualsevol jugador s’hi podrà unir.\n[lightgray]Després es pot canviar a Configuració→Partida→Visibilitat de la partida pública.
|
steam.friendsonly = Només amics
|
||||||
public.confirm.really = Si voleu jugar amb els vostres amics, feu servir [green]Invita un amic[] en lloc d’emprar un [scarlet]servidor públic[]!\nEsteu segur que voleu que la partida sigui [scarlet]pública[]?
|
steam.friendsonly.tooltip = Indica si només els amics de Steam podran unir-se a la vostra partida.\nSi no es selecciona aquesta opció, la vostra partida serà pública i s’hi podrà unir qualsevol jugador.
|
||||||
public.beta = Tingueu en compte que les versions beta no disposen de sales d’espera.
|
public.beta = Tingueu en compte que les versions beta no disposen de sales d’espera.
|
||||||
uiscale.reset = L’escala de la interfície ha canviat.\nPremeu «D’acord» per a confirmar-ho.\n[scarlet]Es revertiran els canvis en [accent]{0}[] segons.
|
uiscale.reset = L’escala de la interfície ha canviat.\nPremeu «D’acord» per a confirmar-ho.\n[scarlet]Es revertiran els canvis en [accent]{0}[] segons.
|
||||||
uiscale.cancel = Cancel·la i surt
|
uiscale.cancel = Cancel·la i surt
|
||||||
@@ -1149,8 +1152,8 @@ keybind.select.name = Selecciona/Dispara
|
|||||||
keybind.diagonal_placement.name = Construcció diagonal
|
keybind.diagonal_placement.name = Construcció diagonal
|
||||||
keybind.pick.name = Selecciona un tipus de bloc des del mapa
|
keybind.pick.name = Selecciona un tipus de bloc des del mapa
|
||||||
keybind.break_block.name = Desmunta un bloc
|
keybind.break_block.name = Desmunta un bloc
|
||||||
keybind.select_all_units = Selecciona totes les unitats
|
keybind.select_all_units.name = Selecciona totes les unitats
|
||||||
keybind.select_all_unit_factories = Selecciona totes les unitats fabricadores
|
keybind.select_all_unit_factories.name = Selecciona totes les unitats fabricadores
|
||||||
keybind.deselect.name = Cancel·la la selecció
|
keybind.deselect.name = Cancel·la la selecció
|
||||||
keybind.pickupCargo.name = Recull càrrega
|
keybind.pickupCargo.name = Recull càrrega
|
||||||
keybind.dropCargo.name = Deixa la càrrega
|
keybind.dropCargo.name = Deixa la càrrega
|
||||||
@@ -1465,7 +1468,7 @@ block.distributor.name = Distrïbudor
|
|||||||
block.sorter.name = Classificador
|
block.sorter.name = Classificador
|
||||||
block.inverted-sorter.name = Classificador invers
|
block.inverted-sorter.name = Classificador invers
|
||||||
block.message.name = Missatge
|
block.message.name = Missatge
|
||||||
block.reinforced-message.name = Missatge reforçat
|
block.reinforced-message.name = Missatge destacat
|
||||||
block.world-message.name = Missatge mundial
|
block.world-message.name = Missatge mundial
|
||||||
block.illuminator.name = Il·luminador
|
block.illuminator.name = Il·luminador
|
||||||
block.overflow-gate.name = Porta de desbordament
|
block.overflow-gate.name = Porta de desbordament
|
||||||
@@ -1877,7 +1880,7 @@ liquid.neoplasm.details = Neoplasma. Una massa incontrolable de cèl·lules sint
|
|||||||
block.derelict = \uf77e [lightgray]En ruïnes
|
block.derelict = \uf77e [lightgray]En ruïnes
|
||||||
block.armored-conveyor.description = Mou objectes. Pels laterals només accepta entrades des d’altres cintes transportadores.
|
block.armored-conveyor.description = Mou objectes. Pels laterals només accepta entrades des d’altres cintes transportadores.
|
||||||
block.illuminator.description = Emet llum.
|
block.illuminator.description = Emet llum.
|
||||||
block.message.description = Emmagatzema un missatge. Els aliats ho poden fer servir per a comunicar-se.
|
block.message.description = Emmagatzema un missatge. Els aliats el poden fer servir per a comunicar-se.
|
||||||
block.reinforced-message.description = Emmagatzema un missatge que serveix per a què els aliats es puguin comunicar.
|
block.reinforced-message.description = Emmagatzema un missatge que serveix per a què els aliats es puguin comunicar.
|
||||||
block.world-message.description = Un bloc de missatge que es far servir per a fer mapes. No es pot destruir.
|
block.world-message.description = Un bloc de missatge que es far servir per a fer mapes. No es pot destruir.
|
||||||
block.graphite-press.description = Comprimeix carbó fins obtenir-ne grafit.
|
block.graphite-press.description = Comprimeix carbó fins obtenir-ne grafit.
|
||||||
@@ -2211,6 +2214,7 @@ lst.flushmessage = Mostra un missatge a la pantalla a partir dels continguts de
|
|||||||
lst.cutscene = Manipula la càmera del jugador.
|
lst.cutscene = Manipula la càmera del jugador.
|
||||||
lst.setflag = Estableix un senyal global que es podrà llegir en tots els processadors.
|
lst.setflag = Estableix un senyal global que es podrà llegir en tots els processadors.
|
||||||
lst.getflag = Obtén un senyal global.
|
lst.getflag = Obtén un senyal global.
|
||||||
|
lst.setprop = Estableix una propietat d’una unitat o estructura.
|
||||||
|
|
||||||
logic.nounitbuild = [red]Aquí no es permet construir blocs de tipus lògic.
|
logic.nounitbuild = [red]Aquí no es permet construir blocs de tipus lògic.
|
||||||
|
|
||||||
|
|||||||
@@ -888,6 +888,7 @@ stat.repairspeed = Rychlost Opravy
|
|||||||
stat.weapons = Zbraně
|
stat.weapons = Zbraně
|
||||||
stat.bullet = Střela
|
stat.bullet = Střela
|
||||||
stat.moduletier = Module Tier
|
stat.moduletier = Module Tier
|
||||||
|
stat.unittype = Unit Type
|
||||||
stat.speedincrease = Zvýšení rychlosti
|
stat.speedincrease = Zvýšení rychlosti
|
||||||
stat.range = Dosah
|
stat.range = Dosah
|
||||||
stat.drilltier = Lze těžit
|
stat.drilltier = Lze těžit
|
||||||
@@ -981,6 +982,8 @@ bullet.splashdamage = [stat]{0}[lightgray] plošného poškození ~[stat] {1}[li
|
|||||||
bullet.incendiary = [stat]zápalný
|
bullet.incendiary = [stat]zápalný
|
||||||
bullet.homing = [stat]samonaváděcí
|
bullet.homing = [stat]samonaváděcí
|
||||||
bullet.armorpierce = [stat]armor piercing
|
bullet.armorpierce = [stat]armor piercing
|
||||||
|
bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles
|
||||||
|
bullet.interval = [stat]{0}/sec[lightgray] interval bullets:
|
||||||
bullet.frags = [stat]{0}[lightgray]x frag střel:
|
bullet.frags = [stat]{0}[lightgray]x frag střel:
|
||||||
bullet.lightning = [stat]{0}[lightgray]x jiskření ~ [stat]{1}[lightgray] poškození
|
bullet.lightning = [stat]{0}[lightgray]x jiskření ~ [stat]{1}[lightgray] poškození
|
||||||
bullet.buildingdamage = [stat]{0}%[lightgray] poškození budov
|
bullet.buildingdamage = [stat]{0}%[lightgray] poškození budov
|
||||||
@@ -1094,8 +1097,8 @@ setting.bridgeopacity.name = Průsvitnost přemostění
|
|||||||
setting.playerchat.name = Zobrazit bublinu se zprávami hráče
|
setting.playerchat.name = Zobrazit bublinu se zprávami hráče
|
||||||
setting.showweather.name = Zobrazit Grafiku Počasí
|
setting.showweather.name = Zobrazit Grafiku Počasí
|
||||||
setting.hidedisplays.name = Hide Logic Displays
|
setting.hidedisplays.name = Hide Logic Displays
|
||||||
public.confirm = Chceš Tvoji hru zpřístupnit veřejnosti?\n[accent]Kdokoli se bude moci připojit ke tvé hře.[]\n[lightgray]Toto se dá později změnit v nabídce Volby->Hra->Veřejná viditelnost hry.
|
steam.friendsonly = Friends Only
|
||||||
public.confirm.really = Pokud chceš hrát s přáteli, použij [green]Pozvat Přítele[] místo [scarlet]Zvěřejnit server[]!\nJseš si jist, že chceš udělat svou hru [scarlet]veřejnou[]?
|
steam.friendsonly.tooltip = Whether only Steam friends will be able to join your game.\nUnchecking this box will make your game public - anyone can join.
|
||||||
public.beta = Poznámka: nevydané verze her nemůžou být veřejné.
|
public.beta = Poznámka: nevydané verze her nemůžou být veřejné.
|
||||||
uiscale.reset = Škálování uživatelskho rozhraní se změnilo.\nZmáčkni "OK", abys potvrdil toto nastavení.\n[scarlet]Návrat k původním hodnotám proběhne za [accent]{0}[] vteřin...[]
|
uiscale.reset = Škálování uživatelskho rozhraní se změnilo.\nZmáčkni "OK", abys potvrdil toto nastavení.\n[scarlet]Návrat k původním hodnotám proběhne za [accent]{0}[] vteřin...[]
|
||||||
uiscale.cancel = Ukončit a odejít
|
uiscale.cancel = Ukončit a odejít
|
||||||
@@ -1147,8 +1150,8 @@ keybind.select.name = Vybrat/Střílet
|
|||||||
keybind.diagonal_placement.name = Umisťovat úhlopříčně
|
keybind.diagonal_placement.name = Umisťovat úhlopříčně
|
||||||
keybind.pick.name = Vybrat blok
|
keybind.pick.name = Vybrat blok
|
||||||
keybind.break_block.name = Rozbít blok
|
keybind.break_block.name = Rozbít blok
|
||||||
keybind.select_all_units = Select All Units
|
keybind.select_all_units.name = Select All Units
|
||||||
keybind.select_all_unit_factories = Select All Unit Factories
|
keybind.select_all_unit_factories.name = Select All Unit Factories
|
||||||
keybind.deselect.name = Odznačit
|
keybind.deselect.name = Odznačit
|
||||||
keybind.pickupCargo.name = Vyzvednout náklad
|
keybind.pickupCargo.name = Vyzvednout náklad
|
||||||
keybind.dropCargo.name = Položit náklad
|
keybind.dropCargo.name = Položit náklad
|
||||||
@@ -2205,6 +2208,7 @@ lst.flushmessage = Display a message on the screen from the text buffer.\nWill w
|
|||||||
lst.cutscene = Manipulate the player camera.
|
lst.cutscene = Manipulate the player camera.
|
||||||
lst.setflag = Set a global flag that can be read by all processors.
|
lst.setflag = Set a global flag that can be read by all processors.
|
||||||
lst.getflag = Check if a global flag is set.
|
lst.getflag = Check if a global flag is set.
|
||||||
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
|
||||||
logic.nounitbuild = [red]Stavba budov pomoci jednotek kontrolované procesorem neni povolené.
|
logic.nounitbuild = [red]Stavba budov pomoci jednotek kontrolované procesorem neni povolené.
|
||||||
|
|
||||||
|
|||||||
@@ -876,6 +876,7 @@ stat.repairspeed = Repair Speed
|
|||||||
stat.weapons = Weapons
|
stat.weapons = Weapons
|
||||||
stat.bullet = Bullet
|
stat.bullet = Bullet
|
||||||
stat.moduletier = Module Tier
|
stat.moduletier = Module Tier
|
||||||
|
stat.unittype = Unit Type
|
||||||
stat.speedincrease = Hastigheds-forøgelse
|
stat.speedincrease = Hastigheds-forøgelse
|
||||||
stat.range = Rækkevidde
|
stat.range = Rækkevidde
|
||||||
stat.drilltier = Kan bores
|
stat.drilltier = Kan bores
|
||||||
@@ -969,6 +970,8 @@ bullet.splashdamage = [stat]{0}[lightgray] områdeskade ~[stat] {1}[lightgray] f
|
|||||||
bullet.incendiary = [stat]brændfarlig
|
bullet.incendiary = [stat]brændfarlig
|
||||||
bullet.homing = [stat]målsøgende
|
bullet.homing = [stat]målsøgende
|
||||||
bullet.armorpierce = [stat]armor piercing
|
bullet.armorpierce = [stat]armor piercing
|
||||||
|
bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles
|
||||||
|
bullet.interval = [stat]{0}/sec[lightgray] interval bullets:
|
||||||
bullet.frags = [stat]{0}[lightgray]x frag bullets:
|
bullet.frags = [stat]{0}[lightgray]x frag bullets:
|
||||||
bullet.lightning = [stat]{0}[lightgray]x lightning ~ [stat]{1}[lightgray] damage
|
bullet.lightning = [stat]{0}[lightgray]x lightning ~ [stat]{1}[lightgray] damage
|
||||||
bullet.buildingdamage = [stat]{0}%[lightgray] building damage
|
bullet.buildingdamage = [stat]{0}%[lightgray] building damage
|
||||||
@@ -1082,8 +1085,8 @@ setting.bridgeopacity.name = Bro-gennemsigtighed
|
|||||||
setting.playerchat.name = Vis spillers bobbel-chat
|
setting.playerchat.name = Vis spillers bobbel-chat
|
||||||
setting.showweather.name = Show Weather Graphics
|
setting.showweather.name = Show Weather Graphics
|
||||||
setting.hidedisplays.name = Hide Logic Displays
|
setting.hidedisplays.name = Hide Logic Displays
|
||||||
public.confirm = Vil du gøre dit spil offentligt?\n[accent]Alle og enhver vil kunne tilslutte.\n[lightgray]Dette kan ændres senere i Indstillinger->Spil->Synlighed af offentlige spil.
|
steam.friendsonly = Friends Only
|
||||||
public.confirm.really = If you want to play with friends, use [green]Invite Friend[] instead of a [scarlet]Public server[]!\nAre you sure you want to make your game [scarlet]public[]?
|
steam.friendsonly.tooltip = Whether only Steam friends will be able to join your game.\nUnchecking this box will make your game public - anyone can join.
|
||||||
public.beta = Bemærk at beta-versioner af spillet ikke kan tilslutte sig offentlige spil.
|
public.beta = Bemærk at beta-versioner af spillet ikke kan tilslutte sig offentlige spil.
|
||||||
uiscale.reset = UI-størrelsen har ændret sig.\nTryk "OK" for at bekræfte størrelsen.\n[scarlet]Omgør og afslutter om[accent] {0}[] sekunder...
|
uiscale.reset = UI-størrelsen har ændret sig.\nTryk "OK" for at bekræfte størrelsen.\n[scarlet]Omgør og afslutter om[accent] {0}[] sekunder...
|
||||||
uiscale.cancel = Afblæs & Afslut
|
uiscale.cancel = Afblæs & Afslut
|
||||||
@@ -1135,8 +1138,8 @@ keybind.select.name = Vælg/Skyd
|
|||||||
keybind.diagonal_placement.name = Diagonal placering
|
keybind.diagonal_placement.name = Diagonal placering
|
||||||
keybind.pick.name = Tag blok
|
keybind.pick.name = Tag blok
|
||||||
keybind.break_block.name = Ødelæg blok
|
keybind.break_block.name = Ødelæg blok
|
||||||
keybind.select_all_units = Select All Units
|
keybind.select_all_units.name = Select All Units
|
||||||
keybind.select_all_unit_factories = Select All Unit Factories
|
keybind.select_all_unit_factories.name = Select All Unit Factories
|
||||||
keybind.deselect.name = Fravælg
|
keybind.deselect.name = Fravælg
|
||||||
keybind.pickupCargo.name = Saml last op
|
keybind.pickupCargo.name = Saml last op
|
||||||
keybind.dropCargo.name = Smid last
|
keybind.dropCargo.name = Smid last
|
||||||
@@ -2185,6 +2188,7 @@ lst.flushmessage = Display a message on the screen from the text buffer.\nWill w
|
|||||||
lst.cutscene = Manipulate the player camera.
|
lst.cutscene = Manipulate the player camera.
|
||||||
lst.setflag = Set a global flag that can be read by all processors.
|
lst.setflag = Set a global flag that can be read by all processors.
|
||||||
lst.getflag = Check if a global flag is set.
|
lst.getflag = Check if a global flag is set.
|
||||||
|
lst.setprop = Sets a property of a unit or building.
|
||||||
logic.nounitbuild = [red]Unit building logic is not allowed here.
|
logic.nounitbuild = [red]Unit building logic is not allowed here.
|
||||||
lenum.type = Type of building/unit.\ne.g. for any router, this will return [accent]@router[].\nNot a string.
|
lenum.type = Type of building/unit.\ne.g. for any router, this will return [accent]@router[].\nNot a string.
|
||||||
lenum.shoot = Shoot at a position.
|
lenum.shoot = Shoot at a position.
|
||||||
|
|||||||
@@ -899,6 +899,7 @@ stat.repairspeed = Heilungsgeschwindigkeit
|
|||||||
stat.weapons = Waffen
|
stat.weapons = Waffen
|
||||||
stat.bullet = Geschoss
|
stat.bullet = Geschoss
|
||||||
stat.moduletier = Modulstufe
|
stat.moduletier = Modulstufe
|
||||||
|
stat.unittype = Unit Type
|
||||||
stat.speedincrease = Geschwindigkeitserhöhung
|
stat.speedincrease = Geschwindigkeitserhöhung
|
||||||
stat.range = Reichweite
|
stat.range = Reichweite
|
||||||
stat.drilltier = Abbaubare Erze
|
stat.drilltier = Abbaubare Erze
|
||||||
@@ -992,6 +993,8 @@ bullet.splashdamage = [stat]{0}[lightgray] Flächenschaden ~[stat] {1}[lightgray
|
|||||||
bullet.incendiary = [stat]entzündend
|
bullet.incendiary = [stat]entzündend
|
||||||
bullet.homing = [stat]zielsuchend
|
bullet.homing = [stat]zielsuchend
|
||||||
bullet.armorpierce = [stat]panzerbrechend
|
bullet.armorpierce = [stat]panzerbrechend
|
||||||
|
bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles
|
||||||
|
bullet.interval = [stat]{0}/sec[lightgray] interval bullets:
|
||||||
bullet.frags = [stat]{0}[lightgray]x Splittergeschosse:
|
bullet.frags = [stat]{0}[lightgray]x Splittergeschosse:
|
||||||
bullet.lightning = [stat]{0}[lightgray]x Blitz ~ [stat]{1}[lightgray] Schaden
|
bullet.lightning = [stat]{0}[lightgray]x Blitz ~ [stat]{1}[lightgray] Schaden
|
||||||
bullet.buildingdamage = [stat]{0}%[lightgray]Blockschaden
|
bullet.buildingdamage = [stat]{0}%[lightgray]Blockschaden
|
||||||
@@ -1105,8 +1108,8 @@ setting.bridgeopacity.name = Brücken-Deckkraft
|
|||||||
setting.playerchat.name = Chat im Spiel anzeigen
|
setting.playerchat.name = Chat im Spiel anzeigen
|
||||||
setting.showweather.name = Wetter anzeigen
|
setting.showweather.name = Wetter anzeigen
|
||||||
setting.hidedisplays.name = Logik-Bildschirme verdecken
|
setting.hidedisplays.name = Logik-Bildschirme verdecken
|
||||||
public.confirm = Willst du dein Spiel öffentlich zugänglich machen?\n[accent]Jeder kann deinem Spiel beitreten.\n[lightgray]Dies kann später in den Einstellungen->Spiel->Öffentliches Spiel geändert werden.
|
steam.friendsonly = Friends Only
|
||||||
public.confirm.really = Wenn du mit Freunden spielen willst, drücke [green]Freunde einladen[] statt einen [scarlet]öffentlichen Server[] zu erstellen!\nBist du dir sicher, dass du dein Spiel [scarlet]öffentlich[] machen möchtest?
|
steam.friendsonly.tooltip = Whether only Steam friends will be able to join your game.\nUnchecking this box will make your game public - anyone can join.
|
||||||
public.beta = Bemerke: Beta-Versionen des Spiels können keine öffentlichen Spiele machen.
|
public.beta = Bemerke: Beta-Versionen des Spiels können keine öffentlichen Spiele machen.
|
||||||
uiscale.reset = UI-Skalierung wurde geändert.\nDrücke "OK", um diese Skalierung zu bestätigen.\n[scarlet]Zurückkehren und Beenden in[accent] {0}[] Einstellungen...
|
uiscale.reset = UI-Skalierung wurde geändert.\nDrücke "OK", um diese Skalierung zu bestätigen.\n[scarlet]Zurückkehren und Beenden in[accent] {0}[] Einstellungen...
|
||||||
uiscale.cancel = Abbrechen & Beenden
|
uiscale.cancel = Abbrechen & Beenden
|
||||||
@@ -1158,8 +1161,8 @@ keybind.select.name = Auswählen/Schießen
|
|||||||
keybind.diagonal_placement.name = Diagonal platzieren
|
keybind.diagonal_placement.name = Diagonal platzieren
|
||||||
keybind.pick.name = Block auswählen
|
keybind.pick.name = Block auswählen
|
||||||
keybind.break_block.name = Block zerstören
|
keybind.break_block.name = Block zerstören
|
||||||
keybind.select_all_units = Alle Einheiten auswählen
|
keybind.select_all_units.name = Alle Einheiten auswählen
|
||||||
keybind.select_all_unit_factories = Alle Einheitenfabriken auswählen
|
keybind.select_all_unit_factories.name = Alle Einheitenfabriken auswählen
|
||||||
keybind.deselect.name = Auswahl aufheben
|
keybind.deselect.name = Auswahl aufheben
|
||||||
keybind.pickupCargo.name = Block aufheben
|
keybind.pickupCargo.name = Block aufheben
|
||||||
keybind.dropCargo.name = Block fallen lassen
|
keybind.dropCargo.name = Block fallen lassen
|
||||||
@@ -1952,7 +1955,7 @@ block.inverted-sorter.description = Wie ein normaler Sortierer, aber gibt das au
|
|||||||
block.router.description = Verteilt Materialien auf bis zu drei Richtungen.
|
block.router.description = Verteilt Materialien auf bis zu drei Richtungen.
|
||||||
block.router.details = Ein nötiges Übel. Es ist nicht empfehlenswert, ihn neben Fabriken zu setzen, da er sich dort verstopfen kann.
|
block.router.details = Ein nötiges Übel. Es ist nicht empfehlenswert, ihn neben Fabriken zu setzen, da er sich dort verstopfen kann.
|
||||||
block.distributor.description = Verteilt Materialien auf bis zu sieben Richtungen.
|
block.distributor.description = Verteilt Materialien auf bis zu sieben Richtungen.
|
||||||
block.overflow-gate.description = Gibt Materialien nur zu den Seiten heraus, wenn der fordere Ausgang blockiert ist.
|
block.overflow-gate.description = Gibt Materialien nur zu den Seiten heraus, wenn der vordere Ausgang blockiert ist.
|
||||||
block.underflow-gate.description = Das Gegenteil eines Überlauftors. Gibt Materialien nur nach vorne heraus, wenn die Seiten blockiert sind.
|
block.underflow-gate.description = Das Gegenteil eines Überlauftors. Gibt Materialien nur nach vorne heraus, wenn die Seiten blockiert sind.
|
||||||
block.mass-driver.description = Ein Transportblock mit sehr hoher Reichweite. Sammelt mehrere Materialien und schießt sie zu einem verbundenen Massenbeschleuniger.
|
block.mass-driver.description = Ein Transportblock mit sehr hoher Reichweite. Sammelt mehrere Materialien und schießt sie zu einem verbundenen Massenbeschleuniger.
|
||||||
block.mechanical-pump.description = Eine Pumpe, die keinen Strom benötigt.
|
block.mechanical-pump.description = Eine Pumpe, die keinen Strom benötigt.
|
||||||
@@ -2098,7 +2101,7 @@ block.blast-door.description = Eine Mauer, die verbündete Bodeneinheiten durchl
|
|||||||
block.duct.description = Bewegt Materialien vorwärts. Kann nur ein einziges Item lagern.
|
block.duct.description = Bewegt Materialien vorwärts. Kann nur ein einziges Item lagern.
|
||||||
block.armored-duct.description = Bewegt Materialien vorwärts. Materialen können von der Seite nur aus Rohrleitugnen herein.
|
block.armored-duct.description = Bewegt Materialien vorwärts. Materialen können von der Seite nur aus Rohrleitugnen herein.
|
||||||
block.duct-router.description = Verteilt Materialien gleichmäßig auf bis zu drei Richtungen. Nimmt Materialien nur aus einer Richtung an. Kann als Sortierer verwendet werden.
|
block.duct-router.description = Verteilt Materialien gleichmäßig auf bis zu drei Richtungen. Nimmt Materialien nur aus einer Richtung an. Kann als Sortierer verwendet werden.
|
||||||
block.overflow-duct.description = Gibt Materialien nur zu den Seiten heraus, wenn der fordere Ausgang blockiert ist.
|
block.overflow-duct.description = Gibt Materialien nur zu den Seiten heraus, wenn der vordere Ausgang blockiert ist.
|
||||||
block.duct-bridge.description = Transportierrt Materialen über Blöcke und Terrain.
|
block.duct-bridge.description = Transportierrt Materialen über Blöcke und Terrain.
|
||||||
block.duct-unloader.description = Entlädt Materialen aus dem Block dahinter. Kann nicht aus Kernen entladen.
|
block.duct-unloader.description = Entlädt Materialen aus dem Block dahinter. Kann nicht aus Kernen entladen.
|
||||||
block.underflow-duct.description = Das Gegenteil eines Überlauftors. Gibt Materialien nur nach vorne heraus, wenn die Seiten blockiert sind.
|
block.underflow-duct.description = Das Gegenteil eines Überlauftors. Gibt Materialien nur nach vorne heraus, wenn die Seiten blockiert sind.
|
||||||
@@ -2233,6 +2236,7 @@ lst.flushmessage = Zeige eine Nachricht aus dem Textspeicher auf dem Bildschirm.
|
|||||||
lst.cutscene = Verschiebe die Spielerkamera.
|
lst.cutscene = Verschiebe die Spielerkamera.
|
||||||
lst.setflag = Setze eine Flag, die von allen Prozessoren gelesen werden kann.
|
lst.setflag = Setze eine Flag, die von allen Prozessoren gelesen werden kann.
|
||||||
lst.getflag = Überprüfe, ob eine Flag gesetzt ist.
|
lst.getflag = Überprüfe, ob eine Flag gesetzt ist.
|
||||||
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
|
||||||
logic.nounitbuild = [red]Logik, die Blöcke baut, ist hier nicht erlaubt.
|
logic.nounitbuild = [red]Logik, die Blöcke baut, ist hier nicht erlaubt.
|
||||||
|
|
||||||
|
|||||||
@@ -896,6 +896,7 @@ stat.repairspeed = Velocidad de reparación
|
|||||||
stat.weapons = Armas
|
stat.weapons = Armas
|
||||||
stat.bullet = Proyectil
|
stat.bullet = Proyectil
|
||||||
stat.moduletier = Categoría de módulo
|
stat.moduletier = Categoría de módulo
|
||||||
|
stat.unittype = Unit Type
|
||||||
stat.speedincrease = Aumento de velocidad
|
stat.speedincrease = Aumento de velocidad
|
||||||
stat.range = Alcance
|
stat.range = Alcance
|
||||||
stat.drilltier = Taladrables
|
stat.drilltier = Taladrables
|
||||||
@@ -989,6 +990,8 @@ bullet.splashdamage = [stat]{0}[lightgray] daño en área ~[stat] {1}[lightgray]
|
|||||||
bullet.incendiary = [stat]incendiaria
|
bullet.incendiary = [stat]incendiaria
|
||||||
bullet.homing = [stat]rastreadora
|
bullet.homing = [stat]rastreadora
|
||||||
bullet.armorpierce = [stat]perforación de armadura
|
bullet.armorpierce = [stat]perforación de armadura
|
||||||
|
bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles
|
||||||
|
bullet.interval = [stat]{0}/sec[lightgray] interval bullets:
|
||||||
bullet.frags = [stat]{0}[lightgray]x proyectiles fragmentados:
|
bullet.frags = [stat]{0}[lightgray]x proyectiles fragmentados:
|
||||||
bullet.lightning = [stat]{0}[lightgray]x rayos ~ [stat]{1}[lightgray] daño
|
bullet.lightning = [stat]{0}[lightgray]x rayos ~ [stat]{1}[lightgray] daño
|
||||||
bullet.buildingdamage = [stat]{0}%[lightgray] daño a estructuras
|
bullet.buildingdamage = [stat]{0}%[lightgray] daño a estructuras
|
||||||
@@ -1102,8 +1105,8 @@ setting.bridgeopacity.name = Opacidad de puentes
|
|||||||
setting.playerchat.name = Mostrar chat de burbuja de jugadores
|
setting.playerchat.name = Mostrar chat de burbuja de jugadores
|
||||||
setting.showweather.name = Efectos visuales climáticos
|
setting.showweather.name = Efectos visuales climáticos
|
||||||
setting.hidedisplays.name = Ocultar monitores lógicos
|
setting.hidedisplays.name = Ocultar monitores lógicos
|
||||||
public.confirm = ¿Quieres hacer pública tu partida?\n[lightgray]Esto se puede cambiar más tarde en "Configuración->Juego->Visibilidad pública de la partida".
|
steam.friendsonly = Friends Only
|
||||||
public.confirm.really = ¡Si quieres jugar con amigos, usa [green]Invitar a Amigos[] en lugar de un [scarlet]Servidor Público[]!\n¿De verdad quieres hacer [scarlet]pública[] tu partida?
|
steam.friendsonly.tooltip = Whether only Steam friends will be able to join your game.\nUnchecking this box will make your game public - anyone can join.
|
||||||
public.beta = Recuerda que no puedes crear partidas públicas en las versiones beta del juego.
|
public.beta = Recuerda que no puedes crear partidas públicas en las versiones beta del juego.
|
||||||
uiscale.reset = La escala de interfaz ha sido modificada.\nPulsa "OK" para conservar esta escala.\n[scarlet]Se desharán los cambios automáticamente en [accent] {0}[] segundos...
|
uiscale.reset = La escala de interfaz ha sido modificada.\nPulsa "OK" para conservar esta escala.\n[scarlet]Se desharán los cambios automáticamente en [accent] {0}[] segundos...
|
||||||
uiscale.cancel = Cancelar y salir
|
uiscale.cancel = Cancelar y salir
|
||||||
@@ -1155,8 +1158,8 @@ keybind.select.name = Seleccionar/Disparar
|
|||||||
keybind.diagonal_placement.name = Construcción diagonal
|
keybind.diagonal_placement.name = Construcción diagonal
|
||||||
keybind.pick.name = Copiar bloque
|
keybind.pick.name = Copiar bloque
|
||||||
keybind.break_block.name = Deconstruir bloque
|
keybind.break_block.name = Deconstruir bloque
|
||||||
keybind.select_all_units = Seleccionar todas las unidades
|
keybind.select_all_units.name = Seleccionar todas las unidades
|
||||||
keybind.select_all_unit_factories = Seleccionar todas las fábricas de unidades
|
keybind.select_all_unit_factories.name = Seleccionar todas las fábricas de unidades
|
||||||
keybind.deselect.name = Deseleccionar
|
keybind.deselect.name = Deseleccionar
|
||||||
keybind.pickupCargo.name = Cargar bloque/unidad
|
keybind.pickupCargo.name = Cargar bloque/unidad
|
||||||
keybind.dropCargo.name = Soltar bloque/unidad
|
keybind.dropCargo.name = Soltar bloque/unidad
|
||||||
@@ -2227,6 +2230,7 @@ lst.flushmessage = Muestra un mensaje en pantalla desde la lista de espera de te
|
|||||||
lst.cutscene = Manipula la cámara del jugador.
|
lst.cutscene = Manipula la cámara del jugador.
|
||||||
lst.setflag = Establece una etiqueta global que se puede leer desde todos los procesadores.
|
lst.setflag = Establece una etiqueta global que se puede leer desde todos los procesadores.
|
||||||
lst.getflag = Comprueba si se ha establecido una etiqueta global.
|
lst.getflag = Comprueba si se ha establecido una etiqueta global.
|
||||||
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
|
||||||
logic.nounitbuild = [red]No se permite construir bloques de categoría lógica.
|
logic.nounitbuild = [red]No se permite construir bloques de categoría lógica.
|
||||||
|
|
||||||
|
|||||||
@@ -876,6 +876,7 @@ stat.repairspeed = Repair Speed
|
|||||||
stat.weapons = Weapons
|
stat.weapons = Weapons
|
||||||
stat.bullet = Bullet
|
stat.bullet = Bullet
|
||||||
stat.moduletier = Module Tier
|
stat.moduletier = Module Tier
|
||||||
|
stat.unittype = Unit Type
|
||||||
stat.speedincrease = Kiiruse suurenemine
|
stat.speedincrease = Kiiruse suurenemine
|
||||||
stat.range = Ulatus
|
stat.range = Ulatus
|
||||||
stat.drilltier = Kaevandatav
|
stat.drilltier = Kaevandatav
|
||||||
@@ -969,6 +970,8 @@ bullet.splashdamage = [stat]{0}[lightgray] hävituspunkti ~[stat] {1}[lightgray]
|
|||||||
bullet.incendiary = [stat]süttiv
|
bullet.incendiary = [stat]süttiv
|
||||||
bullet.homing = [stat]isesihtiv
|
bullet.homing = [stat]isesihtiv
|
||||||
bullet.armorpierce = [stat]armor piercing
|
bullet.armorpierce = [stat]armor piercing
|
||||||
|
bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles
|
||||||
|
bullet.interval = [stat]{0}/sec[lightgray] interval bullets:
|
||||||
bullet.frags = [stat]{0}[lightgray]x frag bullets:
|
bullet.frags = [stat]{0}[lightgray]x frag bullets:
|
||||||
bullet.lightning = [stat]{0}[lightgray]x lightning ~ [stat]{1}[lightgray] damage
|
bullet.lightning = [stat]{0}[lightgray]x lightning ~ [stat]{1}[lightgray] damage
|
||||||
bullet.buildingdamage = [stat]{0}%[lightgray] building damage
|
bullet.buildingdamage = [stat]{0}%[lightgray] building damage
|
||||||
@@ -1082,8 +1085,8 @@ setting.bridgeopacity.name = Bridge Opacity
|
|||||||
setting.playerchat.name = Näita mängusisest vestlusakent
|
setting.playerchat.name = Näita mängusisest vestlusakent
|
||||||
setting.showweather.name = Show Weather Graphics
|
setting.showweather.name = Show Weather Graphics
|
||||||
setting.hidedisplays.name = Hide Logic Displays
|
setting.hidedisplays.name = Hide Logic Displays
|
||||||
public.confirm = Do you want to make your game public?\n[accent]Anyone will be able to join your games.\n[lightgray]This can be changed later in Settings->Game->Public Game Visibility.
|
steam.friendsonly = Friends Only
|
||||||
public.confirm.really = If you want to play with friends, use [green]Invite Friend[] instead of a [scarlet]Public server[]!\nAre you sure you want to make your game [scarlet]public[]?
|
steam.friendsonly.tooltip = Whether only Steam friends will be able to join your game.\nUnchecking this box will make your game public - anyone can join.
|
||||||
public.beta = Note that beta versions of the game cannot make public lobbies.
|
public.beta = Note that beta versions of the game cannot make public lobbies.
|
||||||
uiscale.reset = Kasutajaliidese suurust on muudetud.\nVajuta nupule "OK", et uus suurus kinnitada.\n[scarlet]Esialgne suurus taastatakse[accent] {0}[] sekundi pärast...
|
uiscale.reset = Kasutajaliidese suurust on muudetud.\nVajuta nupule "OK", et uus suurus kinnitada.\n[scarlet]Esialgne suurus taastatakse[accent] {0}[] sekundi pärast...
|
||||||
uiscale.cancel = Tühista ja välju
|
uiscale.cancel = Tühista ja välju
|
||||||
@@ -1135,8 +1138,8 @@ keybind.select.name = Vali/Tulista
|
|||||||
keybind.diagonal_placement.name = Diagonaalne paigutamine
|
keybind.diagonal_placement.name = Diagonaalne paigutamine
|
||||||
keybind.pick.name = Vali blokk
|
keybind.pick.name = Vali blokk
|
||||||
keybind.break_block.name = Hävita blokk
|
keybind.break_block.name = Hävita blokk
|
||||||
keybind.select_all_units = Select All Units
|
keybind.select_all_units.name = Select All Units
|
||||||
keybind.select_all_unit_factories = Select All Unit Factories
|
keybind.select_all_unit_factories.name = Select All Unit Factories
|
||||||
keybind.deselect.name = Tühista valik
|
keybind.deselect.name = Tühista valik
|
||||||
keybind.pickupCargo.name = Pickup Cargo
|
keybind.pickupCargo.name = Pickup Cargo
|
||||||
keybind.dropCargo.name = Drop Cargo
|
keybind.dropCargo.name = Drop Cargo
|
||||||
@@ -2187,6 +2190,7 @@ lst.flushmessage = Display a message on the screen from the text buffer.\nWill w
|
|||||||
lst.cutscene = Manipulate the player camera.
|
lst.cutscene = Manipulate the player camera.
|
||||||
lst.setflag = Set a global flag that can be read by all processors.
|
lst.setflag = Set a global flag that can be read by all processors.
|
||||||
lst.getflag = Check if a global flag is set.
|
lst.getflag = Check if a global flag is set.
|
||||||
|
lst.setprop = Sets a property of a unit or building.
|
||||||
logic.nounitbuild = [red]Unit building logic is not allowed here.
|
logic.nounitbuild = [red]Unit building logic is not allowed here.
|
||||||
lenum.type = Type of building/unit.\ne.g. for any router, this will return [accent]@router[].\nNot a string.
|
lenum.type = Type of building/unit.\ne.g. for any router, this will return [accent]@router[].\nNot a string.
|
||||||
lenum.shoot = Shoot at a position.
|
lenum.shoot = Shoot at a position.
|
||||||
|
|||||||
@@ -878,6 +878,7 @@ stat.repairspeed = Repair Speed
|
|||||||
stat.weapons = Weapons
|
stat.weapons = Weapons
|
||||||
stat.bullet = Bullet
|
stat.bullet = Bullet
|
||||||
stat.moduletier = Module Tier
|
stat.moduletier = Module Tier
|
||||||
|
stat.unittype = Unit Type
|
||||||
stat.speedincrease = Abiadura areagotzea
|
stat.speedincrease = Abiadura areagotzea
|
||||||
stat.range = Irismena
|
stat.range = Irismena
|
||||||
stat.drilltier = Ustiagarriak
|
stat.drilltier = Ustiagarriak
|
||||||
@@ -971,6 +972,8 @@ bullet.splashdamage = [stat]{0}[lightgray] ingurune-kaltea ~[stat] {1}[lightgray
|
|||||||
bullet.incendiary = [stat]su-eragilea
|
bullet.incendiary = [stat]su-eragilea
|
||||||
bullet.homing = [stat]gidatua
|
bullet.homing = [stat]gidatua
|
||||||
bullet.armorpierce = [stat]armor piercing
|
bullet.armorpierce = [stat]armor piercing
|
||||||
|
bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles
|
||||||
|
bullet.interval = [stat]{0}/sec[lightgray] interval bullets:
|
||||||
bullet.frags = [stat]{0}[lightgray]x frag bullets:
|
bullet.frags = [stat]{0}[lightgray]x frag bullets:
|
||||||
bullet.lightning = [stat]{0}[lightgray]x lightning ~ [stat]{1}[lightgray] damage
|
bullet.lightning = [stat]{0}[lightgray]x lightning ~ [stat]{1}[lightgray] damage
|
||||||
bullet.buildingdamage = [stat]{0}%[lightgray] building damage
|
bullet.buildingdamage = [stat]{0}%[lightgray] building damage
|
||||||
@@ -1084,8 +1087,8 @@ setting.bridgeopacity.name = Bridge Opacity
|
|||||||
setting.playerchat.name = Erakutsi jolas barneko txata
|
setting.playerchat.name = Erakutsi jolas barneko txata
|
||||||
setting.showweather.name = Show Weather Graphics
|
setting.showweather.name = Show Weather Graphics
|
||||||
setting.hidedisplays.name = Hide Logic Displays
|
setting.hidedisplays.name = Hide Logic Displays
|
||||||
public.confirm = Zure jolasa publikoa egin nahi duzu?\n[accent]Edonor elkartu ahal izango da zure partidetara.\n[lightgray]Hau gero ere aldatu dauteke, Ezarpenak->Partida->Partida publikoaren ikusgaitasuna.
|
steam.friendsonly = Friends Only
|
||||||
public.confirm.really = If you want to play with friends, use [green]Invite Friend[] instead of a [scarlet]Public server[]!\nAre you sure you want to make your game [scarlet]public[]?
|
steam.friendsonly.tooltip = Whether only Steam friends will be able to join your game.\nUnchecking this box will make your game public - anyone can join.
|
||||||
public.beta = Kontuan izan jolasaren beta bertsioek ezin dituztela jokalarien gela publokoak sortu.
|
public.beta = Kontuan izan jolasaren beta bertsioek ezin dituztela jokalarien gela publokoak sortu.
|
||||||
uiscale.reset = Interfazearen eskala aldatu da.\nSakatu "Ados" eskala hau berresteko.\n[scarlet][accent] {0}[] segundo atzera egin eta irteteko...
|
uiscale.reset = Interfazearen eskala aldatu da.\nSakatu "Ados" eskala hau berresteko.\n[scarlet][accent] {0}[] segundo atzera egin eta irteteko...
|
||||||
uiscale.cancel = Utzi eta irten
|
uiscale.cancel = Utzi eta irten
|
||||||
@@ -1137,8 +1140,8 @@ keybind.select.name = Hautatu/Tirokatu
|
|||||||
keybind.diagonal_placement.name = Kokatze diagonala
|
keybind.diagonal_placement.name = Kokatze diagonala
|
||||||
keybind.pick.name = Jaso blokea
|
keybind.pick.name = Jaso blokea
|
||||||
keybind.break_block.name = Apurtu blokea
|
keybind.break_block.name = Apurtu blokea
|
||||||
keybind.select_all_units = Select All Units
|
keybind.select_all_units.name = Select All Units
|
||||||
keybind.select_all_unit_factories = Select All Unit Factories
|
keybind.select_all_unit_factories.name = Select All Unit Factories
|
||||||
keybind.deselect.name = Deshautatu
|
keybind.deselect.name = Deshautatu
|
||||||
keybind.pickupCargo.name = Pickup Cargo
|
keybind.pickupCargo.name = Pickup Cargo
|
||||||
keybind.dropCargo.name = Drop Cargo
|
keybind.dropCargo.name = Drop Cargo
|
||||||
@@ -2189,6 +2192,7 @@ lst.flushmessage = Display a message on the screen from the text buffer.\nWill w
|
|||||||
lst.cutscene = Manipulate the player camera.
|
lst.cutscene = Manipulate the player camera.
|
||||||
lst.setflag = Set a global flag that can be read by all processors.
|
lst.setflag = Set a global flag that can be read by all processors.
|
||||||
lst.getflag = Check if a global flag is set.
|
lst.getflag = Check if a global flag is set.
|
||||||
|
lst.setprop = Sets a property of a unit or building.
|
||||||
logic.nounitbuild = [red]Unit building logic is not allowed here.
|
logic.nounitbuild = [red]Unit building logic is not allowed here.
|
||||||
lenum.type = Type of building/unit.\ne.g. for any router, this will return [accent]@router[].\nNot a string.
|
lenum.type = Type of building/unit.\ne.g. for any router, this will return [accent]@router[].\nNot a string.
|
||||||
lenum.shoot = Shoot at a position.
|
lenum.shoot = Shoot at a position.
|
||||||
|
|||||||
@@ -875,6 +875,7 @@ stat.repairspeed = Korjausnopeus
|
|||||||
stat.weapons = Aseet
|
stat.weapons = Aseet
|
||||||
stat.bullet = Ammus
|
stat.bullet = Ammus
|
||||||
stat.moduletier = Moduulin taso
|
stat.moduletier = Moduulin taso
|
||||||
|
stat.unittype = Unit Type
|
||||||
stat.speedincrease = Nopeuden kasvu
|
stat.speedincrease = Nopeuden kasvu
|
||||||
stat.range = Etäisyys
|
stat.range = Etäisyys
|
||||||
stat.drilltier = Porattavat
|
stat.drilltier = Porattavat
|
||||||
@@ -968,6 +969,8 @@ bullet.splashdamage = [stat]{0}[lightgray] Aluevahinko ~[stat] {1}[lightgray] pa
|
|||||||
bullet.incendiary = [stat]sytyttävä
|
bullet.incendiary = [stat]sytyttävä
|
||||||
bullet.homing = [stat]itseohjautuva
|
bullet.homing = [stat]itseohjautuva
|
||||||
bullet.armorpierce = [stat]haarniskan läpäisevä
|
bullet.armorpierce = [stat]haarniskan läpäisevä
|
||||||
|
bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles
|
||||||
|
bullet.interval = [stat]{0}/sec[lightgray] interval bullets:
|
||||||
bullet.frags = [stat]{0}[lightgray]x sirpaleammuksia:
|
bullet.frags = [stat]{0}[lightgray]x sirpaleammuksia:
|
||||||
bullet.lightning = [stat]{0}[lightgray]x salama ~ [stat]{1}[lightgray] vahinkoa
|
bullet.lightning = [stat]{0}[lightgray]x salama ~ [stat]{1}[lightgray] vahinkoa
|
||||||
bullet.buildingdamage = [stat]{0}%[lightgray] vahinko rakennuksiin
|
bullet.buildingdamage = [stat]{0}%[lightgray] vahinko rakennuksiin
|
||||||
@@ -1081,8 +1084,8 @@ setting.bridgeopacity.name = Siltojen läpinäkyvyys
|
|||||||
setting.playerchat.name = Näytä pelinsisäinen keskustelu
|
setting.playerchat.name = Näytä pelinsisäinen keskustelu
|
||||||
setting.showweather.name = Näytä säägrafiikat
|
setting.showweather.name = Näytä säägrafiikat
|
||||||
setting.hidedisplays.name = Piilota logiikkanäytöt
|
setting.hidedisplays.name = Piilota logiikkanäytöt
|
||||||
public.confirm = Haluatko tehdä pelistäsi julkisen?\n[accent]Kuka tahansa voi liittyä peliisi.\n[lightgray]Tämä voidaan muuttaa myöhemmin: Asetukset->Peli->Julkisen pelin näkyvyys
|
steam.friendsonly = Friends Only
|
||||||
public.confirm.really = Jos halat pelata kaverien kanssa, käytä [green]Kutsu kaveri[] -toimintoa, älä [scarlet]Julkinen palvelin[] -toimintoa!\nOletko varma, että haluat tehdä pelistäsi [scarlet]julkisen[]?
|
steam.friendsonly.tooltip = Whether only Steam friends will be able to join your game.\nUnchecking this box will make your game public - anyone can join.
|
||||||
public.beta = Huomaa, että pelin betaversiot eivät voi luoda julkisia auloja.
|
public.beta = Huomaa, että pelin betaversiot eivät voi luoda julkisia auloja.
|
||||||
uiscale.reset = UI:n skaalaa on muutettu.\nPaina "OK" hyväksyäksesi tämän skaalan.\n[scarlet]Palautetaan ja poistutaan[accent] {0}[] sekunnissa...
|
uiscale.reset = UI:n skaalaa on muutettu.\nPaina "OK" hyväksyäksesi tämän skaalan.\n[scarlet]Palautetaan ja poistutaan[accent] {0}[] sekunnissa...
|
||||||
uiscale.cancel = Peruuta ja poistu
|
uiscale.cancel = Peruuta ja poistu
|
||||||
@@ -1134,8 +1137,8 @@ keybind.select.name = Valitse/Ammu
|
|||||||
keybind.diagonal_placement.name = Vino sijoitus
|
keybind.diagonal_placement.name = Vino sijoitus
|
||||||
keybind.pick.name = Ota palikka
|
keybind.pick.name = Ota palikka
|
||||||
keybind.break_block.name = Riko palikka
|
keybind.break_block.name = Riko palikka
|
||||||
keybind.select_all_units = Select All Units
|
keybind.select_all_units.name = Select All Units
|
||||||
keybind.select_all_unit_factories = Select All Unit Factories
|
keybind.select_all_unit_factories.name = Select All Unit Factories
|
||||||
keybind.deselect.name = Poista valinta
|
keybind.deselect.name = Poista valinta
|
||||||
keybind.pickupCargo.name = Nosta lastia
|
keybind.pickupCargo.name = Nosta lastia
|
||||||
keybind.dropCargo.name = Pudota lastia
|
keybind.dropCargo.name = Pudota lastia
|
||||||
@@ -2190,6 +2193,7 @@ lst.flushmessage = Näytä näytöllä viesti tekstipuskurista.\nOdottaa, kunnes
|
|||||||
lst.cutscene = Hallitse pelaajan kameraa.
|
lst.cutscene = Hallitse pelaajan kameraa.
|
||||||
lst.setflag = Aseta globaali tunniste, jonka kaikki prosessorit voivat lukea.
|
lst.setflag = Aseta globaali tunniste, jonka kaikki prosessorit voivat lukea.
|
||||||
lst.getflag = Tarkista, onko globaali tunniste asetettu.
|
lst.getflag = Tarkista, onko globaali tunniste asetettu.
|
||||||
|
lst.setprop = Sets a property of a unit or building.
|
||||||
logic.nounitbuild = [red]Logiikan käyttö ei täällä ole sallittu yksikköjen tuottamisessa.
|
logic.nounitbuild = [red]Logiikan käyttö ei täällä ole sallittu yksikköjen tuottamisessa.
|
||||||
lenum.type = Rakennuksen/Yksikön tyyppi.\nEsim. jokaisesta reitittimestä tämä palauttaa [accent]@router[].\nEi ole merkkijono.
|
lenum.type = Rakennuksen/Yksikön tyyppi.\nEsim. jokaisesta reitittimestä tämä palauttaa [accent]@router[].\nEi ole merkkijono.
|
||||||
lenum.shoot = Ammu tiettyä sijaintia.
|
lenum.shoot = Ammu tiettyä sijaintia.
|
||||||
|
|||||||
@@ -875,6 +875,7 @@ stat.repairspeed = Repair Speed
|
|||||||
stat.weapons = Weapons
|
stat.weapons = Weapons
|
||||||
stat.bullet = Bullet
|
stat.bullet = Bullet
|
||||||
stat.moduletier = Module Tier
|
stat.moduletier = Module Tier
|
||||||
|
stat.unittype = Unit Type
|
||||||
stat.speedincrease = Speed Increase
|
stat.speedincrease = Speed Increase
|
||||||
stat.range = Range
|
stat.range = Range
|
||||||
stat.drilltier = Drillables
|
stat.drilltier = Drillables
|
||||||
@@ -968,6 +969,8 @@ bullet.splashdamage = [stat]{0}[lightgray] area dmg ~[stat] {1}[lightgray] tiles
|
|||||||
bullet.incendiary = [stat]incendiary
|
bullet.incendiary = [stat]incendiary
|
||||||
bullet.homing = [stat]homing
|
bullet.homing = [stat]homing
|
||||||
bullet.armorpierce = [stat]armor piercing
|
bullet.armorpierce = [stat]armor piercing
|
||||||
|
bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles
|
||||||
|
bullet.interval = [stat]{0}/sec[lightgray] interval bullets:
|
||||||
bullet.frags = [stat]{0}[lightgray]x frag bullets:
|
bullet.frags = [stat]{0}[lightgray]x frag bullets:
|
||||||
bullet.lightning = [stat]{0}[lightgray]x lightning ~ [stat]{1}[lightgray] damage
|
bullet.lightning = [stat]{0}[lightgray]x lightning ~ [stat]{1}[lightgray] damage
|
||||||
bullet.buildingdamage = [stat]{0}%[lightgray] building damage
|
bullet.buildingdamage = [stat]{0}%[lightgray] building damage
|
||||||
@@ -1081,8 +1084,8 @@ setting.bridgeopacity.name = Bridge Opacity
|
|||||||
setting.playerchat.name = Ipakita Player Bubble Chat
|
setting.playerchat.name = Ipakita Player Bubble Chat
|
||||||
setting.showweather.name = Show Weather Graphics
|
setting.showweather.name = Show Weather Graphics
|
||||||
setting.hidedisplays.name = Hide Logic Displays
|
setting.hidedisplays.name = Hide Logic Displays
|
||||||
public.confirm = Do you want to make your game public?\n[accent]Anyone will be able to join your games.\n[lightgray]This can be changed later in Settings->Game->Public Game Visibility.
|
steam.friendsonly = Friends Only
|
||||||
public.confirm.really = If you want to play with friends, use [green]Invite Friend[] instead of a [scarlet]Public server[]!\nAre you sure you want to make your game [scarlet]public[]?
|
steam.friendsonly.tooltip = Whether only Steam friends will be able to join your game.\nUnchecking this box will make your game public - anyone can join.
|
||||||
public.beta = Tandaan na ang mga beta na bersyon ng laro ay hindi maaaring gumawa ng mga pampublikong lobby.
|
public.beta = Tandaan na ang mga beta na bersyon ng laro ay hindi maaaring gumawa ng mga pampublikong lobby.
|
||||||
uiscale.reset = Nabago ang sukat ng UI.\nPindutin ang "OK" upang kumpirmahin ang sukat na ito.\n[scarlet]Binabalik at lalabas sa dating anyo ng[accent] {0}[] segundo...
|
uiscale.reset = Nabago ang sukat ng UI.\nPindutin ang "OK" upang kumpirmahin ang sukat na ito.\n[scarlet]Binabalik at lalabas sa dating anyo ng[accent] {0}[] segundo...
|
||||||
uiscale.cancel = I-Cancel & Exit
|
uiscale.cancel = I-Cancel & Exit
|
||||||
@@ -1134,8 +1137,8 @@ keybind.select.name = Select/Shoot
|
|||||||
keybind.diagonal_placement.name = Diagonal Placement
|
keybind.diagonal_placement.name = Diagonal Placement
|
||||||
keybind.pick.name = Pick Block
|
keybind.pick.name = Pick Block
|
||||||
keybind.break_block.name = Break Block
|
keybind.break_block.name = Break Block
|
||||||
keybind.select_all_units = Select All Units
|
keybind.select_all_units.name = Select All Units
|
||||||
keybind.select_all_unit_factories = Select All Unit Factories
|
keybind.select_all_unit_factories.name = Select All Unit Factories
|
||||||
keybind.deselect.name = Deselect
|
keybind.deselect.name = Deselect
|
||||||
keybind.pickupCargo.name = Pickup Cargo
|
keybind.pickupCargo.name = Pickup Cargo
|
||||||
keybind.dropCargo.name = Drop Cargo
|
keybind.dropCargo.name = Drop Cargo
|
||||||
@@ -2186,6 +2189,7 @@ lst.flushmessage = Display a message on the screen from the text buffer.\nWill w
|
|||||||
lst.cutscene = Manipulate the player camera.
|
lst.cutscene = Manipulate the player camera.
|
||||||
lst.setflag = Set a global flag that can be read by all processors.
|
lst.setflag = Set a global flag that can be read by all processors.
|
||||||
lst.getflag = Check if a global flag is set.
|
lst.getflag = Check if a global flag is set.
|
||||||
|
lst.setprop = Sets a property of a unit or building.
|
||||||
logic.nounitbuild = [red]Unit building logic is not allowed here.
|
logic.nounitbuild = [red]Unit building logic is not allowed here.
|
||||||
lenum.type = Type of building/unit.\ne.g. for any router, this will return [accent]@router[].\nNot a string.
|
lenum.type = Type of building/unit.\ne.g. for any router, this will return [accent]@router[].\nNot a string.
|
||||||
lenum.shoot = Shoot at a position.
|
lenum.shoot = Shoot at a position.
|
||||||
|
|||||||
@@ -900,6 +900,7 @@ stat.repairspeed = Vitesse de réparation
|
|||||||
stat.weapons = Armes
|
stat.weapons = Armes
|
||||||
stat.bullet = Balles
|
stat.bullet = Balles
|
||||||
stat.moduletier = Tier
|
stat.moduletier = Tier
|
||||||
|
stat.unittype = Unit Type
|
||||||
stat.speedincrease = Accélération
|
stat.speedincrease = Accélération
|
||||||
stat.range = Portée
|
stat.range = Portée
|
||||||
stat.drilltier = Blocs forables
|
stat.drilltier = Blocs forables
|
||||||
@@ -993,6 +994,8 @@ bullet.splashdamage = [stat]{0}[lightgray] dégâts de zone ~[stat] {1}[lightgra
|
|||||||
bullet.incendiary = [stat]incendiaire
|
bullet.incendiary = [stat]incendiaire
|
||||||
bullet.homing = [stat]autoguidé
|
bullet.homing = [stat]autoguidé
|
||||||
bullet.armorpierce = [stat]perceur d'armure
|
bullet.armorpierce = [stat]perceur d'armure
|
||||||
|
bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles
|
||||||
|
bullet.interval = [stat]{0}/sec[lightgray] interval bullets:
|
||||||
bullet.frags = [stat]{0}[lightgray]x Balle à fragmentation :
|
bullet.frags = [stat]{0}[lightgray]x Balle à fragmentation :
|
||||||
bullet.lightning = [stat]{0}[lightgray]x foudre ~ [stat]{1}[lightgray] dégâts
|
bullet.lightning = [stat]{0}[lightgray]x foudre ~ [stat]{1}[lightgray] dégâts
|
||||||
bullet.buildingdamage = [stat]{0}%[lightgray] des dégâts aux bâtiments
|
bullet.buildingdamage = [stat]{0}%[lightgray] des dégâts aux bâtiments
|
||||||
@@ -1106,8 +1109,8 @@ setting.bridgeopacity.name = Opacité des ponts
|
|||||||
setting.playerchat.name = Montrer les bulles de discussion des joueurs
|
setting.playerchat.name = Montrer les bulles de discussion des joueurs
|
||||||
setting.showweather.name = Montrer les Effets météo
|
setting.showweather.name = Montrer les Effets météo
|
||||||
setting.hidedisplays.name = Cacher les Écrans
|
setting.hidedisplays.name = Cacher les Écrans
|
||||||
public.confirm = Voulez-vous rendre votre partie publique ?\n[accent]N'importe qui pourra rejoindre vos parties.\n[lightgray]Ce paramètre peut être changé plus tard dans Paramètres->Jeu->Visibilité de la Partie Publique
|
steam.friendsonly = Friends Only
|
||||||
public.confirm.really = Si vous voulez jouer avec des amis, utilisez [green]Inviter un Ami[] Au lieu [scarlet]d'un Serveur Public[] !\nÊtes-vous sûrs de vouloir rendre votre partie [scarlet]publique[] ?
|
steam.friendsonly.tooltip = Whether only Steam friends will be able to join your game.\nUnchecking this box will make your game public - anyone can join.
|
||||||
public.beta = Notez que les versions bêta du jeu ne peuvent pas créer de salons publics.
|
public.beta = Notez que les versions bêta du jeu ne peuvent pas créer de salons publics.
|
||||||
uiscale.reset = L'échelle de l'interface a été modifiée.\nAppuyez sur "OK" pour confirmer.\n[scarlet]Rétablissement des anciens paramètres et fermeture du jeu dans [accent] {0}[] secondes...
|
uiscale.reset = L'échelle de l'interface a été modifiée.\nAppuyez sur "OK" pour confirmer.\n[scarlet]Rétablissement des anciens paramètres et fermeture du jeu dans [accent] {0}[] secondes...
|
||||||
uiscale.cancel = Annuler & Quitter
|
uiscale.cancel = Annuler & Quitter
|
||||||
@@ -1159,8 +1162,8 @@ keybind.select.name = Sélectionner/Tirer
|
|||||||
keybind.diagonal_placement.name = Placement en diagonale
|
keybind.diagonal_placement.name = Placement en diagonale
|
||||||
keybind.pick.name = Choisir un bloc
|
keybind.pick.name = Choisir un bloc
|
||||||
keybind.break_block.name = Supprimer un bloc
|
keybind.break_block.name = Supprimer un bloc
|
||||||
keybind.select_all_units = Sélectionner toutes les Unités
|
keybind.select_all_units.name = Sélectionner toutes les Unités
|
||||||
keybind.select_all_unit_factories = Sélectionner toutes les Usines d'Unités
|
keybind.select_all_unit_factories.name = Sélectionner toutes les Usines d'Unités
|
||||||
keybind.deselect.name = Désélectionner
|
keybind.deselect.name = Désélectionner
|
||||||
keybind.pickupCargo.name = Prendre un Chargement
|
keybind.pickupCargo.name = Prendre un Chargement
|
||||||
keybind.dropCargo.name = Lâcher un Chargement
|
keybind.dropCargo.name = Lâcher un Chargement
|
||||||
@@ -2233,6 +2236,7 @@ lst.flushmessage = Affiche un message sur l'écran depuis la mémoire tampon de
|
|||||||
lst.cutscene = Manipule la caméra du joueur.
|
lst.cutscene = Manipule la caméra du joueur.
|
||||||
lst.setflag = Définit un drapeau global qui peut être lu par tous les processeurs.
|
lst.setflag = Définit un drapeau global qui peut être lu par tous les processeurs.
|
||||||
lst.getflag = Vérifie si un drapeau global est présent.
|
lst.getflag = Vérifie si un drapeau global est présent.
|
||||||
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
|
||||||
logic.nounitbuild = [red]Les unités contrôlées par des processeurs ne peuvent pas construire ici.
|
logic.nounitbuild = [red]Les unités contrôlées par des processeurs ne peuvent pas construire ici.
|
||||||
|
|
||||||
|
|||||||
@@ -885,6 +885,7 @@ stat.repairspeed = Repair Speed
|
|||||||
stat.weapons = Fegyverek
|
stat.weapons = Fegyverek
|
||||||
stat.bullet = Töltény
|
stat.bullet = Töltény
|
||||||
stat.moduletier = Module Tier
|
stat.moduletier = Module Tier
|
||||||
|
stat.unittype = Unit Type
|
||||||
stat.speedincrease = Gyorsítás
|
stat.speedincrease = Gyorsítás
|
||||||
stat.range = Hatótáv
|
stat.range = Hatótáv
|
||||||
stat.drilltier = Kitermelhető
|
stat.drilltier = Kitermelhető
|
||||||
@@ -978,6 +979,8 @@ bullet.splashdamage = [stat]{0}[lightgray] területi sebzés ~[stat] {1}[lightgr
|
|||||||
bullet.incendiary = [stat]gyújtó
|
bullet.incendiary = [stat]gyújtó
|
||||||
bullet.homing = [stat]nyomkövető
|
bullet.homing = [stat]nyomkövető
|
||||||
bullet.armorpierce = [stat]armor piercing
|
bullet.armorpierce = [stat]armor piercing
|
||||||
|
bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles
|
||||||
|
bullet.interval = [stat]{0}/sec[lightgray] interval bullets:
|
||||||
bullet.frags = [stat]{0}[lightgray]x frag bullets:
|
bullet.frags = [stat]{0}[lightgray]x frag bullets:
|
||||||
bullet.lightning = [stat]{0}[lightgray]x lightning ~ [stat]{1}[lightgray] damage
|
bullet.lightning = [stat]{0}[lightgray]x lightning ~ [stat]{1}[lightgray] damage
|
||||||
bullet.buildingdamage = [stat]{0}%[lightgray] épület sebzés
|
bullet.buildingdamage = [stat]{0}%[lightgray] épület sebzés
|
||||||
@@ -1091,8 +1094,8 @@ setting.bridgeopacity.name = Híd átlátszatlansága
|
|||||||
setting.playerchat.name = Játékos szóbuborékok megjelenítése
|
setting.playerchat.name = Játékos szóbuborékok megjelenítése
|
||||||
setting.showweather.name = Időjárás grafika megjelenítése
|
setting.showweather.name = Időjárás grafika megjelenítése
|
||||||
setting.hidedisplays.name = Hide Logic Displays
|
setting.hidedisplays.name = Hide Logic Displays
|
||||||
public.confirm = Szeretnéd a játékot nyilvánossá tenni?\n[accent]Bárki beléphet a játékaidba.\n[lightgray]Ezt később megváltoztathatod a Beállítások->Játék->Nyilvános játék láthatósága menüpontban.
|
steam.friendsonly = Friends Only
|
||||||
public.confirm.really = Ha a barátaiddal szeretnél játszani, használd a [green]Barátok meghívása[] funkciót [scarlet]Nyilvános szerver[] helyett!\nBiztosan szeretnéd, hogy a játékod [scarlet]nyilvános[] legyen?
|
steam.friendsonly.tooltip = Whether only Steam friends will be able to join your game.\nUnchecking this box will make your game public - anyone can join.
|
||||||
public.beta = Ne feledd, hogy a játék béta verziójában nem tudsz nyilvános szobát nyitni.
|
public.beta = Ne feledd, hogy a játék béta verziójában nem tudsz nyilvános szobát nyitni.
|
||||||
uiscale.reset = Az UI mérete megváltozott.\nAz "OK" gombbal megerősítheted ezt a méretet.\n[scarlet]Visszavonás és kilépés [accent] {0}[] másodperc múlva...
|
uiscale.reset = Az UI mérete megváltozott.\nAz "OK" gombbal megerősítheted ezt a méretet.\n[scarlet]Visszavonás és kilépés [accent] {0}[] másodperc múlva...
|
||||||
uiscale.cancel = Mégse és Kilépés
|
uiscale.cancel = Mégse és Kilépés
|
||||||
@@ -1144,8 +1147,8 @@ keybind.select.name = Kiválasztás/Lövés
|
|||||||
keybind.diagonal_placement.name = Átlós elhelyezés
|
keybind.diagonal_placement.name = Átlós elhelyezés
|
||||||
keybind.pick.name = Blokk másolása
|
keybind.pick.name = Blokk másolása
|
||||||
keybind.break_block.name = Blokk törlése
|
keybind.break_block.name = Blokk törlése
|
||||||
keybind.select_all_units = Select All Units
|
keybind.select_all_units.name = Select All Units
|
||||||
keybind.select_all_unit_factories = Select All Unit Factories
|
keybind.select_all_unit_factories.name = Select All Unit Factories
|
||||||
keybind.deselect.name = Blokk választás törlése
|
keybind.deselect.name = Blokk választás törlése
|
||||||
keybind.pickupCargo.name = Rakomány felvétele
|
keybind.pickupCargo.name = Rakomány felvétele
|
||||||
keybind.dropCargo.name = Rakomány lerakása
|
keybind.dropCargo.name = Rakomány lerakása
|
||||||
@@ -2198,6 +2201,7 @@ lst.flushmessage = Display a message on the screen from the text buffer.\nWill w
|
|||||||
lst.cutscene = Manipulate the player camera.
|
lst.cutscene = Manipulate the player camera.
|
||||||
lst.setflag = Set a global flag that can be read by all processors.
|
lst.setflag = Set a global flag that can be read by all processors.
|
||||||
lst.getflag = Check if a global flag is set.
|
lst.getflag = Check if a global flag is set.
|
||||||
|
lst.setprop = Sets a property of a unit or building.
|
||||||
logic.nounitbuild = [red]Unit building logic is not allowed here.
|
logic.nounitbuild = [red]Unit building logic is not allowed here.
|
||||||
lenum.type = Type of building/unit.\ne.g. for any router, this will return [accent]@router[].\nNot a string.
|
lenum.type = Type of building/unit.\ne.g. for any router, this will return [accent]@router[].\nNot a string.
|
||||||
lenum.shoot = Shoot at a position.
|
lenum.shoot = Shoot at a position.
|
||||||
|
|||||||
@@ -896,6 +896,7 @@ stat.repairspeed = Kecepatan Memperbaiki
|
|||||||
stat.weapons = Senjata
|
stat.weapons = Senjata
|
||||||
stat.bullet = Peluru
|
stat.bullet = Peluru
|
||||||
stat.moduletier = Tingkatan Modul
|
stat.moduletier = Tingkatan Modul
|
||||||
|
stat.unittype = Unit Type
|
||||||
stat.speedincrease = Tambahan Kecepatan
|
stat.speedincrease = Tambahan Kecepatan
|
||||||
stat.range = Jarak
|
stat.range = Jarak
|
||||||
stat.drilltier = Sumber Daya yang Ditambang
|
stat.drilltier = Sumber Daya yang Ditambang
|
||||||
@@ -989,6 +990,8 @@ bullet.splashdamage = [stat]{0}[lightgray] kekuatan percikan~[stat] {1}[lightgra
|
|||||||
bullet.incendiary = [stat]membakar
|
bullet.incendiary = [stat]membakar
|
||||||
bullet.homing = [stat]mengejar
|
bullet.homing = [stat]mengejar
|
||||||
bullet.armorpierce = [stat]menembus baju besi
|
bullet.armorpierce = [stat]menembus baju besi
|
||||||
|
bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles
|
||||||
|
bullet.interval = [stat]{0}/sec[lightgray] interval bullets:
|
||||||
bullet.frags = [stat]{0}[lightgray]x pecahan:
|
bullet.frags = [stat]{0}[lightgray]x pecahan:
|
||||||
bullet.lightning = [stat]{0}[lightgray]x petir ~ [stat]{1}[lightgray] kerusakan
|
bullet.lightning = [stat]{0}[lightgray]x petir ~ [stat]{1}[lightgray] kerusakan
|
||||||
bullet.buildingdamage = [stat]{0}%[lightgray] kerusakan bangunan
|
bullet.buildingdamage = [stat]{0}%[lightgray] kerusakan bangunan
|
||||||
@@ -1102,8 +1105,8 @@ setting.bridgeopacity.name = Jelas-Beningnya Jembatan
|
|||||||
setting.playerchat.name = Tunjukkan Pesan dalam Permainan
|
setting.playerchat.name = Tunjukkan Pesan dalam Permainan
|
||||||
setting.showweather.name = Perlihatkan Cuaca
|
setting.showweather.name = Perlihatkan Cuaca
|
||||||
setting.hidedisplays.name = Sembunyikan Tampilan Logika
|
setting.hidedisplays.name = Sembunyikan Tampilan Logika
|
||||||
public.confirm = Apakah kamu ingin mempublikasi permainanmu?\n[accent]Siapa saja bisa masuk ke permainanmu.\n[lightgray]Ini bisa diganti di Peraturan->Permainan->Visibilitas Game Publik.
|
steam.friendsonly = Friends Only
|
||||||
public.confirm.really = Jika kamu ingin bermain dengan temanmu, gunakan [green]Undang Teman[] daripada [scarlet]server publik[]!\nApakah kamu yakin ingin membuat permainanmu [scarlet]publik[]?
|
steam.friendsonly.tooltip = Whether only Steam friends will be able to join your game.\nUnchecking this box will make your game public - anyone can join.
|
||||||
public.beta = Ingat bahwa game versi beta tidak dapat membuat lobi publik.
|
public.beta = Ingat bahwa game versi beta tidak dapat membuat lobi publik.
|
||||||
uiscale.reset = Skala UI telah diubah.\nTekan "OK" untuk mengonfirmasi.\n[scarlet]Kembali dan keluar di[accent] {0}[] pengaturan...
|
uiscale.reset = Skala UI telah diubah.\nTekan "OK" untuk mengonfirmasi.\n[scarlet]Kembali dan keluar di[accent] {0}[] pengaturan...
|
||||||
uiscale.cancel = Batal & Keluar
|
uiscale.cancel = Batal & Keluar
|
||||||
@@ -1155,8 +1158,8 @@ keybind.select.name = Pilih/Tembak
|
|||||||
keybind.diagonal_placement.name = Penaruhan Diagonal
|
keybind.diagonal_placement.name = Penaruhan Diagonal
|
||||||
keybind.pick.name = Memilih Blok
|
keybind.pick.name = Memilih Blok
|
||||||
keybind.break_block.name = Menghancurkan Blok
|
keybind.break_block.name = Menghancurkan Blok
|
||||||
keybind.select_all_units = Select All Units
|
keybind.select_all_units.name = Select All Units
|
||||||
keybind.select_all_unit_factories = Select All Unit Factories
|
keybind.select_all_unit_factories.name = Select All Unit Factories
|
||||||
keybind.deselect.name = Batal Memilih
|
keybind.deselect.name = Batal Memilih
|
||||||
keybind.pickupCargo.name = Angkat Muatan
|
keybind.pickupCargo.name = Angkat Muatan
|
||||||
keybind.dropCargo.name = Turunkan Muatan
|
keybind.dropCargo.name = Turunkan Muatan
|
||||||
@@ -2225,6 +2228,7 @@ lst.flushmessage = Tampilkan sebuah pesan di layar dari antrian teks.\nAkan menu
|
|||||||
lst.cutscene = Mengendalikan kamera pemain.
|
lst.cutscene = Mengendalikan kamera pemain.
|
||||||
lst.setflag = Menentukan global flag yang dapat dibaca oleh semua prosesor.
|
lst.setflag = Menentukan global flag yang dapat dibaca oleh semua prosesor.
|
||||||
lst.getflag = Periksa apakah ada global flag yang ditentukan.
|
lst.getflag = Periksa apakah ada global flag yang ditentukan.
|
||||||
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
|
||||||
logic.nounitbuild = [red]Logika unit membangun tidak diperbolehkan di sini.
|
logic.nounitbuild = [red]Logika unit membangun tidak diperbolehkan di sini.
|
||||||
|
|
||||||
|
|||||||
@@ -149,7 +149,7 @@ mod.unmetdependencies = [red]Unmet Dependencies
|
|||||||
mod.erroredcontent = [scarlet]Errori di Contenuto
|
mod.erroredcontent = [scarlet]Errori di Contenuto
|
||||||
mod.circulardependencies = [red]Circular Dependencies
|
mod.circulardependencies = [red]Circular Dependencies
|
||||||
mod.incompletedependencies = [red]Incomplete Dependencies
|
mod.incompletedependencies = [red]Incomplete Dependencies
|
||||||
mod.requiresversion.details = Requires game version: [accent]{0}[]\nYour game is outdated. This mod requires a newer version of the game (possibly a beta/alpha release) to function.
|
mod.requiresversion.details = Richiede la versione del gioco: [accent]{0}[]\nIl tuo gioco è obsoleto. Questa mod richiede una versione più recente del gioco (possibilmente una versione beta/alpha) per funzionare.
|
||||||
mod.outdatedv7.details = This mod is incompatible with the latest version of the game. The author must update it, and add [accent]minGameVersion: 136[] to its [accent]mod.json[] file.
|
mod.outdatedv7.details = This mod is incompatible with the latest version of the game. The author must update it, and add [accent]minGameVersion: 136[] to its [accent]mod.json[] file.
|
||||||
mod.blacklisted.details = This mod has been manually blacklisted for causing crashes or other issues with this version of the game. Do not use it.
|
mod.blacklisted.details = This mod has been manually blacklisted for causing crashes or other issues with this version of the game. Do not use it.
|
||||||
mod.missingdependencies.details = This mod is missing dependencies: {0}
|
mod.missingdependencies.details = This mod is missing dependencies: {0}
|
||||||
@@ -328,7 +328,7 @@ open = Apri
|
|||||||
customize = Personalizza
|
customize = Personalizza
|
||||||
cancel = Annulla
|
cancel = Annulla
|
||||||
command = Comando
|
command = Comando
|
||||||
command.mine = Mine
|
command.mine = Mina
|
||||||
command.repair = Ripara
|
command.repair = Ripara
|
||||||
command.rebuild = Ricostruisci
|
command.rebuild = Ricostruisci
|
||||||
command.assist = Aiuta giocatore
|
command.assist = Aiuta giocatore
|
||||||
@@ -763,8 +763,8 @@ sector.windsweptIslands.description = Oltre la fascia costiera si trova questo r
|
|||||||
sector.extractionOutpost.description = Un avamposto remoto, costruito dai nemici con l'obiettivo di lanciare risorse in altri settori.\n\nLa tecnologia di trasposto a settori-incrociati è essenziale per un ulteriore conquista. Distruggi la base. scopri la loro Rampa di Lancio.
|
sector.extractionOutpost.description = Un avamposto remoto, costruito dai nemici con l'obiettivo di lanciare risorse in altri settori.\n\nLa tecnologia di trasposto a settori-incrociati è essenziale per un ulteriore conquista. Distruggi la base. scopri la loro Rampa di Lancio.
|
||||||
sector.impact0078.description = Qui giaciono i resti della nave da trasporto interstellare che fu la prima ad entrare in questo sistema.\n\nRecupera per quanto possibile dal relitto. Scopri qualsiasi tecnologia intatta.
|
sector.impact0078.description = Qui giaciono i resti della nave da trasporto interstellare che fu la prima ad entrare in questo sistema.\n\nRecupera per quanto possibile dal relitto. Scopri qualsiasi tecnologia intatta.
|
||||||
sector.planetaryTerminal.description = Il bersaglio finale.\n\nQuesta base costiera contiene una struttura capace di lanciare Nuclei ai pianeti locali. È estremamente protetto.\n\nProduci unità navali. Elimina il nemico il più rapidamente possibile. Scopri la struttura di lancio.
|
sector.planetaryTerminal.description = Il bersaglio finale.\n\nQuesta base costiera contiene una struttura capace di lanciare Nuclei ai pianeti locali. È estremamente protetto.\n\nProduci unità navali. Elimina il nemico il più rapidamente possibile. Scopri la struttura di lancio.
|
||||||
sector.coastline.description = Remnants of naval unit technology have been detected at this location. Repel the enemy attacks, capture this sector, and acquire the technology.
|
sector.coastline.description = In questo settore sono stati rilevati resti di tecnologia di unità navali. Respingi gli attacchi nemici, cattura il settore e acquisisci la tecnologia.
|
||||||
sector.navalFortress.description = The enemy has established a base on a remote, naturally-fortified island. Destroy this outpost. Acquire their advanced naval craft technology, and research it.
|
sector.navalFortress.description = Il nemico ha stabilito una base su un'isola remota e fortificata naturalmente. Distruggi questo avamposto. Acquisisci la loro tecnologia navale avanzata e fate ricerche.
|
||||||
sector.onset.name = The Onset
|
sector.onset.name = The Onset
|
||||||
sector.aegis.name = Aegis
|
sector.aegis.name = Aegis
|
||||||
sector.lake.name = Nome
|
sector.lake.name = Nome
|
||||||
@@ -882,6 +882,7 @@ stat.repairspeed = Velocità di riparazione
|
|||||||
stat.weapons = Armi
|
stat.weapons = Armi
|
||||||
stat.bullet = Proiettile
|
stat.bullet = Proiettile
|
||||||
stat.moduletier = Grado del modulo
|
stat.moduletier = Grado del modulo
|
||||||
|
stat.unittype = Unit Type
|
||||||
stat.speedincrease = Potenziamento Velocità
|
stat.speedincrease = Potenziamento Velocità
|
||||||
stat.range = Raggio
|
stat.range = Raggio
|
||||||
stat.drilltier = Scavabili
|
stat.drilltier = Scavabili
|
||||||
@@ -975,6 +976,8 @@ bullet.splashdamage = [stat]{0}[lightgray] danno ad area ~[stat] {1}[lightgray]
|
|||||||
bullet.incendiary = [stat]incendiario
|
bullet.incendiary = [stat]incendiario
|
||||||
bullet.homing = [stat]autoguidato
|
bullet.homing = [stat]autoguidato
|
||||||
bullet.armorpierce = [stat]perforazione alle armature
|
bullet.armorpierce = [stat]perforazione alle armature
|
||||||
|
bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles
|
||||||
|
bullet.interval = [stat]{0}/sec[lightgray] interval bullets:
|
||||||
bullet.frags = [stat]{0}[lightgray]x frammentazione:
|
bullet.frags = [stat]{0}[lightgray]x frammentazione:
|
||||||
bullet.lightning = [stat]{0}[lightgray]x fulmine ~ [stat]{1}[lightgray] danno
|
bullet.lightning = [stat]{0}[lightgray]x fulmine ~ [stat]{1}[lightgray] danno
|
||||||
bullet.buildingdamage = [stat]{0}%[lightgray] danno alle costruzioni
|
bullet.buildingdamage = [stat]{0}%[lightgray] danno alle costruzioni
|
||||||
@@ -1017,7 +1020,7 @@ category.items = Oggetti
|
|||||||
category.crafting = Produzione
|
category.crafting = Produzione
|
||||||
category.function = Funzione
|
category.function = Funzione
|
||||||
category.optional = Miglioramenti Opzionali
|
category.optional = Miglioramenti Opzionali
|
||||||
setting.skipcoreanimation.name = Salta il lancio del nucleo/Animazionw
|
setting.skipcoreanimation.name = Salta il lancio del nucleo/Animazione
|
||||||
setting.landscape.name = Visuale Orizontale
|
setting.landscape.name = Visuale Orizontale
|
||||||
setting.shadows.name = Ombre
|
setting.shadows.name = Ombre
|
||||||
setting.blockreplace.name = Suggerimento Blocchi Automatico
|
setting.blockreplace.name = Suggerimento Blocchi Automatico
|
||||||
@@ -1088,8 +1091,8 @@ setting.bridgeopacity.name = Opacità Nastri e Condotti Sopraelevati
|
|||||||
setting.playerchat.name = Mostra Chat
|
setting.playerchat.name = Mostra Chat
|
||||||
setting.showweather.name = Mostra grafica del meteo
|
setting.showweather.name = Mostra grafica del meteo
|
||||||
setting.hidedisplays.name = Nascondi display logici
|
setting.hidedisplays.name = Nascondi display logici
|
||||||
public.confirm = Vuoi rendere la tua partita pubblica?\n[accent]Chiunque sarà in grado di accedere alle tue partite.\n[lightgray]Questo può essere modificato più tardi in Impostazioni->Gioco->Partite Pubbliche.
|
steam.friendsonly = Friends Only
|
||||||
public.confirm.really = Se vuoi giocare con gli amici, usa [green]Invita Amico[] Al posto di un [scarlet]server pubblico[]!\nSicuro di voler rendere [scarlet]pubblica[] la tua partita?
|
steam.friendsonly.tooltip = Whether only Steam friends will be able to join your game.\nUnchecking this box will make your game public - anyone can join.
|
||||||
public.beta = Nota che le versioni beta del gioco non possono creare lobby pubbliche.
|
public.beta = Nota che le versioni beta del gioco non possono creare lobby pubbliche.
|
||||||
uiscale.reset = La scala dell'interfaccia utente è stata modificata.\nPremere 'OK' per confermare questa scala.\n[scarlet]Ripristina ed esci in [accent] {0}[] secondi...
|
uiscale.reset = La scala dell'interfaccia utente è stata modificata.\nPremere 'OK' per confermare questa scala.\n[scarlet]Ripristina ed esci in [accent] {0}[] secondi...
|
||||||
uiscale.cancel = Annulla ed Esci
|
uiscale.cancel = Annulla ed Esci
|
||||||
@@ -1141,8 +1144,8 @@ keybind.select.name = Seleziona/Spara
|
|||||||
keybind.diagonal_placement.name = Posiziona Diagonalmente
|
keybind.diagonal_placement.name = Posiziona Diagonalmente
|
||||||
keybind.pick.name = Scegli Blocco
|
keybind.pick.name = Scegli Blocco
|
||||||
keybind.break_block.name = Rompi Blocco
|
keybind.break_block.name = Rompi Blocco
|
||||||
keybind.select_all_units = Select All Units
|
keybind.select_all_units.name = Select All Units
|
||||||
keybind.select_all_unit_factories = Select All Unit Factories
|
keybind.select_all_unit_factories.name = Select All Unit Factories
|
||||||
keybind.deselect.name = Deseleziona
|
keybind.deselect.name = Deseleziona
|
||||||
keybind.pickupCargo.name = Raccogli Carico
|
keybind.pickupCargo.name = Raccogli Carico
|
||||||
keybind.dropCargo.name = Rilascia Carico
|
keybind.dropCargo.name = Rilascia Carico
|
||||||
@@ -2142,31 +2145,31 @@ unit.omura.description = Utilizza un bullone sparatato grazie a due binari a sco
|
|||||||
unit.alpha.description = Difende il nucleo Frammento dai nemici. Costruisce strutture.
|
unit.alpha.description = Difende il nucleo Frammento dai nemici. Costruisce strutture.
|
||||||
unit.beta.description = Difende il nucleo Fondamento dai nemici. Costruisce strutture.
|
unit.beta.description = Difende il nucleo Fondamento dai nemici. Costruisce strutture.
|
||||||
unit.gamma.description = Difende il nucleo Kernel dai nemici. Costruisce strutture.
|
unit.gamma.description = Difende il nucleo Kernel dai nemici. Costruisce strutture.
|
||||||
unit.retusa.description = Fires homing torpedoes at nearby enemies. Repairs allied units.
|
unit.retusa.description = Lancia siluri di puntamento contro i nemici vicini. Ripara le unità alleate.
|
||||||
unit.oxynoe.description = Fires structure-repairing streams of flame at nearby enemies. Targets nearby enemy projectiles with a point defense turret.
|
unit.oxynoe.description = Spara flussi di fiamme che riparano le strutture ai nemici vicini. Bersaglia i proiettili nemici nelle vicinanze con una torretta di difesa.
|
||||||
unit.cyerce.description = Fires seeking cluster-missiles at enemies. Repairs allied units.
|
unit.cyerce.description = Spara missili a grappolo contro i nemici. Ripara le unità alleate.
|
||||||
unit.aegires.description = Shocks all enemy units and structures that enter its energy field. Repairs all allies.
|
unit.aegires.description = Scuote tutte le unità e le strutture nemiche che entrano nel suo campo energetico. Ripara tutti gli alleati.
|
||||||
unit.navanax.description = Fires explosive EMP projectiles, dealing significant damage to enemy power networks and repairing allied structures. Melts nearby enemies with 4 autonomous laser turrets.
|
unit.navanax.description = Spara proiettili EMP esplosivi, infliggendo danni significativi alle reti elettriche nemiche e riparando le strutture alleate. Scioglie i nemici vicini con 4 torrette laser autonome.
|
||||||
unit.stell.description = Fires standard bullets at enemy targets.
|
unit.stell.description = Spara proiettili standard contro i bersagli nemici.
|
||||||
unit.locus.description = Fires alternating bullets at enemy targets.
|
unit.locus.description = Spara proiettili alternati contro i bersagli nemici.
|
||||||
unit.precept.description = Fires piercing cluster bullets at enemy targets.
|
unit.precept.description = Spara proiettili a grappolo perforanti contro i bersagli nemici.
|
||||||
unit.vanquish.description = Fires large piercing splitting bullets at enemy targets.
|
unit.vanquish.description = Spara grandi proiettili perforanti contro i bersagli nemici.
|
||||||
unit.conquer.description = Fires large piercing cascades of bullets at enemy targets.
|
unit.conquer.description = Spara grandi cascate di proiettili perforanti contro i bersagli nemici.
|
||||||
unit.merui.description = Fires long-range artillery at enemy ground targets. Can step over most terrain.
|
unit.merui.description = Spara con l'artiglieria a lungo raggio contro bersagli terrestri nemici. Può superare la maggior parte dei terreni.
|
||||||
unit.cleroi.description = Fires dual shells at enemy targets. Targets enemy projectiles with point defense turrets. Can step over most terrain.
|
unit.cleroi.description = Spara proiettili doppi contro i bersagli nemici. Bersaglia i proiettili nemici con le torrette di difesa. Può superare la maggior parte dei terreni.
|
||||||
unit.anthicus.description = Fires long-range homing missiles at enemy targets. Can step over most terrain.
|
unit.anthicus.description = Spara missili a lunga gittata contro i bersagli nemici. Può superare la maggior parte dei terreni.
|
||||||
unit.tecta.description = Fires homing plasma missiles at enemy targets. Protects itself with a directional shield. Can step over most terrain.
|
unit.tecta.description = Spara missili al plasma a puntamento interno contro i bersagli nemici. Si protegge con uno scudo direzionale. Può superare la maggior parte dei terreni.
|
||||||
unit.collaris.description = Fires long-range fragmenting artillery at enemy targets. Can step over most terrain.
|
unit.collaris.description = Spara con l'artiglieria a frammentazione a lungo raggio contro gli obiettivi nemici. Può superare la maggior parte dei terreni.
|
||||||
unit.elude.description = Fires pairs of homing bullets at enemy targets. Can float over bodies of liquid.
|
unit.elude.description = Spara coppie di proiettili di puntamento contro i bersagli nemici. Può galleggiare su corpi liquidi.
|
||||||
unit.avert.description = Fires twisting pairs of bullets at enemy targets.
|
unit.avert.description = Spara coppie di proiettili a spirale contro i bersagli nemici.
|
||||||
unit.obviate.description = Fires twisting pairs of lightning orbs at enemy targets.
|
unit.obviate.description = Spara coppie di fulmini a spirale contro i bersagli nemici.
|
||||||
unit.quell.description = Fires long-range homing missiles at enemy targets. Suppresses enemy structure repair blocks.
|
unit.quell.description = Spara missili di puntamento a lungo raggio contro gli obiettivi nemici. Sopprime i blocchi di riparazione delle strutture nemiche.
|
||||||
unit.disrupt.description = Fires long-range homing suppression missiles at enemy targets. Suppresses enemy structure repair blocks.
|
unit.disrupt.description = Spara missili di soppressione a lungo raggio contro gli obiettivi nemici. Sopprime i blocchi di riparazione delle strutture nemiche.
|
||||||
unit.evoke.description = Builds structures to defend the Bastion core. Repairs structures with a beam.
|
unit.evoke.description = Costruisce strutture per difendere il nucleo del Bastione. Ripara le strutture con un raggio.
|
||||||
unit.incite.description = Builds structures to defend the Citadel core. Repairs structures with a beam.
|
unit.incite.description = Costruisce strutture per difendere il nucleo della Cittadella. Ripara le strutture con un raggio.
|
||||||
unit.emanate.description = Builds structures to defend the Acropolis core. Repairs structures with beams.
|
unit.emanate.description = Costruisce strutture per difendere il nucleo dell'Acropoli. Ripara le strutture con le travi.
|
||||||
lst.read = Read a number from a linked memory cell.
|
lst.read = Leggi un numero da una cella di memoria collegata.
|
||||||
lst.write = Write a number to a linked memory cell.
|
lst.write = Scrivi un numero in una cella di memoria collegata.
|
||||||
lst.print = Add text to the print buffer.\nDoes not display anything until [accent]Print Flush[] is used.
|
lst.print = Add text to the print buffer.\nDoes not display anything until [accent]Print Flush[] is used.
|
||||||
lst.draw = Add an operation to the drawing buffer.\nDoes not display anything until [accent]Draw Flush[] is used.
|
lst.draw = Add an operation to the drawing buffer.\nDoes not display anything until [accent]Draw Flush[] is used.
|
||||||
lst.drawflush = Flush queued [accent]Draw[] operations to a display.
|
lst.drawflush = Flush queued [accent]Draw[] operations to a display.
|
||||||
@@ -2200,6 +2203,7 @@ lst.flushmessage = Display a message on the screen from the text buffer.\nWill w
|
|||||||
lst.cutscene = Manipulate the player camera.
|
lst.cutscene = Manipulate the player camera.
|
||||||
lst.setflag = Set a global flag that can be read by all processors.
|
lst.setflag = Set a global flag that can be read by all processors.
|
||||||
lst.getflag = Check if a global flag is set.
|
lst.getflag = Check if a global flag is set.
|
||||||
|
lst.setprop = Sets a property of a unit or building.
|
||||||
logic.nounitbuild = [red]Unit building logic is not allowed here.
|
logic.nounitbuild = [red]Unit building logic is not allowed here.
|
||||||
lenum.type = Type of building/unit.\ne.g. for any router, this will return [accent]@router[].\nNot a string.
|
lenum.type = Type of building/unit.\ne.g. for any router, this will return [accent]@router[].\nNot a string.
|
||||||
lenum.shoot = Shoot at a position.
|
lenum.shoot = Shoot at a position.
|
||||||
|
|||||||
@@ -888,6 +888,7 @@ stat.repairspeed = 修復速度
|
|||||||
stat.weapons = 武器
|
stat.weapons = 武器
|
||||||
stat.bullet = 弾丸
|
stat.bullet = 弾丸
|
||||||
stat.moduletier = モジュールレベル
|
stat.moduletier = モジュールレベル
|
||||||
|
stat.unittype = Unit Type
|
||||||
stat.speedincrease = 速度向上
|
stat.speedincrease = 速度向上
|
||||||
stat.range = 範囲
|
stat.range = 範囲
|
||||||
stat.drilltier = ドリル
|
stat.drilltier = ドリル
|
||||||
@@ -981,6 +982,8 @@ bullet.splashdamage = [stat]{0}[lightgray] 範囲ダメージ 約[stat] {1}[ligh
|
|||||||
bullet.incendiary = [stat]焼夷弾
|
bullet.incendiary = [stat]焼夷弾
|
||||||
bullet.homing = [stat]追尾弾
|
bullet.homing = [stat]追尾弾
|
||||||
bullet.armorpierce = [stat]アーマー貫通
|
bullet.armorpierce = [stat]アーマー貫通
|
||||||
|
bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles
|
||||||
|
bullet.interval = [stat]{0}/sec[lightgray] interval bullets:
|
||||||
bullet.frags = [stat]{0}[lightgray]x frag bullets:
|
bullet.frags = [stat]{0}[lightgray]x frag bullets:
|
||||||
bullet.lightning = [stat]{0}[lightgray]x ライトニング ~ [stat]{1}[lightgray] ダメージ
|
bullet.lightning = [stat]{0}[lightgray]x ライトニング ~ [stat]{1}[lightgray] ダメージ
|
||||||
bullet.buildingdamage = [stat]{0}%[lightgray] 対物ダメージ
|
bullet.buildingdamage = [stat]{0}%[lightgray] 対物ダメージ
|
||||||
@@ -1094,8 +1097,8 @@ setting.bridgeopacity.name = ブリッジの透明度
|
|||||||
setting.playerchat.name = ゲーム内にチャットを表示
|
setting.playerchat.name = ゲーム内にチャットを表示
|
||||||
setting.showweather.name = 天気のグラフィックを表示
|
setting.showweather.name = 天気のグラフィックを表示
|
||||||
setting.hidedisplays.name = 描画されているロジックディスプレイを非表示
|
setting.hidedisplays.name = 描画されているロジックディスプレイを非表示
|
||||||
public.confirm = ゲームを公開しますか?\n[accent]誰でもゲームに参加できるようになります。\n[lightgray]あとから設定で変更できます。
|
steam.friendsonly = Friends Only
|
||||||
public.confirm.really = フレンドと遊びたい場合は、[scarlet]公開サーバー[] ではなく [green]フレンド招待[] を使おう!\nゲームを [scarlet]公開[]してもよろしいですか?
|
steam.friendsonly.tooltip = Whether only Steam friends will be able to join your game.\nUnchecking this box will make your game public - anyone can join.
|
||||||
public.beta = ベータ版では使用できません。
|
public.beta = ベータ版では使用できません。
|
||||||
uiscale.reset = UIサイズが変更されました。\nこのままでよければ「OK」を押してください。\n[scarlet][accent]{0}[] 秒で元の設定に戻ります...
|
uiscale.reset = UIサイズが変更されました。\nこのままでよければ「OK」を押してください。\n[scarlet][accent]{0}[] 秒で元の設定に戻ります...
|
||||||
uiscale.cancel = キャンセル & 終了
|
uiscale.cancel = キャンセル & 終了
|
||||||
@@ -1147,8 +1150,8 @@ keybind.select.name = 選択/ショット
|
|||||||
keybind.diagonal_placement.name = 斜め設置
|
keybind.diagonal_placement.name = 斜め設置
|
||||||
keybind.pick.name = ブロックの選択
|
keybind.pick.name = ブロックの選択
|
||||||
keybind.break_block.name = ブロックの破壊
|
keybind.break_block.name = ブロックの破壊
|
||||||
keybind.select_all_units = すべてのユニットを選択
|
keybind.select_all_units.name = すべてのユニットを選択
|
||||||
keybind.select_all_unit_factories = すべてのユニット工場を選択
|
keybind.select_all_unit_factories.name = すべてのユニット工場を選択
|
||||||
keybind.deselect.name = 選択解除
|
keybind.deselect.name = 選択解除
|
||||||
keybind.pickupCargo.name = 貨物を拾う
|
keybind.pickupCargo.name = 貨物を拾う
|
||||||
keybind.dropCargo.name = 貨物を降ろす
|
keybind.dropCargo.name = 貨物を降ろす
|
||||||
@@ -2204,6 +2207,7 @@ lst.flushmessage = テキストバッファから画面にメッセージを表
|
|||||||
lst.cutscene = プレイヤーのカメラを操作します。
|
lst.cutscene = プレイヤーのカメラを操作します。
|
||||||
lst.setflag = 全プロセッサーから読み取れるグローバルフラグを設定します。
|
lst.setflag = 全プロセッサーから読み取れるグローバルフラグを設定します。
|
||||||
lst.getflag = グローバルフラグが設定されているかどうかを確認します。
|
lst.getflag = グローバルフラグが設定されているかどうかを確認します。
|
||||||
|
lst.setprop = Sets a property of a unit or building.
|
||||||
logic.nounitbuild = [red]ここではユニット構築ロジックは使用できません。
|
logic.nounitbuild = [red]ここではユニット構築ロジックは使用できません。
|
||||||
lenum.type = ユニットや建物の種類を取得します。\n例:任意のルーターに対して、 [accent]@router[] を返します。\n文字列ではありません。
|
lenum.type = ユニットや建物の種類を取得します。\n例:任意のルーターに対して、 [accent]@router[] を返します。\n文字列ではありません。
|
||||||
lenum.shoot = 指定した座標に向かって撃ちます。
|
lenum.shoot = 指定した座標に向かって撃ちます。
|
||||||
|
|||||||
@@ -149,15 +149,15 @@ mod.incompatiblemod = [red]호환되지 않음
|
|||||||
mod.blacklisted = [red]지원하지 않음
|
mod.blacklisted = [red]지원하지 않음
|
||||||
mod.unmetdependencies = [red]충촉되지 않은 종속성
|
mod.unmetdependencies = [red]충촉되지 않은 종속성
|
||||||
mod.erroredcontent = [scarlet]콘텐츠 오류
|
mod.erroredcontent = [scarlet]콘텐츠 오류
|
||||||
mod.circulardependencies = [red]Circular Dependencies
|
mod.circulardependencies = [red]순환 의존성
|
||||||
mod.incompletedependencies = [red]Incomplete Dependencies
|
mod.incompletedependencies = [red]불완전한 의존성
|
||||||
mod.requiresversion.details = 게임 버전 요구: [accent]{0}[]\n당신의 게임은 구버전입니다. 이 모드가 작동하려면 최신 버전의 게임이 필요합니다. (베타/알파 릴리즈일 가능성이 있음).
|
mod.requiresversion.details = 게임 버전 요구: [accent]{0}[]\n당신의 게임은 구버전입니다. 이 모드가 작동하려면 최신 버전의 게임이 필요합니다. (베타/알파 릴리즈일 가능성이 있음).
|
||||||
mod.outdatedv7.details = 이 모드는 최신 버전의 게임과 호환되지 않습니다. 반드시 작성자가 업데이트해야 하고, [accent]mod.json[] 파일에 [accent]최소게임버전: 136[]을 추가해야 합니다.
|
mod.outdatedv7.details = 이 모드는 최신 버전의 게임과 호환되지 않습니다. 반드시 작성자가 업데이트해야 하고, [accent]mod.json[] 파일에 [accent]최소게임버전: 136[]을 추가해야 합니다.
|
||||||
mod.blacklisted.details = 이 모드는 이 버전의 게임에서 충돌 또는 기타 문제를 일으키는 것으로 인해 수동으로 블랙리스트에 올라와 있습니다. 사용하지 마세요.
|
mod.blacklisted.details = 이 모드는 이 버전의 게임에서 충돌 또는 기타 문제를 일으키는 것으로 인해 수동으로 블랙리스트에 올라와 있습니다. 사용하지 마세요.
|
||||||
mod.missingdependencies.details = 이 모드에는 종속성이 없음: {0}
|
mod.missingdependencies.details = 이 모드에는 종속성이 없음: {0}
|
||||||
mod.erroredcontent.details = 이 게임은 로딩하는 동안 오류가 발생했습니다. 모드 작성자에게 수정하도록 요청하세요.
|
mod.erroredcontent.details = 이 게임은 로딩하는 동안 오류가 발생했습니다. 모드 작성자에게 수정하도록 요청하세요.
|
||||||
mod.circulardependencies.details = This mod has dependencies that depends on each other.
|
mod.circulardependencies.details = 이 모드는 서로 의존하는 의존성을 지니고 있습니다.
|
||||||
mod.incompletedependencies.details = This mod is unable to be loaded due to invalid or missing dependencies: {0}.
|
mod.incompletedependencies.details = 잘못되었거나 누락한 종속성으로 인해 이 모드를 불러올 수 없습니다: {0}.
|
||||||
mod.requiresversion = 필요한 게임 버전: [red]{0}
|
mod.requiresversion = 필요한 게임 버전: [red]{0}
|
||||||
mod.errors = 콘텐츠를 불러오는 중에 오류가 발생함
|
mod.errors = 콘텐츠를 불러오는 중에 오류가 발생함
|
||||||
mod.noerrorplay = [scarlet]오류가 있는 모드가 있습니다.[] 영향을 받는 모드를 비활성화하거나 플레이하기 전에 오류를 수정하세요.
|
mod.noerrorplay = [scarlet]오류가 있는 모드가 있습니다.[] 영향을 받는 모드를 비활성화하거나 플레이하기 전에 오류를 수정하세요.
|
||||||
@@ -335,7 +335,7 @@ command.repair = 수리
|
|||||||
command.rebuild = 재건
|
command.rebuild = 재건
|
||||||
command.assist = 플레이어 지원
|
command.assist = 플레이어 지원
|
||||||
command.move = 이동
|
command.move = 이동
|
||||||
command.boost = Boost
|
command.boost = 비행
|
||||||
openlink = 링크 열기
|
openlink = 링크 열기
|
||||||
copylink = 링크 복사
|
copylink = 링크 복사
|
||||||
back = 뒤로가기
|
back = 뒤로가기
|
||||||
@@ -411,11 +411,11 @@ editor.mapinfo = 맵 정보
|
|||||||
editor.author = 제작자:
|
editor.author = 제작자:
|
||||||
editor.description = 설명:
|
editor.description = 설명:
|
||||||
editor.nodescription = 맵을 공유하려면 최소 4자 이상의 설명이 있어야 합니다.
|
editor.nodescription = 맵을 공유하려면 최소 4자 이상의 설명이 있어야 합니다.
|
||||||
editor.waves = 단계:
|
editor.waves = 단계
|
||||||
editor.rules = 규칙:
|
editor.rules = 규칙
|
||||||
editor.generation = 지형 생성:
|
editor.generation = 지형 생성
|
||||||
editor.objectives = 목표
|
editor.objectives = 목표
|
||||||
editor.ingame = 인 게임 편집
|
editor.ingame = 인게임 편집
|
||||||
editor.playtest = 맵 테스트
|
editor.playtest = 맵 테스트
|
||||||
editor.publish.workshop = 창작마당 게시
|
editor.publish.workshop = 창작마당 게시
|
||||||
editor.newmap = 맵 만들기
|
editor.newmap = 맵 만들기
|
||||||
@@ -795,7 +795,7 @@ sector.atlas.description = 이 지역은 각기 다른 지형을 포함하고
|
|||||||
sector.split.description = 이 지역에 최소한으로 존재하는 적 주둔군은 새로운 운송 기술을 시험하기에 완벽합니다.
|
sector.split.description = 이 지역에 최소한으로 존재하는 적 주둔군은 새로운 운송 기술을 시험하기에 완벽합니다.
|
||||||
sector.basin.description = {임시}\n\n현재의 마지막 지역. 이 지역은 도전 레벨입니다 - 이후 릴리즈에서 많은 지역이 더 추가될 예정입니다.
|
sector.basin.description = {임시}\n\n현재의 마지막 지역. 이 지역은 도전 레벨입니다 - 이후 릴리즈에서 많은 지역이 더 추가될 예정입니다.
|
||||||
sector.marsh.description = 이 지역은 아르키사이트가 풍부하지만 분출구의 수는 한정적입니다.\n[accent]화학적 연소실[]을 건설하여 전력을 생산하시오.
|
sector.marsh.description = 이 지역은 아르키사이트가 풍부하지만 분출구의 수는 한정적입니다.\n[accent]화학적 연소실[]을 건설하여 전력을 생산하시오.
|
||||||
sector.peaks.description = 이 지역의 산악 지형은 대부분의 기체를 무용지물로 만들었습니다. 비행 기체가 필요합니다.\n적의 방공망에 유의하십시오. 일부 시설은 지원 건물을 공격하여 무력화시킬 수 있습니다.
|
sector.peaks.description = 이 지역의 산악 지형은 대부분의 기체를 무용지물로 만들었습니다. 비행 가능한 기체가 필요합니다.\n적의 방공망에 유의하십시오. 일부 시설은 지원 건물을 공격하여 무력화시킬 수 있습니다.
|
||||||
sector.ravine.description = 적의 중요한 이동 경로이긴 하지만, 해당 구역에선 적의 코어가 감지되지 않았습니다. 다양한 적군을 맞닥뜨릴 것으로 예상됩니다.\n[accent]설금[]을 생산하십시오. 포탑 [accent]어플릭트[]를 건설하십시오.
|
sector.ravine.description = 적의 중요한 이동 경로이긴 하지만, 해당 구역에선 적의 코어가 감지되지 않았습니다. 다양한 적군을 맞닥뜨릴 것으로 예상됩니다.\n[accent]설금[]을 생산하십시오. 포탑 [accent]어플릭트[]를 건설하십시오.
|
||||||
sector.caldera-erekir.description = 이 지역에서 탐지된 자원은 여러 섬에 분산되어 있습니다 .\n드론을 기반으로 한 운송수단을 연구하고 활용하시오.
|
sector.caldera-erekir.description = 이 지역에서 탐지된 자원은 여러 섬에 분산되어 있습니다 .\n드론을 기반으로 한 운송수단을 연구하고 활용하시오.
|
||||||
sector.stronghold.description = 이 지역의 대규모 적 야영지에는 적들이 지키고 있는 상당한 양의 [accent]토륨[] 매장지가 있습니다.\n더 높은 등급의 기체와 포탑을 연구할 때 사용합니다.
|
sector.stronghold.description = 이 지역의 대규모 적 야영지에는 적들이 지키고 있는 상당한 양의 [accent]토륨[] 매장지가 있습니다.\n더 높은 등급의 기체와 포탑을 연구할 때 사용합니다.
|
||||||
@@ -888,6 +888,7 @@ stat.repairspeed = 수리 속도
|
|||||||
stat.weapons = 무기
|
stat.weapons = 무기
|
||||||
stat.bullet = 탄환
|
stat.bullet = 탄환
|
||||||
stat.moduletier = 모듈 등급
|
stat.moduletier = 모듈 등급
|
||||||
|
stat.unittype = Unit Type
|
||||||
stat.speedincrease = 속도 증가
|
stat.speedincrease = 속도 증가
|
||||||
stat.range = 사거리
|
stat.range = 사거리
|
||||||
stat.drilltier = 채굴 가능
|
stat.drilltier = 채굴 가능
|
||||||
@@ -981,6 +982,8 @@ bullet.splashdamage = [stat]{0}[lightgray] 범위 피해량 ~ [stat]{1}[lightgra
|
|||||||
bullet.incendiary = [stat]방화[]
|
bullet.incendiary = [stat]방화[]
|
||||||
bullet.homing = [stat]유도[]
|
bullet.homing = [stat]유도[]
|
||||||
bullet.armorpierce = [stat]방어 관통
|
bullet.armorpierce = [stat]방어 관통
|
||||||
|
bullet.suppression = [stat]{0} sec[lightgray] 수리 억제 ~ [stat]{1}[lightgray] 타일
|
||||||
|
bullet.interval = [stat]{0}/sec[lightgray] 간격 탄환:
|
||||||
bullet.frags = [stat]{0}[lightgray]개 파편 탄환:[][]
|
bullet.frags = [stat]{0}[lightgray]개 파편 탄환:[][]
|
||||||
bullet.lightning = [stat]{0}[lightgray]x 전격 ~ [stat]{1}[lightgray] 피해량[][][][]
|
bullet.lightning = [stat]{0}[lightgray]x 전격 ~ [stat]{1}[lightgray] 피해량[][][][]
|
||||||
bullet.buildingdamage = [stat]{0}%[lightgray] 건물 피해량[][]
|
bullet.buildingdamage = [stat]{0}%[lightgray] 건물 피해량[][]
|
||||||
@@ -1094,8 +1097,8 @@ setting.bridgeopacity.name = 터널 투명도
|
|||||||
setting.playerchat.name = 채팅 말풍선 표시
|
setting.playerchat.name = 채팅 말풍선 표시
|
||||||
setting.showweather.name = 날씨 그래픽 표시
|
setting.showweather.name = 날씨 그래픽 표시
|
||||||
setting.hidedisplays.name = 로직 디스플레이 숨김
|
setting.hidedisplays.name = 로직 디스플레이 숨김
|
||||||
public.confirm = 게임을 모두에게 공개하시겠습니까?\n[accent]모든 플레이어가 게임에 참여할 수 있습니다.\n[lightgray]설정->게임->멀티플레이 공용 서버로 표시에서 나중에 변경할 수 있습니다.\n\n[sky]번역자 추가[]\n[accent]친구끼리 하려고 이 기능을 활성화 한 뒤에, 친구 외에 다른 플레이어가 들어왔을 때\n해당 플레이어를 차단하는 행위는 비매너를 넘어서는 얌체 행위 그 자체입니다.\n정말로 [scarlet]많은 다른 플레이어들이 오길 원한다[]면 확인하세요.
|
steam.friendsonly = 친구 전용
|
||||||
public.confirm.really = [red]친구하고 플레이 하고 싶으면 [scarlet]공용 서버[] 대신에 [green]친구 초대[] 를 사용하세요. 정말로 [scarlet]공용 서버[] 를 열겠습니까?[]
|
steam.friendsonly.tooltip = 게임에 스팀 친구만 접속할 수 있는가에 대한 여부입니다.체크를 해제하면, 누구나 접속할 수 있습니다.
|
||||||
public.beta = 베타 버전의 게임은 공개 서버를 만들 수 없습니다.
|
public.beta = 베타 버전의 게임은 공개 서버를 만들 수 없습니다.
|
||||||
uiscale.reset = UI 스케일이 변경되었습니다.\n"확인"버튼을 눌러 저장하세요.\n[accent] {0}[][scarlet]초 후에 예전 설정으로 되돌리고 게임을 종료합니다...
|
uiscale.reset = UI 스케일이 변경되었습니다.\n"확인"버튼을 눌러 저장하세요.\n[accent] {0}[][scarlet]초 후에 예전 설정으로 되돌리고 게임을 종료합니다...
|
||||||
uiscale.cancel = 취소 후 나가기
|
uiscale.cancel = 취소 후 나가기
|
||||||
@@ -1147,8 +1150,8 @@ keybind.select.name = 선택/공격
|
|||||||
keybind.diagonal_placement.name = 대각선 설치
|
keybind.diagonal_placement.name = 대각선 설치
|
||||||
keybind.pick.name = 블록 선택
|
keybind.pick.name = 블록 선택
|
||||||
keybind.break_block.name = 블록 파괴
|
keybind.break_block.name = 블록 파괴
|
||||||
keybind.select_all_units = 전체 기체 선택
|
keybind.select_all_units.name = 전체 기체 선택
|
||||||
keybind.select_all_unit_factories = 전체 기체 공장 선택
|
keybind.select_all_unit_factories.name = 전체 기체 공장 선택
|
||||||
keybind.deselect.name = 선택해제
|
keybind.deselect.name = 선택해제
|
||||||
keybind.pickupCargo.name = 화물 집기
|
keybind.pickupCargo.name = 화물 집기
|
||||||
keybind.dropCargo.name = 화물 내려놓기
|
keybind.dropCargo.name = 화물 내려놓기
|
||||||
@@ -1224,7 +1227,7 @@ rules.deconstructrefundmultiplier = 철거 환불 배수
|
|||||||
rules.waitForWaveToEnd = 한 단계가 끝날때까지 대기
|
rules.waitForWaveToEnd = 한 단계가 끝날때까지 대기
|
||||||
rules.dropzoneradius = 스폰 구역 범위: [lightgray] (타일)
|
rules.dropzoneradius = 스폰 구역 범위: [lightgray] (타일)
|
||||||
rules.unitammo = 기체 탄약 필요
|
rules.unitammo = 기체 탄약 필요
|
||||||
rules.enemyteam = 상대 팀
|
rules.enemyteam = 적 팀
|
||||||
rules.playerteam = 플레이어 팀
|
rules.playerteam = 플레이어 팀
|
||||||
rules.title.waves = 단계
|
rules.title.waves = 단계
|
||||||
rules.title.resourcesbuilding = 자원 & 건물
|
rules.title.resourcesbuilding = 자원 & 건물
|
||||||
@@ -1237,9 +1240,9 @@ rules.title.planet = 행성
|
|||||||
rules.lighting = 조명 표시
|
rules.lighting = 조명 표시
|
||||||
rules.fog = 전장의 안개
|
rules.fog = 전장의 안개
|
||||||
rules.fire = 방화 허용
|
rules.fire = 방화 허용
|
||||||
rules.anyenv = <상관없음>
|
rules.anyenv = <모두>
|
||||||
rules.explosions = 블록/기체 폭발 피해
|
rules.explosions = 블록/기체 폭발 피해
|
||||||
rules.ambientlight = 자연 조명 표시
|
rules.ambientlight = 주변광
|
||||||
rules.weather = 날씨 추가
|
rules.weather = 날씨 추가
|
||||||
rules.weather.frequency = 빈도:
|
rules.weather.frequency = 빈도:
|
||||||
rules.weather.always = 항상
|
rules.weather.always = 항상
|
||||||
@@ -1780,8 +1783,8 @@ hint.coreUpgrade = 코어는 [accent]상위 코어를 위에 설치[]하여 업
|
|||||||
hint.presetLaunch = [accent]얼어붙은 숲[]과 같은 회색[accent]캠페인 지역[]은 어디에서나 출격해서 올 수 있습니다. 주변 지역을 점령하지 않아도 됩니다.\n\n이와 같은 [accent]네임드 지역[]들은 [accent]선택적[]입니다.
|
hint.presetLaunch = [accent]얼어붙은 숲[]과 같은 회색[accent]캠페인 지역[]은 어디에서나 출격해서 올 수 있습니다. 주변 지역을 점령하지 않아도 됩니다.\n\n이와 같은 [accent]네임드 지역[]들은 [accent]선택적[]입니다.
|
||||||
hint.presetDifficulty = 이 지역은 [scarlet]위험도가 높은[] 지역입니다.\n적절한 기술과 준비 없이 이런 지역들로 출격하는건 [accent]추천하지 않습니다[].
|
hint.presetDifficulty = 이 지역은 [scarlet]위험도가 높은[] 지역입니다.\n적절한 기술과 준비 없이 이런 지역들로 출격하는건 [accent]추천하지 않습니다[].
|
||||||
hint.coreIncinerate = 코어가 자원으로 가득 찬 후에 받는 모든 자원들은 [accent]소각[]될 것입니다.
|
hint.coreIncinerate = 코어가 자원으로 가득 찬 후에 받는 모든 자원들은 [accent]소각[]될 것입니다.
|
||||||
hint.factoryControl = 기체 공장의 [accent]출력 위치[]를 설정하려면, 명령 모드에서 공장 블록을 클릭한 다음, 마우스 오른쪽 버튼으로 위치를 지정합니다.\n생산된 유닛은 자동으로 그곳으로 이동합니다.
|
hint.factoryControl = 기체 공장의 [accent]출력 목적지[]를 설정하려면, 명령 모드에서 공장 블록을 클릭한 다음, 마우스 오른쪽 버튼으로 위치를 지정합니다.\n생산된 유닛은 자동으로 그곳으로 이동합니다.
|
||||||
hint.factoryControl.mobile = 기체 공장의 [accent]출력 위치[]를 설정하려면, 명령 모드에서 공장 블록을 클릭한 다음, 눌러서 위치를 지정합니다.\n생산된 유닛은 자동으로 그곳으로 이동합니다.
|
hint.factoryControl.mobile = 기체 공장의 [accent]출력 목적지[]를 설정하려면, 명령 모드에서 공장 블록을 클릭한 다음, 눌러서 위치를 지정합니다.\n생산된 유닛은 자동으로 그곳으로 이동합니다.
|
||||||
gz.mine = 주변 바닥에 있는 \uf8c4 [accent]구리 광석[]으로 이동하고, 광석을 눌러서 채굴을 시작하세요.
|
gz.mine = 주변 바닥에 있는 \uf8c4 [accent]구리 광석[]으로 이동하고, 광석을 눌러서 채굴을 시작하세요.
|
||||||
gz.mine.mobile = 주변 바닥에 있는 \uf8c4 [accent]구리 광석[]으로 이동하고, 광석을 눌러서 채굴을 시작하세요.
|
gz.mine.mobile = 주변 바닥에 있는 \uf8c4 [accent]구리 광석[]으로 이동하고, 광석을 눌러서 채굴을 시작하세요.
|
||||||
gz.research = \ue875 연구 기록을 여세요.\n\uf870 [accent]기계식 드릴[]을 연구하고, 그 후 오른쪽 아래에 있는 메뉴에서 선택하세요.\n구리조각 위를 눌러서 배치합니다.
|
gz.research = \ue875 연구 기록을 여세요.\n\uf870 [accent]기계식 드릴[]을 연구하고, 그 후 오른쪽 아래에 있는 메뉴에서 선택하세요.\n구리조각 위를 눌러서 배치합니다.
|
||||||
@@ -2117,10 +2120,10 @@ unit.mace.description = 주변의 모든 적을 향해 화염 줄기를 발사
|
|||||||
unit.fortress.description = 지상 목표물을 향해 장거리 포탄을 발사합니다.
|
unit.fortress.description = 지상 목표물을 향해 장거리 포탄을 발사합니다.
|
||||||
unit.scepter.description = 주변의 모든 적을 향해 장전된 탄환을 일제히 발사합니다.
|
unit.scepter.description = 주변의 모든 적을 향해 장전된 탄환을 일제히 발사합니다.
|
||||||
unit.reign.description = 주변의 모든 적을 향해 거대한 관통 탄환을 일제히 발사합니다.
|
unit.reign.description = 주변의 모든 적을 향해 거대한 관통 탄환을 일제히 발사합니다.
|
||||||
unit.nova.description = 적에게 피해를 주고, 아군 구조물을 수리하는 레이저 볼트를 발사합니다. 비행할 수 있습니다.
|
unit.nova.description = 적에게 피해를 주고, 아군 구조물을 수리하는 레이저 볼트를 발사합니다. 이륙할 수 있습니다.
|
||||||
unit.pulsar.description = 적에게 피해를 주고, 아군 구조물을 수리하는 전격을 발사합니다. 비행할 수 있습니다.
|
unit.pulsar.description = 적에게 피해를 주고, 아군 구조물을 수리하는 전격을 발사합니다. 이륙할 수 있습니다.
|
||||||
unit.quasar.description = 적에게 피해를 주고, 아군 구조물을 수리하는 관통 레이저 빔을 발사합니다. 비행할 수 있습니다. 역장을 가지고 있습니다.
|
unit.quasar.description = 적에게 피해를 주고, 아군 구조물을 수리하는 관통 레이저 빔을 발사합니다. 이륙할 수 있습니다. 역장을 가지고 있습니다.
|
||||||
unit.vela.description = 적에게 피해를 주고, 아군 구조물을 수리하는 거대한 지속적인 레이저 빔을 발사합니다. 비행할 수 있습니다.
|
unit.vela.description = 적에게 피해를 주고, 아군 구조물을 수리하는 거대한 지속적인 레이저 빔을 발사합니다. 이륙할 수 있습니다.
|
||||||
unit.corvus.description = 적에게 피해를 주고, 아군 구조물을 수리하는 거대한 레이저 블레스트를 발사합니다. 대부분의 지형 위를 밟을 수 있습니다.
|
unit.corvus.description = 적에게 피해를 주고, 아군 구조물을 수리하는 거대한 레이저 블레스트를 발사합니다. 대부분의 지형 위를 밟을 수 있습니다.
|
||||||
unit.crawler.description = 적을 향해 달려가 자폭하며, 큰 폭발을 일으킵니다.
|
unit.crawler.description = 적을 향해 달려가 자폭하며, 큰 폭발을 일으킵니다.
|
||||||
unit.atrax.description = 지상 목표물을 향해 광재 구체를 발사합니다. 대부분의 지형 위를 밟을 수 있습니다.
|
unit.atrax.description = 지상 목표물을 향해 광재 구체를 발사합니다. 대부분의 지형 위를 밟을 수 있습니다.
|
||||||
@@ -2204,6 +2207,7 @@ lst.flushmessage = 텍스트 버퍼로부터 화면에 메세지를 표시\n이
|
|||||||
lst.cutscene = 플레이어 카메라 조작
|
lst.cutscene = 플레이어 카메라 조작
|
||||||
lst.setflag = 모든 프로세서가 읽을 수 있는 전역 플래그 설정
|
lst.setflag = 모든 프로세서가 읽을 수 있는 전역 플래그 설정
|
||||||
lst.getflag = 전역 플래그가 설정되어 있는지 확인
|
lst.getflag = 전역 플래그가 설정되어 있는지 확인
|
||||||
|
lst.setprop = 기체 혹은 건물의 속성을 설정합니다.
|
||||||
|
|
||||||
logic.nounitbuild = [red]기체의 건설 로직은 여기서 허용되지 않습니다.
|
logic.nounitbuild = [red]기체의 건설 로직은 여기서 허용되지 않습니다.
|
||||||
|
|
||||||
|
|||||||
@@ -876,6 +876,7 @@ stat.repairspeed = Repair Speed
|
|||||||
stat.weapons = Weapons
|
stat.weapons = Weapons
|
||||||
stat.bullet = Bullet
|
stat.bullet = Bullet
|
||||||
stat.moduletier = Module Tier
|
stat.moduletier = Module Tier
|
||||||
|
stat.unittype = Unit Type
|
||||||
stat.speedincrease = Greičio Padidėjimas
|
stat.speedincrease = Greičio Padidėjimas
|
||||||
stat.range = Atstumas
|
stat.range = Atstumas
|
||||||
stat.drilltier = Gręžiama
|
stat.drilltier = Gręžiama
|
||||||
@@ -969,6 +970,8 @@ bullet.splashdamage = [stat]{0}[lightgray] zonos žalos ~[stat] {1}[lightgray] b
|
|||||||
bullet.incendiary = [stat]uždegantis
|
bullet.incendiary = [stat]uždegantis
|
||||||
bullet.homing = [stat]sekimas
|
bullet.homing = [stat]sekimas
|
||||||
bullet.armorpierce = [stat]armor piercing
|
bullet.armorpierce = [stat]armor piercing
|
||||||
|
bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles
|
||||||
|
bullet.interval = [stat]{0}/sec[lightgray] interval bullets:
|
||||||
bullet.frags = [stat]{0}[lightgray]x frag bullets:
|
bullet.frags = [stat]{0}[lightgray]x frag bullets:
|
||||||
bullet.lightning = [stat]{0}[lightgray]x lightning ~ [stat]{1}[lightgray] damage
|
bullet.lightning = [stat]{0}[lightgray]x lightning ~ [stat]{1}[lightgray] damage
|
||||||
bullet.buildingdamage = [stat]{0}%[lightgray] building damage
|
bullet.buildingdamage = [stat]{0}%[lightgray] building damage
|
||||||
@@ -1082,8 +1085,8 @@ setting.bridgeopacity.name = Tilto Nepermatomumas
|
|||||||
setting.playerchat.name = Rodyti Pokalbių Teksto Burbulus Virš Žaidėjų
|
setting.playerchat.name = Rodyti Pokalbių Teksto Burbulus Virš Žaidėjų
|
||||||
setting.showweather.name = Show Weather Graphics
|
setting.showweather.name = Show Weather Graphics
|
||||||
setting.hidedisplays.name = Hide Logic Displays
|
setting.hidedisplays.name = Hide Logic Displays
|
||||||
public.confirm = Ar norite savo žaidimą paversti viešu?\n[accent]Bet kas galės įeiti į jūsų žaidimą.\n[lightgray]Tai gali būti pakeista nuėjus į Nustatymai->Žaidimas->Viešojo Žaidimo Matomumas.
|
steam.friendsonly = Friends Only
|
||||||
public.confirm.really = If you want to play with friends, use [green]Invite Friend[] instead of a [scarlet]Public server[]!\nAre you sure you want to make your game [scarlet]public[]?
|
steam.friendsonly.tooltip = Whether only Steam friends will be able to join your game.\nUnchecking this box will make your game public - anyone can join.
|
||||||
public.beta = Įsiminkite, jog beta versijoje negalima sukrti viešų kambarių.
|
public.beta = Įsiminkite, jog beta versijoje negalima sukrti viešų kambarių.
|
||||||
uiscale.reset = UI mastelis buvo pakeistas.\nSpauskite "GERAI", norėdami palikti šį mastelį.\n[scarlet]Atšaukiama ir išeinama po[accent] {0}[] sekundžių...
|
uiscale.reset = UI mastelis buvo pakeistas.\nSpauskite "GERAI", norėdami palikti šį mastelį.\n[scarlet]Atšaukiama ir išeinama po[accent] {0}[] sekundžių...
|
||||||
uiscale.cancel = Atšaukti ir Išeiti
|
uiscale.cancel = Atšaukti ir Išeiti
|
||||||
@@ -1135,8 +1138,8 @@ keybind.select.name = Pasirinkti/Šauti
|
|||||||
keybind.diagonal_placement.name = Įstrižas Padėjimas
|
keybind.diagonal_placement.name = Įstrižas Padėjimas
|
||||||
keybind.pick.name = Pasirinkti Bloką
|
keybind.pick.name = Pasirinkti Bloką
|
||||||
keybind.break_block.name = Išgriauti Bloką
|
keybind.break_block.name = Išgriauti Bloką
|
||||||
keybind.select_all_units = Select All Units
|
keybind.select_all_units.name = Select All Units
|
||||||
keybind.select_all_unit_factories = Select All Unit Factories
|
keybind.select_all_unit_factories.name = Select All Unit Factories
|
||||||
keybind.deselect.name = Panaikinti Pasirinkimą
|
keybind.deselect.name = Panaikinti Pasirinkimą
|
||||||
keybind.pickupCargo.name = Pickup Cargo
|
keybind.pickupCargo.name = Pickup Cargo
|
||||||
keybind.dropCargo.name = Drop Cargo
|
keybind.dropCargo.name = Drop Cargo
|
||||||
@@ -2187,6 +2190,7 @@ lst.flushmessage = Display a message on the screen from the text buffer.\nWill w
|
|||||||
lst.cutscene = Manipulate the player camera.
|
lst.cutscene = Manipulate the player camera.
|
||||||
lst.setflag = Set a global flag that can be read by all processors.
|
lst.setflag = Set a global flag that can be read by all processors.
|
||||||
lst.getflag = Check if a global flag is set.
|
lst.getflag = Check if a global flag is set.
|
||||||
|
lst.setprop = Sets a property of a unit or building.
|
||||||
logic.nounitbuild = [red]Unit building logic is not allowed here.
|
logic.nounitbuild = [red]Unit building logic is not allowed here.
|
||||||
lenum.type = Type of building/unit.\ne.g. for any router, this will return [accent]@router[].\nNot a string.
|
lenum.type = Type of building/unit.\ne.g. for any router, this will return [accent]@router[].\nNot a string.
|
||||||
lenum.shoot = Shoot at a position.
|
lenum.shoot = Shoot at a position.
|
||||||
|
|||||||
@@ -888,6 +888,7 @@ stat.repairspeed = Repareersnelheid
|
|||||||
stat.weapons = Wapens
|
stat.weapons = Wapens
|
||||||
stat.bullet = Kogel
|
stat.bullet = Kogel
|
||||||
stat.moduletier = Module Niveau
|
stat.moduletier = Module Niveau
|
||||||
|
stat.unittype = Unit Type
|
||||||
stat.speedincrease = Snelheidsverhoging
|
stat.speedincrease = Snelheidsverhoging
|
||||||
stat.range = Bereik
|
stat.range = Bereik
|
||||||
stat.drilltier = Valt te delven
|
stat.drilltier = Valt te delven
|
||||||
@@ -981,6 +982,8 @@ bullet.splashdamage = [stat]{0}[lightgray] gebied scade ~[stat] {1}[lightgray] t
|
|||||||
bullet.incendiary = [stat]brandstichtend
|
bullet.incendiary = [stat]brandstichtend
|
||||||
bullet.homing = [stat]doelzoekend
|
bullet.homing = [stat]doelzoekend
|
||||||
bullet.armorpierce = [stat]pantserdoorborend
|
bullet.armorpierce = [stat]pantserdoorborend
|
||||||
|
bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles
|
||||||
|
bullet.interval = [stat]{0}/sec[lightgray] interval bullets:
|
||||||
bullet.frags = [stat]{0}[lightgray]x fragment kogels:
|
bullet.frags = [stat]{0}[lightgray]x fragment kogels:
|
||||||
bullet.lightning = [stat]{0}[lightgray]x bliksem ~ [stat]{1}[lightgray] schade
|
bullet.lightning = [stat]{0}[lightgray]x bliksem ~ [stat]{1}[lightgray] schade
|
||||||
bullet.buildingdamage = [stat]{0}%[lightgray] gebouwschade
|
bullet.buildingdamage = [stat]{0}%[lightgray] gebouwschade
|
||||||
@@ -1094,8 +1097,8 @@ setting.bridgeopacity.name = Brug Transparantie
|
|||||||
setting.playerchat.name = Toon Chat
|
setting.playerchat.name = Toon Chat
|
||||||
setting.showweather.name = Toon Weer Graphics
|
setting.showweather.name = Toon Weer Graphics
|
||||||
setting.hidedisplays.name = Verberg Logische Displays
|
setting.hidedisplays.name = Verberg Logische Displays
|
||||||
public.confirm = Wil je je game publiek maken?\n[accent]Iedereen kan je spel dan joinen.\n[lightgray]Dit kan je later veranderen in Instellingen->Spel->Publieke Server Zichtbaarheid.
|
steam.friendsonly = Friends Only
|
||||||
public.confirm.really = Als je met een vriend wilt spelen, gebruik dan de optie [green]Nodig Vriend Uit[] in plaats van [scarlet]Publieke Server[]!\nWeet je zeker dat je je server [scarlet]public[] wilt maken?
|
steam.friendsonly.tooltip = Whether only Steam friends will be able to join your game.\nUnchecking this box will make your game public - anyone can join.
|
||||||
public.beta = Onthoud dat b<>ta versies geen publieke lobby's kunnen maken.
|
public.beta = Onthoud dat b<>ta versies geen publieke lobby's kunnen maken.
|
||||||
uiscale.reset = UI formaat is geweizigd.\nKlik op "OK" om het te bevestigen.\n[scarlet]Anders word het in[accent] {0}[] seconden ongedaan gemaakt...
|
uiscale.reset = UI formaat is geweizigd.\nKlik op "OK" om het te bevestigen.\n[scarlet]Anders word het in[accent] {0}[] seconden ongedaan gemaakt...
|
||||||
uiscale.cancel = Annuleer & Sluit
|
uiscale.cancel = Annuleer & Sluit
|
||||||
@@ -1147,8 +1150,8 @@ keybind.select.name = Selecteer/Schiet
|
|||||||
keybind.diagonal_placement.name = Plaats Diagonaal
|
keybind.diagonal_placement.name = Plaats Diagonaal
|
||||||
keybind.pick.name = Kies Blok
|
keybind.pick.name = Kies Blok
|
||||||
keybind.break_block.name = Breek Blok
|
keybind.break_block.name = Breek Blok
|
||||||
keybind.select_all_units = Selecteer Alle Eenheden
|
keybind.select_all_units.name = Selecteer Alle Eenheden
|
||||||
keybind.select_all_unit_factories = Selecteer Alle Eenheidsfabrieken
|
keybind.select_all_unit_factories.name = Selecteer Alle Eenheidsfabrieken
|
||||||
keybind.deselect.name = Deselecteer
|
keybind.deselect.name = Deselecteer
|
||||||
keybind.pickupCargo.name = Pak Vracht Op
|
keybind.pickupCargo.name = Pak Vracht Op
|
||||||
keybind.dropCargo.name = Laat Vracht Vallen
|
keybind.dropCargo.name = Laat Vracht Vallen
|
||||||
@@ -2200,6 +2203,7 @@ lst.flushmessage = Display a message on the screen from the text buffer.\nWill w
|
|||||||
lst.cutscene = Manipulate the player camera.
|
lst.cutscene = Manipulate the player camera.
|
||||||
lst.setflag = Set a global flag that can be read by all processors.
|
lst.setflag = Set a global flag that can be read by all processors.
|
||||||
lst.getflag = Check if a global flag is set.
|
lst.getflag = Check if a global flag is set.
|
||||||
|
lst.setprop = Sets a property of a unit or building.
|
||||||
logic.nounitbuild = [red]Unit building logic is not allowed here.
|
logic.nounitbuild = [red]Unit building logic is not allowed here.
|
||||||
lenum.type = Type of building/unit.\ne.g. for any router, this will return [accent]@router[].\nNot a string.
|
lenum.type = Type of building/unit.\ne.g. for any router, this will return [accent]@router[].\nNot a string.
|
||||||
lenum.shoot = Shoot at a position.
|
lenum.shoot = Shoot at a position.
|
||||||
|
|||||||
@@ -876,6 +876,7 @@ stat.repairspeed = Repair Speed
|
|||||||
stat.weapons = Weapons
|
stat.weapons = Weapons
|
||||||
stat.bullet = Bullet
|
stat.bullet = Bullet
|
||||||
stat.moduletier = Module Tier
|
stat.moduletier = Module Tier
|
||||||
|
stat.unittype = Unit Type
|
||||||
stat.speedincrease = Speed Increase
|
stat.speedincrease = Speed Increase
|
||||||
stat.range = Range
|
stat.range = Range
|
||||||
stat.drilltier = Drillables
|
stat.drilltier = Drillables
|
||||||
@@ -969,6 +970,8 @@ bullet.splashdamage = [stat]{0}[lightgray] area dmg ~[stat] {1}[lightgray] tiles
|
|||||||
bullet.incendiary = [stat]incendiary
|
bullet.incendiary = [stat]incendiary
|
||||||
bullet.homing = [stat]homing
|
bullet.homing = [stat]homing
|
||||||
bullet.armorpierce = [stat]armor piercing
|
bullet.armorpierce = [stat]armor piercing
|
||||||
|
bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles
|
||||||
|
bullet.interval = [stat]{0}/sec[lightgray] interval bullets:
|
||||||
bullet.frags = [stat]{0}[lightgray]x frag bullets:
|
bullet.frags = [stat]{0}[lightgray]x frag bullets:
|
||||||
bullet.lightning = [stat]{0}[lightgray]x lightning ~ [stat]{1}[lightgray] damage
|
bullet.lightning = [stat]{0}[lightgray]x lightning ~ [stat]{1}[lightgray] damage
|
||||||
bullet.buildingdamage = [stat]{0}%[lightgray] building damage
|
bullet.buildingdamage = [stat]{0}%[lightgray] building damage
|
||||||
@@ -1082,8 +1085,8 @@ setting.bridgeopacity.name = Bridge Opacity
|
|||||||
setting.playerchat.name = Display In-Game Chat
|
setting.playerchat.name = Display In-Game Chat
|
||||||
setting.showweather.name = Show Weather Graphics
|
setting.showweather.name = Show Weather Graphics
|
||||||
setting.hidedisplays.name = Hide Logic Displays
|
setting.hidedisplays.name = Hide Logic Displays
|
||||||
public.confirm = Do you want to make your game public?\n[accent]Anyone will be able to join your games.\n[lightgray]This can be changed later in Settings->Game->Public Game Visibility.
|
steam.friendsonly = Friends Only
|
||||||
public.confirm.really = If you want to play with friends, use [green]Invite Friend[] instead of a [scarlet]Public server[]!\nAre you sure you want to make your game [scarlet]public[]?
|
steam.friendsonly.tooltip = Whether only Steam friends will be able to join your game.\nUnchecking this box will make your game public - anyone can join.
|
||||||
public.beta = Note that beta versions of the game cannot make public lobbies.
|
public.beta = Note that beta versions of the game cannot make public lobbies.
|
||||||
uiscale.reset = UI scale has been changed.\nPress "OK" to confirm this scale.\n[scarlet]Reverting and exiting in[accent] {0}[] settings...
|
uiscale.reset = UI scale has been changed.\nPress "OK" to confirm this scale.\n[scarlet]Reverting and exiting in[accent] {0}[] settings...
|
||||||
uiscale.cancel = Cancel & Exit
|
uiscale.cancel = Cancel & Exit
|
||||||
@@ -1135,8 +1138,8 @@ keybind.select.name = Select/Shoot
|
|||||||
keybind.diagonal_placement.name = Diagonal Placement
|
keybind.diagonal_placement.name = Diagonal Placement
|
||||||
keybind.pick.name = Pick Block
|
keybind.pick.name = Pick Block
|
||||||
keybind.break_block.name = Break Block
|
keybind.break_block.name = Break Block
|
||||||
keybind.select_all_units = Select All Units
|
keybind.select_all_units.name = Select All Units
|
||||||
keybind.select_all_unit_factories = Select All Unit Factories
|
keybind.select_all_unit_factories.name = Select All Unit Factories
|
||||||
keybind.deselect.name = Deselect
|
keybind.deselect.name = Deselect
|
||||||
keybind.pickupCargo.name = Pickup Cargo
|
keybind.pickupCargo.name = Pickup Cargo
|
||||||
keybind.dropCargo.name = Drop Cargo
|
keybind.dropCargo.name = Drop Cargo
|
||||||
@@ -2187,6 +2190,7 @@ lst.flushmessage = Display a message on the screen from the text buffer.\nWill w
|
|||||||
lst.cutscene = Manipulate the player camera.
|
lst.cutscene = Manipulate the player camera.
|
||||||
lst.setflag = Set a global flag that can be read by all processors.
|
lst.setflag = Set a global flag that can be read by all processors.
|
||||||
lst.getflag = Check if a global flag is set.
|
lst.getflag = Check if a global flag is set.
|
||||||
|
lst.setprop = Sets a property of a unit or building.
|
||||||
logic.nounitbuild = [red]Unit building logic is not allowed here.
|
logic.nounitbuild = [red]Unit building logic is not allowed here.
|
||||||
lenum.type = Type of building/unit.\ne.g. for any router, this will return [accent]@router[].\nNot a string.
|
lenum.type = Type of building/unit.\ne.g. for any router, this will return [accent]@router[].\nNot a string.
|
||||||
lenum.shoot = Shoot at a position.
|
lenum.shoot = Shoot at a position.
|
||||||
|
|||||||
@@ -886,6 +886,7 @@ stat.repairspeed = Prędkość napraw
|
|||||||
stat.weapons = Bronie
|
stat.weapons = Bronie
|
||||||
stat.bullet = Pocisk
|
stat.bullet = Pocisk
|
||||||
stat.moduletier = Stopień Modułu
|
stat.moduletier = Stopień Modułu
|
||||||
|
stat.unittype = Unit Type
|
||||||
stat.speedincrease = Zwiększenie prędkości
|
stat.speedincrease = Zwiększenie prędkości
|
||||||
stat.range = Zasięg
|
stat.range = Zasięg
|
||||||
stat.drilltier = Co może wykopać
|
stat.drilltier = Co może wykopać
|
||||||
@@ -979,6 +980,8 @@ bullet.splashdamage = [stat]{0}[lightgray] Obrażenia obszarowe ~[stat] {1}[ligh
|
|||||||
bullet.incendiary = [stat]zapalający
|
bullet.incendiary = [stat]zapalający
|
||||||
bullet.homing = [stat]naprowadzający
|
bullet.homing = [stat]naprowadzający
|
||||||
bullet.armorpierce = [stat]przebijający pancerz
|
bullet.armorpierce = [stat]przebijający pancerz
|
||||||
|
bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles
|
||||||
|
bullet.interval = [stat]{0}/sec[lightgray] interval bullets:
|
||||||
bullet.frags = [stat]{0}[lightgray]x pociski odłamkowe:
|
bullet.frags = [stat]{0}[lightgray]x pociski odłamkowe:
|
||||||
bullet.lightning = [stat]{0}[lightgray]x błyskawice ~ [stat]{1}[lightgray] Obrażenia
|
bullet.lightning = [stat]{0}[lightgray]x błyskawice ~ [stat]{1}[lightgray] Obrażenia
|
||||||
bullet.buildingdamage = [stat]{0}%[lightgray] obrażeń budynkom
|
bullet.buildingdamage = [stat]{0}%[lightgray] obrażeń budynkom
|
||||||
@@ -1092,8 +1095,8 @@ setting.bridgeopacity.name = Przezroczystość mostów
|
|||||||
setting.playerchat.name = Wyświetlaj dymek czatu w grze
|
setting.playerchat.name = Wyświetlaj dymek czatu w grze
|
||||||
setting.showweather.name = Pokaż pogodę
|
setting.showweather.name = Pokaż pogodę
|
||||||
setting.hidedisplays.name = Ukryj wyświetlacze logiczne
|
setting.hidedisplays.name = Ukryj wyświetlacze logiczne
|
||||||
public.confirm = Czy chcesz ustawić swoją grę jako publiczną?\n[accent]Każdy będzie mógł dołączyć do Twojej gry.\n[lightgray]Można to później zmienić w Ustawienia->Gra->Widoczność Gry Publicznej.
|
steam.friendsonly = Friends Only
|
||||||
public.confirm.really = Jeśli chcesz zagrać ze znajomymi, użyj opcji [green]Zaproś Znajomych[] zamiast [scarlet]Publiczny serwer[]!\nJesteś pewny że chcesz rozpocząć grę [scarlet]publiczną[]?
|
steam.friendsonly.tooltip = Whether only Steam friends will be able to join your game.\nUnchecking this box will make your game public - anyone can join.
|
||||||
public.beta = Wersje beta gry nie mogą tworzyć publicznych pokoi.
|
public.beta = Wersje beta gry nie mogą tworzyć publicznych pokoi.
|
||||||
uiscale.reset = Skala interfejsu uległa zmianie.\nNaciśnij "OK" by potwierdzić zmiany.\n[scarlet]Cofanie zmian i wyjście z gry za[accent] {0}[]
|
uiscale.reset = Skala interfejsu uległa zmianie.\nNaciśnij "OK" by potwierdzić zmiany.\n[scarlet]Cofanie zmian i wyjście z gry za[accent] {0}[]
|
||||||
uiscale.cancel = Anuluj i wyjdź
|
uiscale.cancel = Anuluj i wyjdź
|
||||||
@@ -1145,8 +1148,8 @@ keybind.select.name = Zaznacz
|
|||||||
keybind.diagonal_placement.name = Budowa po skosie
|
keybind.diagonal_placement.name = Budowa po skosie
|
||||||
keybind.pick.name = Wybierz Blok
|
keybind.pick.name = Wybierz Blok
|
||||||
keybind.break_block.name = Zniszcz Blok
|
keybind.break_block.name = Zniszcz Blok
|
||||||
keybind.select_all_units = Wybierz Wszystkie Jednostki
|
keybind.select_all_units.name = Wybierz Wszystkie Jednostki
|
||||||
keybind.select_all_unit_factories = Wybierz Wszystkie Fabryki Jednostek
|
keybind.select_all_unit_factories.name = Wybierz Wszystkie Fabryki Jednostek
|
||||||
keybind.deselect.name = Odznacz
|
keybind.deselect.name = Odznacz
|
||||||
keybind.pickupCargo.name = Podnieś Ładunek
|
keybind.pickupCargo.name = Podnieś Ładunek
|
||||||
keybind.dropCargo.name = Opuść Ładunek
|
keybind.dropCargo.name = Opuść Ładunek
|
||||||
@@ -2222,6 +2225,7 @@ lst.flushmessage = Wyświetl wiadomość na ekranie z bufora tekstowego.\nPoczek
|
|||||||
lst.cutscene = Manipuluj kamerą gracza.
|
lst.cutscene = Manipuluj kamerą gracza.
|
||||||
lst.setflag = Ustaw globalną flagę, którą mogą odczytać wszystkie procesory.
|
lst.setflag = Ustaw globalną flagę, którą mogą odczytać wszystkie procesory.
|
||||||
lst.getflag = Sprawdź, czy ustawiona jest flaga globalna.
|
lst.getflag = Sprawdź, czy ustawiona jest flaga globalna.
|
||||||
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
|
||||||
logic.nounitbuild = [red]Logika budowania jednostek nie jest tu dozwolona.
|
logic.nounitbuild = [red]Logika budowania jednostek nie jest tu dozwolona.
|
||||||
|
|
||||||
|
|||||||
@@ -896,6 +896,7 @@ stat.repairspeed = Taxa de Reparo
|
|||||||
stat.weapons = Armas
|
stat.weapons = Armas
|
||||||
stat.bullet = Projétil
|
stat.bullet = Projétil
|
||||||
stat.moduletier = Tier do Módulo
|
stat.moduletier = Tier do Módulo
|
||||||
|
stat.unittype = Unit Type
|
||||||
stat.speedincrease = Aumento de velocidade
|
stat.speedincrease = Aumento de velocidade
|
||||||
stat.range = Distância
|
stat.range = Distância
|
||||||
stat.drilltier = Brocas
|
stat.drilltier = Brocas
|
||||||
@@ -990,6 +991,8 @@ bullet.splashdamage = [stat]{0}[lightgray] de dano em área ~[stat] {1}[lightgra
|
|||||||
bullet.incendiary = [stat]Incendiário
|
bullet.incendiary = [stat]Incendiário
|
||||||
bullet.homing = [stat]Guiado
|
bullet.homing = [stat]Guiado
|
||||||
bullet.armorpierce = [stat]pentração de armadura
|
bullet.armorpierce = [stat]pentração de armadura
|
||||||
|
bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles
|
||||||
|
bullet.interval = [stat]{0}/sec[lightgray] interval bullets:
|
||||||
bullet.frags = [stat]{0}[lightgray]x balas de fragmentação:
|
bullet.frags = [stat]{0}[lightgray]x balas de fragmentação:
|
||||||
bullet.lightning = [stat]{0}[lightgray]x raio ~ [stat]{1}[lightgray] dano
|
bullet.lightning = [stat]{0}[lightgray]x raio ~ [stat]{1}[lightgray] dano
|
||||||
bullet.buildingdamage = [stat]{0}%[lightgray] dano em construção
|
bullet.buildingdamage = [stat]{0}%[lightgray] dano em construção
|
||||||
@@ -1103,8 +1106,8 @@ setting.bridgeopacity.name = Opacidade da ponte
|
|||||||
setting.playerchat.name = Mostrar chat em jogo
|
setting.playerchat.name = Mostrar chat em jogo
|
||||||
setting.showweather.name = Mostrar Gráficos do Clima
|
setting.showweather.name = Mostrar Gráficos do Clima
|
||||||
setting.hidedisplays.name = Ocultar Displays de Lógicos
|
setting.hidedisplays.name = Ocultar Displays de Lógicos
|
||||||
public.confirm = Você quer fazer sua partida pública?\n[accent]Qualquer um será capaz de entrar na sua partida.\n[lightgray]Isso pode ser mudado depois em Configurações->Jogo->Visibilidade da partida pública.
|
steam.friendsonly = Friends Only
|
||||||
public.confirm.really = Se você quer jogar com amigos, use [green]Convidar Amigos[] ao invés de um [scarlet]Server Público[]!\nTem certeza que quer tornar seu jogo[scarlet]público[]?
|
steam.friendsonly.tooltip = Whether only Steam friends will be able to join your game.\nUnchecking this box will make your game public - anyone can join.
|
||||||
public.beta = Note que as versões beta do jogo não podem fazer salas públicas.
|
public.beta = Note que as versões beta do jogo não podem fazer salas públicas.
|
||||||
uiscale.reset = A escala da interface foi mudada.\nPressione "OK" para confirmar esta escala.\n[scarlet]Revertendo e saindo em[accent] {0}[] segundos...
|
uiscale.reset = A escala da interface foi mudada.\nPressione "OK" para confirmar esta escala.\n[scarlet]Revertendo e saindo em[accent] {0}[] segundos...
|
||||||
uiscale.cancel = Cancelar e sair
|
uiscale.cancel = Cancelar e sair
|
||||||
@@ -1156,8 +1159,8 @@ keybind.select.name = Selecionar
|
|||||||
keybind.diagonal_placement.name = Posicionamento Diagonal
|
keybind.diagonal_placement.name = Posicionamento Diagonal
|
||||||
keybind.pick.name = Pegar bloco
|
keybind.pick.name = Pegar bloco
|
||||||
keybind.break_block.name = Quebrar bloco
|
keybind.break_block.name = Quebrar bloco
|
||||||
keybind.select_all_units = Select All Units
|
keybind.select_all_units.name = Select All Units
|
||||||
keybind.select_all_unit_factories = Select All Unit Factories
|
keybind.select_all_unit_factories.name = Select All Unit Factories
|
||||||
keybind.deselect.name = Desmarcar
|
keybind.deselect.name = Desmarcar
|
||||||
keybind.pickupCargo.name = Pegar Carga
|
keybind.pickupCargo.name = Pegar Carga
|
||||||
keybind.dropCargo.name = Soltar Carga
|
keybind.dropCargo.name = Soltar Carga
|
||||||
@@ -2220,6 +2223,7 @@ lst.flushmessage = Display a message on the screen from the text buffer.\nWill w
|
|||||||
lst.cutscene = Manipulate the player camera.
|
lst.cutscene = Manipulate the player camera.
|
||||||
lst.setflag = Set a global flag that can be read by all processors.
|
lst.setflag = Set a global flag that can be read by all processors.
|
||||||
lst.getflag = Check if a global flag is set.
|
lst.getflag = Check if a global flag is set.
|
||||||
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
|
||||||
logic.nounitbuild = [red]Unit building logic is not allowed here.
|
logic.nounitbuild = [red]Unit building logic is not allowed here.
|
||||||
|
|
||||||
|
|||||||
@@ -876,6 +876,7 @@ stat.repairspeed = Repair Speed
|
|||||||
stat.weapons = Weapons
|
stat.weapons = Weapons
|
||||||
stat.bullet = Bullet
|
stat.bullet = Bullet
|
||||||
stat.moduletier = Module Tier
|
stat.moduletier = Module Tier
|
||||||
|
stat.unittype = Unit Type
|
||||||
stat.speedincrease = Aumento de velocidade
|
stat.speedincrease = Aumento de velocidade
|
||||||
stat.range = Distância
|
stat.range = Distância
|
||||||
stat.drilltier = Furáveis
|
stat.drilltier = Furáveis
|
||||||
@@ -969,6 +970,8 @@ bullet.splashdamage = [stat]{0}[lightgray] Dano em área ~[stat] {1}[lightgray]
|
|||||||
bullet.incendiary = [stat]Incendiário
|
bullet.incendiary = [stat]Incendiário
|
||||||
bullet.homing = [stat]Guiado
|
bullet.homing = [stat]Guiado
|
||||||
bullet.armorpierce = [stat]armor piercing
|
bullet.armorpierce = [stat]armor piercing
|
||||||
|
bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles
|
||||||
|
bullet.interval = [stat]{0}/sec[lightgray] interval bullets:
|
||||||
bullet.frags = [stat]{0}[lightgray]x frag bullets:
|
bullet.frags = [stat]{0}[lightgray]x frag bullets:
|
||||||
bullet.lightning = [stat]{0}[lightgray]x lightning ~ [stat]{1}[lightgray] damage
|
bullet.lightning = [stat]{0}[lightgray]x lightning ~ [stat]{1}[lightgray] damage
|
||||||
bullet.buildingdamage = [stat]{0}%[lightgray] building damage
|
bullet.buildingdamage = [stat]{0}%[lightgray] building damage
|
||||||
@@ -1082,8 +1085,8 @@ setting.bridgeopacity.name = Opacidade da Ponte
|
|||||||
setting.playerchat.name = Mostrar chat em jogo
|
setting.playerchat.name = Mostrar chat em jogo
|
||||||
setting.showweather.name = Show Weather Graphics
|
setting.showweather.name = Show Weather Graphics
|
||||||
setting.hidedisplays.name = Hide Logic Displays
|
setting.hidedisplays.name = Hide Logic Displays
|
||||||
public.confirm = Queres que o teu jogo fique publico?\n[accent]Qualquer jogador vai conseguir juntar-se ao teu jogo.\n[lightgray]Isto pode ser alterado mais tarde in Settings->Game->Public Game Visibility.
|
steam.friendsonly = Friends Only
|
||||||
public.confirm.really = If you want to play with friends, use [green]Invite Friend[] instead of a [scarlet]Public server[]!\nAre you sure you want to make your game [scarlet]public[]?
|
steam.friendsonly.tooltip = Whether only Steam friends will be able to join your game.\nUnchecking this box will make your game public - anyone can join.
|
||||||
public.beta = Observe que as versões beta do jogo não podem criar lobbies públicos.
|
public.beta = Observe que as versões beta do jogo não podem criar lobbies públicos.
|
||||||
uiscale.reset = A escala da IU foi mudada.\nPressione "OK" para confirmar esta escala.\n[scarlet]Revertendo e saindo em[accent] {0}[] settings...
|
uiscale.reset = A escala da IU foi mudada.\nPressione "OK" para confirmar esta escala.\n[scarlet]Revertendo e saindo em[accent] {0}[] settings...
|
||||||
uiscale.cancel = Cancelar e sair
|
uiscale.cancel = Cancelar e sair
|
||||||
@@ -1135,8 +1138,8 @@ keybind.select.name = Selecionar
|
|||||||
keybind.diagonal_placement.name = Colocação diagonal
|
keybind.diagonal_placement.name = Colocação diagonal
|
||||||
keybind.pick.name = Pegar bloco
|
keybind.pick.name = Pegar bloco
|
||||||
keybind.break_block.name = Quebrar bloco
|
keybind.break_block.name = Quebrar bloco
|
||||||
keybind.select_all_units = Select All Units
|
keybind.select_all_units.name = Select All Units
|
||||||
keybind.select_all_unit_factories = Select All Unit Factories
|
keybind.select_all_unit_factories.name = Select All Unit Factories
|
||||||
keybind.deselect.name = Deselecionar
|
keybind.deselect.name = Deselecionar
|
||||||
keybind.pickupCargo.name = Pickup Cargo
|
keybind.pickupCargo.name = Pickup Cargo
|
||||||
keybind.dropCargo.name = Drop Cargo
|
keybind.dropCargo.name = Drop Cargo
|
||||||
@@ -2187,6 +2190,7 @@ lst.flushmessage = Display a message on the screen from the text buffer.\nWill w
|
|||||||
lst.cutscene = Manipulate the player camera.
|
lst.cutscene = Manipulate the player camera.
|
||||||
lst.setflag = Set a global flag that can be read by all processors.
|
lst.setflag = Set a global flag that can be read by all processors.
|
||||||
lst.getflag = Check if a global flag is set.
|
lst.getflag = Check if a global flag is set.
|
||||||
|
lst.setprop = Sets a property of a unit or building.
|
||||||
logic.nounitbuild = [red]Unit building logic is not allowed here.
|
logic.nounitbuild = [red]Unit building logic is not allowed here.
|
||||||
lenum.type = Type of building/unit.\ne.g. for any router, this will return [accent]@router[].\nNot a string.
|
lenum.type = Type of building/unit.\ne.g. for any router, this will return [accent]@router[].\nNot a string.
|
||||||
lenum.shoot = Shoot at a position.
|
lenum.shoot = Shoot at a position.
|
||||||
|
|||||||
@@ -888,6 +888,7 @@ stat.repairspeed = Viteză Reparare
|
|||||||
stat.weapons = Arme
|
stat.weapons = Arme
|
||||||
stat.bullet = Glonț
|
stat.bullet = Glonț
|
||||||
stat.moduletier = Module Tier
|
stat.moduletier = Module Tier
|
||||||
|
stat.unittype = Unit Type
|
||||||
stat.speedincrease = Creștere Viteză
|
stat.speedincrease = Creștere Viteză
|
||||||
stat.range = Rază
|
stat.range = Rază
|
||||||
stat.drilltier = Minabile
|
stat.drilltier = Minabile
|
||||||
@@ -981,6 +982,8 @@ bullet.splashdamage = [stat]{0}[lightgray] forță pe raza ~[stat] {1}[lightgray
|
|||||||
bullet.incendiary = [stat]incendiar
|
bullet.incendiary = [stat]incendiar
|
||||||
bullet.homing = [stat]cu radar
|
bullet.homing = [stat]cu radar
|
||||||
bullet.armorpierce = [stat]armor piercing
|
bullet.armorpierce = [stat]armor piercing
|
||||||
|
bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles
|
||||||
|
bullet.interval = [stat]{0}/sec[lightgray] interval bullets:
|
||||||
bullet.frags = [stat]{0}[lightgray]x fragmente:
|
bullet.frags = [stat]{0}[lightgray]x fragmente:
|
||||||
bullet.lightning = [stat]{0}[lightgray]x fulgere ~ [stat]{1}[lightgray] forță
|
bullet.lightning = [stat]{0}[lightgray]x fulgere ~ [stat]{1}[lightgray] forță
|
||||||
bullet.buildingdamage = [stat]{0}%[lightgray] forță/clădire
|
bullet.buildingdamage = [stat]{0}%[lightgray] forță/clădire
|
||||||
@@ -1094,8 +1097,8 @@ setting.bridgeopacity.name = Opacitate Poduri
|
|||||||
setting.playerchat.name = Vezi Chat Temporar
|
setting.playerchat.name = Vezi Chat Temporar
|
||||||
setting.showweather.name = Vezi Vremea
|
setting.showweather.name = Vezi Vremea
|
||||||
setting.hidedisplays.name = Hide Logic Displays
|
setting.hidedisplays.name = Hide Logic Displays
|
||||||
public.confirm = Vrei să îți faci jocul public?\n[accent]Oricine va putea intra în jocurile tale.\n[lightgray]Poți schimba asta mai târziu din Setări->Joc->Vizibilitatea Jocurilor Publice.
|
steam.friendsonly = Friends Only
|
||||||
public.confirm.really = Dacă vrei să joci cu prietenii, folosește butonul [green]Invită Prieteni[] în loc de un [scarlet]Server Public[]!\nSigur vrei să-ți faci jocul [scarlet]public[]?
|
steam.friendsonly.tooltip = Whether only Steam friends will be able to join your game.\nUnchecking this box will make your game public - anyone can join.
|
||||||
public.beta = De reținut că versiunile beta ale jocului nu poate face servere publice.
|
public.beta = De reținut că versiunile beta ale jocului nu poate face servere publice.
|
||||||
uiscale.reset = Scara interfeței a fost schimbată.\nApasă "OK" pt a confirma această scară.\n[scarlet]Revin setările și se iese în [accent] {0}[] secunde...
|
uiscale.reset = Scara interfeței a fost schimbată.\nApasă "OK" pt a confirma această scară.\n[scarlet]Revin setările și se iese în [accent] {0}[] secunde...
|
||||||
uiscale.cancel = Anulare și ieșire
|
uiscale.cancel = Anulare și ieșire
|
||||||
@@ -1147,8 +1150,8 @@ keybind.select.name = Selectează/Trage
|
|||||||
keybind.diagonal_placement.name = Plasare Diagonală
|
keybind.diagonal_placement.name = Plasare Diagonală
|
||||||
keybind.pick.name = Ia Bloc
|
keybind.pick.name = Ia Bloc
|
||||||
keybind.break_block.name = Distruge Bloc
|
keybind.break_block.name = Distruge Bloc
|
||||||
keybind.select_all_units = Select All Units
|
keybind.select_all_units.name = Select All Units
|
||||||
keybind.select_all_unit_factories = Select All Unit Factories
|
keybind.select_all_unit_factories.name = Select All Unit Factories
|
||||||
keybind.deselect.name = Deselectează
|
keybind.deselect.name = Deselectează
|
||||||
keybind.pickupCargo.name = Ridică Încărcătura
|
keybind.pickupCargo.name = Ridică Încărcătura
|
||||||
keybind.dropCargo.name = Aruncă Încărcătura
|
keybind.dropCargo.name = Aruncă Încărcătura
|
||||||
@@ -2205,6 +2208,7 @@ lst.flushmessage = Display a message on the screen from the text buffer.\nWill w
|
|||||||
lst.cutscene = Manipulate the player camera.
|
lst.cutscene = Manipulate the player camera.
|
||||||
lst.setflag = Set a global flag that can be read by all processors.
|
lst.setflag = Set a global flag that can be read by all processors.
|
||||||
lst.getflag = Check if a global flag is set.
|
lst.getflag = Check if a global flag is set.
|
||||||
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
|
||||||
logic.nounitbuild = [red]Nu ai voie să construiești cu unitățile folosind procesoare.
|
logic.nounitbuild = [red]Nu ai voie să construiești cu unitățile folosind procesoare.
|
||||||
|
|
||||||
|
|||||||
@@ -149,15 +149,15 @@ mod.incompatiblemod = [red]Несовместимый
|
|||||||
mod.blacklisted = [red]Неподдерживаемый
|
mod.blacklisted = [red]Неподдерживаемый
|
||||||
mod.unmetdependencies = [red]Не найдены зависимости
|
mod.unmetdependencies = [red]Не найдены зависимости
|
||||||
mod.erroredcontent = [scarlet]Ошибки содержимого
|
mod.erroredcontent = [scarlet]Ошибки содержимого
|
||||||
mod.circulardependencies = [red]Circular Dependencies
|
mod.circulardependencies = [red]Цикличные зависимости
|
||||||
mod.incompletedependencies = [red]Incomplete Dependencies
|
mod.incompletedependencies = [red]Недопустимые или отсутствующие зависимости
|
||||||
mod.requiresversion.details = Требуется версия игры: [accent]{0}[]\nВаша игра устарела. Для работы этого мода требуется более новая версия игры (возможно, альфа/бета-версия).
|
mod.requiresversion.details = Требуется версия игры: [accent]{0}[]\nВаша игра устарела. Для работы этого мода требуется более новая версия игры (возможно, альфа/бета-версия).
|
||||||
mod.outdatedv7.details = Этот мод несовместим с последней версией игры. Автор должен обновить его и добавить [accent]minGameVersion: 136[] в файл [accent]mod.json[].
|
mod.outdatedv7.details = Этот мод несовместим с последней версией игры. Автор должен обновить его и добавить [accent]minGameVersion: 136[] в файл [accent]mod.json[].
|
||||||
mod.blacklisted.details = Этот мод был вручную занесен в черный список из-за того, что он вызывал сбои или другие проблемы с текущей версией игры. Не используйте его.
|
mod.blacklisted.details = Этот мод был вручную занесен в черный список из-за того, что он вызывал сбои или другие проблемы с текущей версией игры. Не используйте его.
|
||||||
mod.missingdependencies.details = Для этого мода отсутствуют зависимости: {0}
|
mod.missingdependencies.details = Для этого мода отсутствуют зависимости: {0}
|
||||||
mod.erroredcontent.details = Этот мод вызвал ошибки при загрузке. Попросите автора мода исправить их.
|
mod.erroredcontent.details = Этот мод вызвал ошибки при загрузке. Попросите автора мода исправить их.
|
||||||
mod.circulardependencies.details = This mod has dependencies that depends on each other.
|
mod.circulardependencies.details = Этот мод имеет зависимости, которые зависят друг от друга.
|
||||||
mod.incompletedependencies.details = This mod is unable to be loaded due to invalid or missing dependencies: {0}.
|
mod.incompletedependencies.details = Этот мод не может быть загружен из-за недопустимых или отсутствующих зависимостей: {0}.
|
||||||
|
|
||||||
mod.requiresversion = Требуется версия игры: [red]{0}
|
mod.requiresversion = Требуется версия игры: [red]{0}
|
||||||
mod.errors = Ошибки были вызваны загружаемым содержимым.
|
mod.errors = Ошибки были вызваны загружаемым содержимым.
|
||||||
@@ -335,7 +335,7 @@ command.repair = Ремонтировать
|
|||||||
command.rebuild = Восстанавливать
|
command.rebuild = Восстанавливать
|
||||||
command.assist = Помогать игроку
|
command.assist = Помогать игроку
|
||||||
command.move = Двигаться
|
command.move = Двигаться
|
||||||
command.boost = Boost
|
command.boost = Лететь
|
||||||
openlink = Открыть ссылку
|
openlink = Открыть ссылку
|
||||||
copylink = Скопировать ссылку
|
copylink = Скопировать ссылку
|
||||||
back = Назад
|
back = Назад
|
||||||
@@ -889,6 +889,7 @@ stat.repairspeed = Скорость ремонта
|
|||||||
stat.weapons = Орудия
|
stat.weapons = Орудия
|
||||||
stat.bullet = Снаряд
|
stat.bullet = Снаряд
|
||||||
stat.moduletier = Уровень модуля
|
stat.moduletier = Уровень модуля
|
||||||
|
stat.unittype = Unit Type
|
||||||
stat.speedincrease = Увеличение скорости
|
stat.speedincrease = Увеличение скорости
|
||||||
stat.range = Радиус действия
|
stat.range = Радиус действия
|
||||||
stat.drilltier = Бурит
|
stat.drilltier = Бурит
|
||||||
@@ -982,6 +983,8 @@ bullet.splashdamage = [stat]{0}[lightgray] урона в радиусе ~[stat]
|
|||||||
bullet.incendiary = [stat]зажигательный
|
bullet.incendiary = [stat]зажигательный
|
||||||
bullet.homing = [stat]самонаводящийся
|
bullet.homing = [stat]самонаводящийся
|
||||||
bullet.armorpierce = [stat]бронебойный
|
bullet.armorpierce = [stat]бронебойный
|
||||||
|
bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles
|
||||||
|
bullet.interval = [stat]{0}/sec[lightgray] interval bullets:
|
||||||
bullet.frags = [stat]{0}[lightgray]x осколочный(ых) снаряд(ов):
|
bullet.frags = [stat]{0}[lightgray]x осколочный(ых) снаряд(ов):
|
||||||
bullet.lightning = [stat]{0}[lightgray]x молнии ~ [stat]{1}[lightgray] урона
|
bullet.lightning = [stat]{0}[lightgray]x молнии ~ [stat]{1}[lightgray] урона
|
||||||
bullet.buildingdamage = [stat]{0}%[lightgray] урона по постройкам
|
bullet.buildingdamage = [stat]{0}%[lightgray] урона по постройкам
|
||||||
@@ -1095,8 +1098,8 @@ setting.bridgeopacity.name = Непрозрачность мостов
|
|||||||
setting.playerchat.name = Отображать облака чата над игроками
|
setting.playerchat.name = Отображать облака чата над игроками
|
||||||
setting.showweather.name = Отображать погоду
|
setting.showweather.name = Отображать погоду
|
||||||
setting.hidedisplays.name = Скрыть логические дисплеи
|
setting.hidedisplays.name = Скрыть логические дисплеи
|
||||||
public.confirm = Вы хотите, чтобы ваша игра стала публичной?\n[accent] Любой игрок сможет присоединиться к вашим играм.\n[lightgray]Позже, это можно будет изменить в Настройки->Игра->Общедоступность игры.
|
steam.friendsonly = Friends Only
|
||||||
public.confirm.really = Если вы хотите поиграть с друзьями, то используйте кнопку «[green]Пригласить друзей[]» вместо создания [scarlet]публичного сервера[]!\nВы уверены, что хотите сделать свою игру [scarlet]публичной[]?
|
steam.friendsonly.tooltip = Whether only Steam friends will be able to join your game.\nUnchecking this box will make your game public - anyone can join.
|
||||||
public.beta = Имейте в виду, что бета-версия игры не может делать игры публичными.
|
public.beta = Имейте в виду, что бета-версия игры не может делать игры публичными.
|
||||||
uiscale.reset = Масштаб пользовательского интерфейса был изменён.\nНажмите «ОК» для подтверждения этого масштаба.\n[scarlet]Возврат настроек и выход через[accent] {0}[] секунд…
|
uiscale.reset = Масштаб пользовательского интерфейса был изменён.\nНажмите «ОК» для подтверждения этого масштаба.\n[scarlet]Возврат настроек и выход через[accent] {0}[] секунд…
|
||||||
uiscale.cancel = Отменить & Выйти
|
uiscale.cancel = Отменить & Выйти
|
||||||
@@ -1148,8 +1151,8 @@ keybind.select.name = Выбор/выстрел
|
|||||||
keybind.diagonal_placement.name = Диагональное размещение
|
keybind.diagonal_placement.name = Диагональное размещение
|
||||||
keybind.pick.name = Выбрать блок
|
keybind.pick.name = Выбрать блок
|
||||||
keybind.break_block.name = Разрушить блок
|
keybind.break_block.name = Разрушить блок
|
||||||
keybind.select_all_units = Выбрать все единицы
|
keybind.select_all_units.name = Выбрать все единицы
|
||||||
keybind.select_all_unit_factories = Выбрать все заводы единиц
|
keybind.select_all_unit_factories.name = Выбрать все заводы единиц
|
||||||
keybind.deselect.name = Снять выделение
|
keybind.deselect.name = Снять выделение
|
||||||
keybind.pickupCargo.name = Взять груз
|
keybind.pickupCargo.name = Взять груз
|
||||||
keybind.dropCargo.name = Сбросить груз
|
keybind.dropCargo.name = Сбросить груз
|
||||||
@@ -1183,14 +1186,14 @@ mode.editor.name = Редактор
|
|||||||
mode.pvp.name = PvP
|
mode.pvp.name = PvP
|
||||||
mode.pvp.description = Сражайтесь против других игроков.\n[gray]Для игры требуется как минимум 2 ядра разного цвета на карте.
|
mode.pvp.description = Сражайтесь против других игроков.\n[gray]Для игры требуется как минимум 2 ядра разного цвета на карте.
|
||||||
mode.attack.name = Атака
|
mode.attack.name = Атака
|
||||||
mode.attack.description = Уничтожьте вражескую базу.\n[gray]Для игры требуется красное ядро на карте.
|
mode.attack.description = Уничтожьте вражескую базу.\n[gray]Для игры требуется вражеское ядро на карте.
|
||||||
mode.custom = Пользовательские правила
|
mode.custom = Пользовательские правила
|
||||||
rules.infiniteresources = Бесконечные ресурсы
|
rules.infiniteresources = Бесконечные ресурсы
|
||||||
rules.onlydepositcore = Разрешен перенос только в ядро
|
rules.onlydepositcore = Разрешен перенос только в ядро
|
||||||
rules.reactorexplosions = Взрывы реакторов
|
rules.reactorexplosions = Взрывы реакторов
|
||||||
rules.coreincinerates = Ядро сжигает избыток ресурсов
|
rules.coreincinerates = Ядро сжигает избыток ресурсов
|
||||||
rules.disableworldprocessors = Отключить мировые процессоры
|
rules.disableworldprocessors = Отключить мировые процессоры
|
||||||
rules.schematic = Схемы разрешены
|
rules.schematic = Разрешить схемы
|
||||||
rules.wavetimer = Интервал волн
|
rules.wavetimer = Интервал волн
|
||||||
rules.wavesending = Отправка волн
|
rules.wavesending = Отправка волн
|
||||||
rules.waves = Волны
|
rules.waves = Волны
|
||||||
@@ -1203,7 +1206,7 @@ rules.rtsminattackweight = Минимальный вес для атаки
|
|||||||
rules.cleanupdeadteams = Очистка строений побежденных команд (PvP)
|
rules.cleanupdeadteams = Очистка строений побежденных команд (PvP)
|
||||||
rules.corecapture = Захват ядра после уничтожения
|
rules.corecapture = Захват ядра после уничтожения
|
||||||
rules.polygoncoreprotection = Полигональная защита ядер
|
rules.polygoncoreprotection = Полигональная защита ядер
|
||||||
rules.placerangecheck = Проверка диапазона размещения
|
rules.placerangecheck = Запретить размещение турелей возле вражеских построек
|
||||||
rules.enemyCheat = Бесконечные ресурсы ИИ
|
rules.enemyCheat = Бесконечные ресурсы ИИ
|
||||||
rules.blockhealthmultiplier = Множитель прочности блоков
|
rules.blockhealthmultiplier = Множитель прочности блоков
|
||||||
rules.blockdamagemultiplier = Множитель урона блоков
|
rules.blockdamagemultiplier = Множитель урона блоков
|
||||||
@@ -1218,7 +1221,7 @@ rules.unitcap = Начальный лимит единиц
|
|||||||
rules.limitarea = Ограничить область карты
|
rules.limitarea = Ограничить область карты
|
||||||
rules.enemycorebuildradius = Радиус защиты враж. ядер:[lightgray] (блок.)
|
rules.enemycorebuildradius = Радиус защиты враж. ядер:[lightgray] (блок.)
|
||||||
rules.wavespacing = Интервал волн:[lightgray] (сек)
|
rules.wavespacing = Интервал волн:[lightgray] (сек)
|
||||||
rules.initialwavespacing = Начальное расстояние между волнами:[lightgray] (сек)
|
rules.initialwavespacing = Время до первой волны:[lightgray] (сек)
|
||||||
rules.buildcostmultiplier = Множитель затрат на строительство
|
rules.buildcostmultiplier = Множитель затрат на строительство
|
||||||
rules.buildspeedmultiplier = Множитель скорости строительства
|
rules.buildspeedmultiplier = Множитель скорости строительства
|
||||||
rules.deconstructrefundmultiplier = Множитель возврата ресурсов при разборке
|
rules.deconstructrefundmultiplier = Множитель возврата ресурсов при разборке
|
||||||
@@ -2180,7 +2183,7 @@ lst.getlink = Получает соединение процессора по и
|
|||||||
lst.control = Контролирует блок.
|
lst.control = Контролирует блок.
|
||||||
lst.radar = Обнаруживает единицы вокруг постройки с заданным радиусом.
|
lst.radar = Обнаруживает единицы вокруг постройки с заданным радиусом.
|
||||||
lst.sensor = Получает данные из постройки или единицы.
|
lst.sensor = Получает данные из постройки или единицы.
|
||||||
lst.set = Устанавливает переменную.
|
lst.set = Задаёт значение переменной.
|
||||||
lst.operation = Совершает операцию над 1-2 переменными.
|
lst.operation = Совершает операцию над 1-2 переменными.
|
||||||
lst.end = Переходит к началу стека операций.
|
lst.end = Переходит к началу стека операций.
|
||||||
lst.wait = Ждёт определённое количество секунд.
|
lst.wait = Ждёт определённое количество секунд.
|
||||||
@@ -2201,10 +2204,11 @@ lst.setrate = Устанавливает скорость выполнения
|
|||||||
lst.fetch = Ищет единицы, ядра, игроков или зданий по индексу.\nИндексы начинаются с 0 и заканчиваются возвращаемым числом.
|
lst.fetch = Ищет единицы, ядра, игроков или зданий по индексу.\nИндексы начинаются с 0 и заканчиваются возвращаемым числом.
|
||||||
lst.packcolor = Упаковывает компоненты RGBA [0, 1] в один номер для рисования или установки правил.
|
lst.packcolor = Упаковывает компоненты RGBA [0, 1] в один номер для рисования или установки правил.
|
||||||
lst.setrule = Устанавливает игровое правило.
|
lst.setrule = Устанавливает игровое правило.
|
||||||
lst.flushmessage = Отображает сообщение на экране из текстового буфера.\nБудет ожидать окончание предыдущего сообщения.
|
lst.flushmessage = Отображает сообщение из текстового буфера на экране игрока.\nБудет ожидать окончание предыдущего сообщения.
|
||||||
lst.cutscene = Управляет камерой игрока.
|
lst.cutscene = Управляет камерой игрока.
|
||||||
lst.setflag = Устанавливает глобальный флаг, который может быть прочитан всеми процессорами.
|
lst.setflag = Устанавливает глобальный флаг, который может быть прочитан всеми процессорами.
|
||||||
lst.getflag = Проверяет, установлен ли глобальный флаг.
|
lst.getflag = Проверяет, установлен ли глобальный флаг.
|
||||||
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
|
||||||
logic.nounitbuild = [red]Строительство с помощью процессоров здесь запрещено.
|
logic.nounitbuild = [red]Строительство с помощью процессоров здесь запрещено.
|
||||||
|
|
||||||
|
|||||||
@@ -890,6 +890,7 @@ stat.repairspeed = Brzina popravke
|
|||||||
stat.weapons = Oružja
|
stat.weapons = Oružja
|
||||||
stat.bullet = Metak
|
stat.bullet = Metak
|
||||||
stat.moduletier = Nivo modula
|
stat.moduletier = Nivo modula
|
||||||
|
stat.unittype = Unit Type
|
||||||
stat.speedincrease = Povećanje brzine
|
stat.speedincrease = Povećanje brzine
|
||||||
stat.range = Domet
|
stat.range = Domet
|
||||||
stat.drilltier = Materijali koje je moguće kopati
|
stat.drilltier = Materijali koje je moguće kopati
|
||||||
@@ -983,6 +984,8 @@ bullet.splashdamage = [stat]{0}[lightgray] oblasna šteta ~[stat] {1}[lightgray]
|
|||||||
bullet.incendiary = [stat]zapaljiv
|
bullet.incendiary = [stat]zapaljiv
|
||||||
bullet.homing = [stat]samonavođenje
|
bullet.homing = [stat]samonavođenje
|
||||||
bullet.armorpierce = [stat]proboj oklopa
|
bullet.armorpierce = [stat]proboj oklopa
|
||||||
|
bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles
|
||||||
|
bullet.interval = [stat]{0}/sec[lightgray] interval bullets:
|
||||||
bullet.frags = [stat]{0}[lightgray]x šrapnela:
|
bullet.frags = [stat]{0}[lightgray]x šrapnela:
|
||||||
bullet.lightning = [stat]{0}[lightgray]x munja ~ [stat]{1}[lightgray] štete
|
bullet.lightning = [stat]{0}[lightgray]x munja ~ [stat]{1}[lightgray] štete
|
||||||
bullet.buildingdamage = [stat]{0}%[lightgray] šteta za strukture
|
bullet.buildingdamage = [stat]{0}%[lightgray] šteta za strukture
|
||||||
@@ -1096,8 +1099,8 @@ setting.bridgeopacity.name = Prozirnost Mostova
|
|||||||
setting.playerchat.name = Prikazuj Čet Mehure Igrača
|
setting.playerchat.name = Prikazuj Čet Mehure Igrača
|
||||||
setting.showweather.name = Prikazuj Grafiku Vremena
|
setting.showweather.name = Prikazuj Grafiku Vremena
|
||||||
setting.hidedisplays.name = Sakrij Logičke Displeje
|
setting.hidedisplays.name = Sakrij Logičke Displeje
|
||||||
public.confirm = Da li ste sigurni da želite da vam igra bude javna?\n[accent]Svako će moći se pridruži vašoj igri.\n[lightgray]Ovo se može posle promeniti u Podešavanja->Igra->Vidljivost Javne Igre.
|
steam.friendsonly = Friends Only
|
||||||
public.confirm.really = Ako hoćete da igrate sa prijateljima, koristite [green]Pozovi Prijatelje[] umesto [scarlet]Javnog servera[]!\nDa li ste sigurni da želite da vam igra bude [scarlet]javna[]?
|
steam.friendsonly.tooltip = Whether only Steam friends will be able to join your game.\nUnchecking this box will make your game public - anyone can join.
|
||||||
public.beta = Note that beta versions of the game cannot make public lobbies.
|
public.beta = Note that beta versions of the game cannot make public lobbies.
|
||||||
uiscale.reset = UI skala se promenija.\nPritisnite "OK" da porvdite ovu skali.\n[scarlet]Vraćanje i izlazak za[accent] {0}[] sekundi...
|
uiscale.reset = UI skala se promenija.\nPritisnite "OK" da porvdite ovu skali.\n[scarlet]Vraćanje i izlazak za[accent] {0}[] sekundi...
|
||||||
uiscale.cancel = Obustavi i Izađi
|
uiscale.cancel = Obustavi i Izađi
|
||||||
@@ -1149,8 +1152,8 @@ keybind.select.name = Izaberi/Pucaj
|
|||||||
keybind.diagonal_placement.name = Diagonalo Postavljanje
|
keybind.diagonal_placement.name = Diagonalo Postavljanje
|
||||||
keybind.pick.name = Izaberi Blok
|
keybind.pick.name = Izaberi Blok
|
||||||
keybind.break_block.name = Razori Blok
|
keybind.break_block.name = Razori Blok
|
||||||
keybind.select_all_units = Izaberi Sve Jedinice
|
keybind.select_all_units.name = Izaberi Sve Jedinice
|
||||||
keybind.select_all_unit_factories = Izaberi Sve Fabrike Jedinica
|
keybind.select_all_unit_factories.name = Izaberi Sve Fabrike Jedinica
|
||||||
keybind.deselect.name = Deselect
|
keybind.deselect.name = Deselect
|
||||||
keybind.pickupCargo.name = Uzmi Tovar
|
keybind.pickupCargo.name = Uzmi Tovar
|
||||||
keybind.dropCargo.name = Spusti Tovar
|
keybind.dropCargo.name = Spusti Tovar
|
||||||
@@ -2208,6 +2211,7 @@ lst.flushmessage = Display a message on the screen from the text buffer.\nWill w
|
|||||||
lst.cutscene = Manipulate the player camera.
|
lst.cutscene = Manipulate the player camera.
|
||||||
lst.setflag = Set a global flag that can be read by all processors.
|
lst.setflag = Set a global flag that can be read by all processors.
|
||||||
lst.getflag = Check if a global flag is set.
|
lst.getflag = Check if a global flag is set.
|
||||||
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
|
||||||
logic.nounitbuild = [red]Unit building logic is not allowed here.
|
logic.nounitbuild = [red]Unit building logic is not allowed here.
|
||||||
|
|
||||||
|
|||||||
@@ -876,6 +876,7 @@ stat.repairspeed = Repair Speed
|
|||||||
stat.weapons = Weapons
|
stat.weapons = Weapons
|
||||||
stat.bullet = Bullet
|
stat.bullet = Bullet
|
||||||
stat.moduletier = Module Tier
|
stat.moduletier = Module Tier
|
||||||
|
stat.unittype = Unit Type
|
||||||
stat.speedincrease = Speed Increase
|
stat.speedincrease = Speed Increase
|
||||||
stat.range = Range
|
stat.range = Range
|
||||||
stat.drilltier = Drillables
|
stat.drilltier = Drillables
|
||||||
@@ -969,6 +970,8 @@ bullet.splashdamage = [stat]{0}[lightgray] area dmg ~[stat] {1}[lightgray] tiles
|
|||||||
bullet.incendiary = [stat]incendiary
|
bullet.incendiary = [stat]incendiary
|
||||||
bullet.homing = [stat]homing
|
bullet.homing = [stat]homing
|
||||||
bullet.armorpierce = [stat]armor piercing
|
bullet.armorpierce = [stat]armor piercing
|
||||||
|
bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles
|
||||||
|
bullet.interval = [stat]{0}/sec[lightgray] interval bullets:
|
||||||
bullet.frags = [stat]{0}[lightgray]x frag bullets:
|
bullet.frags = [stat]{0}[lightgray]x frag bullets:
|
||||||
bullet.lightning = [stat]{0}[lightgray]x lightning ~ [stat]{1}[lightgray] damage
|
bullet.lightning = [stat]{0}[lightgray]x lightning ~ [stat]{1}[lightgray] damage
|
||||||
bullet.buildingdamage = [stat]{0}%[lightgray] building damage
|
bullet.buildingdamage = [stat]{0}%[lightgray] building damage
|
||||||
@@ -1082,8 +1085,8 @@ setting.bridgeopacity.name = Bridge Opacity
|
|||||||
setting.playerchat.name = Visa
|
setting.playerchat.name = Visa
|
||||||
setting.showweather.name = Show Weather Graphics
|
setting.showweather.name = Show Weather Graphics
|
||||||
setting.hidedisplays.name = Hide Logic Displays
|
setting.hidedisplays.name = Hide Logic Displays
|
||||||
public.confirm = Do you want to make your game public?\n[accent]Anyone will be able to join your games.\n[lightgray]This can be changed later in Settings->Game->Public Game Visibility.
|
steam.friendsonly = Friends Only
|
||||||
public.confirm.really = If you want to play with friends, use [green]Invite Friend[] instead of a [scarlet]Public server[]!\nAre you sure you want to make your game [scarlet]public[]?
|
steam.friendsonly.tooltip = Whether only Steam friends will be able to join your game.\nUnchecking this box will make your game public - anyone can join.
|
||||||
public.beta = Note that beta versions of the game cannot make public lobbies.
|
public.beta = Note that beta versions of the game cannot make public lobbies.
|
||||||
uiscale.reset = UI-skalan har ändrats.\nTryck "OK" för att använda den här skalan.\n[scarlet]Avslutar och återställer om[accent] {0}[] sekunder...
|
uiscale.reset = UI-skalan har ändrats.\nTryck "OK" för att använda den här skalan.\n[scarlet]Avslutar och återställer om[accent] {0}[] sekunder...
|
||||||
uiscale.cancel = Avbryt och Avsluta
|
uiscale.cancel = Avbryt och Avsluta
|
||||||
@@ -1135,8 +1138,8 @@ keybind.select.name = Select/Shoot
|
|||||||
keybind.diagonal_placement.name = Diagonal Placement
|
keybind.diagonal_placement.name = Diagonal Placement
|
||||||
keybind.pick.name = Pick Block
|
keybind.pick.name = Pick Block
|
||||||
keybind.break_block.name = Break Block
|
keybind.break_block.name = Break Block
|
||||||
keybind.select_all_units = Select All Units
|
keybind.select_all_units.name = Select All Units
|
||||||
keybind.select_all_unit_factories = Select All Unit Factories
|
keybind.select_all_unit_factories.name = Select All Unit Factories
|
||||||
keybind.deselect.name = Deselect
|
keybind.deselect.name = Deselect
|
||||||
keybind.pickupCargo.name = Pickup Cargo
|
keybind.pickupCargo.name = Pickup Cargo
|
||||||
keybind.dropCargo.name = Drop Cargo
|
keybind.dropCargo.name = Drop Cargo
|
||||||
@@ -2187,6 +2190,7 @@ lst.flushmessage = Display a message on the screen from the text buffer.\nWill w
|
|||||||
lst.cutscene = Manipulate the player camera.
|
lst.cutscene = Manipulate the player camera.
|
||||||
lst.setflag = Set a global flag that can be read by all processors.
|
lst.setflag = Set a global flag that can be read by all processors.
|
||||||
lst.getflag = Check if a global flag is set.
|
lst.getflag = Check if a global flag is set.
|
||||||
|
lst.setprop = Sets a property of a unit or building.
|
||||||
logic.nounitbuild = [red]Unit building logic is not allowed here.
|
logic.nounitbuild = [red]Unit building logic is not allowed here.
|
||||||
lenum.type = Type of building/unit.\ne.g. for any router, this will return [accent]@router[].\nNot a string.
|
lenum.type = Type of building/unit.\ne.g. for any router, this will return [accent]@router[].\nNot a string.
|
||||||
lenum.shoot = Shoot at a position.
|
lenum.shoot = Shoot at a position.
|
||||||
|
|||||||
@@ -889,6 +889,7 @@ stat.repairspeed = ความเร็วการซ่อม
|
|||||||
stat.weapons = อาวุธ
|
stat.weapons = อาวุธ
|
||||||
stat.bullet = กระสุน
|
stat.bullet = กระสุน
|
||||||
stat.moduletier = ระดับหน่วยประกอบ
|
stat.moduletier = ระดับหน่วยประกอบ
|
||||||
|
stat.unittype = Unit Type
|
||||||
stat.speedincrease = เพิ่มความเร็ว
|
stat.speedincrease = เพิ่มความเร็ว
|
||||||
stat.range = ระยะ
|
stat.range = ระยะ
|
||||||
stat.drilltier = แร่ที่ขุดได้
|
stat.drilltier = แร่ที่ขุดได้
|
||||||
@@ -982,6 +983,8 @@ bullet.splashdamage = [stat]{0}[lightgray] ดาเมจกระจาย ~[s
|
|||||||
bullet.incendiary = [stat]ติดไฟ
|
bullet.incendiary = [stat]ติดไฟ
|
||||||
bullet.homing = [stat]ติดตามตัว
|
bullet.homing = [stat]ติดตามตัว
|
||||||
bullet.armorpierce = [stat]เจาะเกราะ
|
bullet.armorpierce = [stat]เจาะเกราะ
|
||||||
|
bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles
|
||||||
|
bullet.interval = [stat]{0}/sec[lightgray] interval bullets:
|
||||||
bullet.frags = [stat]{0}[lightgray]x กระจาย กระสุน:
|
bullet.frags = [stat]{0}[lightgray]x กระจาย กระสุน:
|
||||||
bullet.lightning = [stat]{0}[lightgray]x สายฟ้า ~ [stat]{1}[lightgray] ดาเมจ
|
bullet.lightning = [stat]{0}[lightgray]x สายฟ้า ~ [stat]{1}[lightgray] ดาเมจ
|
||||||
bullet.buildingdamage = [lightgray]ดาเมจต่อสิ่งก่อสร้าง [stat]{0}%[lightgray]
|
bullet.buildingdamage = [lightgray]ดาเมจต่อสิ่งก่อสร้าง [stat]{0}%[lightgray]
|
||||||
@@ -1095,8 +1098,8 @@ setting.bridgeopacity.name = ความโปร่งแสงของสะ
|
|||||||
setting.playerchat.name = แสดงบับเบิ้ลแชทของผู้เล่น
|
setting.playerchat.name = แสดงบับเบิ้ลแชทของผู้เล่น
|
||||||
setting.showweather.name = แสดงแกรฟฟิกสภาพอากาศ
|
setting.showweather.name = แสดงแกรฟฟิกสภาพอากาศ
|
||||||
setting.hidedisplays.name = ซ่อนหน้าจอลอจิก
|
setting.hidedisplays.name = ซ่อนหน้าจอลอจิก
|
||||||
public.confirm = คุณต้องการให้เกมของคุณเปิดเป็นสาธารณะหรือไม่?\n[accent]ทุกคนจะสามารถเข้าร่วมเกมของคุณได้\n[lightgray]คุณสามารถเปลี่ยนการตั้งค่านี้ได้ที่ ตั้งค่า->เกม->การมองเห็นเซิร์ฟเวอร์สาธารณะ
|
steam.friendsonly = Friends Only
|
||||||
public.confirm.really = หากคุณอยากเล่นกับเล่นกับเพื่อน ใช้[green]ชวนเพื่อน[]ดีกว่า แทนที่จะใช้[scarlet]เซิร์ฟเวอร์สาธารณะ[]!\nคุณแน่ใจนะว่าจะเปลี่ยนเกมคุณเป็น[scarlet]สาธารณะ[]?
|
steam.friendsonly.tooltip = Whether only Steam friends will be able to join your game.\nUnchecking this box will make your game public - anyone can join.
|
||||||
public.beta = เกมเวอร์ชั่นเบต้าไม่สามารถเปิดเซิร์ฟเวอร์สาธารณะได้
|
public.beta = เกมเวอร์ชั่นเบต้าไม่สามารถเปิดเซิร์ฟเวอร์สาธารณะได้
|
||||||
uiscale.reset = อัตราขนาดของ UI ได้มีการเปลี่ยนแปลง\nกด "โอเค" เพื่อยืนยันขนาด UI นี้\n[scarlet]จะเปลี่ยนกลับไปเป็นขนาดเดิมและออกในอีก[accent] {0}[] วินาที...
|
uiscale.reset = อัตราขนาดของ UI ได้มีการเปลี่ยนแปลง\nกด "โอเค" เพื่อยืนยันขนาด UI นี้\n[scarlet]จะเปลี่ยนกลับไปเป็นขนาดเดิมและออกในอีก[accent] {0}[] วินาที...
|
||||||
uiscale.cancel = ยกเลิกและออก
|
uiscale.cancel = ยกเลิกและออก
|
||||||
@@ -1148,8 +1151,8 @@ keybind.select.name = เลือก/ยิง
|
|||||||
keybind.diagonal_placement.name = วางเป็นแนวทแยง
|
keybind.diagonal_placement.name = วางเป็นแนวทแยง
|
||||||
keybind.pick.name = เลือกบล็อก
|
keybind.pick.name = เลือกบล็อก
|
||||||
keybind.break_block.name = ทุบบล็อก
|
keybind.break_block.name = ทุบบล็อก
|
||||||
keybind.select_all_units = Select All Units
|
keybind.select_all_units.name = Select All Units
|
||||||
keybind.select_all_unit_factories = Select All Unit Factories
|
keybind.select_all_unit_factories.name = Select All Unit Factories
|
||||||
keybind.deselect.name = ยกเลิกการเลือก
|
keybind.deselect.name = ยกเลิกการเลือก
|
||||||
keybind.pickupCargo.name = ยกสิ่งบรรทุกขึ้น
|
keybind.pickupCargo.name = ยกสิ่งบรรทุกขึ้น
|
||||||
keybind.dropCargo.name = วางสิ่งบรรทุกลง
|
keybind.dropCargo.name = วางสิ่งบรรทุกลง
|
||||||
@@ -2206,6 +2209,7 @@ lst.flushmessage = แสดงข้อความบนหน้าจอจ
|
|||||||
lst.cutscene = ควบคุมมุมกล้องของผู้เล่น
|
lst.cutscene = ควบคุมมุมกล้องของผู้เล่น
|
||||||
lst.setflag = เซ็ตธงทั่วโลกที่ตัวประมวลผลทุกตัวสามารถอ่านค่าได้
|
lst.setflag = เซ็ตธงทั่วโลกที่ตัวประมวลผลทุกตัวสามารถอ่านค่าได้
|
||||||
lst.getflag = เช็กว่าธงทั่วโลกนั้นเซ็ตอยู่รึเปล่า
|
lst.getflag = เช็กว่าธงทั่วโลกนั้นเซ็ตอยู่รึเปล่า
|
||||||
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
|
||||||
logic.nounitbuild = [red]ไม่อนุญาตให้ใช้ลอจิกควบคุมให้ยูนิตสร้างที่นี่
|
logic.nounitbuild = [red]ไม่อนุญาตให้ใช้ลอจิกควบคุมให้ยูนิตสร้างที่นี่
|
||||||
|
|
||||||
|
|||||||
@@ -876,6 +876,7 @@ stat.repairspeed = Repair Speed
|
|||||||
stat.weapons = Weapons
|
stat.weapons = Weapons
|
||||||
stat.bullet = Bullet
|
stat.bullet = Bullet
|
||||||
stat.moduletier = Module Tier
|
stat.moduletier = Module Tier
|
||||||
|
stat.unittype = Unit Type
|
||||||
stat.speedincrease = Speed Increase
|
stat.speedincrease = Speed Increase
|
||||||
stat.range = Range
|
stat.range = Range
|
||||||
stat.drilltier = Kazilabilirler
|
stat.drilltier = Kazilabilirler
|
||||||
@@ -969,6 +970,8 @@ bullet.splashdamage = [stat]{0}[lightgray] area dmg ~[stat] {1}[lightgray] tiles
|
|||||||
bullet.incendiary = [stat]incendiary
|
bullet.incendiary = [stat]incendiary
|
||||||
bullet.homing = [stat]homing
|
bullet.homing = [stat]homing
|
||||||
bullet.armorpierce = [stat]armor piercing
|
bullet.armorpierce = [stat]armor piercing
|
||||||
|
bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles
|
||||||
|
bullet.interval = [stat]{0}/sec[lightgray] interval bullets:
|
||||||
bullet.frags = [stat]{0}[lightgray]x frag bullets:
|
bullet.frags = [stat]{0}[lightgray]x frag bullets:
|
||||||
bullet.lightning = [stat]{0}[lightgray]x lightning ~ [stat]{1}[lightgray] damage
|
bullet.lightning = [stat]{0}[lightgray]x lightning ~ [stat]{1}[lightgray] damage
|
||||||
bullet.buildingdamage = [stat]{0}%[lightgray] building damage
|
bullet.buildingdamage = [stat]{0}%[lightgray] building damage
|
||||||
@@ -1082,8 +1085,8 @@ setting.bridgeopacity.name = Bridge Opacity
|
|||||||
setting.playerchat.name = Display In-Game Chat
|
setting.playerchat.name = Display In-Game Chat
|
||||||
setting.showweather.name = Show Weather Graphics
|
setting.showweather.name = Show Weather Graphics
|
||||||
setting.hidedisplays.name = Hide Logic Displays
|
setting.hidedisplays.name = Hide Logic Displays
|
||||||
public.confirm = Do you want to make your game public?\n[accent]Anyone will be able to join your games.\n[lightgray]This can be changed later in Settings->Game->Public Game Visibility.
|
steam.friendsonly = Friends Only
|
||||||
public.confirm.really = If you want to play with friends, use [green]Invite Friend[] instead of a [scarlet]Public server[]!\nAre you sure you want to make your game [scarlet]public[]?
|
steam.friendsonly.tooltip = Whether only Steam friends will be able to join your game.\nUnchecking this box will make your game public - anyone can join.
|
||||||
public.beta = Note that beta versions of the game cannot make public lobbies.
|
public.beta = Note that beta versions of the game cannot make public lobbies.
|
||||||
uiscale.reset = UI scale has been changed.\nPress "OK" to confirm this scale.\n[scarlet]Reverting and exiting in[accent] {0}[] settings...
|
uiscale.reset = UI scale has been changed.\nPress "OK" to confirm this scale.\n[scarlet]Reverting and exiting in[accent] {0}[] settings...
|
||||||
uiscale.cancel = Cancel & Exit
|
uiscale.cancel = Cancel & Exit
|
||||||
@@ -1135,8 +1138,8 @@ keybind.select.name = Sec/silahi sik
|
|||||||
keybind.diagonal_placement.name = Diagonal Placement
|
keybind.diagonal_placement.name = Diagonal Placement
|
||||||
keybind.pick.name = Pick Block
|
keybind.pick.name = Pick Block
|
||||||
keybind.break_block.name = Break Block
|
keybind.break_block.name = Break Block
|
||||||
keybind.select_all_units = Select All Units
|
keybind.select_all_units.name = Select All Units
|
||||||
keybind.select_all_unit_factories = Select All Unit Factories
|
keybind.select_all_unit_factories.name = Select All Unit Factories
|
||||||
keybind.deselect.name = Eldeki yapiyi birak
|
keybind.deselect.name = Eldeki yapiyi birak
|
||||||
keybind.pickupCargo.name = Pickup Cargo
|
keybind.pickupCargo.name = Pickup Cargo
|
||||||
keybind.dropCargo.name = Drop Cargo
|
keybind.dropCargo.name = Drop Cargo
|
||||||
@@ -2187,6 +2190,7 @@ lst.flushmessage = Display a message on the screen from the text buffer.\nWill w
|
|||||||
lst.cutscene = Manipulate the player camera.
|
lst.cutscene = Manipulate the player camera.
|
||||||
lst.setflag = Set a global flag that can be read by all processors.
|
lst.setflag = Set a global flag that can be read by all processors.
|
||||||
lst.getflag = Check if a global flag is set.
|
lst.getflag = Check if a global flag is set.
|
||||||
|
lst.setprop = Sets a property of a unit or building.
|
||||||
logic.nounitbuild = [red]Unit building logic is not allowed here.
|
logic.nounitbuild = [red]Unit building logic is not allowed here.
|
||||||
lenum.type = Type of building/unit.\ne.g. for any router, this will return [accent]@router[].\nNot a string.
|
lenum.type = Type of building/unit.\ne.g. for any router, this will return [accent]@router[].\nNot a string.
|
||||||
lenum.shoot = Shoot at a position.
|
lenum.shoot = Shoot at a position.
|
||||||
|
|||||||
@@ -887,6 +887,7 @@ stat.repairspeed = Tamir Hızı
|
|||||||
stat.weapons = Silahlar
|
stat.weapons = Silahlar
|
||||||
stat.bullet = Mermi
|
stat.bullet = Mermi
|
||||||
stat.moduletier = Modül Seviyesi
|
stat.moduletier = Modül Seviyesi
|
||||||
|
stat.unittype = Unit Type
|
||||||
stat.speedincrease = Hız Artışı
|
stat.speedincrease = Hız Artışı
|
||||||
stat.range = Menzil
|
stat.range = Menzil
|
||||||
stat.drilltier = Kazılabilenler
|
stat.drilltier = Kazılabilenler
|
||||||
@@ -980,6 +981,8 @@ bullet.splashdamage = [stat]{0} [lightgray]alan hasarı ~[stat] {1} [lightgray]k
|
|||||||
bullet.incendiary = [stat]yakıcı
|
bullet.incendiary = [stat]yakıcı
|
||||||
bullet.homing = [stat]güdümlü
|
bullet.homing = [stat]güdümlü
|
||||||
bullet.armorpierce = [stat]zırh delici
|
bullet.armorpierce = [stat]zırh delici
|
||||||
|
bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles
|
||||||
|
bullet.interval = [stat]{0}/sec[lightgray] interval bullets:
|
||||||
bullet.frags = [stat]{0}[lightgray]x parçalı mermiler:
|
bullet.frags = [stat]{0}[lightgray]x parçalı mermiler:
|
||||||
bullet.lightning = [stat]{0}[lightgray]x elektrik ~ [stat]{1}[lightgray] hasarı
|
bullet.lightning = [stat]{0}[lightgray]x elektrik ~ [stat]{1}[lightgray] hasarı
|
||||||
bullet.buildingdamage = [stat]{0}%[lightgray] inşaa hasarı
|
bullet.buildingdamage = [stat]{0}%[lightgray] inşaa hasarı
|
||||||
@@ -1093,8 +1096,8 @@ setting.bridgeopacity.name = Köprü Opaklığı
|
|||||||
setting.playerchat.name = Oyun-içi Konuşmayı Göster
|
setting.playerchat.name = Oyun-içi Konuşmayı Göster
|
||||||
setting.showweather.name = Hava Durmu Grafiklerini Göster
|
setting.showweather.name = Hava Durmu Grafiklerini Göster
|
||||||
setting.hidedisplays.name = İşlemci İpuçlarını Gizle
|
setting.hidedisplays.name = İşlemci İpuçlarını Gizle
|
||||||
public.confirm = Oyununuzu halka açık yapmak ister misiniz?\n[accent]Oyunlarınıza herkes katılabilecektir.\n[lightgray]Bu seçenek daha sonra Ayarlar->Oyun->Halka Açık Oyunlar'dan değiştirilebilir.
|
steam.friendsonly = Friends Only
|
||||||
public.confirm.really = Eğer Arkadaşlarınla oynamak istiyorsan [green]Arkadaş Davet Et[] e bas. [scarlet]Halka Açık Sunucuya Değil[]!\nOyununu Gerçekten Halka açık yapmak istediğine [scarlet]Emin Misin[]?
|
steam.friendsonly.tooltip = Whether only Steam friends will be able to join your game.\nUnchecking this box will make your game public - anyone can join.
|
||||||
public.beta = Oyunun beta sürümlerinin halka açık lobiler yapamayacağını unutmayın.
|
public.beta = Oyunun beta sürümlerinin halka açık lobiler yapamayacağını unutmayın.
|
||||||
uiscale.reset = Arayüz ölçeği değiştirildi.\nBu ölçeği onaylamak için "Tamam" butonuna basın.\n[accent] {0}[] [scarlet]saniye içinde eski ayarlara geri dönülüp oyundan çıkılıyor…[]
|
uiscale.reset = Arayüz ölçeği değiştirildi.\nBu ölçeği onaylamak için "Tamam" butonuna basın.\n[accent] {0}[] [scarlet]saniye içinde eski ayarlara geri dönülüp oyundan çıkılıyor…[]
|
||||||
uiscale.cancel = İptal Et ve Çık
|
uiscale.cancel = İptal Et ve Çık
|
||||||
@@ -1146,8 +1149,8 @@ keybind.select.name = Seç/Ateş Et
|
|||||||
keybind.diagonal_placement.name = Çapraz Yerleştirme
|
keybind.diagonal_placement.name = Çapraz Yerleştirme
|
||||||
keybind.pick.name = Blok Seç
|
keybind.pick.name = Blok Seç
|
||||||
keybind.break_block.name = Blok Kır
|
keybind.break_block.name = Blok Kır
|
||||||
keybind.select_all_units = Tüm Birimleri Seç
|
keybind.select_all_units.name = Tüm Birimleri Seç
|
||||||
keybind.select_all_unit_factories = Select All Unit Factories
|
keybind.select_all_unit_factories.name = Select All Unit Factories
|
||||||
keybind.deselect.name = Seçimleri Kaldır
|
keybind.deselect.name = Seçimleri Kaldır
|
||||||
keybind.pickupCargo.name = Kargoyu Al
|
keybind.pickupCargo.name = Kargoyu Al
|
||||||
keybind.dropCargo.name = Kargoyu Bırak
|
keybind.dropCargo.name = Kargoyu Bırak
|
||||||
@@ -2206,6 +2209,7 @@ lst.flushmessage = Ekranda bir yazı göster.\nBir önceki yazı kaybolana kadar
|
|||||||
lst.cutscene = Oyuncu Kamerasını hareket ettir.
|
lst.cutscene = Oyuncu Kamerasını hareket ettir.
|
||||||
lst.setflag = Tüm İşlemciler tarafından okunabilen bir Numara İşaretle.
|
lst.setflag = Tüm İşlemciler tarafından okunabilen bir Numara İşaretle.
|
||||||
lst.getflag = Evrensel İşaretli Numara Oku.
|
lst.getflag = Evrensel İşaretli Numara Oku.
|
||||||
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
|
||||||
logic.nounitbuild = [red]Birim İnşası Yasak!
|
logic.nounitbuild = [red]Birim İnşası Yasak!
|
||||||
|
|
||||||
|
|||||||
@@ -897,6 +897,7 @@ stat.repairspeed = Швидкість відновлення
|
|||||||
stat.weapons = Зброя
|
stat.weapons = Зброя
|
||||||
stat.bullet = Кулі
|
stat.bullet = Кулі
|
||||||
stat.moduletier = Рівень модуля
|
stat.moduletier = Рівень модуля
|
||||||
|
stat.unittype = Unit Type
|
||||||
stat.speedincrease = Збільшення швидкості
|
stat.speedincrease = Збільшення швидкості
|
||||||
stat.range = Радіус дії
|
stat.range = Радіус дії
|
||||||
stat.drilltier = Видобуває
|
stat.drilltier = Видобуває
|
||||||
@@ -990,6 +991,8 @@ bullet.splashdamage = [stat]{0}[lightgray] шкода по ділянці ~[stat
|
|||||||
bullet.incendiary = [stat]запальний
|
bullet.incendiary = [stat]запальний
|
||||||
bullet.homing = [stat]самонаведення
|
bullet.homing = [stat]самонаведення
|
||||||
bullet.armorpierce = [stat]бронебійність
|
bullet.armorpierce = [stat]бронебійність
|
||||||
|
bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles
|
||||||
|
bullet.interval = [stat]{0}/sec[lightgray] interval bullets:
|
||||||
bullet.frags = [stat]{0}[lightgray]x шкода по ділянці від снарядів:
|
bullet.frags = [stat]{0}[lightgray]x шкода по ділянці від снарядів:
|
||||||
bullet.lightning = [stat]{0}[lightgray]x блискавки ~ [stat]{1}[lightgray] шкоди
|
bullet.lightning = [stat]{0}[lightgray]x блискавки ~ [stat]{1}[lightgray] шкоди
|
||||||
bullet.buildingdamage = [stat]{0}%[lightgray] шкода по будівлям
|
bullet.buildingdamage = [stat]{0}%[lightgray] шкода по будівлям
|
||||||
@@ -1103,8 +1106,8 @@ setting.bridgeopacity.name = Непрозорість мостів
|
|||||||
setting.playerchat.name = Показувати хмару чата над гравцями
|
setting.playerchat.name = Показувати хмару чата над гравцями
|
||||||
setting.showweather.name = Показувати погоду
|
setting.showweather.name = Показувати погоду
|
||||||
setting.hidedisplays.name = Приховувати логічні дисплеї
|
setting.hidedisplays.name = Приховувати логічні дисплеї
|
||||||
public.confirm = Ви хочете зробити цю гру загальнодоступною?\n[accent]Будь-хто може приєднатися до вашої гри.\n[lightgray]Це можна змінити в Налаштування->Гра->Загальнодоступність гри.
|
steam.friendsonly = Friends Only
|
||||||
public.confirm.really = Якщо ви хочете грати з друзями, використовуйте [green]Запросити друзів[] замість [scarlet]Публічного сервера[]!\nВи справді хочете зробити свою гру [scarlet]публічною[]?
|
steam.friendsonly.tooltip = Whether only Steam friends will be able to join your game.\nUnchecking this box will make your game public - anyone can join.
|
||||||
public.beta = Зауважте, що в бета-версії гри ви не можете робити публічні ігри.
|
public.beta = Зауважте, що в бета-версії гри ви не можете робити публічні ігри.
|
||||||
uiscale.reset = Масштаб користувацького інтерфейсу було змінено.\nНатисніть «Гаразд» для підтвердження цього масштабу.\n[scarlet]Повернення налаштувань і вихід через[accent] {0}[] секунд…
|
uiscale.reset = Масштаб користувацького інтерфейсу було змінено.\nНатисніть «Гаразд» для підтвердження цього масштабу.\n[scarlet]Повернення налаштувань і вихід через[accent] {0}[] секунд…
|
||||||
uiscale.cancel = Скасувати й вийти
|
uiscale.cancel = Скасувати й вийти
|
||||||
@@ -1156,8 +1159,8 @@ keybind.select.name = Вибір/Постріл
|
|||||||
keybind.diagonal_placement.name = Діагональне розміщення
|
keybind.diagonal_placement.name = Діагональне розміщення
|
||||||
keybind.pick.name = Вибрати блок
|
keybind.pick.name = Вибрати блок
|
||||||
keybind.break_block.name = Зламати блок
|
keybind.break_block.name = Зламати блок
|
||||||
keybind.select_all_units = Вибрати всі одиниці
|
keybind.select_all_units.name = Вибрати всі одиниці
|
||||||
keybind.select_all_unit_factories = Вибрати всі заводи зі створення одиниць
|
keybind.select_all_unit_factories.name = Вибрати всі заводи зі створення одиниць
|
||||||
keybind.deselect.name = Скасувати
|
keybind.deselect.name = Скасувати
|
||||||
keybind.pickupCargo.name = Взяти вантаж
|
keybind.pickupCargo.name = Взяти вантаж
|
||||||
keybind.dropCargo.name = Скинути вантаж
|
keybind.dropCargo.name = Скинути вантаж
|
||||||
@@ -2230,6 +2233,7 @@ lst.flushmessage = Показує повідомлення на екрані з
|
|||||||
lst.cutscene = Керує камерою гравця.
|
lst.cutscene = Керує камерою гравця.
|
||||||
lst.setflag = Установлює глобальний прапорець, який можуть прочитати усі процесори.
|
lst.setflag = Установлює глобальний прапорець, який можуть прочитати усі процесори.
|
||||||
lst.getflag = Перевіряє, чи встановлено глобальний прапорець.
|
lst.getflag = Перевіряє, чи встановлено глобальний прапорець.
|
||||||
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
|
||||||
logic.nounitbuild = [red]Будування за допомогою процесорів заборено.
|
logic.nounitbuild = [red]Будування за допомогою процесорів заборено.
|
||||||
|
|
||||||
|
|||||||
@@ -899,6 +899,7 @@ stat.repairspeed = 修理速度
|
|||||||
stat.weapons = 武器
|
stat.weapons = 武器
|
||||||
stat.bullet = 子弹
|
stat.bullet = 子弹
|
||||||
stat.moduletier = 模块等级
|
stat.moduletier = 模块等级
|
||||||
|
stat.unittype = Unit Type
|
||||||
stat.speedincrease = 提速
|
stat.speedincrease = 提速
|
||||||
stat.range = 范围
|
stat.range = 范围
|
||||||
stat.drilltier = 可钻探矿物
|
stat.drilltier = 可钻探矿物
|
||||||
@@ -992,6 +993,8 @@ bullet.splashdamage = [stat]{0}[lightgray]范围伤害~[stat] {1}[lightgray]格
|
|||||||
bullet.incendiary = [stat]燃烧
|
bullet.incendiary = [stat]燃烧
|
||||||
bullet.homing = [stat]追踪
|
bullet.homing = [stat]追踪
|
||||||
bullet.armorpierce = [stat]穿甲
|
bullet.armorpierce = [stat]穿甲
|
||||||
|
bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles
|
||||||
|
bullet.interval = [stat]{0}/sec[lightgray] interval bullets:
|
||||||
bullet.frags = [stat]{0}[lightgray]x分裂子弹:
|
bullet.frags = [stat]{0}[lightgray]x分裂子弹:
|
||||||
bullet.lightning = [stat]{0}[lightgray]x闪电~[stat]{1}[lightgray]伤害
|
bullet.lightning = [stat]{0}[lightgray]x闪电~[stat]{1}[lightgray]伤害
|
||||||
bullet.buildingdamage = [stat]{0}%[lightgray]对建筑伤害
|
bullet.buildingdamage = [stat]{0}%[lightgray]对建筑伤害
|
||||||
@@ -1105,8 +1108,8 @@ setting.bridgeopacity.name = 桥梁不透明度
|
|||||||
setting.playerchat.name = 显示玩家聊天气泡
|
setting.playerchat.name = 显示玩家聊天气泡
|
||||||
setting.showweather.name = 显示天气效果
|
setting.showweather.name = 显示天气效果
|
||||||
setting.hidedisplays.name = 不显示逻辑绘图
|
setting.hidedisplays.name = 不显示逻辑绘图
|
||||||
public.confirm = 确定使您的游戏公开可见?\n[accent]其他人将可以加入到您的游戏。 \n[lightgray]此后可以在 设置->游戏->游戏公开可见 里面更改。
|
steam.friendsonly = Friends Only
|
||||||
public.confirm.really = 如果您想与好友一起游戏,可以使用[green]邀请好友[]而不是[scarlet]公开游戏[]!\n您确定要使游戏[scarlet]公开可见[]吗?
|
steam.friendsonly.tooltip = Whether only Steam friends will be able to join your game.\nUnchecking this box will make your game public - anyone can join.
|
||||||
public.beta = 请注意,测试版的游戏不能公开可见。
|
public.beta = 请注意,测试版的游戏不能公开可见。
|
||||||
uiscale.reset = UI缩放比例已更改。\n点击“确定”接受更改。\n[accent]{0}[]秒后[scarlet]将自动退出并还原设置。
|
uiscale.reset = UI缩放比例已更改。\n点击“确定”接受更改。\n[accent]{0}[]秒后[scarlet]将自动退出并还原设置。
|
||||||
uiscale.cancel = 取消并退出
|
uiscale.cancel = 取消并退出
|
||||||
@@ -1158,8 +1161,8 @@ keybind.select.name = 选择/射击
|
|||||||
keybind.diagonal_placement.name = 斜线建造
|
keybind.diagonal_placement.name = 斜线建造
|
||||||
keybind.pick.name = 选择建筑
|
keybind.pick.name = 选择建筑
|
||||||
keybind.break_block.name = 拆除建筑
|
keybind.break_block.name = 拆除建筑
|
||||||
keybind.select_all_units = 选择所有单位
|
keybind.select_all_units.name = 选择所有单位
|
||||||
keybind.select_all_unit_factories = 选择所有单位工厂
|
keybind.select_all_unit_factories.name = 选择所有单位工厂
|
||||||
keybind.deselect.name = 取消选择
|
keybind.deselect.name = 取消选择
|
||||||
keybind.pickupCargo.name = 拾取载荷
|
keybind.pickupCargo.name = 拾取载荷
|
||||||
keybind.dropCargo.name = 释放载荷
|
keybind.dropCargo.name = 释放载荷
|
||||||
@@ -2232,6 +2235,7 @@ lst.flushmessage = 在屏幕中央投影文字缓存区的内容\n会等待上
|
|||||||
lst.cutscene = 控制玩家游戏视角
|
lst.cutscene = 控制玩家游戏视角
|
||||||
lst.setflag = 设置一个可以被所有处理器读取的全局flag
|
lst.setflag = 设置一个可以被所有处理器读取的全局flag
|
||||||
lst.getflag = 检查是否设置了全局flag
|
lst.getflag = 检查是否设置了全局flag
|
||||||
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
|
||||||
logic.nounitbuild = [red]此处不允许处理器操控单位去建设
|
logic.nounitbuild = [red]此处不允许处理器操控单位去建设
|
||||||
|
|
||||||
|
|||||||
@@ -895,6 +895,7 @@ stat.repairspeed = 修復速度
|
|||||||
stat.weapons = 武器
|
stat.weapons = 武器
|
||||||
stat.bullet = 子彈
|
stat.bullet = 子彈
|
||||||
stat.moduletier = 模組等級
|
stat.moduletier = 模組等級
|
||||||
|
stat.unittype = Unit Type
|
||||||
stat.speedincrease = 速度提升
|
stat.speedincrease = 速度提升
|
||||||
stat.range = 範圍
|
stat.range = 範圍
|
||||||
stat.drilltier = 可鑽取礦物
|
stat.drilltier = 可鑽取礦物
|
||||||
@@ -988,6 +989,8 @@ bullet.splashdamage = [stat]{0}[lightgray]範圍傷害 ~[stat] {1}[lightgray]格
|
|||||||
bullet.incendiary = [stat]燃燒
|
bullet.incendiary = [stat]燃燒
|
||||||
bullet.homing = [stat]追蹤
|
bullet.homing = [stat]追蹤
|
||||||
bullet.armorpierce = [stat]穿甲
|
bullet.armorpierce = [stat]穿甲
|
||||||
|
bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles
|
||||||
|
bullet.interval = [stat]{0}/sec[lightgray] interval bullets:
|
||||||
bullet.frags = [stat]{0}[lightgray]x 集束子彈:
|
bullet.frags = [stat]{0}[lightgray]x 集束子彈:
|
||||||
bullet.lightning = [stat]{0}[lightgray]x 電弧 ~ [stat]{1}[lightgray] 傷害
|
bullet.lightning = [stat]{0}[lightgray]x 電弧 ~ [stat]{1}[lightgray] 傷害
|
||||||
bullet.buildingdamage = [stat]{0}%[lightgray] 建築傷害
|
bullet.buildingdamage = [stat]{0}%[lightgray] 建築傷害
|
||||||
@@ -1101,8 +1104,8 @@ setting.bridgeopacity.name = 橋透明度
|
|||||||
setting.playerchat.name = 在遊戲中顯示聊天視窗
|
setting.playerchat.name = 在遊戲中顯示聊天視窗
|
||||||
setting.showweather.name = 顯示天氣動畫
|
setting.showweather.name = 顯示天氣動畫
|
||||||
setting.hidedisplays.name = 隱藏邏輯顯示
|
setting.hidedisplays.name = 隱藏邏輯顯示
|
||||||
public.confirm = 您想公開遊戲嗎?\n[accent]任何人都可以加入您的遊戲。\n[lightgray]之後可以在「設定」→「遊戲」→「公開遊戲可見度」中進行更改。
|
steam.friendsonly = Friends Only
|
||||||
public.confirm.really = 如果你想和朋友一起遊玩,可利用[green]邀請好友[]而不是[scarlet]公開伺服器[]!\n你確定要將伺服設為[scarlet]公開[]?
|
steam.friendsonly.tooltip = Whether only Steam friends will be able to join your game.\nUnchecking this box will make your game public - anyone can join.
|
||||||
public.beta = 請注意,該遊戲的Beta版本無法公開遊戲大廳。
|
public.beta = 請注意,該遊戲的Beta版本無法公開遊戲大廳。
|
||||||
uiscale.reset = 使用者介面縮放已變更\n按下「確定」確認這個比例\n[scarlet][accent] {0}[] 秒後退出並還原設定
|
uiscale.reset = 使用者介面縮放已變更\n按下「確定」確認這個比例\n[scarlet][accent] {0}[] 秒後退出並還原設定
|
||||||
uiscale.cancel = 取消並退出
|
uiscale.cancel = 取消並退出
|
||||||
@@ -1154,8 +1157,8 @@ keybind.select.name = 選取
|
|||||||
keybind.diagonal_placement.name = 對角線放置
|
keybind.diagonal_placement.name = 對角線放置
|
||||||
keybind.pick.name = 選擇方塊
|
keybind.pick.name = 選擇方塊
|
||||||
keybind.break_block.name = 移除方塊
|
keybind.break_block.name = 移除方塊
|
||||||
keybind.select_all_units = Select All Units
|
keybind.select_all_units.name = Select All Units
|
||||||
keybind.select_all_unit_factories = Select All Unit Factories
|
keybind.select_all_unit_factories.name = Select All Unit Factories
|
||||||
keybind.deselect.name = 取消選取
|
keybind.deselect.name = 取消選取
|
||||||
keybind.pickupCargo.name = 撿起貨物
|
keybind.pickupCargo.name = 撿起貨物
|
||||||
keybind.dropCargo.name = 丟棄貨物
|
keybind.dropCargo.name = 丟棄貨物
|
||||||
@@ -2216,6 +2219,7 @@ lst.flushmessage = 从文本緩存中讀取並於屏幕上顯示一條消息\n
|
|||||||
lst.cutscene = 控制玩家鏡頭
|
lst.cutscene = 控制玩家鏡頭
|
||||||
lst.setflag = 設置一個全局flag,可被所有處理器讀取
|
lst.setflag = 設置一個全局flag,可被所有處理器讀取
|
||||||
lst.getflag = 檢查某一全局flag是否存在
|
lst.getflag = 檢查某一全局flag是否存在
|
||||||
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
|
||||||
logic.nounitbuild = [red]單位建造邏輯已被禁止。
|
logic.nounitbuild = [red]單位建造邏輯已被禁止。
|
||||||
|
|
||||||
|
|||||||
@@ -153,3 +153,4 @@ BlackDeluxeCat
|
|||||||
zenonet
|
zenonet
|
||||||
AyuKo-o
|
AyuKo-o
|
||||||
JojoFR1
|
JojoFR1
|
||||||
|
Xasmedy
|
||||||
|
|||||||
@@ -44,6 +44,7 @@ function extend(/*Base, ..., def*/){
|
|||||||
|
|
||||||
importPackage(Packages.arc)
|
importPackage(Packages.arc)
|
||||||
importPackage(Packages.arc.audio)
|
importPackage(Packages.arc.audio)
|
||||||
|
importPackage(Packages.arc.files)
|
||||||
importPackage(Packages.arc.func)
|
importPackage(Packages.arc.func)
|
||||||
importPackage(Packages.arc.flabel)
|
importPackage(Packages.arc.flabel)
|
||||||
importPackage(Packages.arc.graphics)
|
importPackage(Packages.arc.graphics)
|
||||||
|
|||||||
@@ -431,7 +431,12 @@ public class Vars implements Loadable{
|
|||||||
settings.setAutosave(false);
|
settings.setAutosave(false);
|
||||||
settings.load();
|
settings.load();
|
||||||
|
|
||||||
Scl.setProduct(settings.getInt("uiscale", 100) / 100f);
|
//https://github.com/Anuken/Mindustry/issues/8483
|
||||||
|
if(settings.getInt("uiscale") == 5){
|
||||||
|
settings.put("uiscale", 100);
|
||||||
|
}
|
||||||
|
|
||||||
|
Scl.setProduct(Math.max(settings.getInt("uiscale", 100), 25) / 100f);
|
||||||
|
|
||||||
if(!loadLocales) return;
|
if(!loadLocales) return;
|
||||||
|
|
||||||
|
|||||||
@@ -8,8 +8,8 @@ import arc.math.geom.*;
|
|||||||
import arc.struct.*;
|
import arc.struct.*;
|
||||||
import arc.util.*;
|
import arc.util.*;
|
||||||
import mindustry.core.*;
|
import mindustry.core.*;
|
||||||
import mindustry.game.*;
|
|
||||||
import mindustry.game.EventType.*;
|
import mindustry.game.EventType.*;
|
||||||
|
import mindustry.game.*;
|
||||||
import mindustry.gen.*;
|
import mindustry.gen.*;
|
||||||
import mindustry.graphics.*;
|
import mindustry.graphics.*;
|
||||||
import mindustry.world.*;
|
import mindustry.world.*;
|
||||||
@@ -273,7 +273,7 @@ public class ControlPathfinder{
|
|||||||
req.raycastTimer = 0;
|
req.raycastTimer = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(req.rayPathIndex < len){
|
if(req.rayPathIndex < len && req.rayPathIndex >= 0){
|
||||||
Tile tile = tile(items[req.rayPathIndex]);
|
Tile tile = tile(items[req.rayPathIndex]);
|
||||||
out.set(tile);
|
out.set(tile);
|
||||||
|
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ import mindustry.world.meta.*;
|
|||||||
import static mindustry.Vars.*;
|
import static mindustry.Vars.*;
|
||||||
|
|
||||||
public class Pathfinder implements Runnable{
|
public class Pathfinder implements Runnable{
|
||||||
private static final long maxUpdate = Time.millisToNanos(7);
|
private static final long maxUpdate = Time.millisToNanos(8);
|
||||||
private static final int updateFPS = 60;
|
private static final int updateFPS = 60;
|
||||||
private static final int updateInterval = 1000 / updateFPS;
|
private static final int updateInterval = 1000 / updateFPS;
|
||||||
|
|
||||||
@@ -219,8 +219,6 @@ public class Pathfinder implements Runnable{
|
|||||||
public void updateTile(Tile tile){
|
public void updateTile(Tile tile){
|
||||||
if(net.client()) return;
|
if(net.client()) return;
|
||||||
|
|
||||||
int x = tile.x, y = tile.y;
|
|
||||||
|
|
||||||
tile.getLinkedTiles(t -> {
|
tile.getLinkedTiles(t -> {
|
||||||
int pos = t.array();
|
int pos = t.array();
|
||||||
if(pos < tiles.length){
|
if(pos < tiles.length){
|
||||||
@@ -232,15 +230,15 @@ public class Pathfinder implements Runnable{
|
|||||||
for(Flowfield path : mainList){
|
for(Flowfield path : mainList){
|
||||||
if(path != null){
|
if(path != null){
|
||||||
synchronized(path.targets){
|
synchronized(path.targets){
|
||||||
path.targets.clear();
|
path.updateTargetPositions();
|
||||||
path.getPositions(path.targets);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//mark every flow field as dirty, so it updates when it's done
|
||||||
queue.post(() -> {
|
queue.post(() -> {
|
||||||
for(Flowfield data : threadList){
|
for(Flowfield data : threadList){
|
||||||
updateTargets(data, x, y);
|
data.dirty = true;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@@ -257,6 +255,13 @@ public class Pathfinder implements Runnable{
|
|||||||
|
|
||||||
//each update time (not total!) no longer than maxUpdate
|
//each update time (not total!) no longer than maxUpdate
|
||||||
for(Flowfield data : threadList){
|
for(Flowfield data : threadList){
|
||||||
|
|
||||||
|
//if it's dirty and there is nothing to update, begin updating once more
|
||||||
|
if(data.dirty && data.frontier.size == 0){
|
||||||
|
updateTargets(data);
|
||||||
|
data.dirty = false;
|
||||||
|
}
|
||||||
|
|
||||||
updateFrontier(data, maxUpdate);
|
updateFrontier(data, maxUpdate);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -306,8 +311,7 @@ public class Pathfinder implements Runnable{
|
|||||||
synchronized(path.targets){
|
synchronized(path.targets){
|
||||||
//make sure the position actually changed
|
//make sure the position actually changed
|
||||||
if(!(path.targets.size == 1 && tmpArray.size == 1 && path.targets.first() == tmpArray.first())){
|
if(!(path.targets.size == 1 && tmpArray.size == 1 && path.targets.first() == tmpArray.first())){
|
||||||
path.targets.clear();
|
path.updateTargetPositions();
|
||||||
path.getPositions(path.targets);
|
|
||||||
|
|
||||||
//queue an update
|
//queue an update
|
||||||
queue.post(() -> updateTargets(path));
|
queue.post(() -> updateTargets(path));
|
||||||
@@ -315,7 +319,8 @@ public class Pathfinder implements Runnable{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
int[] values = path.weights;
|
//use complete weights if possible; these contain a complete flow field that is not being updated
|
||||||
|
int[] values = path.hasComplete ? path.completeWeights : path.weights;
|
||||||
int apos = tile.array();
|
int apos = tile.array();
|
||||||
int value = values[apos];
|
int value = values[apos];
|
||||||
|
|
||||||
@@ -341,32 +346,6 @@ public class Pathfinder implements Runnable{
|
|||||||
return current;
|
return current;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Clears the frontier, increments the search and sets up all flow sources.
|
|
||||||
* This only occurs for active teams.
|
|
||||||
*/
|
|
||||||
private void updateTargets(Flowfield path, int x, int y){
|
|
||||||
int packed = world.packArray(x, y);
|
|
||||||
|
|
||||||
if(packed > path.weights.length) return;
|
|
||||||
|
|
||||||
if(path.weights[packed] == 0){
|
|
||||||
//this was a previous target
|
|
||||||
path.frontier.clear();
|
|
||||||
}else if(!path.frontier.isEmpty()){
|
|
||||||
//skip if this path is processing
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
//update cost of the tile TODO maybe only update the cost when it's not passable
|
|
||||||
path.weights[packed] = path.cost.getCost(path.team.id, tiles[packed]);
|
|
||||||
|
|
||||||
//clear frontier to prevent contamination
|
|
||||||
path.frontier.clear();
|
|
||||||
|
|
||||||
updateTargets(path);
|
|
||||||
}
|
|
||||||
|
|
||||||
/** Increments the search and sets up flow sources. Does not change the frontier. */
|
/** Increments the search and sets up flow sources. Does not change the frontier. */
|
||||||
private void updateTargets(Flowfield path){
|
private void updateTargets(Flowfield path){
|
||||||
|
|
||||||
@@ -386,8 +365,7 @@ public class Pathfinder implements Runnable{
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void preloadPath(Flowfield path){
|
private void preloadPath(Flowfield path){
|
||||||
path.targets.clear();
|
path.updateTargetPositions();
|
||||||
path.getPositions(path.targets);
|
|
||||||
registerPath(path);
|
registerPath(path);
|
||||||
updateFrontier(path, -1);
|
updateFrontier(path, -1);
|
||||||
}
|
}
|
||||||
@@ -421,6 +399,7 @@ public class Pathfinder implements Runnable{
|
|||||||
|
|
||||||
/** Update the frontier for a path. Pathfinding thread only. */
|
/** Update the frontier for a path. Pathfinding thread only. */
|
||||||
private void updateFrontier(Flowfield path, long nsToRun){
|
private void updateFrontier(Flowfield path, long nsToRun){
|
||||||
|
boolean hadAny = path.frontier.size > 0;
|
||||||
long start = Time.nanos();
|
long start = Time.nanos();
|
||||||
|
|
||||||
int counter = 0;
|
int counter = 0;
|
||||||
@@ -462,6 +441,12 @@ public class Pathfinder implements Runnable{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//there WERE some things in the frontier, but now they are gone, so the path is done; copy over latest data
|
||||||
|
if(hadAny && path.frontier.size == 0){
|
||||||
|
System.arraycopy(path.weights, 0, path.completeWeights, 0, path.weights.length);
|
||||||
|
path.hasComplete = true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public static class EnemyCoreField extends Flowfield{
|
public static class EnemyCoreField extends Flowfield{
|
||||||
@@ -505,11 +490,18 @@ public class Pathfinder implements Runnable{
|
|||||||
protected Team team = Team.derelict;
|
protected Team team = Team.derelict;
|
||||||
/** Function for calculating path cost. Set before using. */
|
/** Function for calculating path cost. Set before using. */
|
||||||
protected PathCost cost = costTypes.get(costGround);
|
protected PathCost cost = costTypes.get(costGround);
|
||||||
|
/** Whether there are valid weights in the complete array. */
|
||||||
|
protected volatile boolean hasComplete;
|
||||||
|
/** If true, this flow field needs updating. This flag is only set to false once the flow field finishes and the weights are copied over. */
|
||||||
|
protected boolean dirty = false;
|
||||||
|
|
||||||
/** costs of getting to a specific tile */
|
/** costs of getting to a specific tile */
|
||||||
public int[] weights;
|
public int[] weights;
|
||||||
/** search IDs of each position - the highest, most recent search is prioritized and overwritten */
|
/** search IDs of each position - the highest, most recent search is prioritized and overwritten */
|
||||||
public int[] searches;
|
public int[] searches;
|
||||||
|
/** the last "complete" weights of this tilemap. */
|
||||||
|
public int[] completeWeights;
|
||||||
|
|
||||||
/** search frontier, these are Pos objects */
|
/** search frontier, these are Pos objects */
|
||||||
IntQueue frontier = new IntQueue();
|
IntQueue frontier = new IntQueue();
|
||||||
/** all target positions; these positions have a cost of 0, and must be synchronized on! */
|
/** all target positions; these positions have a cost of 0, and must be synchronized on! */
|
||||||
@@ -524,10 +516,16 @@ public class Pathfinder implements Runnable{
|
|||||||
void setup(int length){
|
void setup(int length){
|
||||||
this.weights = new int[length];
|
this.weights = new int[length];
|
||||||
this.searches = new int[length];
|
this.searches = new int[length];
|
||||||
|
this.completeWeights = new int[length];
|
||||||
this.frontier.ensureCapacity((length) / 4);
|
this.frontier.ensureCapacity((length) / 4);
|
||||||
this.initialized = true;
|
this.initialized = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void updateTargetPositions(){
|
||||||
|
targets.clear();
|
||||||
|
getPositions(targets);
|
||||||
|
}
|
||||||
|
|
||||||
protected boolean passable(int pos){
|
protected boolean passable(int pos){
|
||||||
return cost.getCost(team.id, pathfinder.tiles[pos]) != impassable;
|
return cost.getCost(team.id, pathfinder.tiles[pos]) != impassable;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ public class BuilderAI extends AIController{
|
|||||||
public @Nullable Teamc enemy;
|
public @Nullable Teamc enemy;
|
||||||
public @Nullable BlockPlan lastPlan;
|
public @Nullable BlockPlan lastPlan;
|
||||||
|
|
||||||
public float fleeRange = 370f;
|
public float fleeRange = 370f, rebuildPeriod = 60f * 2f;
|
||||||
public boolean alwaysFlee;
|
public boolean alwaysFlee;
|
||||||
public boolean onlyAssist;
|
public boolean onlyAssist;
|
||||||
|
|
||||||
@@ -119,7 +119,7 @@ public class BuilderAI extends AIController{
|
|||||||
}
|
}
|
||||||
|
|
||||||
//follow someone and help them build
|
//follow someone and help them build
|
||||||
if(timer.get(timerTarget2, 60f)){
|
if(timer.get(timerTarget2, 20f)){
|
||||||
found = false;
|
found = false;
|
||||||
|
|
||||||
Units.nearby(unit.team, unit.x, unit.y, buildRadius, u -> {
|
Units.nearby(unit.team, unit.x, unit.y, buildRadius, u -> {
|
||||||
@@ -158,10 +158,8 @@ public class BuilderAI extends AIController{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
float rebuildTime = 2f * 60f;
|
|
||||||
|
|
||||||
//find new plan
|
//find new plan
|
||||||
if(!onlyAssist && !unit.team.data().plans.isEmpty() && following == null && timer.get(timerTarget3, rebuildTime)){
|
if(!onlyAssist && !unit.team.data().plans.isEmpty() && following == null && timer.get(timerTarget3, rebuildPeriod)){
|
||||||
Queue<BlockPlan> blocks = unit.team.data().plans;
|
Queue<BlockPlan> blocks = unit.team.data().plans;
|
||||||
BlockPlan block = blocks.first();
|
BlockPlan block = blocks.first();
|
||||||
|
|
||||||
|
|||||||
@@ -49,6 +49,11 @@ public class CommandAI extends AIController{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean isLogicControllable(){
|
||||||
|
return !hasCommand();
|
||||||
|
}
|
||||||
|
|
||||||
public boolean isAttacking(){
|
public boolean isAttacking(){
|
||||||
return target != null && unit.within(target, unit.range() + 10f);
|
return target != null && unit.within(target, unit.range() + 10f);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1494,9 +1494,10 @@ public class Blocks{
|
|||||||
craftEffect = new RadialEffect(Fx.heatReactorSmoke, 4, 90f, 7f);
|
craftEffect = new RadialEffect(Fx.heatReactorSmoke, 4, 90f, 7f);
|
||||||
|
|
||||||
itemCapacity = 20;
|
itemCapacity = 20;
|
||||||
|
outputItem = new ItemStack(Items.fissileMatter, 1);
|
||||||
|
|
||||||
consumeItem(Items.thorium, 3);
|
consumeItem(Items.thorium, 3);
|
||||||
consumeLiquid(Liquids.nitrogen, 1f / 60f);
|
consumeLiquid(Liquids.nitrogen, 1f / 60f);
|
||||||
outputItem = new ItemStack(Items.fissileMatter, 1);
|
|
||||||
}};
|
}};
|
||||||
|
|
||||||
//endregion
|
//endregion
|
||||||
@@ -3046,6 +3047,20 @@ public class Blocks{
|
|||||||
|
|
||||||
shoot = new ShootAlternate(3.5f);
|
shoot = new ShootAlternate(3.5f);
|
||||||
|
|
||||||
|
recoils = 2;
|
||||||
|
drawer = new DrawTurret(){{
|
||||||
|
for(int i = 0; i < 2; i ++){
|
||||||
|
int f = i;
|
||||||
|
parts.add(new RegionPart("-barrel-" + (i == 0 ? "l" : "r")){{
|
||||||
|
progress = PartProgress.recoil;
|
||||||
|
recoilIndex = f;
|
||||||
|
under = true;
|
||||||
|
moves.add(new PartMove(PartProgress.recoil, 0f, -1.5f, 0f));
|
||||||
|
}});
|
||||||
|
}
|
||||||
|
}};
|
||||||
|
|
||||||
|
recoil = 0.5f;
|
||||||
shootY = 3f;
|
shootY = 3f;
|
||||||
reload = 20f;
|
reload = 20f;
|
||||||
range = 110;
|
range = 110;
|
||||||
|
|||||||
@@ -2,8 +2,6 @@ package mindustry.content;
|
|||||||
|
|
||||||
import arc.graphics.*;
|
import arc.graphics.*;
|
||||||
import mindustry.entities.bullet.*;
|
import mindustry.entities.bullet.*;
|
||||||
import mindustry.entities.effect.*;
|
|
||||||
import mindustry.graphics.*;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class for holding special internal bullets.
|
* Class for holding special internal bullets.
|
||||||
|
|||||||
@@ -4,8 +4,8 @@ import arc.struct.*;
|
|||||||
import mindustry.game.Objectives.*;
|
import mindustry.game.Objectives.*;
|
||||||
|
|
||||||
import static mindustry.content.Blocks.*;
|
import static mindustry.content.Blocks.*;
|
||||||
import static mindustry.content.SectorPresets.*;
|
|
||||||
import static mindustry.content.SectorPresets.craters;
|
import static mindustry.content.SectorPresets.craters;
|
||||||
|
import static mindustry.content.SectorPresets.*;
|
||||||
import static mindustry.content.TechTree.*;
|
import static mindustry.content.TechTree.*;
|
||||||
import static mindustry.content.UnitTypes.*;
|
import static mindustry.content.UnitTypes.*;
|
||||||
|
|
||||||
|
|||||||
@@ -2948,6 +2948,7 @@ public class UnitTypes{
|
|||||||
weapons.add(new Weapon("merui-weapon"){{
|
weapons.add(new Weapon("merui-weapon"){{
|
||||||
shootSound = Sounds.missile;
|
shootSound = Sounds.missile;
|
||||||
mirror = false;
|
mirror = false;
|
||||||
|
showStatSprite = false;
|
||||||
x = 0f;
|
x = 0f;
|
||||||
y = 1f;
|
y = 1f;
|
||||||
shootY = 4f;
|
shootY = 4f;
|
||||||
@@ -3151,6 +3152,7 @@ public class UnitTypes{
|
|||||||
x = 29f / 4f;
|
x = 29f / 4f;
|
||||||
y = -11f / 4f;
|
y = -11f / 4f;
|
||||||
shootY = 1.5f;
|
shootY = 1.5f;
|
||||||
|
showStatSprite = false;
|
||||||
reload = 130f;
|
reload = 130f;
|
||||||
layerOffset = 0.01f;
|
layerOffset = 0.01f;
|
||||||
heatColor = Color.red;
|
heatColor = Color.red;
|
||||||
|
|||||||
@@ -193,7 +193,7 @@ public class Control implements ApplicationListener, Loadable{
|
|||||||
if(!settings.getBool("skipcoreanimation") && !state.rules.pvp){
|
if(!settings.getBool("skipcoreanimation") && !state.rules.pvp){
|
||||||
coreDelay = coreLandDuration;
|
coreDelay = coreLandDuration;
|
||||||
//delay player respawn so animation can play.
|
//delay player respawn so animation can play.
|
||||||
player.deathTimer = -80f;
|
player.deathTimer = Player.deathDelay - coreLandDuration;
|
||||||
//TODO this sounds pretty bad due to conflict
|
//TODO this sounds pretty bad due to conflict
|
||||||
if(settings.getInt("musicvol") > 0){
|
if(settings.getInt("musicvol") > 0){
|
||||||
Musics.land.stop();
|
Musics.land.stop();
|
||||||
|
|||||||
@@ -201,10 +201,12 @@ public class NetClient implements ApplicationListener{
|
|||||||
Sounds.chatMessage.play();
|
Sounds.chatMessage.play();
|
||||||
}
|
}
|
||||||
|
|
||||||
//display raw unformatted text above player head
|
|
||||||
if(playersender != null && unformatted != null){
|
if(playersender != null && unformatted != null){
|
||||||
|
//display raw unformatted text above player head
|
||||||
playersender.lastText(unformatted);
|
playersender.lastText(unformatted);
|
||||||
playersender.textFadeTime(1f);
|
playersender.textFadeTime(1f);
|
||||||
|
|
||||||
|
Events.fire(new PlayerChatEvent(playersender, unformatted));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -435,8 +437,9 @@ public class NetClient implements ApplicationListener{
|
|||||||
for(int j = 0; j < amount; j++){
|
for(int j = 0; j < amount; j++){
|
||||||
readSyncEntity(input, Reads.get(input));
|
readSyncEntity(input, Reads.get(input));
|
||||||
}
|
}
|
||||||
}catch(IOException e){
|
}catch(Exception e){
|
||||||
throw new RuntimeException(e);
|
//don't disconnect, just log it
|
||||||
|
Log.err("Error reading entity snapshot", e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -9,7 +9,6 @@ import arc.struct.*;
|
|||||||
import arc.util.*;
|
import arc.util.*;
|
||||||
import arc.util.CommandHandler.*;
|
import arc.util.CommandHandler.*;
|
||||||
import arc.util.io.*;
|
import arc.util.io.*;
|
||||||
import arc.util.serialization.*;
|
|
||||||
import mindustry.annotations.Annotations.*;
|
import mindustry.annotations.Annotations.*;
|
||||||
import mindustry.content.*;
|
import mindustry.content.*;
|
||||||
import mindustry.core.GameState.*;
|
import mindustry.core.GameState.*;
|
||||||
@@ -138,15 +137,6 @@ public class NetServer implements ApplicationListener{
|
|||||||
con.connectTime = Time.millis();
|
con.connectTime = Time.millis();
|
||||||
|
|
||||||
String uuid = packet.uuid;
|
String uuid = packet.uuid;
|
||||||
byte[] buuid = Base64Coder.decode(uuid);
|
|
||||||
CRC32 crc = new CRC32();
|
|
||||||
crc.update(buuid, 0, 8);
|
|
||||||
ByteBuffer buff = ByteBuffer.allocate(8);
|
|
||||||
buff.put(buuid, 8, 8);
|
|
||||||
if(crc.getValue() != buff.getLong(0)){
|
|
||||||
con.kick(KickReason.clientOutdated);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if(admins.isIPBanned(con.address) || admins.isSubnetBanned(con.address)) return;
|
if(admins.isIPBanned(con.address) || admins.isSubnetBanned(con.address)) return;
|
||||||
|
|
||||||
@@ -195,6 +185,7 @@ public class NetServer implements ApplicationListener{
|
|||||||
result.append("Unnecessary mods:[lightgray]\n").append("> ").append(extraMods.toString("\n> "));
|
result.append("Unnecessary mods:[lightgray]\n").append("> ").append(extraMods.toString("\n> "));
|
||||||
}
|
}
|
||||||
con.kick(result.toString(), 0);
|
con.kick(result.toString(), 0);
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(!admins.isWhitelisted(packet.uuid, packet.usid)){
|
if(!admins.isWhitelisted(packet.uuid, packet.usid)){
|
||||||
|
|||||||
@@ -75,6 +75,8 @@ public class UI implements ApplicationListener, Loadable{
|
|||||||
public FullTextDialog fullText;
|
public FullTextDialog fullText;
|
||||||
public CampaignCompleteDialog campaignComplete;
|
public CampaignCompleteDialog campaignComplete;
|
||||||
|
|
||||||
|
public IntMap<Dialog> followUpMenus;
|
||||||
|
|
||||||
public Cursor drillCursor, unloadCursor, targetCursor;
|
public Cursor drillCursor, unloadCursor, targetCursor;
|
||||||
|
|
||||||
private @Nullable Element lastAnnouncement;
|
private @Nullable Element lastAnnouncement;
|
||||||
@@ -202,6 +204,7 @@ public class UI implements ApplicationListener, Loadable{
|
|||||||
logic = new LogicDialog();
|
logic = new LogicDialog();
|
||||||
fullText = new FullTextDialog();
|
fullText = new FullTextDialog();
|
||||||
campaignComplete = new CampaignCompleteDialog();
|
campaignComplete = new CampaignCompleteDialog();
|
||||||
|
followUpMenus = new IntMap<>();
|
||||||
|
|
||||||
Group group = Core.scene.root;
|
Group group = Core.scene.root;
|
||||||
|
|
||||||
@@ -261,28 +264,32 @@ public class UI implements ApplicationListener, Loadable{
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
public void showTextInput(String titleText, String dtext, int textLength, String def, boolean inumeric, Cons<String> confirmed){
|
public void showTextInput(String titleText, String text, int textLength, String def, boolean numbers, Cons<String> confirmed, Runnable closed){
|
||||||
if(mobile){
|
if(mobile){
|
||||||
Core.input.getTextInput(new TextInput(){{
|
Core.input.getTextInput(new TextInput(){{
|
||||||
this.title = (titleText.startsWith("@") ? Core.bundle.get(titleText.substring(1)) : titleText);
|
this.title = (titleText.startsWith("@") ? Core.bundle.get(titleText.substring(1)) : titleText);
|
||||||
this.text = def;
|
this.text = def;
|
||||||
this.numeric = inumeric;
|
this.numeric = numbers;
|
||||||
this.maxLength = textLength;
|
this.maxLength = textLength;
|
||||||
this.accepted = confirmed;
|
this.accepted = confirmed;
|
||||||
this.allowEmpty = false;
|
this.allowEmpty = false;
|
||||||
}});
|
}});
|
||||||
}else{
|
}else{
|
||||||
new Dialog(titleText){{
|
new Dialog(titleText){{
|
||||||
cont.margin(30).add(dtext).padRight(6f);
|
cont.margin(30).add(text).padRight(6f);
|
||||||
TextFieldFilter filter = inumeric ? TextFieldFilter.digitsOnly : (f, c) -> true;
|
TextFieldFilter filter = numbers ? TextFieldFilter.digitsOnly : (f, c) -> true;
|
||||||
TextField field = cont.field(def, t -> {}).size(330f, 50f).get();
|
TextField field = cont.field(def, t -> {}).size(330f, 50f).get();
|
||||||
field.setFilter((f, c) -> field.getText().length() < textLength && filter.acceptChar(f, c));
|
field.setFilter((f, c) -> field.getText().length() < textLength && filter.acceptChar(f, c));
|
||||||
buttons.defaults().size(120, 54).pad(4);
|
buttons.defaults().size(120, 54).pad(4);
|
||||||
buttons.button("@cancel", this::hide);
|
buttons.button("@cancel", () -> {
|
||||||
|
closed.run();
|
||||||
|
hide();
|
||||||
|
});
|
||||||
buttons.button("@ok", () -> {
|
buttons.button("@ok", () -> {
|
||||||
confirmed.get(field.getText());
|
confirmed.get(field.getText());
|
||||||
hide();
|
hide();
|
||||||
}).disabled(b -> field.getText().isEmpty());
|
}).disabled(b -> field.getText().isEmpty());
|
||||||
|
|
||||||
keyDown(KeyCode.enter, () -> {
|
keyDown(KeyCode.enter, () -> {
|
||||||
String text = field.getText();
|
String text = field.getText();
|
||||||
if(!text.isEmpty()){
|
if(!text.isEmpty()){
|
||||||
@@ -290,9 +297,10 @@ public class UI implements ApplicationListener, Loadable{
|
|||||||
hide();
|
hide();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
keyDown(KeyCode.escape, this::hide);
|
|
||||||
keyDown(KeyCode.back, this::hide);
|
closeOnBack(closed);
|
||||||
show();
|
show();
|
||||||
|
|
||||||
Core.scene.setKeyboardFocus(field);
|
Core.scene.setKeyboardFocus(field);
|
||||||
field.setCursorPosition(def.length());
|
field.setCursorPosition(def.length());
|
||||||
}};
|
}};
|
||||||
@@ -303,8 +311,12 @@ public class UI implements ApplicationListener, Loadable{
|
|||||||
showTextInput(title, text, 32, def, confirmed);
|
showTextInput(title, text, 32, def, confirmed);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void showTextInput(String titleText, String text, int textLength, String def, Cons<String> confirmed){
|
public void showTextInput(String title, String text, int textLength, String def, Cons<String> confirmed){
|
||||||
showTextInput(titleText, text, textLength, def, false, confirmed);
|
showTextInput(title, text, textLength, def, false, confirmed);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void showTextInput(String title, String text, int textLength, String def, boolean numeric, Cons<String> confirmed){
|
||||||
|
showTextInput(title, text, textLength, def, numeric, confirmed, () -> {});
|
||||||
}
|
}
|
||||||
|
|
||||||
public void showInfoFade(String info){
|
public void showInfoFade(String info){
|
||||||
@@ -322,6 +334,24 @@ public class UI implements ApplicationListener, Loadable{
|
|||||||
Core.scene.add(table);
|
Core.scene.add(table);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void addDescTooltip(Element elem, String description){
|
||||||
|
if(description == null) return;
|
||||||
|
|
||||||
|
elem.addListener(new Tooltip(t -> t.background(Styles.black8).margin(4f).add(description).color(Color.lightGray)){
|
||||||
|
{
|
||||||
|
allowMobile = true;
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
protected void setContainerPosition(Element element, float x, float y){
|
||||||
|
this.targetActor = element;
|
||||||
|
Vec2 pos = element.localToStageCoordinates(Tmp.v1.set(0, 0));
|
||||||
|
container.pack();
|
||||||
|
container.setPosition(pos.x, pos.y, Align.topLeft);
|
||||||
|
container.setOrigin(0, element.getHeight());
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
/** Shows a fading label at the top of the screen. */
|
/** Shows a fading label at the top of the screen. */
|
||||||
public void showInfoToast(String info, float duration){
|
public void showInfoToast(String info, float duration){
|
||||||
var cinfo = Core.scene.find("coreinfo");
|
var cinfo = Core.scene.find("coreinfo");
|
||||||
@@ -419,6 +449,8 @@ public class UI implements ApplicationListener, Loadable{
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void showException(String text, Throwable exc){
|
public void showException(String text, Throwable exc){
|
||||||
|
if(loadfrag == null) return;
|
||||||
|
|
||||||
loadfrag.hide();
|
loadfrag.hide();
|
||||||
new Dialog(""){{
|
new Dialog(""){{
|
||||||
String message = Strings.getFinalMessage(exc);
|
String message = Strings.getFinalMessage(exc);
|
||||||
@@ -562,17 +594,13 @@ public class UI implements ApplicationListener, Loadable{
|
|||||||
dialog.show();
|
dialog.show();
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Shows a menu that fires a callback when an option is selected. If nothing is selected, -1 is returned. */
|
// TODO REPLACE INTEGER WITH arc.fun.IntCons(int, T) or something like that.
|
||||||
public void showMenu(String title, String message, String[][] options, Intc callback){
|
public Dialog newMenuDialog(String title, String message, String[][] options, Cons2<Integer, Dialog> buttonListener){
|
||||||
new Dialog("[accent]" + title){{
|
return new Dialog(title){{
|
||||||
setFillParent(true);
|
setFillParent(true);
|
||||||
removeChild(titleTable);
|
removeChild(titleTable);
|
||||||
cont.add(titleTable).width(400f);
|
cont.add(titleTable).width(400f);
|
||||||
|
|
||||||
getStyle().titleFontColor = Color.white;
|
|
||||||
title.getStyle().fontColor = Color.white;
|
|
||||||
title.setStyle(title.getStyle());
|
|
||||||
|
|
||||||
cont.row();
|
cont.row();
|
||||||
cont.image().width(400f).pad(2).colspan(2).height(4f).color(Pal.accent).bottom();
|
cont.image().width(400f).pad(2).colspan(2).height(4f).color(Pal.accent).bottom();
|
||||||
cont.row();
|
cont.row();
|
||||||
@@ -592,16 +620,47 @@ public class UI implements ApplicationListener, Loadable{
|
|||||||
|
|
||||||
String optionName = optionsRow[i];
|
String optionName = optionsRow[i];
|
||||||
int finalOption = option;
|
int finalOption = option;
|
||||||
buttonRow.button(optionName, () -> {
|
buttonRow.button(optionName, () -> buttonListener.get(finalOption, this))
|
||||||
callback.get(finalOption);
|
.size(i == optionsRow.length - 1 ? lastWidth : width, 50).pad(4);
|
||||||
hide();
|
|
||||||
}).size(i == optionsRow.length - 1 ? lastWidth : width, 50).pad(4);
|
|
||||||
option++;
|
option++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}).growX();
|
}).growX();
|
||||||
closeOnBack(() -> callback.get(-1));
|
}};
|
||||||
}}.show();
|
}
|
||||||
|
|
||||||
|
/** Shows a menu that fires a callback when an option is selected. If nothing is selected, -1 is returned. */
|
||||||
|
public void showMenu(String title, String message, String[][] options, Intc callback){
|
||||||
|
Dialog dialog = newMenuDialog(title, message, options, (option, myself) -> {
|
||||||
|
callback.get(option);
|
||||||
|
myself.hide();
|
||||||
|
});
|
||||||
|
dialog.closeOnBack(() -> callback.get(-1));
|
||||||
|
dialog.show();
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Shows a menu that hides when another followUp-menu is shown or when nothing is selected.
|
||||||
|
* @see UI#showMenu(String, String, String[][], Intc) */
|
||||||
|
public void showFollowUpMenu(int menuId, String title, String message, String[][] options, Intc callback) {
|
||||||
|
Dialog dialog = newMenuDialog(title, message, options, (option, myself) -> callback.get(option));
|
||||||
|
dialog.closeOnBack(() -> {
|
||||||
|
followUpMenus.remove(menuId);
|
||||||
|
callback.get(-1);
|
||||||
|
});
|
||||||
|
|
||||||
|
Dialog oldDialog = followUpMenus.remove(menuId);
|
||||||
|
if(oldDialog != null){
|
||||||
|
dialog.show(Core.scene, null);
|
||||||
|
oldDialog.hide(null);
|
||||||
|
}else{
|
||||||
|
dialog.show();
|
||||||
|
}
|
||||||
|
followUpMenus.put(menuId, dialog);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void hideFollowUpMenu(int menuId) {
|
||||||
|
if(!followUpMenus.containsKey(menuId)) return;
|
||||||
|
followUpMenus.remove(menuId).hide();
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Formats time with hours:minutes:seconds. */
|
/** Formats time with hours:minutes:seconds. */
|
||||||
|
|||||||
@@ -9,6 +9,7 @@ import arc.util.*;
|
|||||||
import mindustry.content.*;
|
import mindustry.content.*;
|
||||||
import mindustry.game.*;
|
import mindustry.game.*;
|
||||||
import mindustry.world.*;
|
import mindustry.world.*;
|
||||||
|
|
||||||
import static mindustry.Vars.*;
|
import static mindustry.Vars.*;
|
||||||
|
|
||||||
public enum EditorTool{
|
public enum EditorTool{
|
||||||
|
|||||||
@@ -160,7 +160,7 @@ public class Damage{
|
|||||||
//add distance to list so it can be processed
|
//add distance to list so it can be processed
|
||||||
var build = world.build(x, y);
|
var build = world.build(x, y);
|
||||||
|
|
||||||
if(build != null && build.team != b.team && b.checkUnderBuild(build, x * tilesize, y * tilesize)){
|
if(build != null && build.team != b.team && build.collide(b) && b.checkUnderBuild(build, x * tilesize, y * tilesize)){
|
||||||
distances.add(b.dst(build));
|
distances.add(b.dst(build));
|
||||||
|
|
||||||
if(b.type.laserAbsorb && build.absorbLasers()){
|
if(b.type.laserAbsorb && build.absorbLasers()){
|
||||||
@@ -237,7 +237,7 @@ public class Damage{
|
|||||||
seg2.set(seg1).add(vec);
|
seg2.set(seg1).add(vec);
|
||||||
World.raycastEachWorld(x, y, seg2.x, seg2.y, (cx, cy) -> {
|
World.raycastEachWorld(x, y, seg2.x, seg2.y, (cx, cy) -> {
|
||||||
Building tile = world.build(cx, cy);
|
Building tile = world.build(cx, cy);
|
||||||
boolean collide = tile != null && hitter.checkUnderBuild(tile, cx * tilesize, cy * tilesize)
|
boolean collide = tile != null && tile.collide(hitter) && hitter.checkUnderBuild(tile, cx * tilesize, cy * tilesize)
|
||||||
&& ((tile.team != team && tile.collide(hitter)) || hitter.type.testCollision(hitter, tile)) && collidedBlocks.add(tile.pos());
|
&& ((tile.team != team && tile.collide(hitter)) || hitter.type.testCollision(hitter, tile)) && collidedBlocks.add(tile.pos());
|
||||||
if(collide){
|
if(collide){
|
||||||
collided.add(collidePool.obtain().set(cx * tilesize, cy * tilesize, tile));
|
collided.add(collidePool.obtain().set(cx * tilesize, cy * tilesize, tile));
|
||||||
@@ -618,7 +618,7 @@ public class Damage{
|
|||||||
return Math.max(damage - armor, minArmorDamage * damage);
|
return Math.max(damage - armor, minArmorDamage * damage);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static class Collided{
|
public static class Collided implements Pool.Poolable{
|
||||||
public float x, y;
|
public float x, y;
|
||||||
public Teamc target;
|
public Teamc target;
|
||||||
|
|
||||||
@@ -628,5 +628,10 @@ public class Damage{
|
|||||||
this.target = target;
|
this.target = target;
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void reset(){
|
||||||
|
target = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -93,13 +93,13 @@ public class ForceFieldAbility extends Ability{
|
|||||||
checkRadius(unit);
|
checkRadius(unit);
|
||||||
|
|
||||||
if(unit.shield > 0){
|
if(unit.shield > 0){
|
||||||
Draw.z(Layer.shields);
|
|
||||||
|
|
||||||
Draw.color(unit.team.color, Color.white, Mathf.clamp(alpha));
|
Draw.color(unit.team.color, Color.white, Mathf.clamp(alpha));
|
||||||
|
|
||||||
if(Vars.renderer.animateShields){
|
if(Vars.renderer.animateShields){
|
||||||
|
Draw.z(Layer.shields + 0.001f * alpha);
|
||||||
Fill.poly(unit.x, unit.y, sides, realRad, rotation);
|
Fill.poly(unit.x, unit.y, sides, realRad, rotation);
|
||||||
}else{
|
}else{
|
||||||
|
Draw.z(Layer.shields);
|
||||||
Lines.stroke(1.5f);
|
Lines.stroke(1.5f);
|
||||||
Draw.alpha(0.09f);
|
Draw.alpha(0.09f);
|
||||||
Fill.poly(unit.x, unit.y, sides, radius, rotation);
|
Fill.poly(unit.x, unit.y, sides, radius, rotation);
|
||||||
|
|||||||
@@ -46,6 +46,8 @@ public class BulletType extends Content implements Cloneable{
|
|||||||
public boolean pierceBuilding;
|
public boolean pierceBuilding;
|
||||||
/** Maximum # of pierced objects. */
|
/** Maximum # of pierced objects. */
|
||||||
public int pierceCap = -1;
|
public int pierceCap = -1;
|
||||||
|
/** Multiplier of damage decreased per health pierced. */
|
||||||
|
public float pierceDamageFactor = 0f;
|
||||||
/** If false, this bullet isn't removed after pierceCap is exceeded. Expert usage only. */
|
/** If false, this bullet isn't removed after pierceCap is exceeded. Expert usage only. */
|
||||||
public boolean removeAfterPierce = true;
|
public boolean removeAfterPierce = true;
|
||||||
/** For piercing lasers, setting this to true makes it get absorbed by plastanium walls. */
|
/** For piercing lasers, setting this to true makes it get absorbed by plastanium walls. */
|
||||||
@@ -143,7 +145,7 @@ public class BulletType extends Content implements Cloneable{
|
|||||||
public boolean fragOnHit = true;
|
public boolean fragOnHit = true;
|
||||||
/** If false, this bullet will not create fraags when absorbed by a shield. */
|
/** If false, this bullet will not create fraags when absorbed by a shield. */
|
||||||
public boolean fragOnAbsorb = true;
|
public boolean fragOnAbsorb = true;
|
||||||
/** If true, unit armor is ignored in damage calculations. Ignored for building armor. */
|
/** If true, unit armor is ignored in damage calculations. */
|
||||||
public boolean pierceArmor = false;
|
public boolean pierceArmor = false;
|
||||||
/** Whether status and despawnHit should automatically be set. */
|
/** Whether status and despawnHit should automatically be set. */
|
||||||
public boolean setDefaults = true;
|
public boolean setDefaults = true;
|
||||||
@@ -177,6 +179,8 @@ public class BulletType extends Content implements Cloneable{
|
|||||||
public float intervalSpread = 0f;
|
public float intervalSpread = 0f;
|
||||||
/** Angle offset for interval bullets. */
|
/** Angle offset for interval bullets. */
|
||||||
public float intervalAngle = 0f;
|
public float intervalAngle = 0f;
|
||||||
|
/** Use a negative value to disable interval bullet delay. */
|
||||||
|
public float intervalDelay = -1f;
|
||||||
|
|
||||||
/** Color used for hit/despawn effects. */
|
/** Color used for hit/despawn effects. */
|
||||||
public Color hitColor = Color.white;
|
public Color hitColor = Color.white;
|
||||||
@@ -358,6 +362,8 @@ public class BulletType extends Content implements Cloneable{
|
|||||||
}else if(build.team != b.team && direct){
|
}else if(build.team != b.team && direct){
|
||||||
hit(b);
|
hit(b);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
handlePierce(b, initialHealth, x, y);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void hitEntity(Bullet b, Hitboxc entity, float health){
|
public void hitEntity(Bullet b, Hitboxc entity, float health){
|
||||||
@@ -383,6 +389,19 @@ public class BulletType extends Content implements Cloneable{
|
|||||||
if(!wasDead && entity instanceof Unit unit && unit.dead){
|
if(!wasDead && entity instanceof Unit unit && unit.dead){
|
||||||
Events.fire(new UnitBulletDestroyEvent(unit, b));
|
Events.fire(new UnitBulletDestroyEvent(unit, b));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
handlePierce(b, health, entity.x(), entity.y());
|
||||||
|
}
|
||||||
|
|
||||||
|
public void handlePierce(Bullet b, float initialHealth, float x, float y){
|
||||||
|
float sub = Math.max(initialHealth*pierceDamageFactor, 0);
|
||||||
|
//subtract health from each consecutive pierce
|
||||||
|
b.damage -= Math.min(b.damage, sub);
|
||||||
|
|
||||||
|
if(removeAfterPierce && b.damage <= 0){
|
||||||
|
b.hit = true;
|
||||||
|
b.remove();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public float damageMultiplier(Bullet b){
|
public float damageMultiplier(Bullet b){
|
||||||
@@ -557,7 +576,7 @@ public class BulletType extends Content implements Cloneable{
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void updateBulletInterval(Bullet b){
|
public void updateBulletInterval(Bullet b){
|
||||||
if(intervalBullet != null && b.timer.get(2, bulletInterval)){
|
if(intervalBullet != null && b.time >= intervalDelay && b.timer.get(2, bulletInterval)){
|
||||||
float ang = b.rotation();
|
float ang = b.rotation();
|
||||||
for(int i = 0; i < intervalBullets; i++){
|
for(int i = 0; i < intervalBullets; i++){
|
||||||
intervalBullet.create(b, b.x, b.y, ang + Mathf.range(intervalRandomSpread) + intervalAngle + ((i - (intervalBullets - 1f)/2f) * intervalSpread));
|
intervalBullet.create(b, b.x, b.y, ang + Mathf.range(intervalRandomSpread) + intervalAngle + ((i - (intervalBullets - 1f)/2f) * intervalSpread));
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
package mindustry.entities.bullet;
|
package mindustry.entities.bullet;
|
||||||
|
|
||||||
import arc.graphics.g2d.*;
|
import arc.graphics.g2d.*;
|
||||||
import mindustry.gen.*;
|
|
||||||
import mindustry.content.*;
|
import mindustry.content.*;
|
||||||
|
import mindustry.gen.*;
|
||||||
import mindustry.graphics.*;
|
import mindustry.graphics.*;
|
||||||
|
|
||||||
public class LaserBoltBulletType extends BasicBulletType{
|
public class LaserBoltBulletType extends BasicBulletType{
|
||||||
|
|||||||
@@ -45,6 +45,11 @@ public class PointLaserBulletType extends BulletType{
|
|||||||
drawSize = 1000f;
|
drawSize = 1000f;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public float continuousDamage(){
|
||||||
|
return damage / damageInterval * 60f;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public float estimateDPS(){
|
public float estimateDPS(){
|
||||||
return damage * 100f / damageInterval * 3f;
|
return damage * 100f / damageInterval * 3f;
|
||||||
|
|||||||
@@ -13,8 +13,6 @@ public class RailBulletType extends BulletType{
|
|||||||
|
|
||||||
public Effect pierceEffect = Fx.hitBulletSmall, pointEffect = Fx.none, lineEffect = Fx.none;
|
public Effect pierceEffect = Fx.hitBulletSmall, pointEffect = Fx.none, lineEffect = Fx.none;
|
||||||
public Effect endEffect = Fx.none;
|
public Effect endEffect = Fx.none;
|
||||||
/** Multiplier of damage decreased per health pierced. */
|
|
||||||
public float pierceDamageFactor = 1f;
|
|
||||||
|
|
||||||
public float length = 100f;
|
public float length = 100f;
|
||||||
|
|
||||||
@@ -37,8 +35,9 @@ public class RailBulletType extends BulletType{
|
|||||||
return length;
|
return length;
|
||||||
}
|
}
|
||||||
|
|
||||||
void handle(Bullet b, float initialHealth, float x, float y){
|
@Override
|
||||||
float sub = Math.max(initialHealth*pierceDamageFactor, 0);
|
public void handlePierce(Bullet b, float initialHealth, float x, float y){
|
||||||
|
float sub = Math.max(initialHealth * pierceDamageFactor, 0);
|
||||||
|
|
||||||
if(b.damage <= 0){
|
if(b.damage <= 0){
|
||||||
b.fdata = Math.min(b.fdata, b.dst(x, y));
|
b.fdata = Math.min(b.fdata, b.dst(x, y));
|
||||||
@@ -93,14 +92,8 @@ public class RailBulletType extends BulletType{
|
|||||||
return bullet.team != tile.team;
|
return bullet.team != tile.team;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void hitEntity(Bullet b, Hitboxc entity, float health){
|
|
||||||
super.hitEntity(b, entity, health);
|
|
||||||
handle(b, health, entity.getX(), entity.getY());
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void hitTile(Bullet b, Building build, float x, float y, float initialHealth, boolean direct){
|
public void hitTile(Bullet b, Building build, float x, float y, float initialHealth, boolean direct){
|
||||||
handle(b, initialHealth, x, y);
|
handlePierce(b, initialHealth, x, y);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -48,7 +48,7 @@ import static mindustry.Vars.*;
|
|||||||
|
|
||||||
@EntityDef(value = {Buildingc.class}, isFinal = false, genio = false, serialize = false)
|
@EntityDef(value = {Buildingc.class}, isFinal = false, genio = false, serialize = false)
|
||||||
@Component(base = true)
|
@Component(base = true)
|
||||||
abstract class BuildingComp implements Posc, Teamc, Healthc, Buildingc, Timerc, QuadTreeObject, Displayable, Senseable, Controllable, Sized{
|
abstract class BuildingComp implements Posc, Teamc, Healthc, Buildingc, Timerc, QuadTreeObject, Displayable, Sized, Senseable, Controllable, Settable{
|
||||||
//region vars and initialization
|
//region vars and initialization
|
||||||
static final float timeToSleep = 60f * 1, recentDamageTime = 60f * 5f;
|
static final float timeToSleep = 60f * 1, recentDamageTime = 60f * 5f;
|
||||||
static final ObjectSet<Building> tmpTiles = new ObjectSet<>();
|
static final ObjectSet<Building> tmpTiles = new ObjectSet<>();
|
||||||
@@ -1433,7 +1433,7 @@ abstract class BuildingComp implements Posc, Teamc, Healthc, Buildingc, Timerc,
|
|||||||
l.left();
|
l.left();
|
||||||
for(Item item : content.items()){
|
for(Item item : content.items()){
|
||||||
if(flowItems.hasFlowItem(item)){
|
if(flowItems.hasFlowItem(item)){
|
||||||
l.image(item.uiIcon).padRight(3f);
|
l.image(item.uiIcon).scaling(Scaling.fit).padRight(3f);
|
||||||
l.label(() -> flowItems.getFlowRate(item) < 0 ? "..." : Strings.fixed(flowItems.getFlowRate(item), 1) + ps).color(Color.lightGray);
|
l.label(() -> flowItems.getFlowRate(item) < 0 ? "..." : Strings.fixed(flowItems.getFlowRate(item), 1) + ps).color(Color.lightGray);
|
||||||
l.row();
|
l.row();
|
||||||
}
|
}
|
||||||
@@ -1463,7 +1463,7 @@ abstract class BuildingComp implements Posc, Teamc, Healthc, Buildingc, Timerc,
|
|||||||
l.left();
|
l.left();
|
||||||
for(var liquid : content.liquids()){
|
for(var liquid : content.liquids()){
|
||||||
if(liquids.hasFlowLiquid(liquid)){
|
if(liquids.hasFlowLiquid(liquid)){
|
||||||
l.image(liquid.uiIcon).padRight(3f);
|
l.image(liquid.uiIcon).scaling(Scaling.fit).size(32f).padRight(3f);
|
||||||
l.label(() -> liquids.getFlowRate(liquid) < 0 ? "..." : Strings.fixed(liquids.getFlowRate(liquid), 1) + ps).color(Color.lightGray);
|
l.label(() -> liquids.getFlowRate(liquid) < 0 ? "..." : Strings.fixed(liquids.getFlowRate(liquid), 1) + ps).color(Color.lightGray);
|
||||||
l.row();
|
l.row();
|
||||||
}
|
}
|
||||||
@@ -1951,6 +1951,58 @@ abstract class BuildingComp implements Posc, Teamc, Healthc, Buildingc, Timerc,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void setProp(LAccess prop, double value){
|
||||||
|
switch(prop){
|
||||||
|
case health -> {
|
||||||
|
health = (float)Mathf.clamp(value, 0, maxHealth);
|
||||||
|
healthChanged();
|
||||||
|
}
|
||||||
|
case team -> {
|
||||||
|
Team team = Team.get((int)value);
|
||||||
|
if(this.team != team){
|
||||||
|
changeTeam(team);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
case totalPower -> {
|
||||||
|
if(power != null && block.consPower != null && block.consPower.buffered){
|
||||||
|
power.status = Mathf.clamp((float)(value / block.consPower.capacity));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void setProp(LAccess prop, Object value){
|
||||||
|
switch(prop){
|
||||||
|
case team -> {
|
||||||
|
if(value instanceof Team team && this.team != team){
|
||||||
|
changeTeam(team);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void setProp(UnlockableContent content, double value){
|
||||||
|
if(content instanceof Item item && items != null){
|
||||||
|
int amount = (int)value;
|
||||||
|
if(items.get(item) != amount){
|
||||||
|
if(items.get(item) < amount){
|
||||||
|
handleStack(item, acceptStack(item, amount - items.get(item), null), null);
|
||||||
|
}else if(amount >= 0){
|
||||||
|
removeStack(item, items.get(item) - amount);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}else if(content instanceof Liquid liquid && liquids != null){
|
||||||
|
float amount = Mathf.clamp((float)value, 0f, block.liquidCapacity);
|
||||||
|
//decreasing amount is always allowed
|
||||||
|
if(amount < liquids.get(liquid) || (acceptLiquid(self(), liquid) && (liquids.current() == liquid || liquids.currentAmount() <= 0.1f))){
|
||||||
|
liquids.set(liquid, amount);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@Replace
|
@Replace
|
||||||
@Override
|
@Override
|
||||||
public boolean inFogTo(Team viewer){
|
public boolean inFogTo(Team viewer){
|
||||||
|
|||||||
@@ -2,7 +2,6 @@ package mindustry.entities.comp;
|
|||||||
|
|
||||||
import arc.math.*;
|
import arc.math.*;
|
||||||
import arc.math.geom.*;
|
import arc.math.geom.*;
|
||||||
import arc.util.*;
|
|
||||||
import mindustry.annotations.Annotations.*;
|
import mindustry.annotations.Annotations.*;
|
||||||
import mindustry.async.PhysicsProcess.*;
|
import mindustry.async.PhysicsProcess.*;
|
||||||
import mindustry.gen.*;
|
import mindustry.gen.*;
|
||||||
|
|||||||
@@ -93,6 +93,11 @@ abstract class PlayerComp implements UnitController, Entityc, Syncc, Timerc, Dra
|
|||||||
return isAdded();
|
return isAdded();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean isLogicControllable(){
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
@Replace
|
@Replace
|
||||||
public float clipSize(){
|
public float clipSize(){
|
||||||
return unit.isNull() ? 20 : unit.type.hitSize * 2f;
|
return unit.isNull() ? 20 : unit.type.hitSize * 2f;
|
||||||
|
|||||||
@@ -127,7 +127,7 @@ abstract class PuddleComp implements Posc, Puddlec, Drawc, Syncc{
|
|||||||
|
|
||||||
@Replace
|
@Replace
|
||||||
public float clipSize(){
|
public float clipSize(){
|
||||||
return 20;
|
return 50; //high for light drawing
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -34,14 +34,14 @@ abstract class ShieldComp implements Healthc, Posc{
|
|||||||
public void damagePierce(float amount, boolean withEffect){
|
public void damagePierce(float amount, boolean withEffect){
|
||||||
float pre = hitTime;
|
float pre = hitTime;
|
||||||
|
|
||||||
rawDamage(amount);
|
rawDamage(amount / healthMultiplier);
|
||||||
|
|
||||||
if(!withEffect){
|
if(!withEffect){
|
||||||
hitTime = pre;
|
hitTime = pre;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void rawDamage(float amount){
|
protected void rawDamage(float amount){
|
||||||
boolean hadShields = shield > 0.0001f;
|
boolean hadShields = shield > 0.0001f;
|
||||||
|
|
||||||
if(hadShields){
|
if(hadShields){
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ import static mindustry.Vars.*;
|
|||||||
import static mindustry.logic.GlobalVars.*;
|
import static mindustry.logic.GlobalVars.*;
|
||||||
|
|
||||||
@Component(base = true)
|
@Component(base = true)
|
||||||
abstract class UnitComp implements Healthc, Physicsc, Hitboxc, Statusc, Teamc, Itemsc, Rotc, Unitc, Weaponsc, Drawc, Boundedc, Syncc, Shieldc, Displayable, Senseable, Ranged, Minerc, Builderc{
|
abstract class UnitComp implements Healthc, Physicsc, Hitboxc, Statusc, Teamc, Itemsc, Rotc, Unitc, Weaponsc, Drawc, Boundedc, Syncc, Shieldc, Displayable, Ranged, Minerc, Builderc, Senseable, Settable{
|
||||||
|
|
||||||
@Import boolean hovering, dead, disarmed;
|
@Import boolean hovering, dead, disarmed;
|
||||||
@Import float x, y, rotation, elevation, maxHealth, drag, armor, hitSize, health, ammo, dragMultiplier;
|
@Import float x, y, rotation, elevation, maxHealth, drag, armor, hitSize, health, ammo, dragMultiplier;
|
||||||
@@ -40,6 +40,7 @@ abstract class UnitComp implements Healthc, Physicsc, Hitboxc, Statusc, Teamc, I
|
|||||||
@Import @Nullable Tile mineTile;
|
@Import @Nullable Tile mineTile;
|
||||||
@Import Vec2 vel;
|
@Import Vec2 vel;
|
||||||
@Import WeaponMount[] mounts;
|
@Import WeaponMount[] mounts;
|
||||||
|
@Import ItemStack stack;
|
||||||
|
|
||||||
private UnitController controller;
|
private UnitController controller;
|
||||||
Ability[] abilities = {};
|
Ability[] abilities = {};
|
||||||
@@ -257,6 +258,60 @@ abstract class UnitComp implements Healthc, Physicsc, Hitboxc, Statusc, Teamc, I
|
|||||||
return Float.NaN;
|
return Float.NaN;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void setProp(LAccess prop, double value){
|
||||||
|
switch(prop){
|
||||||
|
case health -> health = (float)Mathf.clamp(value, 0, maxHealth);
|
||||||
|
case x -> x = World.unconv((float)value);
|
||||||
|
case y -> y = World.unconv((float)value);
|
||||||
|
case rotation -> rotation = (float)value;
|
||||||
|
case team -> {
|
||||||
|
if(!net.client()){
|
||||||
|
Team team = Team.get((int)value);
|
||||||
|
if(controller instanceof Player p){
|
||||||
|
p.team(team);
|
||||||
|
}
|
||||||
|
this.team = team;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
case flag -> flag = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void setProp(LAccess prop, Object value){
|
||||||
|
switch(prop){
|
||||||
|
case team -> {
|
||||||
|
if(value instanceof Team t && !net.client()){
|
||||||
|
if(controller instanceof Player p) p.team(t);
|
||||||
|
team = t;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
case payloadType -> {
|
||||||
|
//only serverside
|
||||||
|
if(((Object)this) instanceof Payloadc pay && !net.client()){
|
||||||
|
if(value instanceof Block b){
|
||||||
|
Building build = b.newBuilding().create(b, team());
|
||||||
|
if(pay.canPickup(build)) pay.addPayload(new BuildPayload(build));
|
||||||
|
}else if(value instanceof UnitType ut){
|
||||||
|
Unit unit = ut.create(team());
|
||||||
|
if(pay.canPickup(unit)) pay.addPayload(new UnitPayload(unit));
|
||||||
|
}else if(value == null && pay.payloads().size > 0){
|
||||||
|
pay.dropLastPayload();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void setProp(UnlockableContent content, double value){
|
||||||
|
if(content instanceof Item item){
|
||||||
|
stack.item = item;
|
||||||
|
stack.amount = Mathf.clamp((int)value, 0, type.itemCapacity);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@Replace
|
@Replace
|
||||||
public boolean canDrown(){
|
public boolean canDrown(){
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
package mindustry.entities.effect;
|
package mindustry.entities.effect;
|
||||||
|
|
||||||
|
import arc.graphics.*;
|
||||||
import arc.math.*;
|
import arc.math.*;
|
||||||
import mindustry.content.*;
|
import mindustry.content.*;
|
||||||
import mindustry.entities.*;
|
import mindustry.entities.*;
|
||||||
@@ -24,26 +25,14 @@ public class RadialEffect extends Effect{
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void init(){
|
public void create(float x, float y, float rotation, Color color, Object data){
|
||||||
effect.init();
|
if(!shouldCreate()) return;
|
||||||
clip = Math.max(clip, effect.clip);
|
|
||||||
lifetime = effect.lifetime;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
rotation += rotationOffset;
|
||||||
public void render(EffectContainer e){
|
|
||||||
float x = e.x, y = e.y;
|
|
||||||
|
|
||||||
e.rotation += rotationOffset;
|
|
||||||
|
|
||||||
for(int i = 0; i < amount; i++){
|
for(int i = 0; i < amount; i++){
|
||||||
e.x = x + Angles.trnsx(e.rotation, lengthOffset);
|
effect.create(x + Angles.trnsx(rotation, lengthOffset), y + Angles.trnsy(rotation, lengthOffset), rotation, color, data);
|
||||||
e.y = y + Angles.trnsy(e.rotation, lengthOffset);
|
rotation += rotationSpacing;
|
||||||
effect.render(e);
|
|
||||||
e.rotation += rotationSpacing;
|
|
||||||
e.id ++;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
clip = Math.max(clip, effect.clip);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -14,6 +14,8 @@ public abstract class DrawPart{
|
|||||||
public boolean under = false;
|
public boolean under = false;
|
||||||
/** For units, this is the index of the weapon this part gets its progress for. */
|
/** For units, this is the index of the weapon this part gets its progress for. */
|
||||||
public int weaponIndex = 0;
|
public int weaponIndex = 0;
|
||||||
|
/** Which recoil counter to use. < 0 to use base recoil. */
|
||||||
|
public int recoilIndex = -1;
|
||||||
|
|
||||||
public abstract void draw(PartParams params);
|
public abstract void draw(PartParams params);
|
||||||
public abstract void load(String name);
|
public abstract void load(String name);
|
||||||
@@ -41,6 +43,11 @@ public abstract class DrawPart{
|
|||||||
this.sideMultiplier = 1;
|
this.sideMultiplier = 1;
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public PartParams setRecoil(float recoils){
|
||||||
|
this.recoil = recoils;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public static class PartMove{
|
public static class PartMove{
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
package mindustry.entities.pattern;
|
package mindustry.entities.pattern;
|
||||||
|
|
||||||
|
import arc.util.*;
|
||||||
|
|
||||||
public class ShootAlternate extends ShootPattern{
|
public class ShootAlternate extends ShootPattern{
|
||||||
/** number of barrels used for shooting. */
|
/** number of barrels used for shooting. */
|
||||||
public int barrels = 2;
|
public int barrels = 2;
|
||||||
@@ -16,10 +18,11 @@ public class ShootAlternate extends ShootPattern{
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void shoot(int totalShots, BulletHandler handler){
|
public void shoot(int totalShots, BulletHandler handler, @Nullable Runnable barrelIncrementer){
|
||||||
for(int i = 0; i < shots; i++){
|
for(int i = 0; i < shots; i++){
|
||||||
float index = ((totalShots + i + barrelOffset) % barrels) - (barrels-1)/2f;
|
float index = ((totalShots + i + barrelOffset) % barrels) - (barrels-1)/2f;
|
||||||
handler.shoot(index * spread, 0, 0f, firstShotDelay + shotDelay * i);
|
handler.shoot(index * spread, 0, 0f, firstShotDelay + shotDelay * i);
|
||||||
|
if(barrelIncrementer != null) barrelIncrementer.run();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
package mindustry.entities.pattern;
|
package mindustry.entities.pattern;
|
||||||
|
|
||||||
|
import arc.util.*;
|
||||||
|
|
||||||
public class ShootBarrel extends ShootPattern{
|
public class ShootBarrel extends ShootPattern{
|
||||||
/** barrels [in x, y, rotation] format. */
|
/** barrels [in x, y, rotation] format. */
|
||||||
public float[] barrels = {0f, 0f, 0f};
|
public float[] barrels = {0f, 0f, 0f};
|
||||||
@@ -16,10 +18,11 @@ public class ShootBarrel extends ShootPattern{
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void shoot(int totalShots, BulletHandler handler){
|
public void shoot(int totalShots, BulletHandler handler, @Nullable Runnable barrelIncrementer){
|
||||||
for(int i = 0; i < shots; i++){
|
for(int i = 0; i < shots; i++){
|
||||||
int index = ((i + totalShots + barrelOffset) % (barrels.length / 3)) * 3;
|
int index = ((i + totalShots + barrelOffset) % (barrels.length / 3)) * 3;
|
||||||
handler.shoot(barrels[index], barrels[index + 1], barrels[index + 2], firstShotDelay + shotDelay * i);
|
handler.shoot(barrels[index], barrels[index + 1], barrels[index + 2], firstShotDelay + shotDelay * i);
|
||||||
|
if(barrelIncrementer != null) barrelIncrementer.run();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,12 +1,13 @@
|
|||||||
package mindustry.entities.pattern;
|
package mindustry.entities.pattern;
|
||||||
|
|
||||||
import arc.math.*;
|
import arc.math.*;
|
||||||
|
import arc.util.*;
|
||||||
|
|
||||||
public class ShootHelix extends ShootPattern{
|
public class ShootHelix extends ShootPattern{
|
||||||
public float scl = 2f, mag = 1.5f, offset = Mathf.PI * 1.25f;
|
public float scl = 2f, mag = 1.5f, offset = Mathf.PI * 1.25f;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void shoot(int totalShots, BulletHandler handler){
|
public void shoot(int totalShots, BulletHandler handler, @Nullable Runnable barrelIncrementer){
|
||||||
for(int i = 0; i < shots; i++){
|
for(int i = 0; i < shots; i++){
|
||||||
for(int sign : Mathf.signs){
|
for(int sign : Mathf.signs){
|
||||||
handler.shoot(0, 0, 0, firstShotDelay + shotDelay * i,
|
handler.shoot(0, 0, 0, firstShotDelay + shotDelay * i,
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
package mindustry.entities.pattern;
|
package mindustry.entities.pattern;
|
||||||
|
|
||||||
|
import arc.util.*;
|
||||||
|
|
||||||
public class ShootMulti extends ShootPattern{
|
public class ShootMulti extends ShootPattern{
|
||||||
public ShootPattern source;
|
public ShootPattern source;
|
||||||
public ShootPattern[] dest = {};
|
public ShootPattern[] dest = {};
|
||||||
@@ -25,7 +27,7 @@ public class ShootMulti extends ShootPattern{
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void shoot(int totalShots, BulletHandler handler){
|
public void shoot(int totalShots, BulletHandler handler, @Nullable Runnable barrelIncrementer){
|
||||||
source.shoot(totalShots, (x, y, rotation, delay, move) -> {
|
source.shoot(totalShots, (x, y, rotation, delay, move) -> {
|
||||||
for(var pattern : dest){
|
for(var pattern : dest){
|
||||||
pattern.shoot(totalShots, (x2, y2, rot2, delay2, mover) -> {
|
pattern.shoot(totalShots, (x2, y2, rot2, delay2, mover) -> {
|
||||||
@@ -35,6 +37,6 @@ public class ShootMulti extends ShootPattern{
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
}, barrelIncrementer);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
package mindustry.entities.pattern;
|
package mindustry.entities.pattern;
|
||||||
|
|
||||||
|
import arc.util.*;
|
||||||
import mindustry.entities.*;
|
import mindustry.entities.*;
|
||||||
|
|
||||||
/** Handles different types of bullet patterns for shooting. */
|
/** Handles different types of bullet patterns for shooting. */
|
||||||
@@ -12,12 +13,17 @@ public class ShootPattern implements Cloneable{
|
|||||||
public float shotDelay = 0;
|
public float shotDelay = 0;
|
||||||
|
|
||||||
/** Called on a single "trigger pull". This function should call the handler with any bullets that result. */
|
/** Called on a single "trigger pull". This function should call the handler with any bullets that result. */
|
||||||
public void shoot(int totalShots, BulletHandler handler){
|
public void shoot(int totalShots, BulletHandler handler, @Nullable Runnable barrelIncrementer){
|
||||||
for(int i = 0; i < shots; i++){
|
for(int i = 0; i < shots; i++){
|
||||||
handler.shoot(0, 0, 0, firstShotDelay + shotDelay * i);
|
handler.shoot(0, 0, 0, firstShotDelay + shotDelay * i);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** Called on a single "trigger pull". This function should call the handler with any bullets that result. */
|
||||||
|
public void shoot(int totalShots, BulletHandler handler){
|
||||||
|
shoot(totalShots, handler, null);
|
||||||
|
}
|
||||||
|
|
||||||
/** Subclasses should override this to flip its sides. */
|
/** Subclasses should override this to flip its sides. */
|
||||||
public void flip(){
|
public void flip(){
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
package mindustry.entities.pattern;
|
package mindustry.entities.pattern;
|
||||||
|
|
||||||
import arc.math.*;
|
import arc.math.*;
|
||||||
|
import arc.util.*;
|
||||||
|
|
||||||
public class ShootSine extends ShootPattern{
|
public class ShootSine extends ShootPattern{
|
||||||
/** scaling applied to bullet index */
|
/** scaling applied to bullet index */
|
||||||
@@ -17,7 +18,7 @@ public class ShootSine extends ShootPattern{
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void shoot(int totalShots, BulletHandler handler){
|
public void shoot(int totalShots, BulletHandler handler, @Nullable Runnable barrelIncrementer){
|
||||||
for(int i = 0; i < shots; i++){
|
for(int i = 0; i < shots; i++){
|
||||||
float angleOffset = Mathf.sin(i + totalShots, scl, mag);
|
float angleOffset = Mathf.sin(i + totalShots, scl, mag);
|
||||||
handler.shoot(0, 0, angleOffset, firstShotDelay + shotDelay * i);
|
handler.shoot(0, 0, angleOffset, firstShotDelay + shotDelay * i);
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
package mindustry.entities.pattern;
|
package mindustry.entities.pattern;
|
||||||
|
|
||||||
|
import arc.util.*;
|
||||||
|
|
||||||
public class ShootSpread extends ShootPattern{
|
public class ShootSpread extends ShootPattern{
|
||||||
/** spread between bullets, in degrees. */
|
/** spread between bullets, in degrees. */
|
||||||
public float spread = 5f;
|
public float spread = 5f;
|
||||||
@@ -13,7 +15,7 @@ public class ShootSpread extends ShootPattern{
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void shoot(int totalShots, BulletHandler handler){
|
public void shoot(int totalShots, BulletHandler handler, @Nullable Runnable barrelIncrementer){
|
||||||
for(int i = 0; i < shots; i++){
|
for(int i = 0; i < shots; i++){
|
||||||
float angleOffset = i * spread - (shots - 1) * spread / 2f;
|
float angleOffset = i * spread - (shots - 1) * spread / 2f;
|
||||||
handler.shoot(0, 0, angleOffset, firstShotDelay + shotDelay * i);
|
handler.shoot(0, 0, angleOffset, firstShotDelay + shotDelay * i);
|
||||||
|
|||||||
@@ -14,9 +14,7 @@ public class ShootSummon extends ShootPattern{
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void shoot(int totalShots, BulletHandler handler){
|
public void shoot(int totalShots, BulletHandler handler, @Nullable Runnable barrelIncrementer){
|
||||||
|
|
||||||
|
|
||||||
for(int i = 0; i < shots; i++){
|
for(int i = 0; i < shots; i++){
|
||||||
Tmp.v1.trns(Mathf.random(360f), Mathf.random(radius));
|
Tmp.v1.trns(Mathf.random(360f), Mathf.random(radius));
|
||||||
|
|
||||||
|
|||||||
@@ -55,6 +55,11 @@ public class AIController implements UnitController{
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean isLogicControllable(){
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
public void stopShooting(){
|
public void stopShooting(){
|
||||||
for(var mount : unit.mounts){
|
for(var mount : unit.mounts){
|
||||||
//ignore mount controllable stats too, they should not shoot either
|
//ignore mount controllable stats too, they should not shoot either
|
||||||
|
|||||||
@@ -14,6 +14,11 @@ public interface UnitController{
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** @return whether logic AI can take over */
|
||||||
|
default boolean isLogicControllable(){
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
default void updateUnit(){
|
default void updateUnit(){
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -14,6 +14,8 @@ public class WeaponMount{
|
|||||||
public float rotation;
|
public float rotation;
|
||||||
/** weapon recoil */
|
/** weapon recoil */
|
||||||
public float recoil;
|
public float recoil;
|
||||||
|
/** weapon barrel recoil */
|
||||||
|
public @Nullable float[] recoils;
|
||||||
/** destination rotation; do not modify! */
|
/** destination rotation; do not modify! */
|
||||||
public float targetRotation;
|
public float targetRotation;
|
||||||
/** current heat, 0 to 1*/
|
/** current heat, 0 to 1*/
|
||||||
@@ -34,8 +36,10 @@ public class WeaponMount{
|
|||||||
public boolean rotate = false;
|
public boolean rotate = false;
|
||||||
/** extra state for alternating weapons */
|
/** extra state for alternating weapons */
|
||||||
public boolean side;
|
public boolean side;
|
||||||
/** total bullets fired from this mount; used for alternating patterns */
|
/** total bullets fired from this mount */
|
||||||
public int totalShots;
|
public int totalShots;
|
||||||
|
/** counter for which barrel bullets have been fired from; used for alternating patterns */
|
||||||
|
public int barrelCounter;
|
||||||
/** current bullet for continuous weapons */
|
/** current bullet for continuous weapons */
|
||||||
public @Nullable Bullet bullet;
|
public @Nullable Bullet bullet;
|
||||||
/** sound loop for continuous weapons */
|
/** sound loop for continuous weapons */
|
||||||
|
|||||||
@@ -179,8 +179,21 @@ public class EventType{
|
|||||||
|
|
||||||
public MenuOptionChooseEvent(Player player, int menuId, int option){
|
public MenuOptionChooseEvent(Player player, int menuId, int option){
|
||||||
this.player = player;
|
this.player = player;
|
||||||
this.option = option;
|
|
||||||
this.menuId = menuId;
|
this.menuId = menuId;
|
||||||
|
this.option = option;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Consider using Menus.registerTextInput instead. */
|
||||||
|
public static class TextInputEvent{
|
||||||
|
public final Player player;
|
||||||
|
public final int textInputId;
|
||||||
|
public final @Nullable String text;
|
||||||
|
|
||||||
|
public TextInputEvent(Player player, int textInputId, String text){
|
||||||
|
this.player = player;
|
||||||
|
this.textInputId = textInputId;
|
||||||
|
this.text = text;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ import mindustry.type.*;
|
|||||||
import static mindustry.content.UnitTypes.*;
|
import static mindustry.content.UnitTypes.*;
|
||||||
|
|
||||||
public class Waves{
|
public class Waves{
|
||||||
public static final int waveVersion = 5;
|
public static final int waveVersion = 6;
|
||||||
|
|
||||||
private Seq<SpawnGroup> spawns;
|
private Seq<SpawnGroup> spawns;
|
||||||
|
|
||||||
|
|||||||
@@ -12,6 +12,19 @@ public class InverseKinematics{
|
|||||||
return solve(lengthA, lengthB, end, at1, result);
|
return solve(lengthA, lengthB, end, at1, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
inputs:
|
||||||
|
|
||||||
|
@param lengthA first line segment length
|
||||||
|
@param lengthB second line segment length
|
||||||
|
@param end length of the endpoint you want to reach
|
||||||
|
@param attractor direction you want the result to be closer to (since there are usually 2 solutions)
|
||||||
|
|
||||||
|
output:
|
||||||
|
|
||||||
|
@param result a point in-between (0, 0) and (end) such that (0, 0).dst(result) == lengthA and result.dst(end) == lengthB - or in basic terms, the position of a joint between (0, 0) and end where the two lengths of segments are lengthA and lengthB
|
||||||
|
@return whether IK succeeded (this can fail if end is too far, for example)
|
||||||
|
*/
|
||||||
public static boolean solve(float lengthA, float lengthB, Vec2 end, Vec2 attractor, Vec2 result){
|
public static boolean solve(float lengthA, float lengthB, Vec2 end, Vec2 attractor, Vec2 result){
|
||||||
Vec2 axis = mat2[0].set(end).nor();
|
Vec2 axis = mat2[0].set(end).nor();
|
||||||
mat2[1].set(attractor).sub(temp2.set(axis).scl(attractor.dot(axis))).nor();
|
mat2[1].set(attractor).sub(temp2.set(axis).scl(attractor.dot(axis))).nor();
|
||||||
|
|||||||
@@ -188,9 +188,10 @@ public class PlanetRenderer implements Disposable{
|
|||||||
}
|
}
|
||||||
|
|
||||||
//render sector grid
|
//render sector grid
|
||||||
Mesh mesh = outline(planet.grid.size);
|
float scaledOutlineRad = outlineRad * planet.radius;
|
||||||
|
Mesh mesh = outline(planet.grid.size, planet.radius);
|
||||||
Shader shader = Shaders.planetGrid;
|
Shader shader = Shaders.planetGrid;
|
||||||
Vec3 tile = planet.intersect(cam.getMouseRay(), outlineRad);
|
Vec3 tile = planet.intersect(cam.getMouseRay(), scaledOutlineRad);
|
||||||
Shaders.planetGrid.mouse.lerp(tile == null ? Vec3.Zero : tile.sub(planet.position).rotate(Vec3.Y, planet.getRotation()), 0.2f);
|
Shaders.planetGrid.mouse.lerp(tile == null ? Vec3.Zero : tile.sub(planet.position).rotate(Vec3.Y, planet.getRotation()), 0.2f);
|
||||||
|
|
||||||
shader.bind();
|
shader.bind();
|
||||||
@@ -210,13 +211,14 @@ public class PlanetRenderer implements Disposable{
|
|||||||
|
|
||||||
public void drawArc(Planet planet, Vec3 a, Vec3 b, Color from, Color to, float length, float timeScale, int pointCount){
|
public void drawArc(Planet planet, Vec3 a, Vec3 b, Color from, Color to, float length, float timeScale, int pointCount){
|
||||||
//increase curve height when on opposite side of planet, so it doesn't tunnel through
|
//increase curve height when on opposite side of planet, so it doesn't tunnel through
|
||||||
|
float scaledOutlineRad = outlineRad * planet.radius;
|
||||||
float dot = 1f - (Tmp.v32.set(a).nor().dot(Tmp.v33.set(b).nor()) + 1f)/2f;
|
float dot = 1f - (Tmp.v32.set(a).nor().dot(Tmp.v33.set(b).nor()) + 1f)/2f;
|
||||||
|
|
||||||
Vec3 avg = Tmp.v31.set(b).add(a).scl(0.5f);
|
Vec3 avg = Tmp.v31.set(b).add(a).scl(0.5f);
|
||||||
avg.setLength(planet.radius*(1f+length) + dot * 1.35f);
|
avg.setLength(planet.radius*(1f+length) + dot * 1.35f);
|
||||||
|
|
||||||
points.clear();
|
points.clear();
|
||||||
points.addAll(Tmp.v33.set(b).setLength(outlineRad), Tmp.v31, Tmp.v34.set(a).setLength(outlineRad));
|
points.addAll(Tmp.v33.set(b).setLength(scaledOutlineRad), Tmp.v31, Tmp.v34.set(a).setLength(scaledOutlineRad));
|
||||||
Tmp.bz3.set(points);
|
Tmp.bz3.set(points);
|
||||||
|
|
||||||
for(int i = 0; i < pointCount + 1; i++){
|
for(int i = 0; i < pointCount + 1; i++){
|
||||||
@@ -231,8 +233,8 @@ public class PlanetRenderer implements Disposable{
|
|||||||
public void drawBorders(Sector sector, Color base, float alpha){
|
public void drawBorders(Sector sector, Color base, float alpha){
|
||||||
Color color = Tmp.c1.set(base).a((base.a + 0.3f + Mathf.absin(Time.globalTime, 5f, 0.3f)) * alpha);
|
Color color = Tmp.c1.set(base).a((base.a + 0.3f + Mathf.absin(Time.globalTime, 5f, 0.3f)) * alpha);
|
||||||
|
|
||||||
float r1 = 1f;
|
float r1 = 1f * sector.planet.radius;
|
||||||
float r2 = outlineRad + 0.001f;
|
float r2 = outlineRad * sector.planet.radius + 0.001f;
|
||||||
|
|
||||||
for(int i = 0; i < sector.tile.corners.length; i++){
|
for(int i = 0; i < sector.tile.corners.length; i++){
|
||||||
Corner c = sector.tile.corners[i], next = sector.tile.corners[(i+1) % sector.tile.corners.length];
|
Corner c = sector.tile.corners[i], next = sector.tile.corners[(i+1) % sector.tile.corners.length];
|
||||||
@@ -268,16 +270,16 @@ public class PlanetRenderer implements Disposable{
|
|||||||
|
|
||||||
projector.setPlane(
|
projector.setPlane(
|
||||||
//origin on sector position
|
//origin on sector position
|
||||||
Tmp.v33.set(sector.tile.v).setLength(outlineRad + length).rotate(Vec3.Y, rotation).add(sector.planet.position),
|
Tmp.v33.set(sector.tile.v).setLength((outlineRad + length) * sector.planet.radius).rotate(Vec3.Y, rotation).add(sector.planet.position),
|
||||||
//face up
|
//face up
|
||||||
sector.plane.project(Tmp.v32.set(sector.tile.v).add(Vec3.Y)).sub(sector.tile.v).rotate(Vec3.Y, rotation).nor(),
|
sector.plane.project(Tmp.v32.set(sector.tile.v).add(Vec3.Y)).sub(sector.tile.v, sector.planet.radius).rotate(Vec3.Y, rotation).nor(),
|
||||||
//right vector
|
//right vector
|
||||||
Tmp.v31.set(Tmp.v32).rotate(Vec3.Y, -rotation).add(sector.tile.v).rotate(sector.tile.v, 90).sub(sector.tile.v).rotate(Vec3.Y, rotation).nor()
|
Tmp.v31.set(Tmp.v32).rotate(Vec3.Y, -rotation).add(sector.tile.v).rotate(sector.tile.v, 90).sub(sector.tile.v).rotate(Vec3.Y, rotation).nor()
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void fill(Sector sector, Color color, float offset){
|
public void fill(Sector sector, Color color, float offset){
|
||||||
float rr = outlineRad + offset;
|
float rr = outlineRad * sector.planet.radius + offset;
|
||||||
for(int i = 0; i < sector.tile.corners.length; i++){
|
for(int i = 0; i < sector.tile.corners.length; i++){
|
||||||
Corner c = sector.tile.corners[i], next = sector.tile.corners[(i+1) % sector.tile.corners.length];
|
Corner c = sector.tile.corners[i], next = sector.tile.corners[(i+1) % sector.tile.corners.length];
|
||||||
batch.tri(Tmp.v31.set(c.v).setLength(rr), Tmp.v32.set(next.v).setLength(rr), Tmp.v33.set(sector.tile.v).setLength(rr), color);
|
batch.tri(Tmp.v31.set(c.v).setLength(rr), Tmp.v32.set(next.v).setLength(rr), Tmp.v33.set(sector.tile.v).setLength(rr), color);
|
||||||
@@ -289,7 +291,7 @@ public class PlanetRenderer implements Disposable{
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void drawSelection(Sector sector, Color color, float stroke, float length){
|
public void drawSelection(Sector sector, Color color, float stroke, float length){
|
||||||
float arad = outlineRad + length;
|
float arad = (outlineRad + length) * sector.planet.radius;
|
||||||
|
|
||||||
for(int i = 0; i < sector.tile.corners.length; i++){
|
for(int i = 0; i < sector.tile.corners.length; i++){
|
||||||
Corner next = sector.tile.corners[(i + 1) % sector.tile.corners.length];
|
Corner next = sector.tile.corners[(i + 1) % sector.tile.corners.length];
|
||||||
@@ -311,7 +313,7 @@ public class PlanetRenderer implements Disposable{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public Mesh outline(int size){
|
public Mesh outline(int size, float radiusScale){
|
||||||
if(outlines[size] == null){
|
if(outlines[size] == null){
|
||||||
outlines[size] = MeshBuilder.buildHex(new HexMesher(){
|
outlines[size] = MeshBuilder.buildHex(new HexMesher(){
|
||||||
@Override
|
@Override
|
||||||
@@ -323,7 +325,7 @@ public class PlanetRenderer implements Disposable{
|
|||||||
public Color getColor(Vec3 position){
|
public Color getColor(Vec3 position){
|
||||||
return outlineColor;
|
return outlineColor;
|
||||||
}
|
}
|
||||||
}, size, true, outlineRad, 0.2f);
|
}, size, true, outlineRad * radiusScale, 0.2f);
|
||||||
}
|
}
|
||||||
return outlines[size];
|
return outlines[size];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -262,7 +262,7 @@ public class DesktopInput extends InputHandler{
|
|||||||
|
|
||||||
shouldShoot = !scene.hasMouse() && !locked;
|
shouldShoot = !scene.hasMouse() && !locked;
|
||||||
|
|
||||||
if(!locked && block == null && !scene.hasField() &&
|
if(!locked && block == null && !scene.hasField() && !scene.hasDialog() &&
|
||||||
//disable command mode when player unit can boost and command mode binding is the same
|
//disable command mode when player unit can boost and command mode binding is the same
|
||||||
!(!player.dead() && player.unit().type.canBoost && keybinds.get(Binding.command_mode).key == keybinds.get(Binding.boost).key)){
|
!(!player.dead() && player.unit().type.canBoost && keybinds.get(Binding.command_mode).key == keybinds.get(Binding.boost).key)){
|
||||||
if(settings.getBool("commandmodehold")){
|
if(settings.getBool("commandmodehold")){
|
||||||
|
|||||||
@@ -119,6 +119,15 @@ public class TypeIO{
|
|||||||
}else if(object instanceof Team t){
|
}else if(object instanceof Team t){
|
||||||
write.b((byte)20);
|
write.b((byte)20);
|
||||||
write.b(t.id);
|
write.b(t.id);
|
||||||
|
}else if(object instanceof int[] i){
|
||||||
|
write.b((byte)21);
|
||||||
|
writeInts(write, i);
|
||||||
|
}else if(object instanceof Object[] objs){
|
||||||
|
write.b((byte)22);
|
||||||
|
write.i(objs.length);
|
||||||
|
for(Object obj : objs){
|
||||||
|
writeObject(write, obj);
|
||||||
|
}
|
||||||
}else{
|
}else{
|
||||||
throw new IllegalArgumentException("Unknown object type: " + object.getClass());
|
throw new IllegalArgumentException("Unknown object type: " + object.getClass());
|
||||||
}
|
}
|
||||||
@@ -184,6 +193,13 @@ public class TypeIO{
|
|||||||
}
|
}
|
||||||
case 19 -> new Vec2(read.f(), read.f());
|
case 19 -> new Vec2(read.f(), read.f());
|
||||||
case 20 -> Team.all[read.ub()];
|
case 20 -> Team.all[read.ub()];
|
||||||
|
case 21 -> readInts(read);
|
||||||
|
case 22 -> {
|
||||||
|
int objlen = read.i();
|
||||||
|
Object[] objs = new Object[objlen];
|
||||||
|
for(int i = 0; i < objlen; i++) objs[i] = readObjectBoxed(read, box);
|
||||||
|
yield objs;
|
||||||
|
}
|
||||||
default -> throw new IllegalArgumentException("Unknown object type: " + type);
|
default -> throw new IllegalArgumentException("Unknown object type: " + type);
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
@@ -631,8 +647,8 @@ public class TypeIO{
|
|||||||
return new ItemStack(readItem(read), read.i());
|
return new ItemStack(readItem(read), read.i());
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void writeTeam(Writes write, Team reason){
|
public static void writeTeam(Writes write, Team team){
|
||||||
write.b(reason.id);
|
write.b(team == null ? 0 : team.id);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static Team readTeam(Reads read){
|
public static Team readTeam(Reads read){
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
package mindustry.io.versions;
|
package mindustry.io.versions;
|
||||||
|
|
||||||
import arc.func.*;
|
import arc.func.*;
|
||||||
import arc.util.*;
|
|
||||||
import arc.util.io.*;
|
import arc.util.io.*;
|
||||||
import mindustry.gen.*;
|
import mindustry.gen.*;
|
||||||
|
|
||||||
|
|||||||
@@ -59,7 +59,8 @@ public enum LAccess{
|
|||||||
public static final LAccess[]
|
public static final LAccess[]
|
||||||
all = values(),
|
all = values(),
|
||||||
senseable = Seq.select(all, t -> t.params.length <= 1).toArray(LAccess.class),
|
senseable = Seq.select(all, t -> t.params.length <= 1).toArray(LAccess.class),
|
||||||
controls = Seq.select(all, t -> t.params.length > 0).toArray(LAccess.class);
|
controls = Seq.select(all, t -> t.params.length > 0).toArray(LAccess.class),
|
||||||
|
settable = {x, y, rotation, team, flag, health, totalPower, payloadType};
|
||||||
|
|
||||||
LAccess(String... params){
|
LAccess(String... params){
|
||||||
this.params = params;
|
this.params = params;
|
||||||
|
|||||||
@@ -361,7 +361,7 @@ public class LExecutor{
|
|||||||
/** Checks is a unit is valid for logic AI control, and returns the controller. */
|
/** Checks is a unit is valid for logic AI control, and returns the controller. */
|
||||||
@Nullable
|
@Nullable
|
||||||
public static LogicAI checkLogicAI(LExecutor exec, Object unitObj){
|
public static LogicAI checkLogicAI(LExecutor exec, Object unitObj){
|
||||||
if(unitObj instanceof Unit unit && unit.isValid() && exec.obj(varUnit) == unit && (unit.team == exec.team || exec.privileged) && !unit.isPlayer() && !(unit.isCommandable() && unit.command().hasCommand())){
|
if(unitObj instanceof Unit unit && unit.isValid() && exec.obj(varUnit) == unit && (unit.team == exec.team || exec.privileged) && unit.controller().isLogicControllable()){
|
||||||
if(unit.controller() instanceof LogicAI la){
|
if(unit.controller() instanceof LogicAI la){
|
||||||
la.controller = exec.building(varThis);
|
la.controller = exec.building(varThis);
|
||||||
return la;
|
return la;
|
||||||
@@ -1695,5 +1695,37 @@ public class LExecutor{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static class SetPropI implements LInstruction{
|
||||||
|
public int type, of, value;
|
||||||
|
|
||||||
|
public SetPropI(int type, int of, int value){
|
||||||
|
this.type = type;
|
||||||
|
this.of = of;
|
||||||
|
this.value = value;
|
||||||
|
}
|
||||||
|
|
||||||
|
public SetPropI(){
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void run(LExecutor exec){
|
||||||
|
Object target = exec.obj(of);
|
||||||
|
Object key = exec.obj(type);
|
||||||
|
|
||||||
|
if(target instanceof Settable sp){
|
||||||
|
if(key instanceof LAccess property){
|
||||||
|
Var var = exec.var(value);
|
||||||
|
if(var.isobj){
|
||||||
|
sp.setProp(property, var.objval);
|
||||||
|
}else{
|
||||||
|
sp.setProp(property, var.numval);
|
||||||
|
}
|
||||||
|
}else if(key instanceof UnlockableContent content){
|
||||||
|
sp.setProp(content, exec.num(value));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
//endregion
|
//endregion
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,7 +2,6 @@ package mindustry.logic;
|
|||||||
|
|
||||||
import arc.*;
|
import arc.*;
|
||||||
import arc.func.*;
|
import arc.func.*;
|
||||||
import arc.graphics.*;
|
|
||||||
import arc.math.*;
|
import arc.math.*;
|
||||||
import arc.scene.*;
|
import arc.scene.*;
|
||||||
import arc.scene.actions.*;
|
import arc.scene.actions.*;
|
||||||
|
|||||||
@@ -1683,4 +1683,113 @@ public class LStatements{
|
|||||||
return LCategory.world;
|
return LCategory.world;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@RegisterStatement("setprop")
|
||||||
|
public static class SetPropStatement extends LStatement{
|
||||||
|
public String type = "@copper", of = "block1", value = "0";
|
||||||
|
|
||||||
|
private transient int selected = 0;
|
||||||
|
private transient TextField tfield;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void build(Table table){
|
||||||
|
table.add(" set ");
|
||||||
|
|
||||||
|
tfield = field(table, type, str -> type = str).padRight(0f).get();
|
||||||
|
|
||||||
|
table.button(b -> {
|
||||||
|
b.image(Icon.pencilSmall);
|
||||||
|
//240
|
||||||
|
b.clicked(() -> showSelectTable(b, (t, hide) -> {
|
||||||
|
Table[] tables = {
|
||||||
|
//items
|
||||||
|
new Table(i -> {
|
||||||
|
i.left();
|
||||||
|
int c = 0;
|
||||||
|
for(Item item : Vars.content.items()){
|
||||||
|
if(item.hidden) continue;
|
||||||
|
i.button(new TextureRegionDrawable(item.uiIcon), Styles.flati, iconSmall, () -> {
|
||||||
|
stype("@" + item.name);
|
||||||
|
hide.run();
|
||||||
|
}).size(40f);
|
||||||
|
|
||||||
|
if(++c % 6 == 0) i.row();
|
||||||
|
}
|
||||||
|
}),
|
||||||
|
//liquids
|
||||||
|
new Table(i -> {
|
||||||
|
i.left();
|
||||||
|
int c = 0;
|
||||||
|
for(Liquid item : Vars.content.liquids()){
|
||||||
|
if(!item.unlockedNow() || item.hidden) continue;
|
||||||
|
i.button(new TextureRegionDrawable(item.uiIcon), Styles.flati, iconSmall, () -> {
|
||||||
|
stype("@" + item.name);
|
||||||
|
hide.run();
|
||||||
|
}).size(40f);
|
||||||
|
|
||||||
|
if(++c % 6 == 0) i.row();
|
||||||
|
}
|
||||||
|
}),
|
||||||
|
//sensors
|
||||||
|
new Table(i -> {
|
||||||
|
for(LAccess property : LAccess.settable){
|
||||||
|
i.button(property.name(), Styles.flatt, () -> {
|
||||||
|
stype("@" + property.name());
|
||||||
|
hide.run();
|
||||||
|
}).size(240f, 40f).self(c -> tooltip(c, property)).row();
|
||||||
|
}
|
||||||
|
})
|
||||||
|
};
|
||||||
|
|
||||||
|
Drawable[] icons = {Icon.box, Icon.liquid, Icon.tree};
|
||||||
|
Stack stack = new Stack(tables[selected]);
|
||||||
|
ButtonGroup<Button> group = new ButtonGroup<>();
|
||||||
|
|
||||||
|
for(int i = 0; i < tables.length; i++){
|
||||||
|
int fi = i;
|
||||||
|
|
||||||
|
t.button(icons[i], Styles.squareTogglei, () -> {
|
||||||
|
selected = fi;
|
||||||
|
|
||||||
|
stack.clearChildren();
|
||||||
|
stack.addChild(tables[selected]);
|
||||||
|
|
||||||
|
t.parent.parent.pack();
|
||||||
|
t.parent.parent.invalidateHierarchy();
|
||||||
|
}).height(50f).growX().checked(selected == fi).group(group);
|
||||||
|
}
|
||||||
|
t.row();
|
||||||
|
t.add(stack).colspan(3).width(240f).left();
|
||||||
|
}));
|
||||||
|
}, Styles.logict, () -> {}).size(40f).padLeft(-1).color(table.color);
|
||||||
|
|
||||||
|
table.add(" of ").self(this::param);
|
||||||
|
|
||||||
|
field(table, of, str -> of = str);
|
||||||
|
|
||||||
|
table.add(" to ");
|
||||||
|
|
||||||
|
field(table, value, str -> value = str);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void stype(String text){
|
||||||
|
tfield.setText(text);
|
||||||
|
this.type = text;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean privileged(){
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public LInstruction build(LAssembler builder){
|
||||||
|
return new SetPropI(builder.var(type), builder.var(of), builder.var(value));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public LCategory category(){
|
||||||
|
return LCategory.world;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||