Compare commits
221 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
26b66f9bdb | ||
|
|
5548e72750 | ||
|
|
766a95da03 | ||
|
|
c705743696 | ||
|
|
0e24b67d09 | ||
|
|
9d8905a4ae | ||
|
|
2882f7840e | ||
|
|
73dd487af9 | ||
|
|
798b493334 | ||
|
|
8311261e3c | ||
|
|
26c54ae0ed | ||
|
|
6341da8f43 | ||
|
|
f0e272d84c | ||
|
|
9c23134f2a | ||
|
|
d3b7fb0990 | ||
|
|
90ed5f2750 | ||
|
|
e07ab5cef6 | ||
|
|
2e1b4934ad | ||
|
|
91964da088 | ||
|
|
cc66ccb49f | ||
|
|
bff4097c88 | ||
|
|
996cbefb4f | ||
|
|
579d63ac23 | ||
|
|
6a53a0e7be | ||
|
|
4edf4cac25 | ||
|
|
68141798d3 | ||
|
|
e3b815a4c6 | ||
|
|
57d000f767 | ||
|
|
3ac9ae29ee | ||
|
|
3942445d1f | ||
|
|
16223af87d | ||
|
|
109ba84625 | ||
|
|
ec80fe9aad | ||
|
|
680fc34ac3 | ||
|
|
d35acefcd0 | ||
|
|
c52b966dea | ||
|
|
c829f32efa | ||
|
|
beeeee9169 | ||
|
|
207806440b | ||
|
|
d60d3d78ea | ||
|
|
490b281c43 | ||
|
|
53cb0d4c89 | ||
|
|
d787b4353b | ||
|
|
9d21c0173d | ||
|
|
56f29e1cd5 | ||
|
|
e6aa87ed71 | ||
|
|
480b68f8cc | ||
|
|
3650589a59 | ||
|
|
e3d0734790 | ||
|
|
c45f3d2253 | ||
|
|
8e418915d4 | ||
|
|
2715d4954f | ||
|
|
6e33827576 | ||
|
|
63d036d6ed | ||
|
|
5487dad75e | ||
|
|
06edce3535 | ||
|
|
23cf1a7afa | ||
|
|
6566f1c554 | ||
|
|
1d4084c387 | ||
|
|
8efed88669 | ||
|
|
11cd27fe1d | ||
|
|
855789ec17 | ||
|
|
f8dac91cd9 | ||
|
|
161be3e8d3 | ||
|
|
ae6e74c24d | ||
|
|
2f991a85af | ||
|
|
f2c476a716 | ||
|
|
2b05264093 | ||
|
|
7de33b335a | ||
|
|
b47a1b6d0d | ||
|
|
a7e8dd126e | ||
|
|
7999eb4c4d | ||
|
|
45d205f0ef | ||
|
|
585104a7f7 | ||
|
|
a3f7203993 | ||
|
|
fb4787ba52 | ||
|
|
398a6f6a42 | ||
|
|
bdbb2de61a | ||
|
|
c5a53f119b | ||
|
|
e17d89e5a8 | ||
|
|
0119e71677 | ||
|
|
aa026b8b41 | ||
|
|
933e4e84e0 | ||
|
|
73a7772eeb | ||
|
|
275c3ec163 | ||
|
|
f1172d45eb | ||
|
|
87e79913c5 | ||
|
|
1656d788d3 | ||
|
|
19f34c14a0 | ||
|
|
3157ff8cea | ||
|
|
21fe8217d0 | ||
|
|
b7d707e8ba | ||
|
|
db96f2ef39 | ||
|
|
4b38f667e7 | ||
|
|
d5eeadab30 | ||
|
|
bc42b5a91e | ||
|
|
13745bfd99 | ||
|
|
5e18e08bdf | ||
|
|
6970a20f26 | ||
|
|
bd6c6524e6 | ||
|
|
e9bf56e88c | ||
|
|
6bf5e8ae1e | ||
|
|
660c38db43 | ||
|
|
2a76d25dfa | ||
|
|
7b9dfb9721 | ||
|
|
bd0592a54c | ||
|
|
12b6604143 | ||
|
|
e3d3167b13 | ||
|
|
2ed8bdb2bc | ||
|
|
a9a454dd61 | ||
|
|
496d6978d0 | ||
|
|
e4bc6e21a4 | ||
|
|
c406979291 | ||
|
|
b3508aa7c2 | ||
|
|
5207baea96 | ||
|
|
52d7a1e0e4 | ||
|
|
117169c1d3 | ||
|
|
cd461b133c | ||
|
|
59dd3a9e34 | ||
|
|
3d0541084b | ||
|
|
7d35c1ec7b | ||
|
|
07c7fd7dec | ||
|
|
6678729401 | ||
|
|
09d00b30e9 | ||
|
|
f3656d24d4 | ||
|
|
1968da9409 | ||
|
|
0d8c07d007 | ||
|
|
0e83300548 | ||
|
|
ba9e39d7a4 | ||
|
|
d4111b8e76 | ||
|
|
2bae95d2a8 | ||
|
|
69377bab3f | ||
|
|
2fc69c4f64 | ||
|
|
dae23c7fe6 | ||
|
|
7850e61672 | ||
|
|
24c01f97d3 | ||
|
|
a92bce2c14 | ||
|
|
e5ded1f2dd | ||
|
|
dc8783d4a6 | ||
|
|
0ef5255650 | ||
|
|
a922932a56 | ||
|
|
3fd5f52545 | ||
|
|
f976a294ce | ||
|
|
6f725d320b | ||
|
|
51b974f10e | ||
|
|
447e07420e | ||
|
|
dbbcf4b168 | ||
|
|
f3dd031d0e | ||
|
|
4998abfe01 | ||
|
|
636ce4ca94 | ||
|
|
bfdd7ecc3a | ||
|
|
28372b0f47 | ||
|
|
b4e03b46f6 | ||
|
|
16949f1e69 | ||
|
|
b272008a90 | ||
|
|
cc8d2b6a0c | ||
|
|
10fe6b9007 | ||
|
|
ce43af9091 | ||
|
|
788fa66a91 | ||
|
|
fedad1e0d0 | ||
|
|
a14149c952 | ||
|
|
053afcace9 | ||
|
|
e097346a73 | ||
|
|
4076f09573 | ||
|
|
e78fb11c48 | ||
|
|
135874b922 | ||
|
|
09aa68fdb2 | ||
|
|
dd5037d9d2 | ||
|
|
418d533c3c | ||
|
|
37e138858b | ||
|
|
b6a195cc80 | ||
|
|
4b4033e9e7 | ||
|
|
383d8b89e7 | ||
|
|
778d92b816 | ||
|
|
93daa7a5dc | ||
|
|
f88654cdc1 | ||
|
|
3e5898fff1 | ||
|
|
be96ddf463 | ||
|
|
20a3107b3f | ||
|
|
05874ad3e2 | ||
|
|
ea8d796561 | ||
|
|
129c3f446a | ||
|
|
f611a5f038 | ||
|
|
47c7906d55 | ||
|
|
c64b6092d7 | ||
|
|
f17719f08e | ||
|
|
cc41b99c75 | ||
|
|
1d1ec8ee2d | ||
|
|
8c7523b3b3 | ||
|
|
f01df70d3f | ||
|
|
c15b3421b2 | ||
|
|
b4d5d05217 | ||
|
|
9b1a8edafc | ||
|
|
fbcc53e2c0 | ||
|
|
e630bcf41e | ||
|
|
eb44a7ec84 | ||
|
|
023ec9f66b | ||
|
|
1bc3ac8761 | ||
|
|
4b3feb2f0e | ||
|
|
ac5526e785 | ||
|
|
95a7a181e0 | ||
|
|
0a869fd690 | ||
|
|
ec9c19101f | ||
|
|
31b01ac39e | ||
|
|
f74293b878 | ||
|
|
0e31103b21 | ||
|
|
591c31fd29 | ||
|
|
a20ca67527 | ||
|
|
c66abc3f0f | ||
|
|
fea52c9132 | ||
|
|
6163738ad8 | ||
|
|
443d31e4a5 | ||
|
|
2d827f83b4 | ||
|
|
fbc6740668 | ||
|
|
06cd71e13c | ||
|
|
f65edb3468 | ||
|
|
7cce799ec7 | ||
|
|
aefcb7746a | ||
|
|
a2dd2c88a2 | ||
|
|
2008cf6387 | ||
|
|
6ba1cd3ef6 |
30
.github/ISSUE_TEMPLATE/bug_report.md
vendored
30
.github/ISSUE_TEMPLATE/bug_report.md
vendored
@@ -1,30 +0,0 @@
|
|||||||
---
|
|
||||||
name: Bug report
|
|
||||||
about: Create a report to help fix an issue.
|
|
||||||
title: ''
|
|
||||||
labels: bug
|
|
||||||
assignees: ''
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
**Platform**: *The type of device you were playing on - Android/iOS/Mac/Windows/Linux* ("All" is NOT a platform!)
|
|
||||||
|
|
||||||
**Build**: *The build number under the title in the main menu. Required. "LATEST" IS NOT A VERSION, I NEED THE EXACT BUILD NUMBER OF YOUR GAME.*
|
|
||||||
|
|
||||||
**Issue**: *Explain your issue in detail.*
|
|
||||||
|
|
||||||
**Steps to reproduce**: *How you happened across the issue, and what exactly you did to make the bug happen.*
|
|
||||||
|
|
||||||
**Link(s) to mod(s) used**: *The mod repositories or zip files that are related to the issue, if applicable.*
|
|
||||||
|
|
||||||
**Save file**: *The (zipped) save file you were playing on when the bug happened. THIS IS REQUIRED FOR ANY ISSUE HAPPENING IN-GAME OR IN MULTIPLAYER, REGARDLESS OF WHETHER YOU THINK IT HAPPENS EVERYWHERE. DO NOT DELETE OR OMIT THIS LINE UNLESS YOU ARE SURE THAT THE ISSUE DOES NOT HAPPEN IN-GAME. IF YOU DO NOT HAVE A SAVE, DON'T WASTE TIME OPENING THIS ISSUE.*
|
|
||||||
|
|
||||||
If you remove the line above without reading it properly and understanding what it means, I will reap your soul. Even if you're playing on someone's server, you can still save the game to a slot.
|
|
||||||
|
|
||||||
**(Crash) logs**: *Either crash reports from the crash folder, or the file you get when you go into Settings -> Game Data -> Export Crash logs. REQUIRED if you are reporting a crash.*
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
*Place an X (no spaces) between the brackets to confirm that you have read the line below.*
|
|
||||||
- [ ] **I have updated to the latest release (https://github.com/Anuken/Mindustry/releases) to make sure my issue has not been fixed.**
|
|
||||||
- [ ] **I have searched the closed and open issues to make sure that this problem has not already been reported.**
|
|
||||||
74
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
Normal file
74
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
Normal file
@@ -0,0 +1,74 @@
|
|||||||
|
name: Bug report
|
||||||
|
description: The type of device you were playing on
|
||||||
|
labels: ["bug"]
|
||||||
|
|
||||||
|
body:
|
||||||
|
- type: dropdown
|
||||||
|
id: platform
|
||||||
|
attributes:
|
||||||
|
label: Platforms
|
||||||
|
description: On what platforms do you know the bug happens?
|
||||||
|
multiple: false
|
||||||
|
options:
|
||||||
|
- Android
|
||||||
|
- iOS
|
||||||
|
- Mac
|
||||||
|
- Windows
|
||||||
|
- Linux
|
||||||
|
validations:
|
||||||
|
required: true
|
||||||
|
- type: input
|
||||||
|
id: build
|
||||||
|
attributes:
|
||||||
|
label: Build
|
||||||
|
description: The build number under the title in the main menu.
|
||||||
|
placeholder: LATEST IS NOT A VERSION, I NEED THE EXACT BUILD NUMBER OF YOUR GAME.
|
||||||
|
validations:
|
||||||
|
required: true
|
||||||
|
- type: textarea
|
||||||
|
id: issue
|
||||||
|
attributes:
|
||||||
|
label: Issue
|
||||||
|
description: Explain your issue in detail.
|
||||||
|
validations:
|
||||||
|
required: true
|
||||||
|
- type: textarea
|
||||||
|
id: reproduction
|
||||||
|
attributes:
|
||||||
|
label: Steps to reproduce
|
||||||
|
description: How you happened across the issue, and what exactly you did to make the bug happen.
|
||||||
|
validations:
|
||||||
|
required: true
|
||||||
|
- type: textarea
|
||||||
|
id: mods
|
||||||
|
attributes:
|
||||||
|
label: Mods used
|
||||||
|
description: The mod repositories or zip files that are related to the issue, if applicable.
|
||||||
|
validations:
|
||||||
|
required: false
|
||||||
|
- type: textarea
|
||||||
|
id: save-file
|
||||||
|
attributes:
|
||||||
|
label: Save file
|
||||||
|
description: The (zipped) save file you were playing on when the bug happened. If this happened in the campaign, specify the sector, and attach the file you get from Settings -> Game Data -> Export Data. For custom games, attach the .msav file exported from the save dialog, zipped.
|
||||||
|
placeholder: THIS IS REQUIRED FOR ANY ISSUE HAPPENING IN-GAME OR IN MULTIPLAYER, REGARDLESS OF WHETHER YOU THINK IT HAPPENS EVERYWHERE. DO NOT OMIT THIS LINE UNLESS YOU ARE SURE THAT THE ISSUE DOES NOT HAPPEN IN-GAME. IF YOU DO NOT HAVE A SAVE, DON'T WASTE TIME OPENING THIS ISSUE.
|
||||||
|
validations:
|
||||||
|
required: false
|
||||||
|
- type: textarea
|
||||||
|
id: logs
|
||||||
|
attributes:
|
||||||
|
label: (Crash) logs
|
||||||
|
description: Either crash reports from the crash folder, or the file you get when you go into Settings -> Game Data -> Export Crash logs.
|
||||||
|
placeholder: REQUIRED if you are reporting a crash.
|
||||||
|
validations:
|
||||||
|
required: false
|
||||||
|
- type: checkboxes
|
||||||
|
id: agreement
|
||||||
|
attributes:
|
||||||
|
label: Submission
|
||||||
|
description: Check the boxes to confirm that you have read the lines below.
|
||||||
|
options:
|
||||||
|
- label: I have updated to the latest release (https://github.com/Anuken/Mindustry/releases) to make sure my issue has not been fixed.
|
||||||
|
required: true
|
||||||
|
- label: I have searched the closed and open issues to make sure that this problem has not already been reported.
|
||||||
|
required: true
|
||||||
@@ -29,8 +29,8 @@ task deploy(type: Copy){
|
|||||||
}
|
}
|
||||||
|
|
||||||
android{
|
android{
|
||||||
buildToolsVersion '31.0.0'
|
buildToolsVersion '33.0.2'
|
||||||
compileSdkVersion 31
|
compileSdkVersion 33
|
||||||
sourceSets{
|
sourceSets{
|
||||||
main{
|
main{
|
||||||
manifest.srcFile 'AndroidManifest.xml'
|
manifest.srcFile 'AndroidManifest.xml'
|
||||||
@@ -56,7 +56,7 @@ android{
|
|||||||
|
|
||||||
applicationId "io.anuke.mindustry"
|
applicationId "io.anuke.mindustry"
|
||||||
minSdkVersion 14
|
minSdkVersion 14
|
||||||
targetSdkVersion 31
|
targetSdkVersion 33
|
||||||
|
|
||||||
versionName versionNameResult
|
versionName versionNameResult
|
||||||
versionCode = vcode
|
versionCode = vcode
|
||||||
|
|||||||
BIN
core/assets-raw/sprites/statuses/status-fast.png
Normal file
BIN
core/assets-raw/sprites/statuses/status-fast.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 218 B |
@@ -259,6 +259,7 @@ trace = Trace Player
|
|||||||
trace.playername = Player name: [accent]{0}
|
trace.playername = Player name: [accent]{0}
|
||||||
trace.ip = IP: [accent]{0}
|
trace.ip = IP: [accent]{0}
|
||||||
trace.id = ID: [accent]{0}
|
trace.id = ID: [accent]{0}
|
||||||
|
trace.language = Language: [accent]{0}
|
||||||
trace.mobile = Mobile Client: [accent]{0}
|
trace.mobile = Mobile Client: [accent]{0}
|
||||||
trace.modclient = Custom Client: [accent]{0}
|
trace.modclient = Custom Client: [accent]{0}
|
||||||
trace.times.joined = Times Joined: [accent]{0}
|
trace.times.joined = Times Joined: [accent]{0}
|
||||||
@@ -964,13 +965,16 @@ stat.healing = Healing
|
|||||||
|
|
||||||
ability.forcefield = Force Field
|
ability.forcefield = Force Field
|
||||||
ability.repairfield = Repair Field
|
ability.repairfield = Repair Field
|
||||||
ability.statusfield = {0} Status Field
|
ability.statusfield = Status Field
|
||||||
ability.unitspawn = {0} Factory
|
ability.unitspawn = 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 = Repair Suppression Field
|
ability.suppressionfield = Repair Suppression
|
||||||
ability.energyfield = Energy Field: [accent]{0}[] damage ~ [accent]{1}[] blocks / [accent]{2}[] targets
|
ability.energyfield = Energy Field
|
||||||
|
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}%
|
||||||
|
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0}
|
||||||
|
ability.regen = Regeneration
|
||||||
|
|
||||||
bar.onlycoredeposit = Only Core Depositing Allowed
|
bar.onlycoredeposit = Only Core Depositing Allowed
|
||||||
bar.drilltierreq = Better Drill Required
|
bar.drilltierreq = Better Drill Required
|
||||||
@@ -1111,6 +1115,7 @@ setting.position.name = Show Player Position
|
|||||||
setting.mouseposition.name = Show Mouse Position
|
setting.mouseposition.name = Show Mouse Position
|
||||||
setting.musicvol.name = Music Volume
|
setting.musicvol.name = Music Volume
|
||||||
setting.atmosphere.name = Show Planet Atmosphere
|
setting.atmosphere.name = Show Planet Atmosphere
|
||||||
|
setting.drawlight.name = Draw Darkness/Lighting
|
||||||
setting.ambientvol.name = Ambient Volume
|
setting.ambientvol.name = Ambient Volume
|
||||||
setting.mutemusic.name = Mute Music
|
setting.mutemusic.name = Mute Music
|
||||||
setting.sfxvol.name = SFX Volume
|
setting.sfxvol.name = SFX Volume
|
||||||
@@ -1867,6 +1872,9 @@ 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.
|
||||||
|
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
||||||
|
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
||||||
|
aegis.tungsten = Tungsten can be mined using an [accent]impact drill[].\nThis structure requires [accent]water[] and [accent]power[].
|
||||||
|
|
||||||
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)
|
||||||
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
||||||
@@ -2216,8 +2224,8 @@ unit.collaris.description = Fires long-range fragmenting artillery at enemy targ
|
|||||||
unit.elude.description = Fires pairs of homing bullets at enemy targets. Can float over bodies of liquid.
|
unit.elude.description = Fires pairs of homing bullets at enemy targets. Can float over bodies of liquid.
|
||||||
unit.avert.description = Fires twisting pairs of bullets at enemy targets.
|
unit.avert.description = Fires twisting pairs of bullets at enemy targets.
|
||||||
unit.obviate.description = Fires twisting pairs of lightning orbs at enemy targets.
|
unit.obviate.description = Fires twisting pairs of lightning orbs at enemy targets.
|
||||||
unit.quell.description = Fires long-range homing missiles at enemy targets. Suppresses enemy structure repair blocks.
|
unit.quell.description = Fires long-range homing missiles at enemy targets. Suppresses enemy structure repair blocks. Only attacks ground targets.
|
||||||
unit.disrupt.description = Fires long-range homing suppression missiles at enemy targets. Suppresses enemy structure repair blocks.
|
unit.disrupt.description = Fires long-range homing suppression missiles at enemy targets. Suppresses enemy structure repair blocks. Only attacks ground targets.
|
||||||
unit.evoke.description = Builds structures to defend the Bastion core. Repairs structures with a beam. Capable of carrying 2x2 structures.
|
unit.evoke.description = Builds structures to defend the Bastion core. Repairs structures with a beam. Capable of carrying 2x2 structures.
|
||||||
unit.incite.description = Builds structures to defend the Citadel core. Repairs structures with a beam. Capable of carrying 2x2 structures.
|
unit.incite.description = Builds structures to defend the Citadel core. Repairs structures with a beam. Capable of carrying 2x2 structures.
|
||||||
unit.emanate.description = Builds structures to defend the Acropolis core. Repairs structures with beams. Capable of carrying 2x2 structures.
|
unit.emanate.description = Builds structures to defend the Acropolis core. Repairs structures with beams. Capable of carrying 2x2 structures.
|
||||||
@@ -2237,7 +2245,7 @@ lst.operation = Perform an operation on 1-2 variables.
|
|||||||
lst.end = Jump to the top of the instruction stack.
|
lst.end = Jump to the top of the instruction stack.
|
||||||
lst.wait = Wait a certain number of seconds.
|
lst.wait = Wait a certain number of seconds.
|
||||||
lst.stop = Halt execution of this processor.
|
lst.stop = Halt execution of this processor.
|
||||||
lst.lookup = Look up an item/liquid/unit/block type by ID.\nTotal counts of each type can be accessed with:\n[accent]@unitCount[] / [accent]@itemCount[] / [accent]@liquidCount[] / [accent]@blockCount[]
|
lst.lookup = Look up an item/liquid/unit/block type by ID.\nTotal counts of each type can be accessed with:\n[accent]@unitCount[] / [accent]@itemCount[] / [accent]@liquidCount[] / [accent]@blockCount[]\nFor the inverse operation, sense [accent]@id[] of the object.
|
||||||
lst.jump = Conditionally jump to another statement.
|
lst.jump = Conditionally jump to another statement.
|
||||||
lst.unitbind = Bind to the next unit of a type, and store it in [accent]@unit[].
|
lst.unitbind = Bind to the next unit of a type, and store it in [accent]@unit[].
|
||||||
lst.unitcontrol = Control the currently bound unit.
|
lst.unitcontrol = Control the currently bound unit.
|
||||||
@@ -2258,6 +2266,8 @@ 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.
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
lst.effect = Create a particle effect.
|
||||||
|
lst.sync = Sync a variable across the network.\nLimited to 20 times a second per variable.
|
||||||
|
|
||||||
logic.nounitbuild = [red]Unit building logic is not allowed here.
|
logic.nounitbuild = [red]Unit building logic is not allowed here.
|
||||||
|
|
||||||
@@ -2273,6 +2283,7 @@ laccess.dead = Whether a unit/building is dead or no longer valid.
|
|||||||
laccess.controlled = Returns:\n[accent]@ctrlProcessor[] if unit controller is processor\n[accent]@ctrlPlayer[] if unit/building controller is player\n[accent]@ctrlCommand[] if unit controller is a player command\nOtherwise, 0.
|
laccess.controlled = Returns:\n[accent]@ctrlProcessor[] if unit controller is processor\n[accent]@ctrlPlayer[] if unit/building controller is player\n[accent]@ctrlCommand[] if unit controller is a player command\nOtherwise, 0.
|
||||||
laccess.progress = Action progress, 0 to 1.\nReturns production, turret reload or construction progress.
|
laccess.progress = Action progress, 0 to 1.\nReturns production, turret reload or construction progress.
|
||||||
laccess.speed = Top speed of a unit, in tiles/sec.
|
laccess.speed = Top speed of a unit, in tiles/sec.
|
||||||
|
laccess.id = ID of a unit/block/item/liquid.\nThis is the inverse of the lookup operation.
|
||||||
|
|
||||||
lcategory.unknown = Unknown
|
lcategory.unknown = Unknown
|
||||||
lcategory.unknown.description = Uncategorized instructions.
|
lcategory.unknown.description = Uncategorized instructions.
|
||||||
@@ -2394,6 +2405,7 @@ lenum.unbind = Completely disable logic control.\nResume standard AI.
|
|||||||
lenum.move = Move to exact position.
|
lenum.move = Move to exact position.
|
||||||
lenum.approach = Approach a position with a radius.
|
lenum.approach = Approach a position with a radius.
|
||||||
lenum.pathfind = Pathfind to the specified position.
|
lenum.pathfind = Pathfind to the specified position.
|
||||||
|
lenum.autopathfind = Automatically pathfinds to the nearest enemy core or drop point.\nThis is the same as standard wave enemy pathfinding.
|
||||||
lenum.target = Shoot a position.
|
lenum.target = Shoot a position.
|
||||||
lenum.targetp = Shoot a target with velocity prediction.
|
lenum.targetp = Shoot a target with velocity prediction.
|
||||||
lenum.itemdrop = Drop an item.
|
lenum.itemdrop = Drop an item.
|
||||||
@@ -2407,8 +2419,3 @@ lenum.build = Build a structure.
|
|||||||
lenum.getblock = Fetch a building, floor and type at coordinates.\nUnit must be in range of position.\nSolid non-buildings will have the type [accent]@solid[].
|
lenum.getblock = Fetch a building, floor and type at coordinates.\nUnit must be in range of position.\nSolid non-buildings will have the type [accent]@solid[].
|
||||||
lenum.within = Check if unit is near a position.
|
lenum.within = Check if unit is near a position.
|
||||||
lenum.boost = Start/stop boosting.
|
lenum.boost = Start/stop boosting.
|
||||||
|
|
||||||
#Don't translate these yet!
|
|
||||||
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
|
||||||
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
|
||||||
|
|
||||||
|
|||||||
@@ -250,6 +250,7 @@ trace = Адсочваць гульца
|
|||||||
trace.playername = Iмя гульца: [accent]{0}
|
trace.playername = Iмя гульца: [accent]{0}
|
||||||
trace.ip = IP: [accent]{0}
|
trace.ip = IP: [accent]{0}
|
||||||
trace.id = ID: [accent]{0}
|
trace.id = ID: [accent]{0}
|
||||||
|
trace.language = Language: [accent]{0}
|
||||||
trace.mobile = Мабільны кліент: [accent]{0}
|
trace.mobile = Мабільны кліент: [accent]{0}
|
||||||
trace.modclient = Карыстальніцкі кліент: [accent]{0}
|
trace.modclient = Карыстальніцкі кліент: [accent]{0}
|
||||||
trace.times.joined = Разоў Падлучана: [accent]{0}
|
trace.times.joined = Разоў Падлучана: [accent]{0}
|
||||||
@@ -938,12 +939,15 @@ stat.healing = Аднаўленне
|
|||||||
ability.forcefield = Сіловое Поле
|
ability.forcefield = Сіловое Поле
|
||||||
ability.repairfield = Поле Рамонту
|
ability.repairfield = Поле Рамонту
|
||||||
ability.statusfield = Поле Статусу
|
ability.statusfield = Поле Статусу
|
||||||
ability.unitspawn = {0} Завод
|
ability.unitspawn = Завод
|
||||||
ability.shieldregenfield = Васстанўляюяае Поле Шчыта
|
ability.shieldregenfield = Васстанўляюяае Поле Шчыта
|
||||||
ability.movelightning = Рух Маланкі
|
ability.movelightning = Рух Маланкі
|
||||||
ability.shieldarc = Шчытавая Дуга
|
ability.shieldarc = Шчытавая Дуга
|
||||||
ability.suppressionfield = Regen Suppression Field
|
ability.suppressionfield = Regen Suppression Field
|
||||||
ability.energyfield = Энэргетычнае Поле: [accent]{0}[] пашкоджанні ~ [accent]{1}[] блокі / [accent]{2}[] целі
|
ability.energyfield = Энэргетычнае Поле
|
||||||
|
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}%
|
||||||
|
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0}
|
||||||
|
ability.regen = Regeneration
|
||||||
bar.onlycoredeposit = Даступны Толькі Перанос Рэсурсаў У Ядро
|
bar.onlycoredeposit = Даступны Толькі Перанос Рэсурсаў У Ядро
|
||||||
|
|
||||||
bar.drilltierreq = Патрабуецца свідар лепей
|
bar.drilltierreq = Патрабуецца свідар лепей
|
||||||
@@ -1084,6 +1088,7 @@ setting.position.name = Адлюстроўваць каардынаты гуль
|
|||||||
setting.mouseposition.name = Паказаць Пазіцыю Мышы
|
setting.mouseposition.name = Паказаць Пазіцыю Мышы
|
||||||
setting.musicvol.name = Гучнасць музыкі
|
setting.musicvol.name = Гучнасць музыкі
|
||||||
setting.atmosphere.name = Паказаць Атмасферу Планеты
|
setting.atmosphere.name = Паказаць Атмасферу Планеты
|
||||||
|
setting.drawlight.name = Draw Darkness/Lighting
|
||||||
setting.ambientvol.name = Гучнасць акружэння
|
setting.ambientvol.name = Гучнасць акружэння
|
||||||
setting.mutemusic.name = Заглушыць музыку
|
setting.mutemusic.name = Заглушыць музыку
|
||||||
setting.sfxvol.name = Гучнасць эфектаў
|
setting.sfxvol.name = Гучнасць эфектаў
|
||||||
@@ -1831,6 +1836,9 @@ 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.
|
||||||
|
onset.commandmode = Зажміце [accent]shift[] каб увайсці ў [accent]рэжым камандавання[].\n[accent]Левая Кнопка Мышкі і працягнуць[] каб выбраць адзінкі.\n[accent]Правая Кнопка Мышкі[] каб камандаваць выбранымі адзінкамі каб рухаць або атакаваць.
|
||||||
|
onset.commandmode.mobile = Націсніце на кнопку [accent]Камандавання[] каб увайсці ў [accent]рэжым камандавання[].\nУтрамайце палец, пасля [accent]правесці[] да выбраных адзінак.\n[accent]Націсніце[] каб камандаваць выбранымі адзінкамі каб рухаць або атакаваць.
|
||||||
|
aegis.tungsten = Tungsten can be mined using an [accent]impact drill[].\nThis structure requires [accent]water[] and [accent]power[].
|
||||||
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)
|
||||||
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
||||||
split.acquire = You must acquire some tungsten to build units.
|
split.acquire = You must acquire some tungsten to build units.
|
||||||
@@ -2210,6 +2218,8 @@ 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.
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
lst.effect = Create a particle effect.
|
||||||
|
lst.sync = Sync a variable across the network.\nOnly invoked 10 times a second at most.
|
||||||
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.
|
||||||
@@ -2222,6 +2232,7 @@ laccess.dead = Whether a unit/building is dead or no longer valid.
|
|||||||
laccess.controlled = Returns:\n[accent]@ctrlProcessor[] if unit controller is processor\n[accent]@ctrlPlayer[] if unit/building controller is player\n[accent]@ctrlFormation[] if unit is in formation\nOtherwise, 0.
|
laccess.controlled = Returns:\n[accent]@ctrlProcessor[] if unit controller is processor\n[accent]@ctrlPlayer[] if unit/building controller is player\n[accent]@ctrlFormation[] if unit is in formation\nOtherwise, 0.
|
||||||
laccess.progress = Action progress, 0 to 1.\nReturns production, turret reload or construction progress.
|
laccess.progress = Action progress, 0 to 1.\nReturns production, turret reload or construction progress.
|
||||||
laccess.speed = Top speed of a unit, in tiles/sec.
|
laccess.speed = Top speed of a unit, in tiles/sec.
|
||||||
|
laccess.id = ID of a unit/block/item/liquid.\nThis is the inverse of the lookup operation.
|
||||||
lcategory.unknown = Unknown
|
lcategory.unknown = Unknown
|
||||||
lcategory.unknown.description = Uncategorized instructions.
|
lcategory.unknown.description = Uncategorized instructions.
|
||||||
lcategory.io = Input & Output
|
lcategory.io = Input & Output
|
||||||
@@ -2326,6 +2337,7 @@ lenum.unbind = Поўнасццю адключыць кантраляванне
|
|||||||
lenum.move = Рухацца да канкрэтнай каардынаты.
|
lenum.move = Рухацца да канкрэтнай каардынаты.
|
||||||
lenum.approach = Падысці да каардынаты з радыюсам.
|
lenum.approach = Падысці да каардынаты з радыюсам.
|
||||||
lenum.pathfind = Найці шлях да варожай кропкі з'яўлення.
|
lenum.pathfind = Найці шлях да варожай кропкі з'яўлення.
|
||||||
|
lenum.autopathfind = Automatically pathfinds to the nearest enemy core or drop point.\nThis is the same as standard wave enemy pathfinding.
|
||||||
lenum.target = Атакаваць каардынату.
|
lenum.target = Атакаваць каардынату.
|
||||||
lenum.targetp = Атакаваць мэту з прадвылічэннем скорасці.
|
lenum.targetp = Атакаваць мэту з прадвылічэннем скорасці.
|
||||||
lenum.itemdrop = Апусціць прадмет.
|
lenum.itemdrop = Апусціць прадмет.
|
||||||
@@ -2339,5 +2351,3 @@ lenum.build = Пабудаваць структуру.
|
|||||||
lenum.getblock = Атрымаць будынак і яго тып у каардынатах.\nАдзінка павінна быць у дыяпазоне ад каардынат.\nЦвердыя не будынкі павінны мець тып [accent]@solid[].
|
lenum.getblock = Атрымаць будынак і яго тып у каардынатах.\nАдзінка павінна быць у дыяпазоне ад каардынат.\nЦвердыя не будынкі павінны мець тып [accent]@solid[].
|
||||||
lenum.within = Правярае калі адзінка знаходзіцца каля каардынат.
|
lenum.within = Правярае калі адзінка знаходзіцца каля каардынат.
|
||||||
lenum.boost = Пачаць/перастаць узлятаць.
|
lenum.boost = Пачаць/перастаць узлятаць.
|
||||||
onset.commandmode = Зажміце [accent]shift[] каб увайсці ў [accent]рэжым камандавання[].\n[accent]Левая Кнопка Мышкі і працягнуць[] каб выбраць адзінкі.\n[accent]Правая Кнопка Мышкі[] каб камандаваць выбранымі адзінкамі каб рухаць або атакаваць.
|
|
||||||
onset.commandmode.mobile = Націсніце на кнопку [accent]Камандавання[] каб увайсці ў [accent]рэжым камандавання[].\nУтрамайце палец, пасля [accent]правесці[] да выбраных адзінак.\n[accent]Націсніце[] каб камандаваць выбранымі адзінкамі каб рухаць або атакаваць.
|
|
||||||
|
|||||||
@@ -255,6 +255,7 @@ trace = Проследи Играч
|
|||||||
trace.playername = Име на играча: [accent]{0}
|
trace.playername = Име на играча: [accent]{0}
|
||||||
trace.ip = IP: [accent]{0}
|
trace.ip = IP: [accent]{0}
|
||||||
trace.id = ID: [accent]{0}
|
trace.id = ID: [accent]{0}
|
||||||
|
trace.language = Language: [accent]{0}
|
||||||
trace.mobile = Мобилен Клиент: [accent]{0}
|
trace.mobile = Мобилен Клиент: [accent]{0}
|
||||||
trace.modclient = Модифициран Клиент: [accent]{0}
|
trace.modclient = Модифициран Клиент: [accent]{0}
|
||||||
trace.times.joined = Пъти участвал в игра: [accent]{0}
|
trace.times.joined = Пъти участвал в игра: [accent]{0}
|
||||||
@@ -949,12 +950,16 @@ stat.healing = Healing
|
|||||||
ability.forcefield = Енергийно Поле
|
ability.forcefield = Енергийно Поле
|
||||||
ability.repairfield = Възстановяващо Поле
|
ability.repairfield = Възстановяващо Поле
|
||||||
ability.statusfield = Подсилващо Поле
|
ability.statusfield = Подсилващо Поле
|
||||||
ability.unitspawn = {0} Factory
|
ability.unitspawn = Factory
|
||||||
ability.shieldregenfield = Възстановяващо броня Поле
|
ability.shieldregenfield = Възстановяващо броня Поле
|
||||||
ability.movelightning = Подвижна светкавица
|
ability.movelightning = Подвижна светкавица
|
||||||
ability.shieldarc = Shield Arc
|
ability.shieldarc = Shield Arc
|
||||||
ability.suppressionfield = Regen Suppression Field
|
ability.suppressionfield = Regen Suppression Field
|
||||||
ability.energyfield = Energy Field: [accent]{0}[] damage ~ [accent]{1}[] blocks / [accent]{2}[] targets
|
ability.energyfield = Energy Field
|
||||||
|
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}%
|
||||||
|
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0}
|
||||||
|
ability.regen = Regeneration
|
||||||
|
|
||||||
bar.onlycoredeposit = Only Core Depositing Allowed
|
bar.onlycoredeposit = Only Core Depositing Allowed
|
||||||
|
|
||||||
bar.drilltierreq = Необходимо е по-добро Свредло
|
bar.drilltierreq = Необходимо е по-добро Свредло
|
||||||
@@ -1095,6 +1100,7 @@ setting.position.name = Показвай Позиция на Играч
|
|||||||
setting.mouseposition.name = Show Mouse Position
|
setting.mouseposition.name = Show Mouse Position
|
||||||
setting.musicvol.name = Сила на Звука
|
setting.musicvol.name = Сила на Звука
|
||||||
setting.atmosphere.name = Показвай Атмосферата на Планетата
|
setting.atmosphere.name = Показвай Атмосферата на Планетата
|
||||||
|
setting.drawlight.name = Draw Darkness/Lighting
|
||||||
setting.ambientvol.name = Сила на Звука на Околната Среда
|
setting.ambientvol.name = Сила на Звука на Околната Среда
|
||||||
setting.mutemusic.name = Заглуши Музиката
|
setting.mutemusic.name = Заглуши Музиката
|
||||||
setting.sfxvol.name = Сила на Звуковите Ефекти
|
setting.sfxvol.name = Сила на Звуковите Ефекти
|
||||||
@@ -1843,6 +1849,9 @@ 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.
|
||||||
|
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
||||||
|
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
||||||
|
aegis.tungsten = Tungsten can be mined using an [accent]impact drill[].\nThis structure requires [accent]water[] and [accent]power[].
|
||||||
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)
|
||||||
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
||||||
split.acquire = You must acquire some tungsten to build units.
|
split.acquire = You must acquire some tungsten to build units.
|
||||||
@@ -2224,6 +2233,8 @@ 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.
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
lst.effect = Create a particle effect.
|
||||||
|
lst.sync = Sync a variable across the network.\nOnly invoked 10 times a second at most.
|
||||||
|
|
||||||
logic.nounitbuild = [red]Действия за строене на единици не са позволени тук.
|
logic.nounitbuild = [red]Действия за строене на единици не са позволени тук.
|
||||||
|
|
||||||
@@ -2239,6 +2250,7 @@ laccess.dead = Дали дадена единица/сграда е била у
|
|||||||
laccess.controlled = Връща:\n[accent]@ctrlProcessor[] ако единицата е контролирана от процесор\n[accent]@ctrlPlayer[] ако единицата/сградата е контролирана от играч\n[accent]@ctrlFormation[] ако единицата участва във формация\nИначе, връща 0.
|
laccess.controlled = Връща:\n[accent]@ctrlProcessor[] ако единицата е контролирана от процесор\n[accent]@ctrlPlayer[] ако единицата/сградата е контролирана от играч\n[accent]@ctrlFormation[] ако единицата участва във формация\nИначе, връща 0.
|
||||||
laccess.progress = Action progress, 0 to 1.\nReturns production, turret reload or construction progress.
|
laccess.progress = Action progress, 0 to 1.\nReturns production, turret reload or construction progress.
|
||||||
laccess.speed = Top speed of a unit, in tiles/sec.
|
laccess.speed = Top speed of a unit, in tiles/sec.
|
||||||
|
laccess.id = ID of a unit/block/item/liquid.\nThis is the inverse of the lookup operation.
|
||||||
lcategory.unknown = Unknown
|
lcategory.unknown = Unknown
|
||||||
lcategory.unknown.description = Uncategorized instructions.
|
lcategory.unknown.description = Uncategorized instructions.
|
||||||
lcategory.io = Input & Output
|
lcategory.io = Input & Output
|
||||||
@@ -2356,6 +2368,7 @@ lenum.unbind = Completely disable logic control.\nResume standard AI.
|
|||||||
lenum.move = Премести се на конкретна позиция.
|
lenum.move = Премести се на конкретна позиция.
|
||||||
lenum.approach = Доближи се до позиция на определено разстояние.
|
lenum.approach = Доближи се до позиция на определено разстояние.
|
||||||
lenum.pathfind = Намери пътека до вражеската начална точка.
|
lenum.pathfind = Намери пътека до вражеската начална точка.
|
||||||
|
lenum.autopathfind = Automatically pathfinds to the nearest enemy core or drop point.\nThis is the same as standard wave enemy pathfinding.
|
||||||
lenum.target = Стреляй към позиция.
|
lenum.target = Стреляй към позиция.
|
||||||
lenum.targetp = Стреляй към цел, изчислявайки нейната скорост.
|
lenum.targetp = Стреляй към цел, изчислявайки нейната скорост.
|
||||||
lenum.itemdrop = Разтовари предмет(и).
|
lenum.itemdrop = Разтовари предмет(и).
|
||||||
@@ -2369,5 +2382,3 @@ lenum.build = Построй структура.
|
|||||||
lenum.getblock = Преверете типът на постройката на дадени координати.\nПозицията трябва да е в обхвата на единицата.\nСолидни не-сгради ще имат типа [accent]@solid[].
|
lenum.getblock = Преверете типът на постройката на дадени координати.\nПозицията трябва да е в обхвата на единицата.\nСолидни не-сгради ще имат типа [accent]@solid[].
|
||||||
lenum.within = Проверете дали дадена позиция е в обхват на единицата.
|
lenum.within = Проверете дали дадена позиция е в обхват на единицата.
|
||||||
lenum.boost = Започни/Спри ускорението.
|
lenum.boost = Започни/Спри ускорението.
|
||||||
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
|
||||||
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
|
||||||
|
|||||||
@@ -57,7 +57,7 @@ mods.browser.sortstars = Ordena per valoració
|
|||||||
schematic = Esquema
|
schematic = Esquema
|
||||||
schematic.add = Desa l’esquema…
|
schematic.add = Desa l’esquema…
|
||||||
schematics = Esquemes
|
schematics = Esquemes
|
||||||
schematic.search = Search schematics...
|
schematic.search = Cerca esquemes...
|
||||||
schematic.replace = Ja hi ha un esquema amb aquest nom. Voleu reemplaçar-lo?
|
schematic.replace = Ja hi ha un esquema amb aquest nom. Voleu reemplaçar-lo?
|
||||||
schematic.exists = Ja hi ha un esquema amb aquest nom.
|
schematic.exists = Ja hi ha un esquema amb aquest nom.
|
||||||
schematic.import = Importa un esquema
|
schematic.import = Importa un esquema
|
||||||
@@ -70,7 +70,7 @@ schematic.shareworkshop = Comparteix al Workshop de l’Steam
|
|||||||
schematic.flip = [accent][[{0}][]/[accent][[{1}][]: Dóna la volta a l’esquema
|
schematic.flip = [accent][[{0}][]/[accent][[{1}][]: Dóna la volta a l’esquema
|
||||||
schematic.saved = L’esquema s’ha desat.
|
schematic.saved = L’esquema s’ha desat.
|
||||||
schematic.delete.confirm = Aquest esquema s’esborrarà.
|
schematic.delete.confirm = Aquest esquema s’esborrarà.
|
||||||
schematic.edit = Edit Schematic
|
schematic.edit = Edita l’esquema
|
||||||
schematic.info = {0}×{1}, {2} blocs
|
schematic.info = {0}×{1}, {2} blocs
|
||||||
schematic.disabled = [scarlet]Els esquemes s’han desactivat.[]\nNo podeu fer servir esquemes en aquest [accent]mapa[] o [accent]servidor[].
|
schematic.disabled = [scarlet]Els esquemes s’han desactivat.[]\nNo podeu fer servir esquemes en aquest [accent]mapa[] o [accent]servidor[].
|
||||||
schematic.tags = Etiquetes:
|
schematic.tags = Etiquetes:
|
||||||
@@ -79,7 +79,7 @@ schematic.addtag = Afegeix una etiqueta
|
|||||||
schematic.texttag = Text de l’etiqueta
|
schematic.texttag = Text de l’etiqueta
|
||||||
schematic.icontag = Icona de l’etiqueta
|
schematic.icontag = Icona de l’etiqueta
|
||||||
schematic.renametag = Canvia el nom de l’etiqueta
|
schematic.renametag = Canvia el nom de l’etiqueta
|
||||||
schematic.tagged = {0} tagged
|
schematic.tagged = {0} d’etiquetades
|
||||||
schematic.tagdelconfirm = Voleu esborrar del tot aquesta etiqueta?
|
schematic.tagdelconfirm = Voleu esborrar del tot aquesta etiqueta?
|
||||||
schematic.tagexists = Aquesta etiqueta ja existeix.
|
schematic.tagexists = Aquesta etiqueta ja existeix.
|
||||||
|
|
||||||
@@ -255,18 +255,19 @@ trace = Rastreja un jugador
|
|||||||
trace.playername = Nom del jugador: [accent]{0}
|
trace.playername = Nom del jugador: [accent]{0}
|
||||||
trace.ip = IP: [accent]{0}
|
trace.ip = IP: [accent]{0}
|
||||||
trace.id = ID: [accent]{0}
|
trace.id = ID: [accent]{0}
|
||||||
|
trace.language = Language: [accent]{0}
|
||||||
trace.mobile = Client de mòbil: [accent]{0}
|
trace.mobile = Client de mòbil: [accent]{0}
|
||||||
trace.modclient = Client personalitzat: [accent]{0}
|
trace.modclient = Client personalitzat: [accent]{0}
|
||||||
trace.times.joined = S’ha unit [accent]{0}[] vegades.
|
trace.times.joined = S’ha unit [accent]{0}[] vegades.
|
||||||
trace.times.kicked = Ha estat expulsat [accent]{0}[] vegades.
|
trace.times.kicked = Ha estat expulsat [accent]{0}[] vegades.
|
||||||
trace.ips = IPs:
|
trace.ips = Direccions IP:
|
||||||
trace.names = Names:
|
trace.names = Noms:
|
||||||
invalidid = ID de client no vàlid! Envieu un informe d’error.
|
invalidid = ID de client no vàlid! Envieu un informe d’error.
|
||||||
player.ban = Ban
|
player.ban = Bandeja
|
||||||
player.kick = Kick
|
player.kick = Expulsa
|
||||||
player.trace = Trace
|
player.trace = Traça
|
||||||
player.admin = Toggle Admin
|
player.admin = Commuta d’admin
|
||||||
player.team = Change Team
|
player.team = Canvia l’equip
|
||||||
server.bans = Bandejaments
|
server.bans = Bandejaments
|
||||||
server.bans.none = No s’ha trobat cap jugador bandejat!
|
server.bans.none = No s’ha trobat cap jugador bandejat!
|
||||||
server.admins = Administradors
|
server.admins = Administradors
|
||||||
@@ -283,8 +284,8 @@ confirmkick = Esteu segur que voleu expulsar a «{0}[white]»?
|
|||||||
confirmunban = Esteu segur que voleu treure el bandeig a aquest jugador?
|
confirmunban = Esteu segur que voleu treure el bandeig a aquest jugador?
|
||||||
confirmadmin = Esteu segur que voleu fer administrador a «{0}[white]»?
|
confirmadmin = Esteu segur que voleu fer administrador a «{0}[white]»?
|
||||||
confirmunadmin = Esteu segur que voleu treure a «{0}[white]» els permisos d’administrador?
|
confirmunadmin = Esteu segur que voleu treure a «{0}[white]» els permisos d’administrador?
|
||||||
votekick.reason = Vote-Kick Reason
|
votekick.reason = Motiu per a la votació d’expulsió
|
||||||
votekick.reason.message = Are you sure you want to vote-kick "{0}[white]"?\nIf yes, please enter the reason:
|
votekick.reason.message = Esteu segur que voleu votar per a expulsar per votació a «{0}[white]»?\nSi és que sí, escriviu-ne el motiu:
|
||||||
joingame.title = Uneix-me a la partida
|
joingame.title = Uneix-me a la partida
|
||||||
joingame.ip = Direcció IP:
|
joingame.ip = Direcció IP:
|
||||||
disconnect = Desconnectat.
|
disconnect = Desconnectat.
|
||||||
@@ -302,7 +303,7 @@ server.invalidport = El número de port no és vàlid!
|
|||||||
server.error = [scarlet]S’ha produït un error mentre s’allotjava el servidor.
|
server.error = [scarlet]S’ha produït un error mentre s’allotjava el servidor.
|
||||||
save.new = Desa en un fitxer nou
|
save.new = Desa en un fitxer nou
|
||||||
save.overwrite = Esteu segur que voleu sobreescriure\naquesta ranura de desades?
|
save.overwrite = Esteu segur que voleu sobreescriure\naquesta ranura de desades?
|
||||||
save.nocampaign = Individual save files from the campaign cannot be imported.
|
save.nocampaign = Els fitxers de desades individuals de la campanya no es poden importar.
|
||||||
overwrite = Sobreescriu
|
overwrite = Sobreescriu
|
||||||
save.none = No s’ha trobat cap partida desada!
|
save.none = No s’ha trobat cap partida desada!
|
||||||
savefail = No s’ha pogut desar la partida!
|
savefail = No s’ha pogut desar la partida!
|
||||||
@@ -468,8 +469,8 @@ waves.sort.reverse = Ordre invers
|
|||||||
waves.sort.begin = Comença
|
waves.sort.begin = Comença
|
||||||
waves.sort.health = Salut
|
waves.sort.health = Salut
|
||||||
waves.sort.type = Tipus
|
waves.sort.type = Tipus
|
||||||
waves.search = Search waves...
|
waves.search = Es busquen onades...
|
||||||
waves.filter = Unit Filter
|
waves.filter = Filtre d'unitats
|
||||||
waves.units.hide = Amaga-les totes
|
waves.units.hide = Amaga-les totes
|
||||||
waves.units.show = Mostra-les totes
|
waves.units.show = Mostra-les totes
|
||||||
|
|
||||||
@@ -542,8 +543,8 @@ toolmode.eraseores = Esborra els minerals
|
|||||||
toolmode.eraseores.description = Esborra només els minerals.
|
toolmode.eraseores.description = Esborra només els minerals.
|
||||||
toolmode.fillteams = Omple els equips
|
toolmode.fillteams = Omple els equips
|
||||||
toolmode.fillteams.description = Omple els equips en lloc dels blocs.
|
toolmode.fillteams.description = Omple els equips en lloc dels blocs.
|
||||||
toolmode.fillerase = Fill Erase
|
toolmode.fillerase = Esborra els del mateix tipus
|
||||||
toolmode.fillerase.description = Erase blocks of the same type.
|
toolmode.fillerase.description = Esborra els blocs que siguin del mateix tipus.
|
||||||
toolmode.drawteams = Dibuixa els equips
|
toolmode.drawteams = Dibuixa els equips
|
||||||
toolmode.drawteams.description = Dibuixa els equips en lloc de dibuixar blocs.
|
toolmode.drawteams.description = Dibuixa els equips en lloc de dibuixar blocs.
|
||||||
#unused
|
#unused
|
||||||
@@ -952,13 +953,16 @@ stat.healing = Reparador
|
|||||||
|
|
||||||
ability.forcefield = Camp de força
|
ability.forcefield = Camp de força
|
||||||
ability.repairfield = Repara el camp de força
|
ability.repairfield = Repara el camp de força
|
||||||
ability.statusfield = Estat del camp: {0}
|
ability.statusfield = Estat del camp
|
||||||
ability.unitspawn = Fàbrica de {0}
|
ability.unitspawn = Fàbrica
|
||||||
ability.shieldregenfield = Regenerador de camps de força
|
ability.shieldregenfield = Regenerador de camps de força
|
||||||
ability.movelightning = Moviment llampec
|
ability.movelightning = Moviment llampec
|
||||||
ability.shieldarc = Escut de descàrregues
|
ability.shieldarc = Escut de descàrregues
|
||||||
ability.suppressionfield = Regen Suppression Field
|
ability.suppressionfield = Regen Suppression Field
|
||||||
ability.energyfield = Camp de força: [accent]{0}[] de dany ~ [accent]{1}[] blocs / [accent]{2}[] objectius
|
ability.energyfield = Camp de força
|
||||||
|
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}%
|
||||||
|
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0}
|
||||||
|
ability.regen = Regeneration
|
||||||
|
|
||||||
bar.onlycoredeposit = Només es permet depositar al nucli.
|
bar.onlycoredeposit = Només es permet depositar al nucli.
|
||||||
bar.drilltierreq = Cal una perforadora millor.
|
bar.drilltierreq = Cal una perforadora millor.
|
||||||
@@ -1099,6 +1103,7 @@ setting.position.name = Mostra la posició del jugador
|
|||||||
setting.mouseposition.name = Mostra la posició del ratolí
|
setting.mouseposition.name = Mostra la posició del ratolí
|
||||||
setting.musicvol.name = Volum de la música
|
setting.musicvol.name = Volum de la música
|
||||||
setting.atmosphere.name = Mostra l’atmosfera del planeta
|
setting.atmosphere.name = Mostra l’atmosfera del planeta
|
||||||
|
setting.drawlight.name = Draw Darkness/Lighting
|
||||||
setting.ambientvol.name = Volum del so ambiental
|
setting.ambientvol.name = Volum del so ambiental
|
||||||
setting.mutemusic.name = Silencia la música
|
setting.mutemusic.name = Silencia la música
|
||||||
setting.sfxvol.name = Volums dels efectes de so
|
setting.sfxvol.name = Volums dels efectes de so
|
||||||
@@ -1113,7 +1118,7 @@ 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
|
||||||
setting.macnotch.name = Adaptar la interfície per mostrar el notch
|
setting.macnotch.name = Adapta la interfície per a mostrar el notch
|
||||||
setting.macnotch.description = Cal reiniciar perquè s’apliquin els canvis
|
setting.macnotch.description = Cal reiniciar perquè s’apliquin els canvis
|
||||||
steam.friendsonly = Només amics
|
steam.friendsonly = Només amics
|
||||||
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.
|
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.
|
||||||
@@ -1216,8 +1221,8 @@ rules.wavetimer = Temporitzador d’onades
|
|||||||
rules.wavesending = Enviament d’onades
|
rules.wavesending = Enviament d’onades
|
||||||
rules.waves = Onades
|
rules.waves = Onades
|
||||||
rules.attack = Mode d’atac
|
rules.attack = Mode d’atac
|
||||||
rules.buildai = Base Builder AI
|
rules.buildai = IA constructora de bases
|
||||||
rules.buildaitier = Builder AI Tier
|
rules.buildaitier = Nivell de construcció de la IA
|
||||||
rules.rtsai = IA avançada (RTS AI)
|
rules.rtsai = IA avançada (RTS AI)
|
||||||
rules.rtsminsquadsize = Mida mínima de l’esquadró
|
rules.rtsminsquadsize = Mida mínima de l’esquadró
|
||||||
rules.rtsmaxsquadsize = Mida màxima de l’esquadró
|
rules.rtsmaxsquadsize = Mida màxima de l’esquadró
|
||||||
@@ -1245,7 +1250,7 @@ rules.buildcostmultiplier = Multiplicador del cost de construcció
|
|||||||
rules.buildspeedmultiplier = Multiplicador de la velocitat de construcció
|
rules.buildspeedmultiplier = Multiplicador de la velocitat de construcció
|
||||||
rules.deconstructrefundmultiplier = Multiplicador dels elements recuperats per desmuntatge
|
rules.deconstructrefundmultiplier = Multiplicador dels elements recuperats per desmuntatge
|
||||||
rules.waitForWaveToEnd = Les onades esperen fins veure enemics
|
rules.waitForWaveToEnd = Les onades esperen fins veure enemics
|
||||||
rules.wavelimit = Map Ends After Wave
|
rules.wavelimit = El mapa acaba després de l’onada
|
||||||
rules.dropzoneradius = Radi de la zona d’aterratge:[lightgray] (caselles)
|
rules.dropzoneradius = Radi de la zona d’aterratge:[lightgray] (caselles)
|
||||||
rules.unitammo = Les unitats necessiten munició
|
rules.unitammo = Les unitats necessiten munició
|
||||||
rules.enemyteam = Equip enemic
|
rules.enemyteam = Equip enemic
|
||||||
@@ -1795,7 +1800,7 @@ hint.launch = Un cop s’han recollit prou recursos, podeu iniciar un llançamen
|
|||||||
hint.launch.mobile = Un cop s’han recollit prou recursos, podeu iniciar un llançament seleccionant un sector proper del \ue827 [accent]Mapa[] del \ue88c [accent]Menú[].
|
hint.launch.mobile = Un cop s’han recollit prou recursos, podeu iniciar un llançament seleccionant un sector proper del \ue827 [accent]Mapa[] del \ue88c [accent]Menú[].
|
||||||
hint.schematicSelect = Manteniu premuda la tecla [accent]F[] i arrossegueu per a seleccionar els blocs que vulgueu copiar i enganxar.\n\nFeu clic amb el [accent]botó del mig[] del ratolí per a copiar només un tipus de bloc.
|
hint.schematicSelect = Manteniu premuda la tecla [accent]F[] i arrossegueu per a seleccionar els blocs que vulgueu copiar i enganxar.\n\nFeu clic amb el [accent]botó del mig[] del ratolí per a copiar només un tipus de bloc.
|
||||||
hint.rebuildSelect = Manteniu premuda la tecla [accent][[B][] i arrossegueu per a seleccionar els plànols dels blocs destruïts.\nAixí, es podran reconstruir automàticament.
|
hint.rebuildSelect = Manteniu premuda la tecla [accent][[B][] i arrossegueu per a seleccionar els plànols dels blocs destruïts.\nAixí, es podran reconstruir automàticament.
|
||||||
hint.rebuildSelect.mobile = Select the \ue874 copy button, then tap the \ue80f rebuild button and drag to select destroyed block plans.\nThis will rebuild them automatically.
|
hint.rebuildSelect.mobile = Seleccioneu el botó de copiar \ue874. Després, toqueu el botó de reconstrucció \ue80f i arrossegueu per a triar quins blocs voleu que es reconstrueixin.\nAixò farà que es reconstrueixin de manera automàtica.
|
||||||
hint.conveyorPathfind = Manteniu premuda la tecla [accent]ControlEsquerra[] i arrossegueu les cintes per a generar un camí automàticament.
|
hint.conveyorPathfind = Manteniu premuda la tecla [accent]ControlEsquerra[] i arrossegueu les cintes per a generar un camí automàticament.
|
||||||
hint.conveyorPathfind.mobile = Activeu el \ue844 [accent]mode diagonal[] i arrossegueu les cintes per a generar un camí automàticament.
|
hint.conveyorPathfind.mobile = Activeu el \ue844 [accent]mode diagonal[] i arrossegueu les cintes per a generar un camí automàticament.
|
||||||
hint.boost = Manteniu premuda la tecla [accent]ControlEsquerra[] per a sobrevolar els obstacles amb la unitat actual.\n\nNomés algunes unitats terrestres tenen elevadors per a poder-ho fer.
|
hint.boost = Manteniu premuda la tecla [accent]ControlEsquerra[] per a sobrevolar els obstacles amb la unitat actual.\n\nNomés algunes unitats terrestres tenen elevadors per a poder-ho fer.
|
||||||
@@ -1853,6 +1858,9 @@ onset.enemies = S’apropa un enemic. Prepareu la defensa.
|
|||||||
onset.attack = L’enemic és vulnerable. Contraataqueu.
|
onset.attack = L’enemic és vulnerable. Contraataqueu.
|
||||||
onset.cores = Els nuclis nous es poden construir en [accent]caselles de nucli[].\nEls nuclis nous funcionen com a bases i comparteixen un inventari de recursos amb altres nuclis.\nConstruïu un \uf725 nucli.
|
onset.cores = Els nuclis nous es poden construir en [accent]caselles de nucli[].\nEls nuclis nous funcionen com a bases i comparteixen un inventari de recursos amb altres nuclis.\nConstruïu un \uf725 nucli.
|
||||||
onset.detect = L’enemic us detectarà d’aquí 2 minuts.\nEstabliu les defenses i les explotacions mineres i de producció.
|
onset.detect = L’enemic us detectarà d’aquí 2 minuts.\nEstabliu les defenses i les explotacions mineres i de producció.
|
||||||
|
onset.commandmode = Mantingueu premuda [accent]Maj.[] per a entrar al [accent]mode de comandament[].\n[accent]Feu clic amb el botó esquerre i arrossegueu[] per a seleccionar unitats.\n[accent]Feu clic amb el botó dret[] per a ordenar a les unitats seleccionades que ataquin o que es moguin.
|
||||||
|
onset.commandmode.mobile = Premeu el [accent]botó de comandament[] per a entrar al [accent]mode de comandament[].\nPremeu i [accent]arrossegueu[] per a seleccionar unitats.\n[accent]Toqueu[] per a ordenar a les unitats seleccionades que ataquin o que es moguin.
|
||||||
|
aegis.tungsten = Tungsten can be mined using an [accent]impact drill[].\nThis structure requires [accent]water[] and [accent]power[].
|
||||||
split.pickup = La unitat nucli pot recollir alguns blocs.\nRecolliu aquest [accent]contenidor[] i poseu-lo al [accent]transportador de blocs a distància[].\n(Les tecles per defecte són [ i ] per a recollir i deixar).
|
split.pickup = La unitat nucli pot recollir alguns blocs.\nRecolliu aquest [accent]contenidor[] i poseu-lo al [accent]transportador de blocs a distància[].\n(Les tecles per defecte són [ i ] per a recollir i deixar).
|
||||||
split.pickup.mobile = La unitat nucli pot recollir alguns blocs.\nRecolliu aquest [accent]contenidor[] i poseu-lo al [accent]transportador de blocs a distància[].\n(Per a deixar o recollir alguna cosa, premeu-la uns segons).
|
split.pickup.mobile = La unitat nucli pot recollir alguns blocs.\nRecolliu aquest [accent]contenidor[] i poseu-lo al [accent]transportador de blocs a distància[].\n(Per a deixar o recollir alguna cosa, premeu-la uns segons).
|
||||||
split.acquire = Heu d’aconseguir una mica de tungstè per a construir unitats.
|
split.acquire = Heu d’aconseguir una mica de tungstè per a construir unitats.
|
||||||
@@ -2235,6 +2243,8 @@ 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.
|
lst.setprop = Estableix una propietat d’una unitat o estructura.
|
||||||
|
lst.effect = Create a particle effect.
|
||||||
|
lst.sync = Sync a variable across the network.\nOnly invoked 10 times a second at most.
|
||||||
|
|
||||||
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.
|
||||||
|
|
||||||
@@ -2250,6 +2260,7 @@ laccess.dead = Retorna si una unitat o bloc està destruïda o si ja no és vàl
|
|||||||
laccess.controlled = Returna:\n[accent]@ctrlProcessor[] si el controlador de la unitat és un processador;\n[accent]@ctrlPlayer[] si el controlador de la unitat és un jugador;\n[accent]@ctrlCommand[] si el controlador és un comandament del jugador;\naltrament, és 0.
|
laccess.controlled = Returna:\n[accent]@ctrlProcessor[] si el controlador de la unitat és un processador;\n[accent]@ctrlPlayer[] si el controlador de la unitat és un jugador;\n[accent]@ctrlCommand[] si el controlador és un comandament del jugador;\naltrament, és 0.
|
||||||
laccess.progress = Progrés de l’acció, entre 0 i 1.\nRetorna la producció, la recàrrega de la torreta o el progrés de la construcció.
|
laccess.progress = Progrés de l’acció, entre 0 i 1.\nRetorna la producció, la recàrrega de la torreta o el progrés de la construcció.
|
||||||
laccess.speed = Velocitat màxima de la unitat, en caselles/s.
|
laccess.speed = Velocitat màxima de la unitat, en caselles/s.
|
||||||
|
laccess.id = ID of a unit/block/item/liquid.\nThis is the inverse of the lookup operation.
|
||||||
lcategory.unknown = Desconegut
|
lcategory.unknown = Desconegut
|
||||||
lcategory.unknown.description = Instruccions sense categoria.
|
lcategory.unknown.description = Instruccions sense categoria.
|
||||||
lcategory.io = Entrada i sortida
|
lcategory.io = Entrada i sortida
|
||||||
@@ -2295,7 +2306,7 @@ lenum.xor = Operació lògica XOR bit a bit.
|
|||||||
lenum.min = Mínim de dos nombres.
|
lenum.min = Mínim de dos nombres.
|
||||||
lenum.max = Màxim de dos nombres.
|
lenum.max = Màxim de dos nombres.
|
||||||
lenum.angle = Angle del vector en graus.
|
lenum.angle = Angle del vector en graus.
|
||||||
lenum.anglediff = Absolute distance between two angles in degrees.
|
lenum.anglediff = Distància absoluta entre dos angles en graus.
|
||||||
lenum.len = Llargada (mòdul) del vector.
|
lenum.len = Llargada (mòdul) del vector.
|
||||||
|
|
||||||
lenum.sin = Sinus de l’angle (en graus).
|
lenum.sin = Sinus de l’angle (en graus).
|
||||||
@@ -2370,6 +2381,7 @@ lenum.unbind = Desactiva del tot el control lògic.\nContinua amb la IA estànda
|
|||||||
lenum.move = Mou a una posició exacta.
|
lenum.move = Mou a una posició exacta.
|
||||||
lenum.approach = Aproxima a una zona determinada amb una posició i un radi.
|
lenum.approach = Aproxima a una zona determinada amb una posició i un radi.
|
||||||
lenum.pathfind = Troba un camí i segueix una ruta fins al punt d’aparició d’enemics.
|
lenum.pathfind = Troba un camí i segueix una ruta fins al punt d’aparició d’enemics.
|
||||||
|
lenum.autopathfind = Automatically pathfinds to the nearest enemy core or drop point.\nThis is the same as standard wave enemy pathfinding.
|
||||||
lenum.target = Dispara a una posició.
|
lenum.target = Dispara a una posició.
|
||||||
lenum.targetp = Dispara a un objectiu tenint en compte la seva velocitat a l’hora d’apuntar.
|
lenum.targetp = Dispara a un objectiu tenint en compte la seva velocitat a l’hora d’apuntar.
|
||||||
lenum.itemdrop = Deixa un element.
|
lenum.itemdrop = Deixa un element.
|
||||||
@@ -2383,5 +2395,3 @@ lenum.build = Construeix una estructura.
|
|||||||
lenum.getblock = Obté un bloc i el seu tipus a les coordenades indicades.\nLa posició escollida ha d’estar a l’abast de la unitat.\nEls blocs que no són construccions tindran el tipus [accent]@solid[].
|
lenum.getblock = Obté un bloc i el seu tipus a les coordenades indicades.\nLa posició escollida ha d’estar a l’abast de la unitat.\nEls blocs que no són construccions tindran el tipus [accent]@solid[].
|
||||||
lenum.within = Comprova si la unitat està a prop d’una posició.
|
lenum.within = Comprova si la unitat està a prop d’una posició.
|
||||||
lenum.boost = Inicia/Detén el vol.
|
lenum.boost = Inicia/Detén el vol.
|
||||||
onset.commandmode = Mantingueu premuda [accent]Maj.[] per a entrar al [accent]mode de comandament[].\n[accent]Feu clic amb el botó esquerre i arrossegueu[] per a seleccionar unitats.\n[accent]Feu clic amb el botó dret[] per a ordenar a les unitats seleccionades que ataquin o que es moguin.
|
|
||||||
onset.commandmode.mobile = Premeu el [accent]botó de comandament[] per a entrar al [accent]mode de comandament[].\nPremeu i [accent]arrossegueu[] per a seleccionar unitats.\n[accent]Toqueu[] per a ordenar a les unitats seleccionades que ataquin o que es moguin.
|
|
||||||
|
|||||||
@@ -255,6 +255,7 @@ trace = Vystopovat hráče
|
|||||||
trace.playername = Jméno hráče: [accent]{0}[]
|
trace.playername = Jméno hráče: [accent]{0}[]
|
||||||
trace.ip = Adresa IP: [accent]{0}[]
|
trace.ip = Adresa IP: [accent]{0}[]
|
||||||
trace.id = Unikátní ID: [accent]{0}[]
|
trace.id = Unikátní ID: [accent]{0}[]
|
||||||
|
trace.language = Language: [accent]{0}
|
||||||
trace.mobile = Mobilní klient hry: [accent]{0}[]
|
trace.mobile = Mobilní klient hry: [accent]{0}[]
|
||||||
trace.modclient = Upravený klient hry: [accent]{0}[]
|
trace.modclient = Upravený klient hry: [accent]{0}[]
|
||||||
trace.times.joined = Krát Připojen: [accent]{0}
|
trace.times.joined = Krát Připojen: [accent]{0}
|
||||||
@@ -950,12 +951,16 @@ stat.healing = Léčí se
|
|||||||
ability.forcefield = Silové pole
|
ability.forcefield = Silové pole
|
||||||
ability.repairfield = Opravit pole
|
ability.repairfield = Opravit pole
|
||||||
ability.statusfield = Stav pole
|
ability.statusfield = Stav pole
|
||||||
ability.unitspawn = {0} továrna
|
ability.unitspawn = továrna
|
||||||
ability.shieldregenfield = Silově opravné pole
|
ability.shieldregenfield = Silově opravné pole
|
||||||
ability.movelightning = Pohybující se blesk
|
ability.movelightning = Pohybující se blesk
|
||||||
ability.shieldarc = Štítovy Oblouk
|
ability.shieldarc = Štítovy Oblouk
|
||||||
ability.suppressionfield = Regen Suppression Field
|
ability.suppressionfield = Regen Suppression Field
|
||||||
ability.energyfield = Energetické pole: [accent]{0}[] poškození ~ [accent]{1}[] dlaždic / [accent]{2}[] cílu
|
ability.energyfield = Energetické pole
|
||||||
|
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}%
|
||||||
|
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0}
|
||||||
|
ability.regen = Regeneration
|
||||||
|
|
||||||
bar.onlycoredeposit = Pouze Ukládání do Jádra je povoleno
|
bar.onlycoredeposit = Pouze Ukládání do Jádra je povoleno
|
||||||
|
|
||||||
bar.drilltierreq = Je vyžadován lepší vrt
|
bar.drilltierreq = Je vyžadován lepší vrt
|
||||||
@@ -1096,6 +1101,7 @@ setting.position.name = Ukázat pozici hráče
|
|||||||
setting.mouseposition.name = Zobrazit Pozici Myši
|
setting.mouseposition.name = Zobrazit Pozici Myši
|
||||||
setting.musicvol.name = Hlasitost hudby
|
setting.musicvol.name = Hlasitost hudby
|
||||||
setting.atmosphere.name = Ukázat atmosféru planety
|
setting.atmosphere.name = Ukázat atmosféru planety
|
||||||
|
setting.drawlight.name = Draw Darkness/Lighting
|
||||||
setting.ambientvol.name = Hlasitost prostředí
|
setting.ambientvol.name = Hlasitost prostředí
|
||||||
setting.mutemusic.name = Ztišit hudbu
|
setting.mutemusic.name = Ztišit hudbu
|
||||||
setting.sfxvol.name = Hlasitost efektů
|
setting.sfxvol.name = Hlasitost efektů
|
||||||
@@ -1846,6 +1852,9 @@ 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.
|
||||||
|
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
||||||
|
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
||||||
|
aegis.tungsten = Tungsten can be mined using an [accent]impact drill[].\nThis structure requires [accent]water[] and [accent]power[].
|
||||||
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)
|
||||||
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
||||||
split.acquire = You must acquire some tungsten to build units.
|
split.acquire = You must acquire some tungsten to build units.
|
||||||
@@ -2228,6 +2237,8 @@ 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.
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
lst.effect = Create a particle effect.
|
||||||
|
lst.sync = Sync a variable across the network.\nOnly invoked 10 times a second at most.
|
||||||
|
|
||||||
logic.nounitbuild = [red]Stavba budov pomoci jednotek kontrolované procesorem neni povolené.
|
logic.nounitbuild = [red]Stavba budov pomoci jednotek kontrolované procesorem neni povolené.
|
||||||
|
|
||||||
@@ -2243,6 +2254,7 @@ laccess.dead = Zda jednotka/budova je mrtvá/zničená nebo již neplatná.
|
|||||||
laccess.controlled = Vrací:\n[accent]@ctrlProcessor[] pokud kontroler jednotky je procesor\n[accent]@ctrlPlayer[] pokud kontroloer jednotky/budovy je hráč\n[accent]@ctrlFormation[] pokud jednotka je ve formaci\nJiank, 0.
|
laccess.controlled = Vrací:\n[accent]@ctrlProcessor[] pokud kontroler jednotky je procesor\n[accent]@ctrlPlayer[] pokud kontroloer jednotky/budovy je hráč\n[accent]@ctrlFormation[] pokud jednotka je ve formaci\nJiank, 0.
|
||||||
laccess.progress = Průběh akce, 0 do 1.\nVrací průběh výroby, přebití věže nebo stavby.
|
laccess.progress = Průběh akce, 0 do 1.\nVrací průběh výroby, přebití věže nebo stavby.
|
||||||
laccess.speed = Top speed of a unit, in tiles/sec.
|
laccess.speed = Top speed of a unit, in tiles/sec.
|
||||||
|
laccess.id = ID of a unit/block/item/liquid.\nThis is the inverse of the lookup operation.
|
||||||
lcategory.unknown = Neznámé
|
lcategory.unknown = Neznámé
|
||||||
lcategory.unknown.description = Nezařazené instrukce.
|
lcategory.unknown.description = Nezařazené instrukce.
|
||||||
lcategory.io = Vstup a Výstup
|
lcategory.io = Vstup a Výstup
|
||||||
@@ -2363,6 +2375,7 @@ lenum.unbind = Completely disable logic control.\nResume standard AI.
|
|||||||
lenum.move = Pohnout se na určité místo.
|
lenum.move = Pohnout se na určité místo.
|
||||||
lenum.approach = Přiblížit se k určité pozici s určitou vzdálenosti.
|
lenum.approach = Přiblížit se k určité pozici s určitou vzdálenosti.
|
||||||
lenum.pathfind = Nalézt cestu k nepřátelskému spawnu/bodu zrození
|
lenum.pathfind = Nalézt cestu k nepřátelskému spawnu/bodu zrození
|
||||||
|
lenum.autopathfind = Automatically pathfinds to the nearest enemy core or drop point.\nThis is the same as standard wave enemy pathfinding.
|
||||||
lenum.target = Střelit na pozici.
|
lenum.target = Střelit na pozici.
|
||||||
lenum.targetp = Vystřelí na jednotku/budovu s rychlostní předpovědí
|
lenum.targetp = Vystřelí na jednotku/budovu s rychlostní předpovědí
|
||||||
lenum.itemdrop = Zahodit věc.
|
lenum.itemdrop = Zahodit věc.
|
||||||
@@ -2376,5 +2389,3 @@ lenum.build = Postavit strukturu.
|
|||||||
lenum.getblock = Získat budovu a typ na dané pozici.\nJednotka musí být v dosahu dané pozice.\nSolidní non-budovy budou mít typ [accent]@solid[].
|
lenum.getblock = Získat budovu a typ na dané pozici.\nJednotka musí být v dosahu dané pozice.\nSolidní non-budovy budou mít typ [accent]@solid[].
|
||||||
lenum.within = Zkontrolovat, jestli jednotka je blízko dané pozice.
|
lenum.within = Zkontrolovat, jestli jednotka je blízko dané pozice.
|
||||||
lenum.boost = Začít/Přestat posilovat.
|
lenum.boost = Začít/Přestat posilovat.
|
||||||
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
|
||||||
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
|
||||||
|
|||||||
@@ -251,6 +251,7 @@ trace = Følg spiller
|
|||||||
trace.playername = Spiller-navn: [accent]{0}
|
trace.playername = Spiller-navn: [accent]{0}
|
||||||
trace.ip = IP: [accent]{0}
|
trace.ip = IP: [accent]{0}
|
||||||
trace.id = Unik ID: [accent]{0}
|
trace.id = Unik ID: [accent]{0}
|
||||||
|
trace.language = Language: [accent]{0}
|
||||||
trace.mobile = Mobil client: [accent]{0}
|
trace.mobile = Mobil client: [accent]{0}
|
||||||
trace.modclient = Brugerdefineret klient: [accent]{0}
|
trace.modclient = Brugerdefineret klient: [accent]{0}
|
||||||
trace.times.joined = Times Joined: [accent]{0}
|
trace.times.joined = Times Joined: [accent]{0}
|
||||||
@@ -939,12 +940,16 @@ stat.healing = Healing
|
|||||||
ability.forcefield = Kraftfelt
|
ability.forcefield = Kraftfelt
|
||||||
ability.repairfield = Reparationsfelt
|
ability.repairfield = Reparationsfelt
|
||||||
ability.statusfield = Statusfelt
|
ability.statusfield = Statusfelt
|
||||||
ability.unitspawn = {0} Fabrik
|
ability.unitspawn = Fabrik
|
||||||
ability.shieldregenfield = Skjold-regenereringsfelt
|
ability.shieldregenfield = Skjold-regenereringsfelt
|
||||||
ability.movelightning = Movement Lightning
|
ability.movelightning = Movement Lightning
|
||||||
ability.shieldarc = Shield Arc
|
ability.shieldarc = Shield Arc
|
||||||
ability.suppressionfield = Regen Suppression Field
|
ability.suppressionfield = Regen Suppression Field
|
||||||
ability.energyfield = Energy Field: [accent]{0}[] damage ~ [accent]{1}[] blocks / [accent]{2}[] targets
|
ability.energyfield = Energy Field
|
||||||
|
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}%
|
||||||
|
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0}
|
||||||
|
ability.regen = Regeneration
|
||||||
|
|
||||||
bar.onlycoredeposit = Only Core Depositing Allowed
|
bar.onlycoredeposit = Only Core Depositing Allowed
|
||||||
|
|
||||||
bar.drilltierreq = Kræver bedre bor
|
bar.drilltierreq = Kræver bedre bor
|
||||||
@@ -1085,6 +1090,7 @@ setting.position.name = Vis spillerposition
|
|||||||
setting.mouseposition.name = Show Mouse Position
|
setting.mouseposition.name = Show Mouse Position
|
||||||
setting.musicvol.name = Musik-volumen
|
setting.musicvol.name = Musik-volumen
|
||||||
setting.atmosphere.name = Vis planet-atmosfære
|
setting.atmosphere.name = Vis planet-atmosfære
|
||||||
|
setting.drawlight.name = Draw Darkness/Lighting
|
||||||
setting.ambientvol.name = Stemningslyde-volumen
|
setting.ambientvol.name = Stemningslyde-volumen
|
||||||
setting.mutemusic.name = Forstum musik
|
setting.mutemusic.name = Forstum musik
|
||||||
setting.sfxvol.name = SFX-volumen
|
setting.sfxvol.name = SFX-volumen
|
||||||
@@ -1832,6 +1838,9 @@ 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.
|
||||||
|
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
||||||
|
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
||||||
|
aegis.tungsten = Tungsten can be mined using an [accent]impact drill[].\nThis structure requires [accent]water[] and [accent]power[].
|
||||||
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)
|
||||||
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
||||||
split.acquire = You must acquire some tungsten to build units.
|
split.acquire = You must acquire some tungsten to build units.
|
||||||
@@ -2209,6 +2218,8 @@ 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.
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
lst.effect = Create a particle effect.
|
||||||
|
lst.sync = Sync a variable across the network.\nOnly invoked 10 times a second at most.
|
||||||
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.
|
||||||
@@ -2221,6 +2232,7 @@ laccess.dead = Whether a unit/building is dead or no longer valid.
|
|||||||
laccess.controlled = Returns:\n[accent]@ctrlProcessor[] if unit controller is processor\n[accent]@ctrlPlayer[] if unit/building controller is player\n[accent]@ctrlFormation[] if unit is in formation\nOtherwise, 0.
|
laccess.controlled = Returns:\n[accent]@ctrlProcessor[] if unit controller is processor\n[accent]@ctrlPlayer[] if unit/building controller is player\n[accent]@ctrlFormation[] if unit is in formation\nOtherwise, 0.
|
||||||
laccess.progress = Action progress, 0 to 1.\nReturns production, turret reload or construction progress.
|
laccess.progress = Action progress, 0 to 1.\nReturns production, turret reload or construction progress.
|
||||||
laccess.speed = Top speed of a unit, in tiles/sec.
|
laccess.speed = Top speed of a unit, in tiles/sec.
|
||||||
|
laccess.id = ID of a unit/block/item/liquid.\nThis is the inverse of the lookup operation.
|
||||||
lcategory.unknown = Unknown
|
lcategory.unknown = Unknown
|
||||||
lcategory.unknown.description = Uncategorized instructions.
|
lcategory.unknown.description = Uncategorized instructions.
|
||||||
lcategory.io = Input & Output
|
lcategory.io = Input & Output
|
||||||
@@ -2325,6 +2337,7 @@ lenum.unbind = Completely disable logic control.\nResume standard AI.
|
|||||||
lenum.move = Move to exact position.
|
lenum.move = Move to exact position.
|
||||||
lenum.approach = Approach a position with a radius.
|
lenum.approach = Approach a position with a radius.
|
||||||
lenum.pathfind = Pathfind to the enemy spawn.
|
lenum.pathfind = Pathfind to the enemy spawn.
|
||||||
|
lenum.autopathfind = Automatically pathfinds to the nearest enemy core or drop point.\nThis is the same as standard wave enemy pathfinding.
|
||||||
lenum.target = Shoot a position.
|
lenum.target = Shoot a position.
|
||||||
lenum.targetp = Shoot a target with velocity prediction.
|
lenum.targetp = Shoot a target with velocity prediction.
|
||||||
lenum.itemdrop = Drop an item.
|
lenum.itemdrop = Drop an item.
|
||||||
@@ -2338,5 +2351,3 @@ lenum.build = Build a structure.
|
|||||||
lenum.getblock = Fetch a building and type at coordinates.\nUnit must be in range of position.\nSolid non-buildings will have the type [accent]@solid[].
|
lenum.getblock = Fetch a building and type at coordinates.\nUnit must be in range of position.\nSolid non-buildings will have the type [accent]@solid[].
|
||||||
lenum.within = Check if unit is near a position.
|
lenum.within = Check if unit is near a position.
|
||||||
lenum.boost = Start/stop boosting.
|
lenum.boost = Start/stop boosting.
|
||||||
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
|
||||||
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
|
||||||
|
|||||||
@@ -258,6 +258,7 @@ trace = Spieler verfolgen
|
|||||||
trace.playername = Spielername: [accent]{0}
|
trace.playername = Spielername: [accent]{0}
|
||||||
trace.ip = IP: [accent]{0}
|
trace.ip = IP: [accent]{0}
|
||||||
trace.id = ID: [accent]{0}
|
trace.id = ID: [accent]{0}
|
||||||
|
trace.language = Language: [accent]{0}
|
||||||
trace.mobile = Mobiler Client: [accent]{0}
|
trace.mobile = Mobiler Client: [accent]{0}
|
||||||
trace.modclient = Gemoddeter Client: [accent]{0}
|
trace.modclient = Gemoddeter Client: [accent]{0}
|
||||||
trace.times.joined = Beigetreten: [accent]{0}[] Mal
|
trace.times.joined = Beigetreten: [accent]{0}[] Mal
|
||||||
@@ -663,7 +664,7 @@ objective.build = [accent]Baue: [][lightgray]{0}[]x\n{1}[lightgray]{2}
|
|||||||
objective.buildunit = [accent]Baue Einheit: [][lightgray]{0}[]x\n{1}[lightgray]{2}
|
objective.buildunit = [accent]Baue Einheit: [][lightgray]{0}[]x\n{1}[lightgray]{2}
|
||||||
objective.destroyunits = [accent]Zerstöre: [][lightgray]{0}[]x Units
|
objective.destroyunits = [accent]Zerstöre: [][lightgray]{0}[]x Units
|
||||||
objective.enemiesapproaching = [accent]Gegner in [lightgray]{0}[]
|
objective.enemiesapproaching = [accent]Gegner in [lightgray]{0}[]
|
||||||
objective.enemyescelating = [accent]Gegnerische Lufteinheit-Produktion steigert sich in [lightgray]{0}[]
|
objective.enemyescelating = [accent]Gegnerische Einheit-Produktion steigert sich in [lightgray]{0}[]
|
||||||
objective.enemyairunits = [accent]Gegnerische Lufteinheit-Produktion startet in [lightgray]{0}[]
|
objective.enemyairunits = [accent]Gegnerische Lufteinheit-Produktion startet in [lightgray]{0}[]
|
||||||
objective.destroycore = [accent]Gegnerischen Kern zerstören
|
objective.destroycore = [accent]Gegnerischen Kern zerstören
|
||||||
objective.command = [accent]Einheiten Steuern
|
objective.command = [accent]Einheiten Steuern
|
||||||
@@ -961,13 +962,17 @@ stat.healing = Heilung
|
|||||||
|
|
||||||
ability.forcefield = Kraftfeld
|
ability.forcefield = Kraftfeld
|
||||||
ability.repairfield = Heilungsfeld
|
ability.repairfield = Heilungsfeld
|
||||||
ability.statusfield = {0} Statusfeld
|
ability.statusfield = Statusfeld
|
||||||
ability.unitspawn = {0} Fabrik
|
ability.unitspawn = Fabrik
|
||||||
ability.shieldregenfield = Schild-regenerations-Feld
|
ability.shieldregenfield = Schildregenerationsfeld
|
||||||
ability.movelightning = Bewegungsblitze
|
ability.movelightning = Bewegungsblitze
|
||||||
ability.shieldarc = Lichtbogenschild
|
ability.shieldarc = Lichtbogenschild
|
||||||
ability.suppressionfield = Heilungsunterdrückungsfeld
|
ability.suppressionfield = Heilungsunterdrückungsfeld
|
||||||
ability.energyfield = Energiefeld: [accent]{0}[] Schaden ~ [accent]{1}[] Blöcke / [accent]{2}[] Ziele
|
ability.energyfield = Energiefeld
|
||||||
|
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}%
|
||||||
|
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0}
|
||||||
|
ability.regen = Regeneration
|
||||||
|
|
||||||
bar.onlycoredeposit = Nur Kernablage möglich
|
bar.onlycoredeposit = Nur Kernablage möglich
|
||||||
|
|
||||||
bar.drilltierreq = Besserer Bohrer benötigt
|
bar.drilltierreq = Besserer Bohrer benötigt
|
||||||
@@ -1108,6 +1113,7 @@ setting.position.name = Spieler-Position anzeigen
|
|||||||
setting.mouseposition.name = Mausposition anzeigen
|
setting.mouseposition.name = Mausposition anzeigen
|
||||||
setting.musicvol.name = Musiklautstärke
|
setting.musicvol.name = Musiklautstärke
|
||||||
setting.atmosphere.name = Planetatmosphäre zeigen
|
setting.atmosphere.name = Planetatmosphäre zeigen
|
||||||
|
setting.drawlight.name = Draw Darkness/Lighting
|
||||||
setting.ambientvol.name = Ambient-Lautstärke
|
setting.ambientvol.name = Ambient-Lautstärke
|
||||||
setting.mutemusic.name = Musik stummschalten
|
setting.mutemusic.name = Musik stummschalten
|
||||||
setting.sfxvol.name = Audioeffekt-Lautstärke
|
setting.sfxvol.name = Audioeffekt-Lautstärke
|
||||||
@@ -1867,6 +1873,11 @@ onset.attack = Der Feid ist verwundbar. Greife ihn an.
|
|||||||
onset.cores = Neue Kerne können auf [accent]Kernzonen[] platziert werden.\nNeue Kerne funktionieren als Außenposten und haben alle Zugriff auf dasselbe Kerninventar.\nBaue einen \uf725 Kern.
|
onset.cores = Neue Kerne können auf [accent]Kernzonen[] platziert werden.\nNeue Kerne funktionieren als Außenposten und haben alle Zugriff auf dasselbe Kerninventar.\nBaue einen \uf725 Kern.
|
||||||
onset.detect = Der Feind wird dich in zwei Minuten entdecken.\nStelle Verteidigung, Bergbau und Produktion auf.
|
onset.detect = Der Feind wird dich in zwei Minuten entdecken.\nStelle Verteidigung, Bergbau und Produktion auf.
|
||||||
|
|
||||||
|
#Don't translate these yet!
|
||||||
|
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
||||||
|
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
||||||
|
aegis.tungsten = Tungsten can be mined using an [accent]impact drill[].\nThis structure requires [accent]water[] and [accent]power[].
|
||||||
|
|
||||||
split.pickup = Manche Blöcke können von der Kerneinheit aufgehoben werden.\nHebe diesen [accent]Behälter[] hoch und trage ihn auf den [accent]Frachtlader[].\n(Default-Tasten für Aufhaben und Fallenlassen sind [ und ] )
|
split.pickup = Manche Blöcke können von der Kerneinheit aufgehoben werden.\nHebe diesen [accent]Behälter[] hoch und trage ihn auf den [accent]Frachtlader[].\n(Default-Tasten für Aufhaben und Fallenlassen sind [ und ] )
|
||||||
split.pickup.mobile = Manche Blöcke können von der Kerneinheit aufgehoben werden.\nHebe diesen [accent]Behälter[] hoch und trage ihn auf den [accent]Frachtlader[].\n(Um etwas aufzuheben oder fallenzulassen, tippe lange drauf.)
|
split.pickup.mobile = Manche Blöcke können von der Kerneinheit aufgehoben werden.\nHebe diesen [accent]Behälter[] hoch und trage ihn auf den [accent]Frachtlader[].\n(Um etwas aufzuheben oder fallenzulassen, tippe lange drauf.)
|
||||||
split.acquire = Du must etwas Wolfram sammeln, um Einheiten zu bauen.
|
split.acquire = Du must etwas Wolfram sammeln, um Einheiten zu bauen.
|
||||||
@@ -2087,7 +2098,7 @@ block.electric-heater.description = Heizt Blöcke in einer bestimmten Richtung.
|
|||||||
block.slag-heater.description = Heizt Blöcke in einer bestimmten Richtung. Benötigt Schlacke.
|
block.slag-heater.description = Heizt Blöcke in einer bestimmten Richtung. Benötigt Schlacke.
|
||||||
block.phase-heater.description = Heizt Blöcke in einer bestimmten Richtung. Benötigt Phasengewebe.
|
block.phase-heater.description = Heizt Blöcke in einer bestimmten Richtung. Benötigt Phasengewebe.
|
||||||
block.heat-redirector.description = Lenkt angesammelte Hitze weiter.
|
block.heat-redirector.description = Lenkt angesammelte Hitze weiter.
|
||||||
block.heat-router.description = Spreads accumulated heat in three output directions. Verteilt angesammelte Hitze auf die 3 anderen Seiten.
|
block.heat-router.description = Verteilt angesammelte Hitze auf die 3 anderen Seiten.
|
||||||
block.electrolyzer.description = Spaltet Wasser in Wasserstoff und Ozon.
|
block.electrolyzer.description = Spaltet Wasser in Wasserstoff und Ozon.
|
||||||
block.atmospheric-concentrator.description = Sammelt Stickstoff aus der Atmosphäre. Benötigt Hitze.
|
block.atmospheric-concentrator.description = Sammelt Stickstoff aus der Atmosphäre. Benötigt Hitze.
|
||||||
block.surge-crucible.description = Formt Spannungslegierung ais Schlacke und Silizium. Benötigt Hitze.
|
block.surge-crucible.description = Formt Spannungslegierung ais Schlacke und Silizium. Benötigt Hitze.
|
||||||
@@ -2097,7 +2108,7 @@ block.cyanogen-synthesizer.description = Synthetisiert Cyanogen aus Arkyzit und
|
|||||||
block.slag-incinerator.description = Verbrennt nicht-volatile Materialien und Flüssigkeiten. Benötigt Schlacke.
|
block.slag-incinerator.description = Verbrennt nicht-volatile Materialien und Flüssigkeiten. Benötigt Schlacke.
|
||||||
block.vent-condenser.description = Kondensiert Schlotgase zu Wasser. Verbraucht Strom.
|
block.vent-condenser.description = Kondensiert Schlotgase zu Wasser. Verbraucht Strom.
|
||||||
block.plasma-bore.description = Baut unbefristet Erze aus einer Erzwand ab. Erfordert kleine Mengen an Strom.\nVerwendet optional Wasserstoff, um die Effizienz zu steigern.
|
block.plasma-bore.description = Baut unbefristet Erze aus einer Erzwand ab. Erfordert kleine Mengen an Strom.\nVerwendet optional Wasserstoff, um die Effizienz zu steigern.
|
||||||
block.large-plasma-bore.description = Ein größerer Plasmabohrer. Kann Wolfram und Thorium abbauen. Benötigt Wasserstoff und Strom.\nVerwendet optional Wasserstoff, um die Effizienz zu steigern.
|
block.large-plasma-bore.description = Ein größerer Plasmabohrer. Kann Wolfram und Thorium abbauen. Benötigt Wasserstoff und Strom.\nVerwendet optional Stickstoff, um die Effizienz zu steigern.
|
||||||
block.cliff-crusher.description = Zertrümmert Wände, um unbefristet Sand herzustellen. Benötigt Strom. Effizienz variiert je nach Wandart.
|
block.cliff-crusher.description = Zertrümmert Wände, um unbefristet Sand herzustellen. Benötigt Strom. Effizienz variiert je nach Wandart.
|
||||||
block.impact-drill.description = Baut unbefristet Erze in Schüben aus dem Boden ab. Benötigt Strom und Wasser.
|
block.impact-drill.description = Baut unbefristet Erze in Schüben aus dem Boden ab. Benötigt Strom und Wasser.
|
||||||
block.eruption-drill.description = Ein verbesserter Schlagbohrer. Kann Thorium abbauen. Benötigt Wasserstoff.
|
block.eruption-drill.description = Ein verbesserter Schlagbohrer. Kann Thorium abbauen. Benötigt Wasserstoff.
|
||||||
@@ -2257,6 +2268,8 @@ 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 = Setzt eine Eigenschaft einer Einheit oder eines Blockes.
|
lst.setprop = Setzt eine Eigenschaft einer Einheit oder eines Blockes.
|
||||||
|
lst.effect = Create a particle effect.
|
||||||
|
lst.sync = Sync a variable across the network.\nOnly invoked 10 times a second at most.
|
||||||
|
|
||||||
logic.nounitbuild = [red]Logik, die Blöcke baut, ist hier nicht erlaubt.
|
logic.nounitbuild = [red]Logik, die Blöcke baut, ist hier nicht erlaubt.
|
||||||
|
|
||||||
@@ -2272,6 +2285,7 @@ laccess.dead = Ob ein Block / eine Einheit tot oder nicht mehr gültig ist.
|
|||||||
laccess.controlled = Gibt zurück:\n[accent]@ctrlProcessor[] wenn die Einheit prozessorgesteuert ist\n[accent]@ctrlPlayer[] wenn die Einheit / der Block von einem Spieler gesteuert wird\n[accent]@ctrlFormation[] wenn die Einheit Teil einer Formation ist\nSonst 0.
|
laccess.controlled = Gibt zurück:\n[accent]@ctrlProcessor[] wenn die Einheit prozessorgesteuert ist\n[accent]@ctrlPlayer[] wenn die Einheit / der Block von einem Spieler gesteuert wird\n[accent]@ctrlFormation[] wenn die Einheit Teil einer Formation ist\nSonst 0.
|
||||||
laccess.progress = Fortschritt, von 0 bis 1.\nGibt Produktion, Nachladestatus or Baufortschritt zurück.
|
laccess.progress = Fortschritt, von 0 bis 1.\nGibt Produktion, Nachladestatus or Baufortschritt zurück.
|
||||||
laccess.speed = Höchstgeschwindigkeit einer Einheit, gemessen in Blöcke/Sekunde.
|
laccess.speed = Höchstgeschwindigkeit einer Einheit, gemessen in Blöcke/Sekunde.
|
||||||
|
laccess.id = ID of a unit/block/item/liquid.\nThis is the inverse of the lookup operation.
|
||||||
|
|
||||||
lcategory.unknown = Unbekannt
|
lcategory.unknown = Unbekannt
|
||||||
lcategory.unknown.description = Unbekannte Anweisungen
|
lcategory.unknown.description = Unbekannte Anweisungen
|
||||||
@@ -2393,6 +2407,7 @@ lenum.unbind = Logiksteuerung deaktivieren.\nNormale KI übernimmt.
|
|||||||
lenum.move = Geht zu diese Position.
|
lenum.move = Geht zu diese Position.
|
||||||
lenum.approach = Geht auf einen Punkt mit einem bestimmten Radius zu.
|
lenum.approach = Geht auf einen Punkt mit einem bestimmten Radius zu.
|
||||||
lenum.pathfind = Geht zum gegnerischen Spawnpunkt.
|
lenum.pathfind = Geht zum gegnerischen Spawnpunkt.
|
||||||
|
lenum.autopathfind = Automatically pathfinds to the nearest enemy core or drop point.\nThis is the same as standard wave enemy pathfinding.
|
||||||
lenum.target = Schießt auf eine Position.
|
lenum.target = Schießt auf eine Position.
|
||||||
lenum.targetp = Schießt auf eine Einheit und sagt deren Position voraus.
|
lenum.targetp = Schießt auf eine Einheit und sagt deren Position voraus.
|
||||||
lenum.itemdrop = Materialien abwerfen.
|
lenum.itemdrop = Materialien abwerfen.
|
||||||
@@ -2406,7 +2421,3 @@ lenum.build = Einen Block bauen.
|
|||||||
lenum.getblock = Gibt den Boden- und Blocktyp an den Koordinaten zurück.\nEinheiten müssen nah genug dran sein.\nFeste nicht-Blöcke sind [accent]@solid[].
|
lenum.getblock = Gibt den Boden- und Blocktyp an den Koordinaten zurück.\nEinheiten müssen nah genug dran sein.\nFeste nicht-Blöcke sind [accent]@solid[].
|
||||||
lenum.within = Prüft, ob eine Einheit in einem Radius um einen Punkt ist.
|
lenum.within = Prüft, ob eine Einheit in einem Radius um einen Punkt ist.
|
||||||
lenum.boost = Aktiviert / deaktiviert den Boost.
|
lenum.boost = Aktiviert / deaktiviert den Boost.
|
||||||
|
|
||||||
#Don't translate these yet!
|
|
||||||
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
|
||||||
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
|
||||||
|
|||||||
@@ -255,6 +255,7 @@ trace = Rastrear Jugador
|
|||||||
trace.playername = Nombre del jugador: [accent]{0}
|
trace.playername = Nombre del jugador: [accent]{0}
|
||||||
trace.ip = IP: [accent]{0}
|
trace.ip = IP: [accent]{0}
|
||||||
trace.id = ID: [accent]{0}
|
trace.id = ID: [accent]{0}
|
||||||
|
trace.language = Language: [accent]{0}
|
||||||
trace.mobile = Cliente de móvil: [accent]{0}
|
trace.mobile = Cliente de móvil: [accent]{0}
|
||||||
trace.modclient = Cliente personalizado: [accent]{0}
|
trace.modclient = Cliente personalizado: [accent]{0}
|
||||||
trace.times.joined = Se ha unido [accent]{0} []veces
|
trace.times.joined = Se ha unido [accent]{0} []veces
|
||||||
@@ -958,13 +959,16 @@ stat.healing = Curación
|
|||||||
|
|
||||||
ability.forcefield = Área de Escudo
|
ability.forcefield = Área de Escudo
|
||||||
ability.repairfield = Área de Reparación
|
ability.repairfield = Área de Reparación
|
||||||
ability.statusfield = Área de Potenciación {0}
|
ability.statusfield = Área de Potenciación
|
||||||
ability.unitspawn = Fábrica de {0}
|
ability.unitspawn = Fábrica
|
||||||
ability.shieldregenfield = Área de Regeneración de Armaduras
|
ability.shieldregenfield = Área de Regeneración de Armaduras
|
||||||
ability.movelightning = Movimiento Relámpago
|
ability.movelightning = Movimiento Relámpago
|
||||||
ability.shieldarc = Sector de Escudo
|
ability.shieldarc = Sector de Escudo
|
||||||
ability.suppressionfield = Área de Bloqueo de Regeneración
|
ability.suppressionfield = Área de Bloqueo de Regeneración
|
||||||
ability.energyfield = Campo de Energía: [accent]{0}[] daño ~ [accent]{1}[] bloques / [accent]{2}[] objetivos
|
ability.energyfield = Campo de Energía
|
||||||
|
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}%
|
||||||
|
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0}
|
||||||
|
ability.regen = Regeneration
|
||||||
|
|
||||||
bar.onlycoredeposit = Sólo se permite depositar en el núcleo
|
bar.onlycoredeposit = Sólo se permite depositar en el núcleo
|
||||||
bar.drilltierreq = Requiere un taladro mejor
|
bar.drilltierreq = Requiere un taladro mejor
|
||||||
@@ -1105,6 +1109,7 @@ setting.position.name = Mostrar posición de jugadores
|
|||||||
setting.mouseposition.name = Mostrar posición del cursor
|
setting.mouseposition.name = Mostrar posición del cursor
|
||||||
setting.musicvol.name = Volumen de la música
|
setting.musicvol.name = Volumen de la música
|
||||||
setting.atmosphere.name = Mostrar atmósfera de planetas
|
setting.atmosphere.name = Mostrar atmósfera de planetas
|
||||||
|
setting.drawlight.name = Draw Darkness/Lighting
|
||||||
setting.ambientvol.name = Volumen del ambiente
|
setting.ambientvol.name = Volumen del ambiente
|
||||||
setting.mutemusic.name = Silenciar música
|
setting.mutemusic.name = Silenciar música
|
||||||
setting.sfxvol.name = Volumen del sonido
|
setting.sfxvol.name = Volumen del sonido
|
||||||
@@ -1860,6 +1865,11 @@ onset.enemies = Se aproxima un enemigo, prepárate para defenderte.
|
|||||||
onset.attack = El enemigo es ahora vulnerable. Contraataca.
|
onset.attack = El enemigo es ahora vulnerable. Contraataca.
|
||||||
onset.cores = Se pueden colocar nuevos núcleos sobre las [accent]zonas de núcleo[].\nLos núcleos adicionales funcionan como bases avanzadas y comparten el inventario de recursos con otros núcleos.\nColoca un \uf725 núcleo.
|
onset.cores = Se pueden colocar nuevos núcleos sobre las [accent]zonas de núcleo[].\nLos núcleos adicionales funcionan como bases avanzadas y comparten el inventario de recursos con otros núcleos.\nColoca un \uf725 núcleo.
|
||||||
onset.detect = El enemigo te detectará en 2 minutos.\nEstablece sistemas de defensa, minería, y producción.
|
onset.detect = El enemigo te detectará en 2 minutos.\nEstablece sistemas de defensa, minería, y producción.
|
||||||
|
|
||||||
|
#Don't translate these yet!
|
||||||
|
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
||||||
|
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
||||||
|
aegis.tungsten = Tungsten can be mined using an [accent]impact drill[].\nThis structure requires [accent]water[] and [accent]power[].
|
||||||
split.pickup = Algunos bloques pueden ser recogidos por la unidad del núcleo.\nRecoge este [accent]contenedor[] y suéltalo sobre el [accent]puerto de carga[].\n(Las teclas por defecto son [ para recoger y ] para soltar la carga)
|
split.pickup = Algunos bloques pueden ser recogidos por la unidad del núcleo.\nRecoge este [accent]contenedor[] y suéltalo sobre el [accent]puerto de carga[].\n(Las teclas por defecto son [ para recoger y ] para soltar la carga)
|
||||||
split.pickup.mobile = Algunos bloques pueden ser recogidos por la unidad del núcleo.\nRecoge este [accent]contenedor[] y suéltalo sobre el [accent]puerto de carga[].\n(Para recoger o soltar algo, mantenlo pulsado.)
|
split.pickup.mobile = Algunos bloques pueden ser recogidos por la unidad del núcleo.\nRecoge este [accent]contenedor[] y suéltalo sobre el [accent]puerto de carga[].\n(Para recoger o soltar algo, mantenlo pulsado.)
|
||||||
split.acquire = Necesitas recolectar tungsteno para construir unidades.
|
split.acquire = Necesitas recolectar tungsteno para construir unidades.
|
||||||
@@ -2251,6 +2261,8 @@ 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.
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
lst.effect = Create a particle effect.
|
||||||
|
lst.sync = Sync a variable across the network.\nOnly invoked 10 times a second at most.
|
||||||
|
|
||||||
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.
|
||||||
|
|
||||||
@@ -2266,6 +2278,7 @@ laccess.dead = Si una unidad/bloque es destruída o inválida.
|
|||||||
laccess.controlled = Devuelve:\n[accent]@ctrlProcessor[] si el control de la unidad lo tiene un procesador\n[accent]@ctrlPlayer[] si el control de la unidad/bloque lo tiene un jugador\n[accent]@ctrlFormation[] si la unidad está en formación\nDe otra forma, devuelve 0.
|
laccess.controlled = Devuelve:\n[accent]@ctrlProcessor[] si el control de la unidad lo tiene un procesador\n[accent]@ctrlPlayer[] si el control de la unidad/bloque lo tiene un jugador\n[accent]@ctrlFormation[] si la unidad está en formación\nDe otra forma, devuelve 0.
|
||||||
laccess.progress = Progreso de una acción, 0 a 1.\nDevuelve el valor de una producción, la recarga de una torreta o el progreso de una construcción.
|
laccess.progress = Progreso de una acción, 0 a 1.\nDevuelve el valor de una producción, la recarga de una torreta o el progreso de una construcción.
|
||||||
laccess.speed = Velocidad máxima de una unidad, en bloques/segundo.
|
laccess.speed = Velocidad máxima de una unidad, en bloques/segundo.
|
||||||
|
laccess.id = ID of a unit/block/item/liquid.\nThis is the inverse of the lookup operation.
|
||||||
|
|
||||||
lcategory.unknown = Desconocido
|
lcategory.unknown = Desconocido
|
||||||
lcategory.unknown.description = Instrucciones no clasificadas.
|
lcategory.unknown.description = Instrucciones no clasificadas.
|
||||||
@@ -2387,6 +2400,7 @@ lenum.unbind = Desactiva el control externo de la unidad enlazada.\nLa unidad re
|
|||||||
lenum.move = Moverse a una posición exacta.
|
lenum.move = Moverse a una posición exacta.
|
||||||
lenum.approach = Aproximarse al radio establecido de una posición concreta.
|
lenum.approach = Aproximarse al radio establecido de una posición concreta.
|
||||||
lenum.pathfind = Establece y sigue una ruta hasta el punto de aterrizaje enemigo.
|
lenum.pathfind = Establece y sigue una ruta hasta el punto de aterrizaje enemigo.
|
||||||
|
lenum.autopathfind = Automatically pathfinds to the nearest enemy core or drop point.\nThis is the same as standard wave enemy pathfinding.
|
||||||
lenum.target = Dispara a una posición.
|
lenum.target = Dispara a una posición.
|
||||||
lenum.targetp = Dispara a un objetivo con predicción de velocidad.
|
lenum.targetp = Dispara a un objetivo con predicción de velocidad.
|
||||||
lenum.itemdrop = Suelta los objetos en la estructura especificacda.
|
lenum.itemdrop = Suelta los objetos en la estructura especificacda.
|
||||||
@@ -2400,7 +2414,3 @@ lenum.build = Construye una estructura.
|
|||||||
lenum.getblock = Obtiene la estructura y su categoría en unas coordenadas específicas.\nLa unidad debe estar en el rango de su posición.\nLos bloques no-construcciones tendrán el tipo [accent]@solid[].
|
lenum.getblock = Obtiene la estructura y su categoría en unas coordenadas específicas.\nLa unidad debe estar en el rango de su posición.\nLos bloques no-construcciones tendrán el tipo [accent]@solid[].
|
||||||
lenum.within = Comprueba si una unidad se encuentra cerca de una posición.
|
lenum.within = Comprueba si una unidad se encuentra cerca de una posición.
|
||||||
lenum.boost = Iniciar/Detener vuelo.
|
lenum.boost = Iniciar/Detener vuelo.
|
||||||
|
|
||||||
#Don't translate these yet!
|
|
||||||
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
|
||||||
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
|
||||||
|
|||||||
@@ -251,6 +251,7 @@ trace = Jälita mängijat
|
|||||||
trace.playername = Mängija nimi: [accent]{0}
|
trace.playername = Mängija nimi: [accent]{0}
|
||||||
trace.ip = IP: [accent]{0}
|
trace.ip = IP: [accent]{0}
|
||||||
trace.id = Mängija ID: [accent]{0}
|
trace.id = Mängija ID: [accent]{0}
|
||||||
|
trace.language = Language: [accent]{0}
|
||||||
trace.mobile = Mobiilne versioon: [accent]{0}
|
trace.mobile = Mobiilne versioon: [accent]{0}
|
||||||
trace.modclient = Modifitseeritud versioon: [accent]{0}
|
trace.modclient = Modifitseeritud versioon: [accent]{0}
|
||||||
trace.times.joined = Times Joined: [accent]{0}
|
trace.times.joined = Times Joined: [accent]{0}
|
||||||
@@ -939,12 +940,16 @@ stat.healing = Healing
|
|||||||
ability.forcefield = Force Field
|
ability.forcefield = Force Field
|
||||||
ability.repairfield = Repair Field
|
ability.repairfield = Repair Field
|
||||||
ability.statusfield = Status Field
|
ability.statusfield = Status Field
|
||||||
ability.unitspawn = {0} Factory
|
ability.unitspawn = 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 = Regen Suppression Field
|
||||||
ability.energyfield = Energy Field: [accent]{0}[] damage ~ [accent]{1}[] blocks / [accent]{2}[] targets
|
ability.energyfield = Energy Field
|
||||||
|
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}%
|
||||||
|
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0}
|
||||||
|
ability.regen = Regeneration
|
||||||
|
|
||||||
bar.onlycoredeposit = Only Core Depositing Allowed
|
bar.onlycoredeposit = Only Core Depositing Allowed
|
||||||
|
|
||||||
bar.drilltierreq = Nõuab paremat puuri
|
bar.drilltierreq = Nõuab paremat puuri
|
||||||
@@ -1085,6 +1090,7 @@ setting.position.name = Show Player Position
|
|||||||
setting.mouseposition.name = Show Mouse Position
|
setting.mouseposition.name = Show Mouse Position
|
||||||
setting.musicvol.name = Muusika helitugevus
|
setting.musicvol.name = Muusika helitugevus
|
||||||
setting.atmosphere.name = Show Planet Atmosphere
|
setting.atmosphere.name = Show Planet Atmosphere
|
||||||
|
setting.drawlight.name = Draw Darkness/Lighting
|
||||||
setting.ambientvol.name = Taustahelide tugevus
|
setting.ambientvol.name = Taustahelide tugevus
|
||||||
setting.mutemusic.name = Vaigista muusika
|
setting.mutemusic.name = Vaigista muusika
|
||||||
setting.sfxvol.name = Heliefektide tugevus
|
setting.sfxvol.name = Heliefektide tugevus
|
||||||
@@ -1832,6 +1838,9 @@ 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.
|
||||||
|
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
||||||
|
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
||||||
|
aegis.tungsten = Tungsten can be mined using an [accent]impact drill[].\nThis structure requires [accent]water[] and [accent]power[].
|
||||||
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)
|
||||||
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
||||||
split.acquire = You must acquire some tungsten to build units.
|
split.acquire = You must acquire some tungsten to build units.
|
||||||
@@ -2211,6 +2220,8 @@ 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.
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
lst.effect = Create a particle effect.
|
||||||
|
lst.sync = Sync a variable across the network.\nOnly invoked 10 times a second at most.
|
||||||
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.
|
||||||
@@ -2223,6 +2234,7 @@ laccess.dead = Whether a unit/building is dead or no longer valid.
|
|||||||
laccess.controlled = Returns:\n[accent]@ctrlProcessor[] if unit controller is processor\n[accent]@ctrlPlayer[] if unit/building controller is player\n[accent]@ctrlFormation[] if unit is in formation\nOtherwise, 0.
|
laccess.controlled = Returns:\n[accent]@ctrlProcessor[] if unit controller is processor\n[accent]@ctrlPlayer[] if unit/building controller is player\n[accent]@ctrlFormation[] if unit is in formation\nOtherwise, 0.
|
||||||
laccess.progress = Action progress, 0 to 1.\nReturns production, turret reload or construction progress.
|
laccess.progress = Action progress, 0 to 1.\nReturns production, turret reload or construction progress.
|
||||||
laccess.speed = Top speed of a unit, in tiles/sec.
|
laccess.speed = Top speed of a unit, in tiles/sec.
|
||||||
|
laccess.id = ID of a unit/block/item/liquid.\nThis is the inverse of the lookup operation.
|
||||||
lcategory.unknown = Unknown
|
lcategory.unknown = Unknown
|
||||||
lcategory.unknown.description = Uncategorized instructions.
|
lcategory.unknown.description = Uncategorized instructions.
|
||||||
lcategory.io = Input & Output
|
lcategory.io = Input & Output
|
||||||
@@ -2327,6 +2339,7 @@ lenum.unbind = Completely disable logic control.\nResume standard AI.
|
|||||||
lenum.move = Move to exact position.
|
lenum.move = Move to exact position.
|
||||||
lenum.approach = Approach a position with a radius.
|
lenum.approach = Approach a position with a radius.
|
||||||
lenum.pathfind = Pathfind to the enemy spawn.
|
lenum.pathfind = Pathfind to the enemy spawn.
|
||||||
|
lenum.autopathfind = Automatically pathfinds to the nearest enemy core or drop point.\nThis is the same as standard wave enemy pathfinding.
|
||||||
lenum.target = Shoot a position.
|
lenum.target = Shoot a position.
|
||||||
lenum.targetp = Shoot a target with velocity prediction.
|
lenum.targetp = Shoot a target with velocity prediction.
|
||||||
lenum.itemdrop = Drop an item.
|
lenum.itemdrop = Drop an item.
|
||||||
@@ -2340,5 +2353,3 @@ lenum.build = Build a structure.
|
|||||||
lenum.getblock = Fetch a building and type at coordinates.\nUnit must be in range of position.\nSolid non-buildings will have the type [accent]@solid[].
|
lenum.getblock = Fetch a building and type at coordinates.\nUnit must be in range of position.\nSolid non-buildings will have the type [accent]@solid[].
|
||||||
lenum.within = Check if unit is near a position.
|
lenum.within = Check if unit is near a position.
|
||||||
lenum.boost = Start/stop boosting.
|
lenum.boost = Start/stop boosting.
|
||||||
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
|
||||||
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
|
||||||
|
|||||||
@@ -253,6 +253,7 @@ trace = Trazatu jokalaria
|
|||||||
trace.playername = Jokalariaren izena: [accent]{0}
|
trace.playername = Jokalariaren izena: [accent]{0}
|
||||||
trace.ip = IP-a: [accent]{0}
|
trace.ip = IP-a: [accent]{0}
|
||||||
trace.id = ID bakana: [accent]{0}
|
trace.id = ID bakana: [accent]{0}
|
||||||
|
trace.language = Language: [accent]{0}
|
||||||
trace.mobile = Bezero mugikorra: [accent]{0}
|
trace.mobile = Bezero mugikorra: [accent]{0}
|
||||||
trace.modclient = Bezero pertsonalizatua: [accent]{0}
|
trace.modclient = Bezero pertsonalizatua: [accent]{0}
|
||||||
trace.times.joined = Times Joined: [accent]{0}
|
trace.times.joined = Times Joined: [accent]{0}
|
||||||
@@ -941,12 +942,16 @@ stat.healing = Healing
|
|||||||
ability.forcefield = Force Field
|
ability.forcefield = Force Field
|
||||||
ability.repairfield = Repair Field
|
ability.repairfield = Repair Field
|
||||||
ability.statusfield = Status Field
|
ability.statusfield = Status Field
|
||||||
ability.unitspawn = {0} Factory
|
ability.unitspawn = 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 = Regen Suppression Field
|
||||||
ability.energyfield = Energy Field: [accent]{0}[] damage ~ [accent]{1}[] blocks / [accent]{2}[] targets
|
ability.energyfield = Energy Field
|
||||||
|
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}%
|
||||||
|
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0}
|
||||||
|
ability.regen = Regeneration
|
||||||
|
|
||||||
bar.onlycoredeposit = Only Core Depositing Allowed
|
bar.onlycoredeposit = Only Core Depositing Allowed
|
||||||
|
|
||||||
bar.drilltierreq = Zulagailu hobea behar da
|
bar.drilltierreq = Zulagailu hobea behar da
|
||||||
@@ -1087,6 +1092,7 @@ setting.position.name = Erakutsi jokalariaren kokalekua
|
|||||||
setting.mouseposition.name = Show Mouse Position
|
setting.mouseposition.name = Show Mouse Position
|
||||||
setting.musicvol.name = Musikaren bolumena
|
setting.musicvol.name = Musikaren bolumena
|
||||||
setting.atmosphere.name = Show Planet Atmosphere
|
setting.atmosphere.name = Show Planet Atmosphere
|
||||||
|
setting.drawlight.name = Draw Darkness/Lighting
|
||||||
setting.ambientvol.name = Giroaren bolumena
|
setting.ambientvol.name = Giroaren bolumena
|
||||||
setting.mutemusic.name = Isilarazi musika
|
setting.mutemusic.name = Isilarazi musika
|
||||||
setting.sfxvol.name = Efektuen bolumena
|
setting.sfxvol.name = Efektuen bolumena
|
||||||
@@ -1834,6 +1840,9 @@ 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.
|
||||||
|
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
||||||
|
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
||||||
|
aegis.tungsten = Tungsten can be mined using an [accent]impact drill[].\nThis structure requires [accent]water[] and [accent]power[].
|
||||||
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)
|
||||||
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
||||||
split.acquire = You must acquire some tungsten to build units.
|
split.acquire = You must acquire some tungsten to build units.
|
||||||
@@ -2213,6 +2222,8 @@ 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.
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
lst.effect = Create a particle effect.
|
||||||
|
lst.sync = Sync a variable across the network.\nOnly invoked 10 times a second at most.
|
||||||
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.
|
||||||
@@ -2225,6 +2236,7 @@ laccess.dead = Whether a unit/building is dead or no longer valid.
|
|||||||
laccess.controlled = Returns:\n[accent]@ctrlProcessor[] if unit controller is processor\n[accent]@ctrlPlayer[] if unit/building controller is player\n[accent]@ctrlFormation[] if unit is in formation\nOtherwise, 0.
|
laccess.controlled = Returns:\n[accent]@ctrlProcessor[] if unit controller is processor\n[accent]@ctrlPlayer[] if unit/building controller is player\n[accent]@ctrlFormation[] if unit is in formation\nOtherwise, 0.
|
||||||
laccess.progress = Action progress, 0 to 1.\nReturns production, turret reload or construction progress.
|
laccess.progress = Action progress, 0 to 1.\nReturns production, turret reload or construction progress.
|
||||||
laccess.speed = Top speed of a unit, in tiles/sec.
|
laccess.speed = Top speed of a unit, in tiles/sec.
|
||||||
|
laccess.id = ID of a unit/block/item/liquid.\nThis is the inverse of the lookup operation.
|
||||||
lcategory.unknown = Unknown
|
lcategory.unknown = Unknown
|
||||||
lcategory.unknown.description = Uncategorized instructions.
|
lcategory.unknown.description = Uncategorized instructions.
|
||||||
lcategory.io = Input & Output
|
lcategory.io = Input & Output
|
||||||
@@ -2329,6 +2341,7 @@ lenum.unbind = Completely disable logic control.\nResume standard AI.
|
|||||||
lenum.move = Move to exact position.
|
lenum.move = Move to exact position.
|
||||||
lenum.approach = Approach a position with a radius.
|
lenum.approach = Approach a position with a radius.
|
||||||
lenum.pathfind = Pathfind to the enemy spawn.
|
lenum.pathfind = Pathfind to the enemy spawn.
|
||||||
|
lenum.autopathfind = Automatically pathfinds to the nearest enemy core or drop point.\nThis is the same as standard wave enemy pathfinding.
|
||||||
lenum.target = Shoot a position.
|
lenum.target = Shoot a position.
|
||||||
lenum.targetp = Shoot a target with velocity prediction.
|
lenum.targetp = Shoot a target with velocity prediction.
|
||||||
lenum.itemdrop = Drop an item.
|
lenum.itemdrop = Drop an item.
|
||||||
@@ -2342,5 +2355,3 @@ lenum.build = Build a structure.
|
|||||||
lenum.getblock = Fetch a building and type at coordinates.\nUnit must be in range of position.\nSolid non-buildings will have the type [accent]@solid[].
|
lenum.getblock = Fetch a building and type at coordinates.\nUnit must be in range of position.\nSolid non-buildings will have the type [accent]@solid[].
|
||||||
lenum.within = Check if unit is near a position.
|
lenum.within = Check if unit is near a position.
|
||||||
lenum.boost = Start/stop boosting.
|
lenum.boost = Start/stop boosting.
|
||||||
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
|
||||||
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
|
||||||
|
|||||||
@@ -251,6 +251,7 @@ trace = Seuraa pelaajaa
|
|||||||
trace.playername = Pelaajanimi: [accent]{0}
|
trace.playername = Pelaajanimi: [accent]{0}
|
||||||
trace.ip = IP-osoite: [accent]{0}
|
trace.ip = IP-osoite: [accent]{0}
|
||||||
trace.id = Pelaajakohtainen tunniste: [accent]{0}
|
trace.id = Pelaajakohtainen tunniste: [accent]{0}
|
||||||
|
trace.language = Language: [accent]{0}
|
||||||
trace.mobile = Mobiililaite: [accent]{0}
|
trace.mobile = Mobiililaite: [accent]{0}
|
||||||
trace.modclient = Muokattu asiakasohjelma: [accent]{0}
|
trace.modclient = Muokattu asiakasohjelma: [accent]{0}
|
||||||
trace.times.joined = Kuinka monta kertaa olet liittynyt: [accent]{0}
|
trace.times.joined = Kuinka monta kertaa olet liittynyt: [accent]{0}
|
||||||
@@ -938,12 +939,16 @@ stat.healing = Parantuu
|
|||||||
ability.forcefield = Voimakenttä
|
ability.forcefield = Voimakenttä
|
||||||
ability.repairfield = Korjauskenttä
|
ability.repairfield = Korjauskenttä
|
||||||
ability.statusfield = Statuskenttä
|
ability.statusfield = Statuskenttä
|
||||||
ability.unitspawn = {0} Tehdas
|
ability.unitspawn = Tehdas
|
||||||
ability.shieldregenfield = Kilvenvahvistuskenttä
|
ability.shieldregenfield = Kilvenvahvistuskenttä
|
||||||
ability.movelightning = Salamointi liikkuessa
|
ability.movelightning = Salamointi liikkuessa
|
||||||
ability.shieldarc = Kilpikaari
|
ability.shieldarc = Kilpikaari
|
||||||
ability.suppressionfield = Regen Suppression Field
|
ability.suppressionfield = Regen Suppression Field
|
||||||
ability.energyfield = Energiakenttä: [accent]{0}[] vahinko ~ [accent]{1}[] palikkaa / [accent]{2}[] kohdetta
|
ability.energyfield = Energiakenttä
|
||||||
|
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}%
|
||||||
|
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0}
|
||||||
|
ability.regen = Regeneration
|
||||||
|
|
||||||
bar.onlycoredeposit = Sijoittaminen sallittua vain ytimeen
|
bar.onlycoredeposit = Sijoittaminen sallittua vain ytimeen
|
||||||
|
|
||||||
bar.drilltierreq = Parempi pora vaadittu
|
bar.drilltierreq = Parempi pora vaadittu
|
||||||
@@ -1084,6 +1089,7 @@ setting.position.name = Näytä pelaajan sijainti
|
|||||||
setting.mouseposition.name = Näytä hiiren sijainti
|
setting.mouseposition.name = Näytä hiiren sijainti
|
||||||
setting.musicvol.name = Musiikin äänenvoimakkuus
|
setting.musicvol.name = Musiikin äänenvoimakkuus
|
||||||
setting.atmosphere.name = Näytä planeetan ilmakehä
|
setting.atmosphere.name = Näytä planeetan ilmakehä
|
||||||
|
setting.drawlight.name = Draw Darkness/Lighting
|
||||||
setting.ambientvol.name = Taustaäänet
|
setting.ambientvol.name = Taustaäänet
|
||||||
setting.mutemusic.name = Mykistä musiikki
|
setting.mutemusic.name = Mykistä musiikki
|
||||||
setting.sfxvol.name = SFX-voimakkuus
|
setting.sfxvol.name = SFX-voimakkuus
|
||||||
@@ -1834,6 +1840,9 @@ 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.
|
||||||
|
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
||||||
|
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
||||||
|
aegis.tungsten = Tungsten can be mined using an [accent]impact drill[].\nThis structure requires [accent]water[] and [accent]power[].
|
||||||
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)
|
||||||
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
||||||
split.acquire = You must acquire some tungsten to build units.
|
split.acquire = You must acquire some tungsten to build units.
|
||||||
@@ -2214,6 +2223,8 @@ 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.
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
lst.effect = Create a particle effect.
|
||||||
|
lst.sync = Sync a variable across the network.\nOnly invoked 10 times a second at most.
|
||||||
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.
|
||||||
@@ -2226,6 +2237,7 @@ laccess.dead = Selvitä, onko yksikkö/rakennus tuhoutunut tai ei enää kelvoll
|
|||||||
laccess.controlled = Palauttaa:\n[accent]@ctrlProcessor[], jos yksikön hallitsija on prosessori.\n[accent]@ctrlPlayer[], jos yksikön/rakennuksen hallitsija on pelaaja.\n[accent]@ctrlFormation[], jos yksikkö on muodostelmassa\nMuussa tapauksessa palauttaa 0.
|
laccess.controlled = Palauttaa:\n[accent]@ctrlProcessor[], jos yksikön hallitsija on prosessori.\n[accent]@ctrlPlayer[], jos yksikön/rakennuksen hallitsija on pelaaja.\n[accent]@ctrlFormation[], jos yksikkö on muodostelmassa\nMuussa tapauksessa palauttaa 0.
|
||||||
laccess.progress = Toiminnon edistys asteikolla nollasta yhteen.\nPalauttaa tuotannon, tykin latauksen tai rakennuksen edistymisen.
|
laccess.progress = Toiminnon edistys asteikolla nollasta yhteen.\nPalauttaa tuotannon, tykin latauksen tai rakennuksen edistymisen.
|
||||||
laccess.speed = Yksikön huippunopeus laattoina/sekunti.
|
laccess.speed = Yksikön huippunopeus laattoina/sekunti.
|
||||||
|
laccess.id = ID of a unit/block/item/liquid.\nThis is the inverse of the lookup operation.
|
||||||
lcategory.unknown = Tuntematon
|
lcategory.unknown = Tuntematon
|
||||||
lcategory.unknown.description = Luokittelemattomat ohjeet.
|
lcategory.unknown.description = Luokittelemattomat ohjeet.
|
||||||
lcategory.io = Sisään- ja ulostulo
|
lcategory.io = Sisään- ja ulostulo
|
||||||
@@ -2330,6 +2342,7 @@ lenum.unbind = Poista logiikkahallinta kokonaan.\nAnna hallinta tavalliselle AI:
|
|||||||
lenum.move = Liiku tarkkaan sijaintiin.
|
lenum.move = Liiku tarkkaan sijaintiin.
|
||||||
lenum.approach = Lähesty sijaintia tietylle säteelle.
|
lenum.approach = Lähesty sijaintia tietylle säteelle.
|
||||||
lenum.pathfind = Etsi polku vihollisen syntypisteelle.
|
lenum.pathfind = Etsi polku vihollisen syntypisteelle.
|
||||||
|
lenum.autopathfind = Automatically pathfinds to the nearest enemy core or drop point.\nThis is the same as standard wave enemy pathfinding.
|
||||||
lenum.target = Ammu tiettyä sijaintia.
|
lenum.target = Ammu tiettyä sijaintia.
|
||||||
lenum.targetp = Ammu kohdetta nopeudenennustuksen ollessa päällä.
|
lenum.targetp = Ammu kohdetta nopeudenennustuksen ollessa päällä.
|
||||||
lenum.itemdrop = Pudota tavaroita.
|
lenum.itemdrop = Pudota tavaroita.
|
||||||
@@ -2343,5 +2356,3 @@ lenum.build = Rakenna tietty rakennus.
|
|||||||
lenum.getblock = Selvitä rakennus ja sen tyyppi tietyissä koordinaateissa.\nSijainnin täytyy olla yksikön kantamalla.\nKiinteillä ei-rakennuksilla on tyyppi [accent]@solid[].
|
lenum.getblock = Selvitä rakennus ja sen tyyppi tietyissä koordinaateissa.\nSijainnin täytyy olla yksikön kantamalla.\nKiinteillä ei-rakennuksilla on tyyppi [accent]@solid[].
|
||||||
lenum.within = Tarkista, onko joukko tietyn sijainnin lähellä.
|
lenum.within = Tarkista, onko joukko tietyn sijainnin lähellä.
|
||||||
lenum.boost = Aloita tai lopeta tehostus.
|
lenum.boost = Aloita tai lopeta tehostus.
|
||||||
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
|
||||||
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
|
||||||
|
|||||||
@@ -251,6 +251,7 @@ trace = Trace Player
|
|||||||
trace.playername = Pangalan ng Player: [accent]{0}
|
trace.playername = Pangalan ng Player: [accent]{0}
|
||||||
trace.ip = IP: [accent]{0}
|
trace.ip = IP: [accent]{0}
|
||||||
trace.id = Unique ID: [accent]{0}
|
trace.id = Unique ID: [accent]{0}
|
||||||
|
trace.language = Language: [accent]{0}
|
||||||
trace.mobile = Mobile Client: [accent]{0}
|
trace.mobile = Mobile Client: [accent]{0}
|
||||||
trace.modclient = Custom Client: [accent]{0}
|
trace.modclient = Custom Client: [accent]{0}
|
||||||
trace.times.joined = Times Joined: [accent]{0}
|
trace.times.joined = Times Joined: [accent]{0}
|
||||||
@@ -938,12 +939,16 @@ stat.healing = Healing
|
|||||||
ability.forcefield = Force Field
|
ability.forcefield = Force Field
|
||||||
ability.repairfield = Repair Field
|
ability.repairfield = Repair Field
|
||||||
ability.statusfield = Status Field
|
ability.statusfield = Status Field
|
||||||
ability.unitspawn = {0} Factory
|
ability.unitspawn = 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 = Regen Suppression Field
|
||||||
ability.energyfield = Energy Field: [accent]{0}[] damage ~ [accent]{1}[] blocks / [accent]{2}[] targets
|
ability.energyfield = Energy Field
|
||||||
|
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}%
|
||||||
|
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0}
|
||||||
|
ability.regen = Regeneration
|
||||||
|
|
||||||
bar.onlycoredeposit = Only Core Depositing Allowed
|
bar.onlycoredeposit = Only Core Depositing Allowed
|
||||||
|
|
||||||
bar.drilltierreq = Better Drill Required
|
bar.drilltierreq = Better Drill Required
|
||||||
@@ -1084,6 +1089,7 @@ setting.position.name = Show Player Position
|
|||||||
setting.mouseposition.name = Show Mouse Position
|
setting.mouseposition.name = Show Mouse Position
|
||||||
setting.musicvol.name = Music Volume
|
setting.musicvol.name = Music Volume
|
||||||
setting.atmosphere.name = Ipakita Planet Atmosphere
|
setting.atmosphere.name = Ipakita Planet Atmosphere
|
||||||
|
setting.drawlight.name = Draw Darkness/Lighting
|
||||||
setting.ambientvol.name = Ambient Volume
|
setting.ambientvol.name = Ambient Volume
|
||||||
setting.mutemusic.name = Mute Music
|
setting.mutemusic.name = Mute Music
|
||||||
setting.sfxvol.name = SFX Volume
|
setting.sfxvol.name = SFX Volume
|
||||||
@@ -1831,6 +1837,9 @@ 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.
|
||||||
|
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
||||||
|
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
||||||
|
aegis.tungsten = Tungsten can be mined using an [accent]impact drill[].\nThis structure requires [accent]water[] and [accent]power[].
|
||||||
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)
|
||||||
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
||||||
split.acquire = You must acquire some tungsten to build units.
|
split.acquire = You must acquire some tungsten to build units.
|
||||||
@@ -2210,6 +2219,8 @@ 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.
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
lst.effect = Create a particle effect.
|
||||||
|
lst.sync = Sync a variable across the network.\nOnly invoked 10 times a second at most.
|
||||||
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.
|
||||||
@@ -2222,6 +2233,7 @@ laccess.dead = Whether a unit/building is dead or no longer valid.
|
|||||||
laccess.controlled = Returns:\n[accent]@ctrlProcessor[] if unit controller is processor\n[accent]@ctrlPlayer[] if unit/building controller is player\n[accent]@ctrlFormation[] if unit is in formation\nOtherwise, 0.
|
laccess.controlled = Returns:\n[accent]@ctrlProcessor[] if unit controller is processor\n[accent]@ctrlPlayer[] if unit/building controller is player\n[accent]@ctrlFormation[] if unit is in formation\nOtherwise, 0.
|
||||||
laccess.progress = Action progress, 0 to 1.\nReturns production, turret reload or construction progress.
|
laccess.progress = Action progress, 0 to 1.\nReturns production, turret reload or construction progress.
|
||||||
laccess.speed = Top speed of a unit, in tiles/sec.
|
laccess.speed = Top speed of a unit, in tiles/sec.
|
||||||
|
laccess.id = ID of a unit/block/item/liquid.\nThis is the inverse of the lookup operation.
|
||||||
lcategory.unknown = Unknown
|
lcategory.unknown = Unknown
|
||||||
lcategory.unknown.description = Uncategorized instructions.
|
lcategory.unknown.description = Uncategorized instructions.
|
||||||
lcategory.io = Input & Output
|
lcategory.io = Input & Output
|
||||||
@@ -2326,6 +2338,7 @@ lenum.unbind = Completely disable logic control.\nResume standard AI.
|
|||||||
lenum.move = Move to exact position.
|
lenum.move = Move to exact position.
|
||||||
lenum.approach = Approach a position with a radius.
|
lenum.approach = Approach a position with a radius.
|
||||||
lenum.pathfind = Pathfind to the enemy spawn.
|
lenum.pathfind = Pathfind to the enemy spawn.
|
||||||
|
lenum.autopathfind = Automatically pathfinds to the nearest enemy core or drop point.\nThis is the same as standard wave enemy pathfinding.
|
||||||
lenum.target = Shoot a position.
|
lenum.target = Shoot a position.
|
||||||
lenum.targetp = Shoot a target with velocity prediction.
|
lenum.targetp = Shoot a target with velocity prediction.
|
||||||
lenum.itemdrop = Drop an item.
|
lenum.itemdrop = Drop an item.
|
||||||
@@ -2339,5 +2352,3 @@ lenum.build = Build a structure.
|
|||||||
lenum.getblock = Fetch a building and type at coordinates.\nUnit must be in range of position.\nSolid non-buildings will have the type [accent]@solid[].
|
lenum.getblock = Fetch a building and type at coordinates.\nUnit must be in range of position.\nSolid non-buildings will have the type [accent]@solid[].
|
||||||
lenum.within = Check if unit is near a position.
|
lenum.within = Check if unit is near a position.
|
||||||
lenum.boost = Start/stop boosting.
|
lenum.boost = Start/stop boosting.
|
||||||
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
|
||||||
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
|
||||||
|
|||||||
@@ -259,6 +259,7 @@ trace = Suivre le joueur
|
|||||||
trace.playername = Nom du joueur : [accent]{0}
|
trace.playername = Nom du joueur : [accent]{0}
|
||||||
trace.ip = IP : [accent]{0}
|
trace.ip = IP : [accent]{0}
|
||||||
trace.id = ID : [accent]{0}
|
trace.id = ID : [accent]{0}
|
||||||
|
trace.language = Language: [accent]{0}
|
||||||
trace.mobile = Client Mobile : [accent]{0}
|
trace.mobile = Client Mobile : [accent]{0}
|
||||||
trace.modclient = Client personnalisé : [accent]{0}
|
trace.modclient = Client personnalisé : [accent]{0}
|
||||||
trace.times.joined = Nombre de connexions : [accent]{0}
|
trace.times.joined = Nombre de connexions : [accent]{0}
|
||||||
@@ -964,13 +965,16 @@ stat.healing = Guérison
|
|||||||
|
|
||||||
ability.forcefield = Champ de Force
|
ability.forcefield = Champ de Force
|
||||||
ability.repairfield = Champ de Réparation
|
ability.repairfield = Champ de Réparation
|
||||||
ability.statusfield = Champ d'Amélioration {0}
|
ability.statusfield = Champ d'Amélioration
|
||||||
ability.unitspawn = Usine de {0}
|
ability.unitspawn = Usine
|
||||||
ability.shieldregenfield = Champ de régénération de bouclier
|
ability.shieldregenfield = Champ de régénération de bouclier
|
||||||
ability.movelightning = Déplacement éclair
|
ability.movelightning = Déplacement éclair
|
||||||
ability.shieldarc = Arc de Bouclier
|
ability.shieldarc = Arc de Bouclier
|
||||||
ability.suppressionfield = Champ de Suppression de Soins
|
ability.suppressionfield = Champ de Suppression de Soins
|
||||||
ability.energyfield = Champ d'énergie: [accent]{0}[] dégâts ~ [accent]{1}[] blocs / [accent]{2}[] cibles
|
ability.energyfield = Champ d'énergie
|
||||||
|
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}%
|
||||||
|
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0}
|
||||||
|
ability.regen = Regeneration
|
||||||
|
|
||||||
bar.onlycoredeposit = Seul le dépôt de ressources dans le Noyau est autorisé
|
bar.onlycoredeposit = Seul le dépôt de ressources dans le Noyau est autorisé
|
||||||
bar.drilltierreq = Meilleure Foreuse Requise
|
bar.drilltierreq = Meilleure Foreuse Requise
|
||||||
@@ -1111,6 +1115,7 @@ setting.position.name = Afficher la position du joueur
|
|||||||
setting.mouseposition.name = Afficher la Position de la Souris
|
setting.mouseposition.name = Afficher la Position de la Souris
|
||||||
setting.musicvol.name = Volume de la Musique
|
setting.musicvol.name = Volume de la Musique
|
||||||
setting.atmosphere.name = Montrer l'Atmosphère de la planète
|
setting.atmosphere.name = Montrer l'Atmosphère de la planète
|
||||||
|
setting.drawlight.name = Draw Darkness/Lighting
|
||||||
setting.ambientvol.name = Volume Ambiant
|
setting.ambientvol.name = Volume Ambiant
|
||||||
setting.mutemusic.name = Couper la Musique
|
setting.mutemusic.name = Couper la Musique
|
||||||
setting.sfxvol.name = Volume des Sons et Effets
|
setting.sfxvol.name = Volume des Sons et Effets
|
||||||
@@ -1868,6 +1873,11 @@ onset.attack = L'ennemi est vulnérable. Contre-attaquez.
|
|||||||
onset.cores = Les noyaux peuvent être placés sur des [accent]tuiles de noyau[].\nCes nouveaux noyaux servent à faire avancer votre base et partager vos ressources avec d'autres noyaux.\nPlacez un noyau \uf725.
|
onset.cores = Les noyaux peuvent être placés sur des [accent]tuiles de noyau[].\nCes nouveaux noyaux servent à faire avancer votre base et partager vos ressources avec d'autres noyaux.\nPlacez un noyau \uf725.
|
||||||
onset.detect = L'ennemi sera capable de vous détecter dans 2 minutes.\nAméliorez vos défenses, vos exploitations minières ainsi que votre production.
|
onset.detect = L'ennemi sera capable de vous détecter dans 2 minutes.\nAméliorez vos défenses, vos exploitations minières ainsi que votre production.
|
||||||
|
|
||||||
|
#Ne pas traduire
|
||||||
|
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
||||||
|
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
||||||
|
aegis.tungsten = Tungsten can be mined using an [accent]impact drill[].\nThis structure requires [accent]water[] and [accent]power[].
|
||||||
|
|
||||||
split.pickup = Certains blocs peuvent être transportés par des unités du noyau.\nTransportez ce [accent]conteneur[] et placez-le sur le [accent]chargeur de charges utiles[].\n(Les touches par défaut sont [[ pour ramasser et ] pour déposer)
|
split.pickup = Certains blocs peuvent être transportés par des unités du noyau.\nTransportez ce [accent]conteneur[] et placez-le sur le [accent]chargeur de charges utiles[].\n(Les touches par défaut sont [[ pour ramasser et ] pour déposer)
|
||||||
split.pickup.mobile = Certains blocs peuvent être transportés par des unités du noyau.\nTransportez ce [accent]conteneur[] et placez-le sur le [accent]chargeur de charges utiles[].\n(Pour ramasser ou déposer quelque chose, Pressez longuement dessus.)
|
split.pickup.mobile = Certains blocs peuvent être transportés par des unités du noyau.\nTransportez ce [accent]conteneur[] et placez-le sur le [accent]chargeur de charges utiles[].\n(Pour ramasser ou déposer quelque chose, Pressez longuement dessus.)
|
||||||
split.acquire = Vous devez acquérir du tungstène pour construire des unités.
|
split.acquire = Vous devez acquérir du tungstène pour construire des unités.
|
||||||
@@ -2258,6 +2268,8 @@ 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 = Change une propriété d'une unité ou d'un bâtiment.
|
lst.setprop = Change une propriété d'une unité ou d'un bâtiment.
|
||||||
|
lst.effect = Create a particle effect.
|
||||||
|
lst.sync = Sync a variable across the network.\nOnly invoked 10 times a second at most.
|
||||||
|
|
||||||
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.
|
||||||
|
|
||||||
@@ -2273,6 +2285,7 @@ laccess.dead = Retourne si l'Unité/Bâtiment est morte/détruit ou plus valide.
|
|||||||
laccess.controlled = Retourne:\n[accent]@ctrlProcessor[] si le contrôleur de l'Unité est un processeur\n[accent]@ctrlPlayer[] si l'Unité/Bâtiment est contrôlé par un joueur\n[accent]@ctrlFormation[] si l'Unité est en formation\nSinon, retourne 0.
|
laccess.controlled = Retourne:\n[accent]@ctrlProcessor[] si le contrôleur de l'Unité est un processeur\n[accent]@ctrlPlayer[] si l'Unité/Bâtiment est contrôlé par un joueur\n[accent]@ctrlFormation[] si l'Unité est en formation\nSinon, retourne 0.
|
||||||
laccess.progress = Progression de l'action, 0 à 1.\nRenvoie la progression de la production, du rechargement de la tourelle ou de la construction.
|
laccess.progress = Progression de l'action, 0 à 1.\nRenvoie la progression de la production, du rechargement de la tourelle ou de la construction.
|
||||||
laccess.speed = La vitesse maximale d'une unité, en blocs/sec.
|
laccess.speed = La vitesse maximale d'une unité, en blocs/sec.
|
||||||
|
laccess.id = ID of a unit/block/item/liquid.\nThis is the inverse of the lookup operation.
|
||||||
|
|
||||||
lcategory.unknown = Inconnu
|
lcategory.unknown = Inconnu
|
||||||
lcategory.unknown.description = Instructions sans catégorie.
|
lcategory.unknown.description = Instructions sans catégorie.
|
||||||
@@ -2394,6 +2407,7 @@ lenum.unbind = Désactive complètement le contrôle par processeur.\nL'unité r
|
|||||||
lenum.move = Bouge vers la position exacte.
|
lenum.move = Bouge vers la position exacte.
|
||||||
lenum.approach = Approche une position avec un rayon.
|
lenum.approach = Approche une position avec un rayon.
|
||||||
lenum.pathfind = Détermine un itinéraire et bouge vers le point d'apparition ennemi.
|
lenum.pathfind = Détermine un itinéraire et bouge vers le point d'apparition ennemi.
|
||||||
|
lenum.autopathfind = Automatically pathfinds to the nearest enemy core or drop point.\nThis is the same as standard wave enemy pathfinding.
|
||||||
lenum.target = Tire vers la position donnée.
|
lenum.target = Tire vers la position donnée.
|
||||||
lenum.targetp = Tire sur une cible avec la prédiction de mouvement.
|
lenum.targetp = Tire sur une cible avec la prédiction de mouvement.
|
||||||
lenum.itemdrop = Lâche un objet.
|
lenum.itemdrop = Lâche un objet.
|
||||||
@@ -2407,7 +2421,3 @@ lenum.build = Construit une structure.
|
|||||||
lenum.getblock = Récupère des données sur un bâtiment et son type aux coordonnées données.\nL'unité doit se trouver dans la portée de la position.\nLes blocs solides qui ne sont pas des bâtiments auront le type [accent]@solid[].
|
lenum.getblock = Récupère des données sur un bâtiment et son type aux coordonnées données.\nL'unité doit se trouver dans la portée de la position.\nLes blocs solides qui ne sont pas des bâtiments auront le type [accent]@solid[].
|
||||||
lenum.within = Vérifie si l'unité est près de la position.
|
lenum.within = Vérifie si l'unité est près de la position.
|
||||||
lenum.boost = Active/Désactive le boost.
|
lenum.boost = Active/Désactive le boost.
|
||||||
|
|
||||||
#Ne pas traduire
|
|
||||||
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
|
||||||
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
|
||||||
|
|||||||
@@ -254,6 +254,7 @@ trace = Játékos követése
|
|||||||
trace.playername = Játékos neve: [accent]{0}
|
trace.playername = Játékos neve: [accent]{0}
|
||||||
trace.ip = IP: [accent]{0}
|
trace.ip = IP: [accent]{0}
|
||||||
trace.id = Azonosító: [accent]{0}
|
trace.id = Azonosító: [accent]{0}
|
||||||
|
trace.language = Language: [accent]{0}
|
||||||
trace.mobile = Mobil kliens: [accent]{0}
|
trace.mobile = Mobil kliens: [accent]{0}
|
||||||
trace.modclient = Nem hivatalos kliens: [accent]{0}
|
trace.modclient = Nem hivatalos kliens: [accent]{0}
|
||||||
trace.times.joined = Csatlakotások száma: [accent]{0}
|
trace.times.joined = Csatlakotások száma: [accent]{0}
|
||||||
@@ -948,12 +949,16 @@ stat.healing = Healing
|
|||||||
ability.forcefield = Erőtér
|
ability.forcefield = Erőtér
|
||||||
ability.repairfield = Javító mező
|
ability.repairfield = Javító mező
|
||||||
ability.statusfield = Status Field
|
ability.statusfield = Status Field
|
||||||
ability.unitspawn = {0} Gyár
|
ability.unitspawn = Gyár
|
||||||
ability.shieldregenfield = Pajzsos regeneráló mező
|
ability.shieldregenfield = Pajzsos regeneráló mező
|
||||||
ability.movelightning = Világítás
|
ability.movelightning = Világítás
|
||||||
ability.shieldarc = Shield Arc
|
ability.shieldarc = Shield Arc
|
||||||
ability.suppressionfield = Regen Suppression Field
|
ability.suppressionfield = Regen Suppression Field
|
||||||
ability.energyfield = Energy Field: [accent]{0}[] damage ~ [accent]{1}[] blocks / [accent]{2}[] targets
|
ability.energyfield = Energy Field
|
||||||
|
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}%
|
||||||
|
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0}
|
||||||
|
ability.regen = Regeneration
|
||||||
|
|
||||||
bar.onlycoredeposit = Only Core Depositing Allowed
|
bar.onlycoredeposit = Only Core Depositing Allowed
|
||||||
|
|
||||||
bar.drilltierreq = Erősebb Drill szükséges
|
bar.drilltierreq = Erősebb Drill szükséges
|
||||||
@@ -1094,6 +1099,7 @@ setting.position.name = A játékos pozíciójának megjelenítése
|
|||||||
setting.mouseposition.name = Show Mouse Position
|
setting.mouseposition.name = Show Mouse Position
|
||||||
setting.musicvol.name = Zene hangerő
|
setting.musicvol.name = Zene hangerő
|
||||||
setting.atmosphere.name = Bolygó atmoszféra
|
setting.atmosphere.name = Bolygó atmoszféra
|
||||||
|
setting.drawlight.name = Draw Darkness/Lighting
|
||||||
setting.ambientvol.name = Környezeti hangerő
|
setting.ambientvol.name = Környezeti hangerő
|
||||||
setting.mutemusic.name = Zene némítása
|
setting.mutemusic.name = Zene némítása
|
||||||
setting.sfxvol.name = SFX hangerő
|
setting.sfxvol.name = SFX hangerő
|
||||||
@@ -1842,6 +1848,9 @@ 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.
|
||||||
|
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
||||||
|
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
||||||
|
aegis.tungsten = Tungsten can be mined using an [accent]impact drill[].\nThis structure requires [accent]water[] and [accent]power[].
|
||||||
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)
|
||||||
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
||||||
split.acquire = You must acquire some tungsten to build units.
|
split.acquire = You must acquire some tungsten to build units.
|
||||||
@@ -2222,6 +2231,8 @@ 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.
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
lst.effect = Create a particle effect.
|
||||||
|
lst.sync = Sync a variable across the network.\nOnly invoked 10 times a second at most.
|
||||||
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.
|
||||||
@@ -2234,6 +2245,7 @@ laccess.dead = Whether a unit/building is dead or no longer valid.
|
|||||||
laccess.controlled = Returns:\n[accent]@ctrlProcessor[] if unit controller is processor\n[accent]@ctrlPlayer[] if unit/building controller is player\n[accent]@ctrlFormation[] if unit is in formation\nOtherwise, 0.
|
laccess.controlled = Returns:\n[accent]@ctrlProcessor[] if unit controller is processor\n[accent]@ctrlPlayer[] if unit/building controller is player\n[accent]@ctrlFormation[] if unit is in formation\nOtherwise, 0.
|
||||||
laccess.progress = Action progress, 0 to 1.\nReturns production, turret reload or construction progress.
|
laccess.progress = Action progress, 0 to 1.\nReturns production, turret reload or construction progress.
|
||||||
laccess.speed = Top speed of a unit, in tiles/sec.
|
laccess.speed = Top speed of a unit, in tiles/sec.
|
||||||
|
laccess.id = ID of a unit/block/item/liquid.\nThis is the inverse of the lookup operation.
|
||||||
lcategory.unknown = Unknown
|
lcategory.unknown = Unknown
|
||||||
lcategory.unknown.description = Uncategorized instructions.
|
lcategory.unknown.description = Uncategorized instructions.
|
||||||
lcategory.io = Input & Output
|
lcategory.io = Input & Output
|
||||||
@@ -2338,6 +2350,7 @@ lenum.unbind = Completely disable logic control.\nResume standard AI.
|
|||||||
lenum.move = Move to exact position.
|
lenum.move = Move to exact position.
|
||||||
lenum.approach = Approach a position with a radius.
|
lenum.approach = Approach a position with a radius.
|
||||||
lenum.pathfind = Pathfind to the enemy spawn.
|
lenum.pathfind = Pathfind to the enemy spawn.
|
||||||
|
lenum.autopathfind = Automatically pathfinds to the nearest enemy core or drop point.\nThis is the same as standard wave enemy pathfinding.
|
||||||
lenum.target = Shoot a position.
|
lenum.target = Shoot a position.
|
||||||
lenum.targetp = Shoot a target with velocity prediction.
|
lenum.targetp = Shoot a target with velocity prediction.
|
||||||
lenum.itemdrop = Drop an item.
|
lenum.itemdrop = Drop an item.
|
||||||
@@ -2351,5 +2364,3 @@ lenum.build = Build a structure.
|
|||||||
lenum.getblock = Fetch a building and type at coordinates.\nUnit must be in range of position.\nSolid non-buildings will have the type [accent]@solid[].
|
lenum.getblock = Fetch a building and type at coordinates.\nUnit must be in range of position.\nSolid non-buildings will have the type [accent]@solid[].
|
||||||
lenum.within = Check if unit is near a position.
|
lenum.within = Check if unit is near a position.
|
||||||
lenum.boost = Start/stop boosting.
|
lenum.boost = Start/stop boosting.
|
||||||
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
|
||||||
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
|
||||||
|
|||||||
@@ -255,6 +255,7 @@ trace = Lacak Pemain
|
|||||||
trace.playername = Nama pemain: [accent]{0}
|
trace.playername = Nama pemain: [accent]{0}
|
||||||
trace.ip = IP: [accent]{0}
|
trace.ip = IP: [accent]{0}
|
||||||
trace.id = ID: [accent]{0}
|
trace.id = ID: [accent]{0}
|
||||||
|
trace.language = Language: [accent]{0}
|
||||||
trace.mobile = Client Mobile: [accent]{0}
|
trace.mobile = Client Mobile: [accent]{0}
|
||||||
trace.modclient = Client Modifikasi: [accent]{0}
|
trace.modclient = Client Modifikasi: [accent]{0}
|
||||||
trace.times.joined = Total Bergabung: [accent]{0}
|
trace.times.joined = Total Bergabung: [accent]{0}
|
||||||
@@ -958,13 +959,16 @@ stat.healing = Menyembuhkan
|
|||||||
|
|
||||||
ability.forcefield = Bidang Kekuatan
|
ability.forcefield = Bidang Kekuatan
|
||||||
ability.repairfield = Bidang Perbaikan
|
ability.repairfield = Bidang Perbaikan
|
||||||
ability.statusfield = {0} Bidang Status
|
ability.statusfield = Bidang Status
|
||||||
ability.unitspawn = {0} Pabrik
|
ability.unitspawn = Pabrik
|
||||||
ability.shieldregenfield = Bidang Regenerasi Perisai
|
ability.shieldregenfield = Bidang Regenerasi Perisai
|
||||||
ability.movelightning = Pergerakan Petir
|
ability.movelightning = Pergerakan Petir
|
||||||
ability.shieldarc = Shield Arc
|
ability.shieldarc = Shield Arc
|
||||||
ability.suppressionfield = Regen Suppression Field
|
ability.suppressionfield = Regen Suppression Field
|
||||||
ability.energyfield = Bidang Tenaga: [accent]{0}[] kerusakan ~ [accent]{1}[] blok / [accent]{2}[] target
|
ability.energyfield = Bidang Tenaga
|
||||||
|
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}%
|
||||||
|
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0}
|
||||||
|
ability.regen = Regeneration
|
||||||
|
|
||||||
bar.onlycoredeposit = Hanya Penyetoran Inti yang Diizinkan
|
bar.onlycoredeposit = Hanya Penyetoran Inti yang Diizinkan
|
||||||
bar.drilltierreq = Membutuhkan Bor yang Lebih Baik
|
bar.drilltierreq = Membutuhkan Bor yang Lebih Baik
|
||||||
@@ -1105,6 +1109,7 @@ setting.position.name = Tunjukkan Posisi Pemain
|
|||||||
setting.mouseposition.name = Tunjukkan Posisi Tetikus
|
setting.mouseposition.name = Tunjukkan Posisi Tetikus
|
||||||
setting.musicvol.name = Volume Musik
|
setting.musicvol.name = Volume Musik
|
||||||
setting.atmosphere.name = Tunjukkan Atmosfer Planet
|
setting.atmosphere.name = Tunjukkan Atmosfer Planet
|
||||||
|
setting.drawlight.name = Draw Darkness/Lighting
|
||||||
setting.ambientvol.name = Volume Sekeliling
|
setting.ambientvol.name = Volume Sekeliling
|
||||||
setting.mutemusic.name = Diamkan Musik
|
setting.mutemusic.name = Diamkan Musik
|
||||||
setting.sfxvol.name = Volume Efek Suara
|
setting.sfxvol.name = Volume Efek Suara
|
||||||
@@ -1859,6 +1864,11 @@ 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.
|
||||||
|
|
||||||
|
#Don't translate these yet!
|
||||||
|
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
||||||
|
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
||||||
|
aegis.tungsten = Tungsten can be mined using an [accent]impact drill[].\nThis structure requires [accent]water[] and [accent]power[].
|
||||||
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)
|
||||||
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
||||||
split.acquire = You must acquire some tungsten to build units.
|
split.acquire = You must acquire some tungsten to build units.
|
||||||
@@ -2249,6 +2259,8 @@ 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.
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
lst.effect = Create a particle effect.
|
||||||
|
lst.sync = Sync a variable across the network.\nOnly invoked 10 times a second at most.
|
||||||
|
|
||||||
logic.nounitbuild = [red]Logika unit membangun tidak diperbolehkan di sini.
|
logic.nounitbuild = [red]Logika unit membangun tidak diperbolehkan di sini.
|
||||||
|
|
||||||
@@ -2264,6 +2276,7 @@ laccess.dead = Menentukan apakah unit/bangunan itu hancur atau tidak ada lagi.
|
|||||||
laccess.controlled = Mengembalikan:\n[accent]@ctrlProcessor[] bila pengendali unit adalah prosesor\n[accent]@ctrlPlayer[] bila pengendali unit/bangunan adalah pemain\n[accent]@ctrlFormation[] bila unit dalam formasi\nSebaliknya, 0.
|
laccess.controlled = Mengembalikan:\n[accent]@ctrlProcessor[] bila pengendali unit adalah prosesor\n[accent]@ctrlPlayer[] bila pengendali unit/bangunan adalah pemain\n[accent]@ctrlFormation[] bila unit dalam formasi\nSebaliknya, 0.
|
||||||
laccess.progress = Memeriksa hasil kemajuan, 0 sampai 1.\nMengembalikan hasil laju produksi, pengisian ulang menara atau pembangunan.
|
laccess.progress = Memeriksa hasil kemajuan, 0 sampai 1.\nMengembalikan hasil laju produksi, pengisian ulang menara atau pembangunan.
|
||||||
laccess.speed = Kecepatan tertinggi dari suatu unit, dalam petak/detik.
|
laccess.speed = Kecepatan tertinggi dari suatu unit, dalam petak/detik.
|
||||||
|
laccess.id = ID of a unit/block/item/liquid.\nThis is the inverse of the lookup operation.
|
||||||
|
|
||||||
lcategory.unknown = Tak Diketahui
|
lcategory.unknown = Tak Diketahui
|
||||||
lcategory.unknown.description = Instruksi tanpa kategori.
|
lcategory.unknown.description = Instruksi tanpa kategori.
|
||||||
@@ -2385,6 +2398,7 @@ lenum.unbind = Mematikan kendali logika.\nLanjutkan A.I. standar.
|
|||||||
lenum.move = Bergerak ke posisi yang ditentukan.
|
lenum.move = Bergerak ke posisi yang ditentukan.
|
||||||
lenum.approach = Mendekati posisi dalam radius.
|
lenum.approach = Mendekati posisi dalam radius.
|
||||||
lenum.pathfind = Mencari arah ke tempat munculnya musuh.
|
lenum.pathfind = Mencari arah ke tempat munculnya musuh.
|
||||||
|
lenum.autopathfind = Automatically pathfinds to the nearest enemy core or drop point.\nThis is the same as standard wave enemy pathfinding.
|
||||||
lenum.target = Menembak pada posisi.
|
lenum.target = Menembak pada posisi.
|
||||||
lenum.targetp = Menembak target dengan perkiraan kecepatan.
|
lenum.targetp = Menembak target dengan perkiraan kecepatan.
|
||||||
lenum.itemdrop = Menjatuhkan bahan.
|
lenum.itemdrop = Menjatuhkan bahan.
|
||||||
@@ -2398,7 +2412,3 @@ lenum.build = Membangun sebuah sttruktur.
|
|||||||
lenum.getblock = Mengambil bangunan dan tipenya pada koordinat tertentu.\nUnit harus ada dalam jangkauan tersebut.\nBentuk padat yang bukan merupakan bangunan akan memiliki tipe [accent]@solid[].
|
lenum.getblock = Mengambil bangunan dan tipenya pada koordinat tertentu.\nUnit harus ada dalam jangkauan tersebut.\nBentuk padat yang bukan merupakan bangunan akan memiliki tipe [accent]@solid[].
|
||||||
lenum.within = Memeriksa apakah unit di dekat suatu posisi.
|
lenum.within = Memeriksa apakah unit di dekat suatu posisi.
|
||||||
lenum.boost = Mulai/berhenti mempercepat.
|
lenum.boost = Mulai/berhenti mempercepat.
|
||||||
|
|
||||||
#Don't translate these yet!
|
|
||||||
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
|
||||||
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
|
||||||
|
|||||||
@@ -253,6 +253,7 @@ trace = Traccia Giocatore
|
|||||||
trace.playername = Nome del Giocatore: [accent]{0}
|
trace.playername = Nome del Giocatore: [accent]{0}
|
||||||
trace.ip = IP: [accent]{0}
|
trace.ip = IP: [accent]{0}
|
||||||
trace.id = ID univoco: [accent]{0}
|
trace.id = ID univoco: [accent]{0}
|
||||||
|
trace.language = Language: [accent]{0}
|
||||||
trace.mobile = Client Mobile: [accent]{0}
|
trace.mobile = Client Mobile: [accent]{0}
|
||||||
trace.modclient = Client Personalizzato: [accent]{0}
|
trace.modclient = Client Personalizzato: [accent]{0}
|
||||||
trace.times.joined = Accessi: [accent]{0}
|
trace.times.joined = Accessi: [accent]{0}
|
||||||
@@ -945,12 +946,16 @@ stat.healing = Rigenerazione
|
|||||||
ability.forcefield = Campo di Forza
|
ability.forcefield = Campo di Forza
|
||||||
ability.repairfield = Campo Riparativo
|
ability.repairfield = Campo Riparativo
|
||||||
ability.statusfield = Campo di Stato
|
ability.statusfield = Campo di Stato
|
||||||
ability.unitspawn = {0} Fabbrica
|
ability.unitspawn = Fabbrica
|
||||||
ability.shieldregenfield = Campo di Rigenerazione Scudo
|
ability.shieldregenfield = Campo di Rigenerazione Scudo
|
||||||
ability.movelightning = Movimento Fulminante
|
ability.movelightning = Movimento Fulminante
|
||||||
ability.shieldarc = Shield Arc
|
ability.shieldarc = Shield Arc
|
||||||
ability.suppressionfield = Regen Suppression Field
|
ability.suppressionfield = Regen Suppression Field
|
||||||
ability.energyfield = Campo energetico: [accent]{0}[] danno ~ [accent]{1}[] blocchi / [accent]{2}[] obbiettivi
|
ability.energyfield = Campo energetico
|
||||||
|
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}%
|
||||||
|
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0}
|
||||||
|
ability.regen = Regeneration
|
||||||
|
|
||||||
bar.onlycoredeposit = Concesso solo il deposito al nucleo
|
bar.onlycoredeposit = Concesso solo il deposito al nucleo
|
||||||
|
|
||||||
bar.drilltierreq = Miglior Trivella Richiesta
|
bar.drilltierreq = Miglior Trivella Richiesta
|
||||||
@@ -1091,6 +1096,7 @@ setting.position.name = Mostra Posizione Giocatori
|
|||||||
setting.mouseposition.name = Mostra mouse
|
setting.mouseposition.name = Mostra mouse
|
||||||
setting.musicvol.name = Volume Musica
|
setting.musicvol.name = Volume Musica
|
||||||
setting.atmosphere.name = Mostra Atmosfera Pianeta
|
setting.atmosphere.name = Mostra Atmosfera Pianeta
|
||||||
|
setting.drawlight.name = Draw Darkness/Lighting
|
||||||
setting.ambientvol.name = Volume Ambiente
|
setting.ambientvol.name = Volume Ambiente
|
||||||
setting.mutemusic.name = Silenzia Musica
|
setting.mutemusic.name = Silenzia Musica
|
||||||
setting.sfxvol.name = Volume Effetti
|
setting.sfxvol.name = Volume Effetti
|
||||||
@@ -1844,6 +1850,9 @@ 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.
|
||||||
|
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
||||||
|
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
||||||
|
aegis.tungsten = Tungsten can be mined using an [accent]impact drill[].\nThis structure requires [accent]water[] and [accent]power[].
|
||||||
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)
|
||||||
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
||||||
split.acquire = You must acquire some tungsten to build units.
|
split.acquire = You must acquire some tungsten to build units.
|
||||||
@@ -2224,6 +2233,8 @@ 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.
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
lst.effect = Create a particle effect.
|
||||||
|
lst.sync = Sync a variable across the network.\nOnly invoked 10 times a second at most.
|
||||||
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.
|
||||||
@@ -2236,6 +2247,7 @@ laccess.dead = Whether a unit/building is dead or no longer valid.
|
|||||||
laccess.controlled = Returns:\n[accent]@ctrlProcessor[] if unit controller is processor\n[accent]@ctrlPlayer[] if unit/building controller is player\n[accent]@ctrlFormation[] if unit is in formation\nOtherwise, 0.
|
laccess.controlled = Returns:\n[accent]@ctrlProcessor[] if unit controller is processor\n[accent]@ctrlPlayer[] if unit/building controller is player\n[accent]@ctrlFormation[] if unit is in formation\nOtherwise, 0.
|
||||||
laccess.progress = Action progress, 0 to 1.\nReturns production, turret reload or construction progress.
|
laccess.progress = Action progress, 0 to 1.\nReturns production, turret reload or construction progress.
|
||||||
laccess.speed = Top speed of a unit, in tiles/sec.
|
laccess.speed = Top speed of a unit, in tiles/sec.
|
||||||
|
laccess.id = ID of a unit/block/item/liquid.\nThis is the inverse of the lookup operation.
|
||||||
lcategory.unknown = Unknown
|
lcategory.unknown = Unknown
|
||||||
lcategory.unknown.description = Uncategorized instructions.
|
lcategory.unknown.description = Uncategorized instructions.
|
||||||
lcategory.io = Input & Output
|
lcategory.io = Input & Output
|
||||||
@@ -2340,6 +2352,7 @@ lenum.unbind = Completely disable logic control.\nResume standard AI.
|
|||||||
lenum.move = Move to exact position.
|
lenum.move = Move to exact position.
|
||||||
lenum.approach = Approach a position with a radius.
|
lenum.approach = Approach a position with a radius.
|
||||||
lenum.pathfind = Pathfind to the enemy spawn.
|
lenum.pathfind = Pathfind to the enemy spawn.
|
||||||
|
lenum.autopathfind = Automatically pathfinds to the nearest enemy core or drop point.\nThis is the same as standard wave enemy pathfinding.
|
||||||
lenum.target = Shoot a position.
|
lenum.target = Shoot a position.
|
||||||
lenum.targetp = Shoot a target with velocity prediction.
|
lenum.targetp = Shoot a target with velocity prediction.
|
||||||
lenum.itemdrop = Drop an item.
|
lenum.itemdrop = Drop an item.
|
||||||
@@ -2353,5 +2366,3 @@ lenum.build = Build a structure.
|
|||||||
lenum.getblock = Fetch a building and type at coordinates.\nUnit must be in range of position.\nSolid non-buildings will have the type [accent]@solid[].
|
lenum.getblock = Fetch a building and type at coordinates.\nUnit must be in range of position.\nSolid non-buildings will have the type [accent]@solid[].
|
||||||
lenum.within = Check if unit is near a position.
|
lenum.within = Check if unit is near a position.
|
||||||
lenum.boost = Start/stop boosting.
|
lenum.boost = Start/stop boosting.
|
||||||
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
|
||||||
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
|
||||||
|
|||||||
@@ -255,6 +255,7 @@ trace = プレイヤーの記録
|
|||||||
trace.playername = プレイヤー名: [accent]{0}
|
trace.playername = プレイヤー名: [accent]{0}
|
||||||
trace.ip = IP: [accent]{0}
|
trace.ip = IP: [accent]{0}
|
||||||
trace.id = ID: [accent]{0}
|
trace.id = ID: [accent]{0}
|
||||||
|
trace.language = Language: [accent]{0}
|
||||||
trace.mobile = モバイルクライアント: [accent]{0}
|
trace.mobile = モバイルクライアント: [accent]{0}
|
||||||
trace.modclient = カスタムクライアント: [accent]{0}
|
trace.modclient = カスタムクライアント: [accent]{0}
|
||||||
trace.times.joined = 参加回数: [accent]{0}
|
trace.times.joined = 参加回数: [accent]{0}
|
||||||
@@ -950,13 +951,17 @@ stat.healing = 治癒
|
|||||||
|
|
||||||
ability.forcefield = フォースフィールド
|
ability.forcefield = フォースフィールド
|
||||||
ability.repairfield = リペアフィールド
|
ability.repairfield = リペアフィールド
|
||||||
ability.statusfield = {0} ステータスフィールド
|
ability.statusfield = ステータスフィールド
|
||||||
ability.unitspawn = {0} 生産
|
ability.unitspawn = 生産
|
||||||
ability.shieldregenfield = シールドリペアフィールド
|
ability.shieldregenfield = シールドリペアフィールド
|
||||||
ability.movelightning = ムーブメントライトニング
|
ability.movelightning = ムーブメントライトニング
|
||||||
ability.shieldarc = シールドアーク
|
ability.shieldarc = シールドアーク
|
||||||
ability.suppressionfield = リジェネ抑制フィールド
|
ability.suppressionfield = リジェネ抑制フィールド
|
||||||
ability.energyfield = エネルギー範囲: [accent]{0}[] ダメージ ~ [accent]{1}[] ブロック / [accent]{2}[] ターゲット
|
ability.energyfield = エネルギー範囲
|
||||||
|
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}%
|
||||||
|
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0}
|
||||||
|
ability.regen = Regeneration
|
||||||
|
|
||||||
bar.onlycoredeposit = コアにのみ搬入できます。
|
bar.onlycoredeposit = コアにのみ搬入できます。
|
||||||
|
|
||||||
bar.drilltierreq = より高性能なドリルを使用してください
|
bar.drilltierreq = より高性能なドリルを使用してください
|
||||||
@@ -1097,6 +1102,7 @@ setting.position.name = プレイヤーの位置表示
|
|||||||
setting.mouseposition.name = マウスの位置を表示
|
setting.mouseposition.name = マウスの位置を表示
|
||||||
setting.musicvol.name = 音楽 音量
|
setting.musicvol.name = 音楽 音量
|
||||||
setting.atmosphere.name = 惑星の大気を表示
|
setting.atmosphere.name = 惑星の大気を表示
|
||||||
|
setting.drawlight.name = Draw Darkness/Lighting
|
||||||
setting.ambientvol.name = 環境音 音量
|
setting.ambientvol.name = 環境音 音量
|
||||||
setting.mutemusic.name = 音楽をミュート
|
setting.mutemusic.name = 音楽をミュート
|
||||||
setting.sfxvol.name = 効果音 音量
|
setting.sfxvol.name = 効果音 音量
|
||||||
@@ -1730,8 +1736,8 @@ block.tank-refabricator.name = 戦車再加工工場
|
|||||||
block.mech-refabricator.name = メカ再加工工場
|
block.mech-refabricator.name = メカ再加工工場
|
||||||
block.ship-refabricator.name = 戦艦再加工工場
|
block.ship-refabricator.name = 戦艦再加工工場
|
||||||
block.tank-assembler.name = 戦車組立工場
|
block.tank-assembler.name = 戦車組立工場
|
||||||
block.ship-assembler.name = メカ組立工場
|
block.ship-assembler.name = 戦艦組立工場
|
||||||
block.mech-assembler.name = 戦艦組立工場
|
block.mech-assembler.name = メカ組立工場
|
||||||
block.reinforced-payload-conveyor.name = 強化ペイロードコンベアー
|
block.reinforced-payload-conveyor.name = 強化ペイロードコンベアー
|
||||||
block.reinforced-payload-router.name = 強化ペイロードルーター
|
block.reinforced-payload-router.name = 強化ペイロードルーター
|
||||||
block.payload-mass-driver.name = ペイロードマスドライバー
|
block.payload-mass-driver.name = ペイロードマスドライバー
|
||||||
@@ -1847,6 +1853,9 @@ onset.enemies = 敵が迫ってきました、防御する準備をしてくだ
|
|||||||
onset.attack = 敵は脆弱です。反撃しましょう!
|
onset.attack = 敵は脆弱です。反撃しましょう!
|
||||||
onset.cores = 新しいコアは [accent]コアタイル[] に配置できます。\n新しいコアは前線基地として機能し、リソースインベントリを他のコアと共有します。\n\uf725 コアを配置しましょう。
|
onset.cores = 新しいコアは [accent]コアタイル[] に配置できます。\n新しいコアは前線基地として機能し、リソースインベントリを他のコアと共有します。\n\uf725 コアを配置しましょう。
|
||||||
onset.detect = 敵は 2 分以内にあなたを見つけます。\n防御、採掘、生産を用意しましょう。
|
onset.detect = 敵は 2 分以内にあなたを見つけます。\n防御、採掘、生産を用意しましょう。
|
||||||
|
onset.commandmode = [accent]shift[] を押しながら [accent]コマンドモード[] に移行します。\n[accent]左クリック&ドラッグ[] でユニットを選択します。\n[accent]右クリック[] をすると、選択したユニットに移動や攻撃などの命令をします。
|
||||||
|
onset.commandmode.mobile = [accent]コマンドボタン[] を押して [accent]コマンドモード[] にします。\n長押ししながら [accent]ドラッグ[] でユニットを選択します。\n[accent]タップ[] で選択したユニットに移動や攻撃などの命令をします。
|
||||||
|
aegis.tungsten = Tungsten can be mined using an [accent]impact drill[].\nThis structure requires [accent]water[] and [accent]power[].
|
||||||
split.pickup = 一部のブロックはコアユニットで拾うことができます。\nこの [accent]コンテナ[] を拾い、[accent]ペイロード搬入機[] に配置します。\n(デフォルトのキーは [ and ] で、拾ったり置いたりできます。)
|
split.pickup = 一部のブロックはコアユニットで拾うことができます。\nこの [accent]コンテナ[] を拾い、[accent]ペイロード搬入機[] に配置します。\n(デフォルトのキーは [ and ] で、拾ったり置いたりできます。)
|
||||||
split.pickup.mobile = 一部のブロックはコアユニットで拾うことができます。\nこの[accent]コンテナ[]を拾い、[accent]ペイロード搬入機[]に配置します。\n(何かを拾ったり置いたりするには、長押しします。)
|
split.pickup.mobile = 一部のブロックはコアユニットで拾うことができます。\nこの[accent]コンテナ[]を拾い、[accent]ペイロード搬入機[]に配置します。\n(何かを拾ったり置いたりするには、長押しします。)
|
||||||
split.acquire = ユニットを構築するには、タングステンを入手する必要があります。
|
split.acquire = ユニットを構築するには、タングステンを入手する必要があります。
|
||||||
@@ -2228,6 +2237,8 @@ lst.cutscene = プレイヤーのカメラを操作します。
|
|||||||
lst.setflag = 全プロセッサーから読み取れるグローバルフラグを設定します。
|
lst.setflag = 全プロセッサーから読み取れるグローバルフラグを設定します。
|
||||||
lst.getflag = グローバルフラグが設定されているかどうかを確認します。
|
lst.getflag = グローバルフラグが設定されているかどうかを確認します。
|
||||||
lst.setprop = Sets a property of a unit or building.
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
lst.effect = Create a particle effect.
|
||||||
|
lst.sync = Sync a variable across the network.\nOnly invoked 10 times a second at most.
|
||||||
logic.nounitbuild = [red]ここではユニット構築ロジックは使用できません。
|
logic.nounitbuild = [red]ここではユニット構築ロジックは使用できません。
|
||||||
lenum.type = ユニットや建物の種類を取得します。\n例:任意のルーターに対して、 [accent]@router[] を返します。\n文字列ではありません。
|
lenum.type = ユニットや建物の種類を取得します。\n例:任意のルーターに対して、 [accent]@router[] を返します。\n文字列ではありません。
|
||||||
lenum.shoot = 指定した座標に向かって撃ちます。
|
lenum.shoot = 指定した座標に向かって撃ちます。
|
||||||
@@ -2240,6 +2251,7 @@ laccess.dead = ユニットや建物が機能しているかどうか、また
|
|||||||
laccess.controlled = ユニットや建物がどのように制御されているのかを取得します。\nプロセッサ制御の場合、 [accent]@ctrlProcessor[] を返します。\nプレイヤー制御の場合、 [accent]@ctrlPlayer[] を返します。\n隊列を組んでいる場合、 [accent]@ctrlFormation[] を返します。\nそれ以外は 0 を返します。
|
laccess.controlled = ユニットや建物がどのように制御されているのかを取得します。\nプロセッサ制御の場合、 [accent]@ctrlProcessor[] を返します。\nプレイヤー制御の場合、 [accent]@ctrlPlayer[] を返します。\n隊列を組んでいる場合、 [accent]@ctrlFormation[] を返します。\nそれ以外は 0 を返します。
|
||||||
laccess.progress = アクションの進行状況を0〜1で取得します。\n生産、リロード、または建設の進捗状況を返します。
|
laccess.progress = アクションの進行状況を0〜1で取得します。\n生産、リロード、または建設の進捗状況を返します。
|
||||||
laccess.speed = ユニットの最高速度を返します。(単位:タイル/秒)
|
laccess.speed = ユニットの最高速度を返します。(単位:タイル/秒)
|
||||||
|
laccess.id = ID of a unit/block/item/liquid.\nThis is the inverse of the lookup operation.
|
||||||
lcategory.unknown = 不明
|
lcategory.unknown = 不明
|
||||||
lcategory.unknown.description = 未分類の指示です。
|
lcategory.unknown.description = 未分類の指示です。
|
||||||
lcategory.io = 入出力
|
lcategory.io = 入出力
|
||||||
@@ -2344,6 +2356,7 @@ lenum.unbind = ロジック制御を完全に無効にします。\n標準的な
|
|||||||
lenum.move = 正確にある座標に移動します。
|
lenum.move = 正確にある座標に移動します。
|
||||||
lenum.approach = ある座標に近づきます。
|
lenum.approach = ある座標に近づきます。
|
||||||
lenum.pathfind = 敵のスポーンまでの道を探します。
|
lenum.pathfind = 敵のスポーンまでの道を探します。
|
||||||
|
lenum.autopathfind = Automatically pathfinds to the nearest enemy core or drop point.\nThis is the same as standard wave enemy pathfinding.
|
||||||
lenum.target = 指定した座標に向かって撃ちます。
|
lenum.target = 指定した座標に向かって撃ちます。
|
||||||
lenum.targetp = 任意のユニットや建物を撃ちます。
|
lenum.targetp = 任意のユニットや建物を撃ちます。
|
||||||
lenum.itemdrop = アイテムをドロップします。
|
lenum.itemdrop = アイテムをドロップします。
|
||||||
@@ -2357,5 +2370,3 @@ lenum.build = 建築をします。
|
|||||||
lenum.getblock = 座標から建物とタイプを取得します。\nユニットは範囲内でなければなりません。\n建物以外の物の型は [accent]@solid[] になります。
|
lenum.getblock = 座標から建物とタイプを取得します。\nユニットは範囲内でなければなりません。\n建物以外の物の型は [accent]@solid[] になります。
|
||||||
lenum.within = ユニットが座標の近くにあるかどうかを確認します。
|
lenum.within = ユニットが座標の近くにあるかどうかを確認します。
|
||||||
lenum.boost = ブーストの開始、停止をします。
|
lenum.boost = ブーストの開始、停止をします。
|
||||||
onset.commandmode = [accent]shift[] を押しながら [accent]コマンドモード[] に移行します。\n[accent]左クリック&ドラッグ[] でユニットを選択します。\n[accent]右クリック[] をすると、選択したユニットに移動や攻撃などの命令をします。
|
|
||||||
onset.commandmode.mobile = [accent]コマンドボタン[] を押して [accent]コマンドモード[] にします。\n長押ししながら [accent]ドラッグ[] でユニットを選択します。\n[accent]タップ[] で選択したユニットに移動や攻撃などの命令をします。
|
|
||||||
|
|||||||
@@ -255,6 +255,7 @@ trace = 플레이어 정보 보기
|
|||||||
trace.playername = 플레이어 이름: [accent]{0}
|
trace.playername = 플레이어 이름: [accent]{0}
|
||||||
trace.ip = IP: [accent]{0}
|
trace.ip = IP: [accent]{0}
|
||||||
trace.id = UUID: [accent]{0}
|
trace.id = UUID: [accent]{0}
|
||||||
|
trace.language = Language: [accent]{0}
|
||||||
trace.mobile = 모바일 클라이언트: [accent]{0}
|
trace.mobile = 모바일 클라이언트: [accent]{0}
|
||||||
trace.modclient = 사용자 지정 클라이언트: [accent]{0}
|
trace.modclient = 사용자 지정 클라이언트: [accent]{0}
|
||||||
trace.times.joined = 입장 횟수: [accent]{0}
|
trace.times.joined = 입장 횟수: [accent]{0}
|
||||||
@@ -950,13 +951,16 @@ stat.healing = 회복량
|
|||||||
|
|
||||||
ability.forcefield = 보호막 필드
|
ability.forcefield = 보호막 필드
|
||||||
ability.repairfield = 수리 필드
|
ability.repairfield = 수리 필드
|
||||||
ability.statusfield = {0} 상태이상 필드
|
ability.statusfield = 상태이상 필드
|
||||||
ability.unitspawn = {0} 공장
|
ability.unitspawn = 공장
|
||||||
ability.shieldregenfield = 방어막 복구 필드
|
ability.shieldregenfield = 방어막 복구 필드
|
||||||
ability.movelightning = 가속 전격
|
ability.movelightning = 가속 전격
|
||||||
ability.shieldarc = 방어막 아크
|
ability.shieldarc = 방어막 아크
|
||||||
ability.suppressionfield = 재생성 억제 필드
|
ability.suppressionfield = 재생성 억제 필드
|
||||||
ability.energyfield = 에너지 필드: [accent]{1}[]타일 내 [accent]{2}[]개 목표물에게 [accent]{0}[]피해량
|
ability.energyfield = 에너지 필드
|
||||||
|
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}%
|
||||||
|
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0}
|
||||||
|
ability.regen = Regeneration
|
||||||
|
|
||||||
bar.onlycoredeposit = 코어에만 투입할 수 있습니다
|
bar.onlycoredeposit = 코어에만 투입할 수 있습니다
|
||||||
bar.drilltierreq = 더 좋은 드릴 필요
|
bar.drilltierreq = 더 좋은 드릴 필요
|
||||||
@@ -1097,6 +1101,7 @@ setting.position.name = 플레이어 위치 표시
|
|||||||
setting.mouseposition.name = 마우스 좌표 표시
|
setting.mouseposition.name = 마우스 좌표 표시
|
||||||
setting.musicvol.name = 음악 크기
|
setting.musicvol.name = 음악 크기
|
||||||
setting.atmosphere.name = 행성 배경화면 표시
|
setting.atmosphere.name = 행성 배경화면 표시
|
||||||
|
setting.drawlight.name = Draw Darkness/Lighting
|
||||||
setting.ambientvol.name = 배경음 크기
|
setting.ambientvol.name = 배경음 크기
|
||||||
setting.mutemusic.name = 음소거
|
setting.mutemusic.name = 음소거
|
||||||
setting.sfxvol.name = 효과음 크기
|
setting.sfxvol.name = 효과음 크기
|
||||||
@@ -1846,6 +1851,9 @@ onset.enemies = 적이 다가옵니다, 방어 태세를 갖추세요.
|
|||||||
onset.attack = 적은 취약한 상태입니다. 반격하세요.
|
onset.attack = 적은 취약한 상태입니다. 반격하세요.
|
||||||
onset.cores = 새로운 코어는 [accent]코어 타일[]위에 배치할 수 있습니다.\n새로운 코어는 전진기지 역할을 하며 다른 코어와 저장된 자원을 공유합니다.\n \uf725 코어를 배치하세요.
|
onset.cores = 새로운 코어는 [accent]코어 타일[]위에 배치할 수 있습니다.\n새로운 코어는 전진기지 역할을 하며 다른 코어와 저장된 자원을 공유합니다.\n \uf725 코어를 배치하세요.
|
||||||
onset.detect = 적은 2분 이내에 당신을 탐지할 것입니다.\n생산, 채굴, 방어시설을 구성하세요.
|
onset.detect = 적은 2분 이내에 당신을 탐지할 것입니다.\n생산, 채굴, 방어시설을 구성하세요.
|
||||||
|
onset.commandmode = [accent]shift[]를 눌러 [accent]명령 모드[]를 활성화하세요.\n[accent]좌클릭과 드래그[]로 기체를 선택하세요.\n[accent]우클릭[]으로 선택된 기체들에게 이동 또는 공격 명령을 내리세요.
|
||||||
|
onset.commandmode.mobile = [accent]명령 버튼[]을 눌러 [accent]명령 모드[]를 활성화하세요.\n손가락을 꾹 누르고, [accent]드래그[]해서 유닛을 선택하세요.\n[accent]눌러서[] 선택된 기체들에게 이동 또는 공격 명령을 내리세요.
|
||||||
|
aegis.tungsten = Tungsten can be mined using an [accent]impact drill[].\nThis structure requires [accent]water[] and [accent]power[].
|
||||||
split.pickup = 일부 블록은 코어 기체로 집어올릴 수 있습니다.\n이 [accent]컨테이너[]를 집어올리고 [accent]화물 로더[] 속에 내려놓으세요.\n(화물을 집어올리거나 내리는 기본 키는 [ 그리고 ]입니다)
|
split.pickup = 일부 블록은 코어 기체로 집어올릴 수 있습니다.\n이 [accent]컨테이너[]를 집어올리고 [accent]화물 로더[] 속에 내려놓으세요.\n(화물을 집어올리거나 내리는 기본 키는 [ 그리고 ]입니다)
|
||||||
split.pickup.mobile = 일부 블록은 코어 기체로 집어올릴 수 있습니다.\n이 [accent]컨테이너[]를 집어올리고 [accent]화물 로더[] 속에 내려놓으세요.\n(무언가를 집어올리거나 내려놓으려면, 길게 누르세요.)
|
split.pickup.mobile = 일부 블록은 코어 기체로 집어올릴 수 있습니다.\n이 [accent]컨테이너[]를 집어올리고 [accent]화물 로더[] 속에 내려놓으세요.\n(무언가를 집어올리거나 내려놓으려면, 길게 누르세요.)
|
||||||
split.acquire = 기체를 제조하려면 텅스텐을 습득해야 합니다.
|
split.acquire = 기체를 제조하려면 텅스텐을 습득해야 합니다.
|
||||||
@@ -2228,6 +2236,8 @@ lst.cutscene = 플레이어 카메라 조작
|
|||||||
lst.setflag = 모든 프로세서가 읽을 수 있는 전역 플래그 설정
|
lst.setflag = 모든 프로세서가 읽을 수 있는 전역 플래그 설정
|
||||||
lst.getflag = 전역 플래그가 설정되어 있는지 확인
|
lst.getflag = 전역 플래그가 설정되어 있는지 확인
|
||||||
lst.setprop = 기체 혹은 건물의 속성을 설정합니다.
|
lst.setprop = 기체 혹은 건물의 속성을 설정합니다.
|
||||||
|
lst.effect = Create a particle effect.
|
||||||
|
lst.sync = Sync a variable across the network.\nOnly invoked 10 times a second at most.
|
||||||
|
|
||||||
logic.nounitbuild = [red]기체의 건설 로직은 여기서 허용되지 않습니다.
|
logic.nounitbuild = [red]기체의 건설 로직은 여기서 허용되지 않습니다.
|
||||||
|
|
||||||
@@ -2243,6 +2253,7 @@ laccess.dead = 기체 또는 건물 사망/무효 여부
|
|||||||
laccess.controlled = 만약 기체 제어자가 프로세서라면 [accent]@ctrlProcessor[]를 반환합니다.\n만약 기체/건물 제어자가 플레이어라면 [accent]@ctrlPlayer[]를 반환합니다.\n만약 기체가 다른 기체에 의해 지휘되면(G키)[accent]@ctrlFormation[]를 반환합니다.\n그 외에는 0을 반환합니다.
|
laccess.controlled = 만약 기체 제어자가 프로세서라면 [accent]@ctrlProcessor[]를 반환합니다.\n만약 기체/건물 제어자가 플레이어라면 [accent]@ctrlPlayer[]를 반환합니다.\n만약 기체가 다른 기체에 의해 지휘되면(G키)[accent]@ctrlFormation[]를 반환합니다.\n그 외에는 0을 반환합니다.
|
||||||
laccess.progress = 작업 진행률, 0 에서 1 로 감.\n포탑 재장전이나 구조물 진행률을 반환합니다.
|
laccess.progress = 작업 진행률, 0 에서 1 로 감.\n포탑 재장전이나 구조물 진행률을 반환합니다.
|
||||||
laccess.speed = 기체의 최대 속도, 타일/초
|
laccess.speed = 기체의 최대 속도, 타일/초
|
||||||
|
laccess.id = ID of a unit/block/item/liquid.\nThis is the inverse of the lookup operation.
|
||||||
lcategory.unknown = 알 수 없음
|
lcategory.unknown = 알 수 없음
|
||||||
lcategory.unknown.description = 분류되지 않은 설명
|
lcategory.unknown.description = 분류되지 않은 설명
|
||||||
lcategory.io = 입력 & 출력
|
lcategory.io = 입력 & 출력
|
||||||
@@ -2363,6 +2374,7 @@ lenum.unbind = 로직 컨트롤 완전 비활성화\n표준 AI를 다시 따릅
|
|||||||
lenum.move = 특정 위치로 이동
|
lenum.move = 특정 위치로 이동
|
||||||
lenum.approach = 특정 위치로 반지름만큼 접근
|
lenum.approach = 특정 위치로 반지름만큼 접근
|
||||||
lenum.pathfind = 적 스폰 지점으로 길찾기
|
lenum.pathfind = 적 스폰 지점으로 길찾기
|
||||||
|
lenum.autopathfind = Automatically pathfinds to the nearest enemy core or drop point.\nThis is the same as standard wave enemy pathfinding.
|
||||||
lenum.target = 특정 위치에 발사
|
lenum.target = 특정 위치에 발사
|
||||||
lenum.targetp = 목표물 속도를 예측하여 발사
|
lenum.targetp = 목표물 속도를 예측하여 발사
|
||||||
lenum.itemdrop = 아이템 투하
|
lenum.itemdrop = 아이템 투하
|
||||||
@@ -2376,5 +2388,3 @@ lenum.build = 구조물 건설
|
|||||||
lenum.getblock = 특정 좌표의 빌딩과 블록을 반환합니다.\n위치는 기체의 인지 범위 내여야 합니다.\n자연 지형은 [accent]@solid[]의 유형을 가집니다.
|
lenum.getblock = 특정 좌표의 빌딩과 블록을 반환합니다.\n위치는 기체의 인지 범위 내여야 합니다.\n자연 지형은 [accent]@solid[]의 유형을 가집니다.
|
||||||
lenum.within = 좌표 주변 기체 발견 여부
|
lenum.within = 좌표 주변 기체 발견 여부
|
||||||
lenum.boost = 이륙 시작/중단
|
lenum.boost = 이륙 시작/중단
|
||||||
onset.commandmode = [accent]shift[]를 눌러 [accent]명령 모드[]를 활성화하세요.\n[accent]좌클릭과 드래그[]로 기체를 선택하세요.\n[accent]우클릭[]으로 선택된 기체들에게 이동 또는 공격 명령을 내리세요.
|
|
||||||
onset.commandmode.mobile = [accent]명령 버튼[]을 눌러 [accent]명령 모드[]를 활성화하세요.\n손가락을 꾹 누르고, [accent]드래그[]해서 유닛을 선택하세요.\n[accent]눌러서[] 선택된 기체들에게 이동 또는 공격 명령을 내리세요.
|
|
||||||
|
|||||||
@@ -251,6 +251,7 @@ trace = Sekti Žaidėją
|
|||||||
trace.playername = Žaidėjo vardas: [accent]{0}
|
trace.playername = Žaidėjo vardas: [accent]{0}
|
||||||
trace.ip = IP: [accent]{0}
|
trace.ip = IP: [accent]{0}
|
||||||
trace.id = Unikalus ID: [accent]{0}
|
trace.id = Unikalus ID: [accent]{0}
|
||||||
|
trace.language = Language: [accent]{0}
|
||||||
trace.mobile = Mobilus Klientas: [accent]{0}
|
trace.mobile = Mobilus Klientas: [accent]{0}
|
||||||
trace.modclient = Custom Client: [accent]{0}
|
trace.modclient = Custom Client: [accent]{0}
|
||||||
trace.times.joined = Times Joined: [accent]{0}
|
trace.times.joined = Times Joined: [accent]{0}
|
||||||
@@ -939,12 +940,16 @@ stat.healing = Healing
|
|||||||
ability.forcefield = Force Field
|
ability.forcefield = Force Field
|
||||||
ability.repairfield = Repair Field
|
ability.repairfield = Repair Field
|
||||||
ability.statusfield = Status Field
|
ability.statusfield = Status Field
|
||||||
ability.unitspawn = {0} Factory
|
ability.unitspawn = 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 = Regen Suppression Field
|
||||||
ability.energyfield = Energy Field: [accent]{0}[] damage ~ [accent]{1}[] blocks / [accent]{2}[] targets
|
ability.energyfield = Energy Field
|
||||||
|
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}%
|
||||||
|
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0}
|
||||||
|
ability.regen = Regeneration
|
||||||
|
|
||||||
bar.onlycoredeposit = Only Core Depositing Allowed
|
bar.onlycoredeposit = Only Core Depositing Allowed
|
||||||
|
|
||||||
bar.drilltierreq = Privalomas Geresnis Grąžtas
|
bar.drilltierreq = Privalomas Geresnis Grąžtas
|
||||||
@@ -1085,6 +1090,7 @@ setting.position.name = Rodyti Žaidėjų Pozicijas
|
|||||||
setting.mouseposition.name = Show Mouse Position
|
setting.mouseposition.name = Show Mouse Position
|
||||||
setting.musicvol.name = Muzikos Garsumas
|
setting.musicvol.name = Muzikos Garsumas
|
||||||
setting.atmosphere.name = Show Planet Atmosphere
|
setting.atmosphere.name = Show Planet Atmosphere
|
||||||
|
setting.drawlight.name = Draw Darkness/Lighting
|
||||||
setting.ambientvol.name = Aplinkos Garsas
|
setting.ambientvol.name = Aplinkos Garsas
|
||||||
setting.mutemusic.name = Nutildyti Muziką
|
setting.mutemusic.name = Nutildyti Muziką
|
||||||
setting.sfxvol.name = SFX Garsumas
|
setting.sfxvol.name = SFX Garsumas
|
||||||
@@ -1832,6 +1838,9 @@ 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.
|
||||||
|
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
||||||
|
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
||||||
|
aegis.tungsten = Tungsten can be mined using an [accent]impact drill[].\nThis structure requires [accent]water[] and [accent]power[].
|
||||||
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)
|
||||||
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
||||||
split.acquire = You must acquire some tungsten to build units.
|
split.acquire = You must acquire some tungsten to build units.
|
||||||
@@ -2211,6 +2220,8 @@ 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.
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
lst.effect = Create a particle effect.
|
||||||
|
lst.sync = Sync a variable across the network.\nOnly invoked 10 times a second at most.
|
||||||
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.
|
||||||
@@ -2223,6 +2234,7 @@ laccess.dead = Whether a unit/building is dead or no longer valid.
|
|||||||
laccess.controlled = Returns:\n[accent]@ctrlProcessor[] if unit controller is processor\n[accent]@ctrlPlayer[] if unit/building controller is player\n[accent]@ctrlFormation[] if unit is in formation\nOtherwise, 0.
|
laccess.controlled = Returns:\n[accent]@ctrlProcessor[] if unit controller is processor\n[accent]@ctrlPlayer[] if unit/building controller is player\n[accent]@ctrlFormation[] if unit is in formation\nOtherwise, 0.
|
||||||
laccess.progress = Action progress, 0 to 1.\nReturns production, turret reload or construction progress.
|
laccess.progress = Action progress, 0 to 1.\nReturns production, turret reload or construction progress.
|
||||||
laccess.speed = Top speed of a unit, in tiles/sec.
|
laccess.speed = Top speed of a unit, in tiles/sec.
|
||||||
|
laccess.id = ID of a unit/block/item/liquid.\nThis is the inverse of the lookup operation.
|
||||||
lcategory.unknown = Unknown
|
lcategory.unknown = Unknown
|
||||||
lcategory.unknown.description = Uncategorized instructions.
|
lcategory.unknown.description = Uncategorized instructions.
|
||||||
lcategory.io = Input & Output
|
lcategory.io = Input & Output
|
||||||
@@ -2327,6 +2339,7 @@ lenum.unbind = Completely disable logic control.\nResume standard AI.
|
|||||||
lenum.move = Move to exact position.
|
lenum.move = Move to exact position.
|
||||||
lenum.approach = Approach a position with a radius.
|
lenum.approach = Approach a position with a radius.
|
||||||
lenum.pathfind = Pathfind to the enemy spawn.
|
lenum.pathfind = Pathfind to the enemy spawn.
|
||||||
|
lenum.autopathfind = Automatically pathfinds to the nearest enemy core or drop point.\nThis is the same as standard wave enemy pathfinding.
|
||||||
lenum.target = Shoot a position.
|
lenum.target = Shoot a position.
|
||||||
lenum.targetp = Shoot a target with velocity prediction.
|
lenum.targetp = Shoot a target with velocity prediction.
|
||||||
lenum.itemdrop = Drop an item.
|
lenum.itemdrop = Drop an item.
|
||||||
@@ -2340,5 +2353,3 @@ lenum.build = Build a structure.
|
|||||||
lenum.getblock = Fetch a building and type at coordinates.\nUnit must be in range of position.\nSolid non-buildings will have the type [accent]@solid[].
|
lenum.getblock = Fetch a building and type at coordinates.\nUnit must be in range of position.\nSolid non-buildings will have the type [accent]@solid[].
|
||||||
lenum.within = Check if unit is near a position.
|
lenum.within = Check if unit is near a position.
|
||||||
lenum.boost = Start/stop boosting.
|
lenum.boost = Start/stop boosting.
|
||||||
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
|
||||||
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
|
||||||
|
|||||||
@@ -259,6 +259,7 @@ trace = Traceer Speler
|
|||||||
trace.playername = Speler naam: [accent]{0}
|
trace.playername = Speler naam: [accent]{0}
|
||||||
trace.ip = IP: [accent]{0}
|
trace.ip = IP: [accent]{0}
|
||||||
trace.id = Unieke ID: [accent]{0}
|
trace.id = Unieke ID: [accent]{0}
|
||||||
|
trace.language = Language: [accent]{0}
|
||||||
trace.mobile = Mobiel apparaat: [accent]{0}
|
trace.mobile = Mobiel apparaat: [accent]{0}
|
||||||
trace.modclient = Unofficie<EFBFBD>l: [accent]{0}
|
trace.modclient = Unofficie<EFBFBD>l: [accent]{0}
|
||||||
trace.times.joined = Keren Aangesloten: [accent]{0}
|
trace.times.joined = Keren Aangesloten: [accent]{0}
|
||||||
@@ -951,12 +952,16 @@ stat.healing = Genezing
|
|||||||
ability.forcefield = Krachtveld
|
ability.forcefield = Krachtveld
|
||||||
ability.repairfield = Reparatieveld
|
ability.repairfield = Reparatieveld
|
||||||
ability.statusfield = Statusveld
|
ability.statusfield = Statusveld
|
||||||
ability.unitspawn = {0} Fabriek
|
ability.unitspawn = Fabriek
|
||||||
ability.shieldregenfield = Schild Regeneratie Veld
|
ability.shieldregenfield = Schild Regeneratie Veld
|
||||||
ability.movelightning = Beweging Bliksem
|
ability.movelightning = Beweging Bliksem
|
||||||
ability.shieldarc = Schild Boog
|
ability.shieldarc = Schild Boog
|
||||||
ability.suppressionfield = Regeneratie Onderdrukkingsveld
|
ability.suppressionfield = Regeneratie Onderdrukkingsveld
|
||||||
ability.energyfield = Energieveld: [accent]{0}[] schade ~ [accent]{1}[] blokken / [accent]{2}[] doelen
|
ability.energyfield = Energieveld
|
||||||
|
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}%
|
||||||
|
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0}
|
||||||
|
ability.regen = Regeneration
|
||||||
|
|
||||||
bar.onlycoredeposit = Alleen materialen in de Core toegestaan.
|
bar.onlycoredeposit = Alleen materialen in de Core toegestaan.
|
||||||
|
|
||||||
bar.drilltierreq = Betere boor nodig
|
bar.drilltierreq = Betere boor nodig
|
||||||
@@ -1097,6 +1102,7 @@ setting.position.name = Toon Speler Posities
|
|||||||
setting.mouseposition.name = Toon Muis Positie
|
setting.mouseposition.name = Toon Muis Positie
|
||||||
setting.musicvol.name = Muziek Volume
|
setting.musicvol.name = Muziek Volume
|
||||||
setting.atmosphere.name = Toon Atmosfeer Planeet
|
setting.atmosphere.name = Toon Atmosfeer Planeet
|
||||||
|
setting.drawlight.name = Draw Darkness/Lighting
|
||||||
setting.ambientvol.name = Achtergrond Volume
|
setting.ambientvol.name = Achtergrond Volume
|
||||||
setting.mutemusic.name = Demp Muziek
|
setting.mutemusic.name = Demp Muziek
|
||||||
setting.sfxvol.name = SFX Volume
|
setting.sfxvol.name = SFX Volume
|
||||||
@@ -1845,6 +1851,9 @@ 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.
|
||||||
|
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
||||||
|
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
||||||
|
aegis.tungsten = Tungsten can be mined using an [accent]impact drill[].\nThis structure requires [accent]water[] and [accent]power[].
|
||||||
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)
|
||||||
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
||||||
split.acquire = You must acquire some tungsten to build units.
|
split.acquire = You must acquire some tungsten to build units.
|
||||||
@@ -2224,6 +2233,8 @@ 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.
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
lst.effect = Create a particle effect.
|
||||||
|
lst.sync = Sync a variable across the network.\nOnly invoked 10 times a second at most.
|
||||||
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.
|
||||||
@@ -2236,6 +2247,7 @@ laccess.dead = Whether a unit/building is dead or no longer valid.
|
|||||||
laccess.controlled = Returns:\n[accent]@ctrlProcessor[] if unit controller is processor\n[accent]@ctrlPlayer[] if unit/building controller is player\n[accent]@ctrlFormation[] if unit is in formation\nOtherwise, 0.
|
laccess.controlled = Returns:\n[accent]@ctrlProcessor[] if unit controller is processor\n[accent]@ctrlPlayer[] if unit/building controller is player\n[accent]@ctrlFormation[] if unit is in formation\nOtherwise, 0.
|
||||||
laccess.progress = Action progress, 0 to 1.\nReturns production, turret reload or construction progress.
|
laccess.progress = Action progress, 0 to 1.\nReturns production, turret reload or construction progress.
|
||||||
laccess.speed = Top speed of a unit, in tiles/sec.
|
laccess.speed = Top speed of a unit, in tiles/sec.
|
||||||
|
laccess.id = ID of a unit/block/item/liquid.\nThis is the inverse of the lookup operation.
|
||||||
lcategory.unknown = Unknown
|
lcategory.unknown = Unknown
|
||||||
lcategory.unknown.description = Uncategorized instructions.
|
lcategory.unknown.description = Uncategorized instructions.
|
||||||
lcategory.io = Input & Output
|
lcategory.io = Input & Output
|
||||||
@@ -2340,6 +2352,7 @@ lenum.unbind = Completely disable logic control.\nResume standard AI.
|
|||||||
lenum.move = Move to exact position.
|
lenum.move = Move to exact position.
|
||||||
lenum.approach = Approach a position with a radius.
|
lenum.approach = Approach a position with a radius.
|
||||||
lenum.pathfind = Pathfind to the enemy spawn.
|
lenum.pathfind = Pathfind to the enemy spawn.
|
||||||
|
lenum.autopathfind = Automatically pathfinds to the nearest enemy core or drop point.\nThis is the same as standard wave enemy pathfinding.
|
||||||
lenum.target = Shoot a position.
|
lenum.target = Shoot a position.
|
||||||
lenum.targetp = Shoot a target with velocity prediction.
|
lenum.targetp = Shoot a target with velocity prediction.
|
||||||
lenum.itemdrop = Drop an item.
|
lenum.itemdrop = Drop an item.
|
||||||
@@ -2353,5 +2366,3 @@ lenum.build = Build a structure.
|
|||||||
lenum.getblock = Fetch a building and type at coordinates.\nUnit must be in range of position.\nSolid non-buildings will have the type [accent]@solid[].
|
lenum.getblock = Fetch a building and type at coordinates.\nUnit must be in range of position.\nSolid non-buildings will have the type [accent]@solid[].
|
||||||
lenum.within = Check if unit is near a position.
|
lenum.within = Check if unit is near a position.
|
||||||
lenum.boost = Start/stop boosting.
|
lenum.boost = Start/stop boosting.
|
||||||
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
|
||||||
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
|
||||||
|
|||||||
@@ -251,6 +251,7 @@ trace = Spelersinformatie
|
|||||||
trace.playername = Naam: [accent]{0}
|
trace.playername = Naam: [accent]{0}
|
||||||
trace.ip = IP: [accent]{0}
|
trace.ip = IP: [accent]{0}
|
||||||
trace.id = Unieke ID: [accent]{0}
|
trace.id = Unieke ID: [accent]{0}
|
||||||
|
trace.language = Language: [accent]{0}
|
||||||
trace.mobile = Mobiele Client: [accent]{0}
|
trace.mobile = Mobiele Client: [accent]{0}
|
||||||
trace.modclient = Aangepaste Client: [accent]{0}
|
trace.modclient = Aangepaste Client: [accent]{0}
|
||||||
trace.times.joined = Times Joined: [accent]{0}
|
trace.times.joined = Times Joined: [accent]{0}
|
||||||
@@ -939,12 +940,16 @@ stat.healing = Healing
|
|||||||
ability.forcefield = Force Field
|
ability.forcefield = Force Field
|
||||||
ability.repairfield = Repair Field
|
ability.repairfield = Repair Field
|
||||||
ability.statusfield = Status Field
|
ability.statusfield = Status Field
|
||||||
ability.unitspawn = {0} Factory
|
ability.unitspawn = 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 = Regen Suppression Field
|
||||||
ability.energyfield = Energy Field: [accent]{0}[] damage ~ [accent]{1}[] blocks / [accent]{2}[] targets
|
ability.energyfield = Energy Field
|
||||||
|
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}%
|
||||||
|
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0}
|
||||||
|
ability.regen = Regeneration
|
||||||
|
|
||||||
bar.onlycoredeposit = Only Core Depositing Allowed
|
bar.onlycoredeposit = Only Core Depositing Allowed
|
||||||
|
|
||||||
bar.drilltierreq = Better Drill Required
|
bar.drilltierreq = Better Drill Required
|
||||||
@@ -1085,6 +1090,7 @@ setting.position.name = Show Player Position
|
|||||||
setting.mouseposition.name = Show Mouse Position
|
setting.mouseposition.name = Show Mouse Position
|
||||||
setting.musicvol.name = Music Volume
|
setting.musicvol.name = Music Volume
|
||||||
setting.atmosphere.name = Show Planet Atmosphere
|
setting.atmosphere.name = Show Planet Atmosphere
|
||||||
|
setting.drawlight.name = Draw Darkness/Lighting
|
||||||
setting.ambientvol.name = Ambient Volume
|
setting.ambientvol.name = Ambient Volume
|
||||||
setting.mutemusic.name = Mute Music
|
setting.mutemusic.name = Mute Music
|
||||||
setting.sfxvol.name = SFX Volume
|
setting.sfxvol.name = SFX Volume
|
||||||
@@ -1832,6 +1838,9 @@ 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.
|
||||||
|
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
||||||
|
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
||||||
|
aegis.tungsten = Tungsten can be mined using an [accent]impact drill[].\nThis structure requires [accent]water[] and [accent]power[].
|
||||||
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)
|
||||||
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
||||||
split.acquire = You must acquire some tungsten to build units.
|
split.acquire = You must acquire some tungsten to build units.
|
||||||
@@ -2211,6 +2220,8 @@ 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.
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
lst.effect = Create a particle effect.
|
||||||
|
lst.sync = Sync a variable across the network.\nOnly invoked 10 times a second at most.
|
||||||
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.
|
||||||
@@ -2223,6 +2234,7 @@ laccess.dead = Whether a unit/building is dead or no longer valid.
|
|||||||
laccess.controlled = Returns:\n[accent]@ctrlProcessor[] if unit controller is processor\n[accent]@ctrlPlayer[] if unit/building controller is player\n[accent]@ctrlFormation[] if unit is in formation\nOtherwise, 0.
|
laccess.controlled = Returns:\n[accent]@ctrlProcessor[] if unit controller is processor\n[accent]@ctrlPlayer[] if unit/building controller is player\n[accent]@ctrlFormation[] if unit is in formation\nOtherwise, 0.
|
||||||
laccess.progress = Action progress, 0 to 1.\nReturns production, turret reload or construction progress.
|
laccess.progress = Action progress, 0 to 1.\nReturns production, turret reload or construction progress.
|
||||||
laccess.speed = Top speed of a unit, in tiles/sec.
|
laccess.speed = Top speed of a unit, in tiles/sec.
|
||||||
|
laccess.id = ID of a unit/block/item/liquid.\nThis is the inverse of the lookup operation.
|
||||||
lcategory.unknown = Unknown
|
lcategory.unknown = Unknown
|
||||||
lcategory.unknown.description = Uncategorized instructions.
|
lcategory.unknown.description = Uncategorized instructions.
|
||||||
lcategory.io = Input & Output
|
lcategory.io = Input & Output
|
||||||
@@ -2327,6 +2339,7 @@ lenum.unbind = Completely disable logic control.\nResume standard AI.
|
|||||||
lenum.move = Move to exact position.
|
lenum.move = Move to exact position.
|
||||||
lenum.approach = Approach a position with a radius.
|
lenum.approach = Approach a position with a radius.
|
||||||
lenum.pathfind = Pathfind to the enemy spawn.
|
lenum.pathfind = Pathfind to the enemy spawn.
|
||||||
|
lenum.autopathfind = Automatically pathfinds to the nearest enemy core or drop point.\nThis is the same as standard wave enemy pathfinding.
|
||||||
lenum.target = Shoot a position.
|
lenum.target = Shoot a position.
|
||||||
lenum.targetp = Shoot a target with velocity prediction.
|
lenum.targetp = Shoot a target with velocity prediction.
|
||||||
lenum.itemdrop = Drop an item.
|
lenum.itemdrop = Drop an item.
|
||||||
@@ -2340,5 +2353,3 @@ lenum.build = Build a structure.
|
|||||||
lenum.getblock = Fetch a building and type at coordinates.\nUnit must be in range of position.\nSolid non-buildings will have the type [accent]@solid[].
|
lenum.getblock = Fetch a building and type at coordinates.\nUnit must be in range of position.\nSolid non-buildings will have the type [accent]@solid[].
|
||||||
lenum.within = Check if unit is near a position.
|
lenum.within = Check if unit is near a position.
|
||||||
lenum.boost = Start/stop boosting.
|
lenum.boost = Start/stop boosting.
|
||||||
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
|
||||||
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
|
||||||
|
|||||||
@@ -255,6 +255,7 @@ trace = Zlokalizuj Gracza
|
|||||||
trace.playername = Nazwa gracza: [accent]{0}
|
trace.playername = Nazwa gracza: [accent]{0}
|
||||||
trace.ip = IP: [accent]{0}
|
trace.ip = IP: [accent]{0}
|
||||||
trace.id = Wyjątkowe ID: [accent]{0}
|
trace.id = Wyjątkowe ID: [accent]{0}
|
||||||
|
trace.language = Language: [accent]{0}
|
||||||
trace.mobile = Klient Mobilny: [accent]{0}
|
trace.mobile = Klient Mobilny: [accent]{0}
|
||||||
trace.modclient = Zmodowany klient: [accent]{0}
|
trace.modclient = Zmodowany klient: [accent]{0}
|
||||||
trace.times.joined = Dołączył: [accent]{0}[] razy
|
trace.times.joined = Dołączył: [accent]{0}[] razy
|
||||||
@@ -949,12 +950,16 @@ stat.healing = Leczy
|
|||||||
ability.forcefield = Pole Siłowe
|
ability.forcefield = Pole Siłowe
|
||||||
ability.repairfield = Pole Naprawy
|
ability.repairfield = Pole Naprawy
|
||||||
ability.statusfield = Pole Statusu
|
ability.statusfield = Pole Statusu
|
||||||
ability.unitspawn = Fabryka Jednostek {0}
|
ability.unitspawn = Fabryka Jednostek
|
||||||
ability.shieldregenfield = Strefa Tarczy Regenerującej
|
ability.shieldregenfield = Strefa Tarczy Regenerującej
|
||||||
ability.movelightning = Pioruny Poruszania
|
ability.movelightning = Pioruny Poruszania
|
||||||
ability.shieldarc = Shield Arc
|
ability.shieldarc = Shield Arc
|
||||||
ability.suppressionfield = Regen Suppression Field
|
ability.suppressionfield = Regen Suppression Field
|
||||||
ability.energyfield = Pole Energii: [accent]{0}[] obrażenia ~ [accent]{1}[] bloki / [accent]{2}[] cele
|
ability.energyfield = Pole Energii
|
||||||
|
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}%
|
||||||
|
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0}
|
||||||
|
ability.regen = Regeneration
|
||||||
|
|
||||||
bar.onlycoredeposit = Dozwolone jest tylko przeniesienie z rdzenia
|
bar.onlycoredeposit = Dozwolone jest tylko przeniesienie z rdzenia
|
||||||
|
|
||||||
bar.drilltierreq = Wymagane Lepsze Wiertło
|
bar.drilltierreq = Wymagane Lepsze Wiertło
|
||||||
@@ -1095,6 +1100,7 @@ setting.position.name = Pokazuj położenie gracza
|
|||||||
setting.mouseposition.name = Pokazuj położenie myszki
|
setting.mouseposition.name = Pokazuj położenie myszki
|
||||||
setting.musicvol.name = Głośność muzyki
|
setting.musicvol.name = Głośność muzyki
|
||||||
setting.atmosphere.name = Pokazuj atmosferę planety
|
setting.atmosphere.name = Pokazuj atmosferę planety
|
||||||
|
setting.drawlight.name = Draw Darkness/Lighting
|
||||||
setting.ambientvol.name = Głośność otoczenia
|
setting.ambientvol.name = Głośność otoczenia
|
||||||
setting.mutemusic.name = Wycisz muzykę
|
setting.mutemusic.name = Wycisz muzykę
|
||||||
setting.sfxvol.name = Głośność dźwięków
|
setting.sfxvol.name = Głośność dźwięków
|
||||||
@@ -1853,6 +1859,9 @@ onset.enemies = Nadchodzi wróg, przygotuj obronę.
|
|||||||
onset.attack = Wróg jest wrażliwy na atak. Przeprowadź kontratak.
|
onset.attack = Wróg jest wrażliwy na atak. Przeprowadź kontratak.
|
||||||
onset.cores = Nowe rdzenie mogą być postawione tylko w [accent]strefach rdzenia[].\nNowy rdzeń działa tak samo jak każdy poprzedni. Rdzenie współdzielą surowce.\nPostaw nowy \uf725 rdzeń.
|
onset.cores = Nowe rdzenie mogą być postawione tylko w [accent]strefach rdzenia[].\nNowy rdzeń działa tak samo jak każdy poprzedni. Rdzenie współdzielą surowce.\nPostaw nowy \uf725 rdzeń.
|
||||||
onset.detect = Wróg wykryje cię za 2 minuty.\nPrzygotuj obronę, wydobywaj surowce i je produkuj.
|
onset.detect = Wróg wykryje cię za 2 minuty.\nPrzygotuj obronę, wydobywaj surowce i je produkuj.
|
||||||
|
onset.commandmode = Przytrzymaj [accent]shift[] aby wejść do [accent]trybu poleceń[].\n[accent]Kliknij lewy przycisk myszy i przeciągnij[] aby wybrac jednostki.\n[accent]Kliknij prawy przycisk myszy[] aby rozkazać jednostkom się przemieścić lub zaatakować.
|
||||||
|
onset.commandmode.mobile = Naciśnij [accent]przycisk poleceń[] aby wejść do [accent]trybu poleceń[].\nPrzytrzymaj palec, a następnie [accent]przeciągnij[] aby zaznaczyć jednostki.\n[accent]Kliknij[] aby rozkazać jednostkom się przemieścić lub zaatakować.
|
||||||
|
aegis.tungsten = Tungsten can be mined using an [accent]impact drill[].\nThis structure requires [accent]water[] and [accent]power[].
|
||||||
split.pickup = Niektóre bloki mogą zostać podniesione przez jednostkę rdzeniową.\nPodnieś ten [accent]kontener[] i postaw go w [accent]punkcie załadunkowym[].\n(Domyślne klawisze to [ i ], użyj ich żeby podnieść lub upuścić blok.)
|
split.pickup = Niektóre bloki mogą zostać podniesione przez jednostkę rdzeniową.\nPodnieś ten [accent]kontener[] i postaw go w [accent]punkcie załadunkowym[].\n(Domyślne klawisze to [ i ], użyj ich żeby podnieść lub upuścić blok.)
|
||||||
split.pickup.mobile = iektóre bloki mogą zostać podniesione przez jednostkę rdzeniową.\nPodnieś ten [accent]kontener[] i postaw go w [accent]punkcie załadunkowym[].\n(Żeby podnieść lub upuścić jakiś blok, przytrzymaj go przez chwilę.)
|
split.pickup.mobile = iektóre bloki mogą zostać podniesione przez jednostkę rdzeniową.\nPodnieś ten [accent]kontener[] i postaw go w [accent]punkcie załadunkowym[].\n(Żeby podnieść lub upuścić jakiś blok, przytrzymaj go przez chwilę.)
|
||||||
split.acquire = Żeby wybudować jednostki musisz pozyskać trochę wolframu.
|
split.acquire = Żeby wybudować jednostki musisz pozyskać trochę wolframu.
|
||||||
@@ -2246,6 +2255,8 @@ 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.
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
lst.effect = Create a particle effect.
|
||||||
|
lst.sync = Sync a variable across the network.\nOnly invoked 10 times a second at most.
|
||||||
|
|
||||||
logic.nounitbuild = [red]Logika budowania jednostek nie jest tu dozwolona.
|
logic.nounitbuild = [red]Logika budowania jednostek nie jest tu dozwolona.
|
||||||
|
|
||||||
@@ -2261,6 +2272,7 @@ laccess.dead = Sprawdza czy jednostka/budynek jest zniszczony lub już nie istni
|
|||||||
laccess.controlled = Zwraca:\n[accent]@ctrlProcessor[] jeśli kontrolerem jednostki jest procesor\n[accent]@ctrlPlayer[] jeśli kontrolerem jednostki/budynku jest gracz\n[accent]@ctrlFormation[] jeśli jednostka jest w formacji\nW innym wypadku 0.
|
laccess.controlled = Zwraca:\n[accent]@ctrlProcessor[] jeśli kontrolerem jednostki jest procesor\n[accent]@ctrlPlayer[] jeśli kontrolerem jednostki/budynku jest gracz\n[accent]@ctrlFormation[] jeśli jednostka jest w formacji\nW innym wypadku 0.
|
||||||
laccess.progress = Postęp akcji, od 0 do 1.\nZwraca produkcję, przeładowanie wieżyczki lub postęp konstrukcji.
|
laccess.progress = Postęp akcji, od 0 do 1.\nZwraca produkcję, przeładowanie wieżyczki lub postęp konstrukcji.
|
||||||
laccess.speed = Top speed of a unit, in tiles/sec.
|
laccess.speed = Top speed of a unit, in tiles/sec.
|
||||||
|
laccess.id = ID of a unit/block/item/liquid.\nThis is the inverse of the lookup operation.
|
||||||
|
|
||||||
lcategory.unknown = Inne
|
lcategory.unknown = Inne
|
||||||
lcategory.unknown.description = Niezkategoryzowane instrukcje.
|
lcategory.unknown.description = Niezkategoryzowane instrukcje.
|
||||||
@@ -2381,6 +2393,7 @@ lenum.unbind = Kompletnie wyłącza kontrolę za pomocą logiki.\nWznawia domyś
|
|||||||
lenum.move = Przemieść się do określonej pozycji.
|
lenum.move = Przemieść się do określonej pozycji.
|
||||||
lenum.approach = Zbliż się do pozycji w promieniu.
|
lenum.approach = Zbliż się do pozycji w promieniu.
|
||||||
lenum.pathfind = Odnajdź ścieżkę do punktu zrzutu przeciwników.
|
lenum.pathfind = Odnajdź ścieżkę do punktu zrzutu przeciwników.
|
||||||
|
lenum.autopathfind = Automatically pathfinds to the nearest enemy core or drop point.\nThis is the same as standard wave enemy pathfinding.
|
||||||
lenum.target = Strzel w określoną pozycję.
|
lenum.target = Strzel w określoną pozycję.
|
||||||
lenum.targetp = Strzel w jednostkę/budynek z zachowaniem trajektorii.
|
lenum.targetp = Strzel w jednostkę/budynek z zachowaniem trajektorii.
|
||||||
lenum.itemdrop = Upuść przedmiot.
|
lenum.itemdrop = Upuść przedmiot.
|
||||||
@@ -2394,5 +2407,3 @@ lenum.build = Buduj strukturę.
|
|||||||
lenum.getblock = Pobierz budynek i typ ze współrzędnych.\nJednostka musi być w zasięgu pozycji.\nSolidne niebudynki będą miały typ [accent]@solid[].
|
lenum.getblock = Pobierz budynek i typ ze współrzędnych.\nJednostka musi być w zasięgu pozycji.\nSolidne niebudynki będą miały typ [accent]@solid[].
|
||||||
lenum.within = Sprawdź czy jednostka jest w pobliżu pozycji.
|
lenum.within = Sprawdź czy jednostka jest w pobliżu pozycji.
|
||||||
lenum.boost = Zacznij/zakończ przyspieszać.
|
lenum.boost = Zacznij/zakończ przyspieszać.
|
||||||
onset.commandmode = Przytrzymaj [accent]shift[] aby wejść do [accent]trybu poleceń[].\n[accent]Kliknij lewy przycisk myszy i przeciągnij[] aby wybrac jednostki.\n[accent]Kliknij prawy przycisk myszy[] aby rozkazać jednostkom się przemieścić lub zaatakować.
|
|
||||||
onset.commandmode.mobile = Naciśnij [accent]przycisk poleceń[] aby wejść do [accent]trybu poleceń[].\nPrzytrzymaj palec, a następnie [accent]przeciągnij[] aby zaznaczyć jednostki.\n[accent]Kliknij[] aby rozkazać jednostkom się przemieścić lub zaatakować.
|
|
||||||
|
|||||||
@@ -255,6 +255,7 @@ trace = Rastrear jogador
|
|||||||
trace.playername = Nome do jogador: [accent]{0}
|
trace.playername = Nome do jogador: [accent]{0}
|
||||||
trace.ip = IP: [accent]{0}
|
trace.ip = IP: [accent]{0}
|
||||||
trace.id = ID: [accent]{0}
|
trace.id = ID: [accent]{0}
|
||||||
|
trace.language = Language: [accent]{0}
|
||||||
trace.mobile = Cliente móvel: [accent]{0}
|
trace.mobile = Cliente móvel: [accent]{0}
|
||||||
trace.modclient = Cliente customizado: [accent]{0}
|
trace.modclient = Cliente customizado: [accent]{0}
|
||||||
trace.times.joined = Vezes que entrou: [accent]{0}
|
trace.times.joined = Vezes que entrou: [accent]{0}
|
||||||
@@ -959,13 +960,16 @@ stat.healing = Reparo
|
|||||||
|
|
||||||
ability.forcefield = Campo de Força
|
ability.forcefield = Campo de Força
|
||||||
ability.repairfield = Campo de Reparação
|
ability.repairfield = Campo de Reparação
|
||||||
ability.statusfield = Campo de Status {0}
|
ability.statusfield = Campo de Status
|
||||||
ability.unitspawn = Fábrica de {0}
|
ability.unitspawn = Fábrica
|
||||||
ability.shieldregenfield = Raio de Regeneração do Escudo
|
ability.shieldregenfield = Raio de Regeneração do Escudo
|
||||||
ability.movelightning = Raio de Movimento
|
ability.movelightning = Raio de Movimento
|
||||||
ability.shieldarc = Arco do Escudo
|
ability.shieldarc = Arco do Escudo
|
||||||
ability.suppressionfield = Regen Suppression Field
|
ability.suppressionfield = Regen Suppression Field
|
||||||
ability.energyfield = Campo de Energia: dano [accent]{0}[] ~ blocos [accent]{1}[] / alvos [accent]{2}[]
|
ability.energyfield = Campo de Energia
|
||||||
|
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}%
|
||||||
|
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0}
|
||||||
|
ability.regen = Regeneration
|
||||||
|
|
||||||
bar.onlycoredeposit = Somente depósito no núcleo permitido
|
bar.onlycoredeposit = Somente depósito no núcleo permitido
|
||||||
bar.drilltierreq = Broca melhor necessária.
|
bar.drilltierreq = Broca melhor necessária.
|
||||||
@@ -1106,6 +1110,7 @@ setting.position.name = Mostrar a posição do Jogador
|
|||||||
setting.mouseposition.name = Mostrar posição do mouse
|
setting.mouseposition.name = Mostrar posição do mouse
|
||||||
setting.musicvol.name = Volume da Música
|
setting.musicvol.name = Volume da Música
|
||||||
setting.atmosphere.name = Mostrar a atmosfera do planeta
|
setting.atmosphere.name = Mostrar a atmosfera do planeta
|
||||||
|
setting.drawlight.name = Draw Darkness/Lighting
|
||||||
setting.ambientvol.name = Volume do Ambiente
|
setting.ambientvol.name = Volume do Ambiente
|
||||||
setting.mutemusic.name = Desligar Música
|
setting.mutemusic.name = Desligar Música
|
||||||
setting.sfxvol.name = Volume de Efeitos
|
setting.sfxvol.name = Volume de Efeitos
|
||||||
@@ -1854,6 +1859,11 @@ 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.
|
||||||
|
|
||||||
|
#Don't translate these yet!
|
||||||
|
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
||||||
|
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
||||||
|
aegis.tungsten = Tungsten can be mined using an [accent]impact drill[].\nThis structure requires [accent]water[] and [accent]power[].
|
||||||
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)
|
||||||
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
||||||
split.acquire = You must acquire some tungsten to build units.
|
split.acquire = You must acquire some tungsten to build units.
|
||||||
@@ -2244,6 +2254,8 @@ lst.cutscene = Manipule a câmera do jogador.
|
|||||||
lst.setflag = Defina um sinalizador global que possa ser lido por todos os processadores.
|
lst.setflag = Defina um sinalizador global que possa ser lido por todos os processadores.
|
||||||
lst.getflag = Verifique se um sinalizador global está definido.
|
lst.getflag = Verifique se um sinalizador global está definido.
|
||||||
lst.setprop = Define uma propriedade de uma unidade ou edifício.
|
lst.setprop = Define uma propriedade de uma unidade ou edifício.
|
||||||
|
lst.effect = Create a particle effect.
|
||||||
|
lst.sync = Sync a variable across the network.\nOnly invoked 10 times a second at most.
|
||||||
|
|
||||||
logic.nounitbuild = [red]Lógica de construção de unidades não é permitida aqui.
|
logic.nounitbuild = [red]Lógica de construção de unidades não é permitida aqui.
|
||||||
|
|
||||||
@@ -2259,6 +2271,7 @@ laccess.dead = Se uma unidade/edifício está morta ou não é mais válida.
|
|||||||
laccess.controlled = Retorna:\n[accent]@ctrlProcessor[] se o controlador da unidade for o processador\n[accent]@ctrlPlayer[] se o controlador da unidade/edifício for o player\n[accent]@ctrlCommand[] se o controlador da unidade for um comando do player\nCaso contrário , 0.
|
laccess.controlled = Retorna:\n[accent]@ctrlProcessor[] se o controlador da unidade for o processador\n[accent]@ctrlPlayer[] se o controlador da unidade/edifício for o player\n[accent]@ctrlCommand[] se o controlador da unidade for um comando do player\nCaso contrário , 0.
|
||||||
laccess.progress = Progresso da ação, 0 a 1.\nRetorna a produção, a recarga da torre ou o progresso da construção.
|
laccess.progress = Progresso da ação, 0 a 1.\nRetorna a produção, a recarga da torre ou o progresso da construção.
|
||||||
laccess.speed = Velocidade máxima de uma unidade, em ladrilhos/seg.
|
laccess.speed = Velocidade máxima de uma unidade, em ladrilhos/seg.
|
||||||
|
laccess.id = ID of a unit/block/item/liquid.\nThis is the inverse of the lookup operation.
|
||||||
|
|
||||||
lcategory.unknown = Desconhecido
|
lcategory.unknown = Desconhecido
|
||||||
lcategory.unknown.description = Instruções não categorizadas.
|
lcategory.unknown.description = Instruções não categorizadas.
|
||||||
@@ -2378,6 +2391,7 @@ lenum.unbind = Desabilite completamente o controle lógico.\nRetome AI padrão.
|
|||||||
lenum.move = Mover para a posição exata.
|
lenum.move = Mover para a posição exata.
|
||||||
lenum.approach = Aproxime-se de uma posição com um raio.
|
lenum.approach = Aproxime-se de uma posição com um raio.
|
||||||
lenum.pathfind = Pathfind para o spawn inimigo.
|
lenum.pathfind = Pathfind para o spawn inimigo.
|
||||||
|
lenum.autopathfind = Automatically pathfinds to the nearest enemy core or drop point.\nThis is the same as standard wave enemy pathfinding.
|
||||||
lenum.target = Atire em uma posição.
|
lenum.target = Atire em uma posição.
|
||||||
lenum.targetp = Atire em um alvo com previsão de velocidade.
|
lenum.targetp = Atire em um alvo com previsão de velocidade.
|
||||||
lenum.itemdrop = Solte um item.
|
lenum.itemdrop = Solte um item.
|
||||||
@@ -2391,7 +2405,3 @@ lenum.build = Construa uma estrutura.
|
|||||||
lenum.getblock = Busque uma construção e digite nas coordenadas.\nA unidade deve estar no intervalo de posição.\nConstruções sólidas não construídas terão o tipo [accent]@solid[].
|
lenum.getblock = Busque uma construção e digite nas coordenadas.\nA unidade deve estar no intervalo de posição.\nConstruções sólidas não construídas terão o tipo [accent]@solid[].
|
||||||
lenum.within = Verifique se a unidade está perto de uma posição.
|
lenum.within = Verifique se a unidade está perto de uma posição.
|
||||||
lenum.boost = Iniciar/parar o reforço.
|
lenum.boost = Iniciar/parar o reforço.
|
||||||
|
|
||||||
#Don't translate these yet!
|
|
||||||
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
|
||||||
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
|
||||||
|
|||||||
@@ -251,6 +251,7 @@ trace = Traçar jogador
|
|||||||
trace.playername = Nome do jogador: [accent]{0}
|
trace.playername = Nome do jogador: [accent]{0}
|
||||||
trace.ip = IP: [accent]{0}
|
trace.ip = IP: [accent]{0}
|
||||||
trace.id = ID unico: [accent]{0}
|
trace.id = ID unico: [accent]{0}
|
||||||
|
trace.language = Language: [accent]{0}
|
||||||
trace.mobile = Cliente móvel: [accent]{0}
|
trace.mobile = Cliente móvel: [accent]{0}
|
||||||
trace.modclient = Cliente Customizado: [accent]{0}
|
trace.modclient = Cliente Customizado: [accent]{0}
|
||||||
trace.times.joined = Times Joined: [accent]{0}
|
trace.times.joined = Times Joined: [accent]{0}
|
||||||
@@ -939,12 +940,16 @@ stat.healing = Healing
|
|||||||
ability.forcefield = Force Field
|
ability.forcefield = Force Field
|
||||||
ability.repairfield = Repair Field
|
ability.repairfield = Repair Field
|
||||||
ability.statusfield = Status Field
|
ability.statusfield = Status Field
|
||||||
ability.unitspawn = {0} Factory
|
ability.unitspawn = 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 = Regen Suppression Field
|
||||||
ability.energyfield = Energy Field: [accent]{0}[] damage ~ [accent]{1}[] blocks / [accent]{2}[] targets
|
ability.energyfield = Energy Field
|
||||||
|
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}%
|
||||||
|
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0}
|
||||||
|
ability.regen = Regeneration
|
||||||
|
|
||||||
bar.onlycoredeposit = Only Core Depositing Allowed
|
bar.onlycoredeposit = Only Core Depositing Allowed
|
||||||
|
|
||||||
bar.drilltierreq = Broca melhor necessária.
|
bar.drilltierreq = Broca melhor necessária.
|
||||||
@@ -1085,6 +1090,7 @@ setting.position.name = Show Player Position
|
|||||||
setting.mouseposition.name = Show Mouse Position
|
setting.mouseposition.name = Show Mouse Position
|
||||||
setting.musicvol.name = Volume da Música
|
setting.musicvol.name = Volume da Música
|
||||||
setting.atmosphere.name = Show Planet Atmosphere
|
setting.atmosphere.name = Show Planet Atmosphere
|
||||||
|
setting.drawlight.name = Draw Darkness/Lighting
|
||||||
setting.ambientvol.name = Volume do ambiente
|
setting.ambientvol.name = Volume do ambiente
|
||||||
setting.mutemusic.name = Desligar Música
|
setting.mutemusic.name = Desligar Música
|
||||||
setting.sfxvol.name = Volume de Efeitos
|
setting.sfxvol.name = Volume de Efeitos
|
||||||
@@ -1832,6 +1838,9 @@ 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.
|
||||||
|
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
||||||
|
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
||||||
|
aegis.tungsten = Tungsten can be mined using an [accent]impact drill[].\nThis structure requires [accent]water[] and [accent]power[].
|
||||||
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)
|
||||||
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
||||||
split.acquire = You must acquire some tungsten to build units.
|
split.acquire = You must acquire some tungsten to build units.
|
||||||
@@ -2211,6 +2220,8 @@ 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.
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
lst.effect = Create a particle effect.
|
||||||
|
lst.sync = Sync a variable across the network.\nOnly invoked 10 times a second at most.
|
||||||
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.
|
||||||
@@ -2223,6 +2234,7 @@ laccess.dead = Whether a unit/building is dead or no longer valid.
|
|||||||
laccess.controlled = Returns:\n[accent]@ctrlProcessor[] if unit controller is processor\n[accent]@ctrlPlayer[] if unit/building controller is player\n[accent]@ctrlFormation[] if unit is in formation\nOtherwise, 0.
|
laccess.controlled = Returns:\n[accent]@ctrlProcessor[] if unit controller is processor\n[accent]@ctrlPlayer[] if unit/building controller is player\n[accent]@ctrlFormation[] if unit is in formation\nOtherwise, 0.
|
||||||
laccess.progress = Action progress, 0 to 1.\nReturns production, turret reload or construction progress.
|
laccess.progress = Action progress, 0 to 1.\nReturns production, turret reload or construction progress.
|
||||||
laccess.speed = Top speed of a unit, in tiles/sec.
|
laccess.speed = Top speed of a unit, in tiles/sec.
|
||||||
|
laccess.id = ID of a unit/block/item/liquid.\nThis is the inverse of the lookup operation.
|
||||||
lcategory.unknown = Unknown
|
lcategory.unknown = Unknown
|
||||||
lcategory.unknown.description = Uncategorized instructions.
|
lcategory.unknown.description = Uncategorized instructions.
|
||||||
lcategory.io = Input & Output
|
lcategory.io = Input & Output
|
||||||
@@ -2327,6 +2339,7 @@ lenum.unbind = Completely disable logic control.\nResume standard AI.
|
|||||||
lenum.move = Move to exact position.
|
lenum.move = Move to exact position.
|
||||||
lenum.approach = Approach a position with a radius.
|
lenum.approach = Approach a position with a radius.
|
||||||
lenum.pathfind = Pathfind to the enemy spawn.
|
lenum.pathfind = Pathfind to the enemy spawn.
|
||||||
|
lenum.autopathfind = Automatically pathfinds to the nearest enemy core or drop point.\nThis is the same as standard wave enemy pathfinding.
|
||||||
lenum.target = Shoot a position.
|
lenum.target = Shoot a position.
|
||||||
lenum.targetp = Shoot a target with velocity prediction.
|
lenum.targetp = Shoot a target with velocity prediction.
|
||||||
lenum.itemdrop = Drop an item.
|
lenum.itemdrop = Drop an item.
|
||||||
@@ -2340,5 +2353,3 @@ lenum.build = Build a structure.
|
|||||||
lenum.getblock = Fetch a building and type at coordinates.\nUnit must be in range of position.\nSolid non-buildings will have the type [accent]@solid[].
|
lenum.getblock = Fetch a building and type at coordinates.\nUnit must be in range of position.\nSolid non-buildings will have the type [accent]@solid[].
|
||||||
lenum.within = Check if unit is near a position.
|
lenum.within = Check if unit is near a position.
|
||||||
lenum.boost = Start/stop boosting.
|
lenum.boost = Start/stop boosting.
|
||||||
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
|
||||||
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
|
||||||
|
|||||||
@@ -255,6 +255,7 @@ trace = Urmărește Jucător
|
|||||||
trace.playername = Nume jucător: [accent]{0}
|
trace.playername = Nume jucător: [accent]{0}
|
||||||
trace.ip = IP: [accent]{0}
|
trace.ip = IP: [accent]{0}
|
||||||
trace.id = ID: [accent]{0}
|
trace.id = ID: [accent]{0}
|
||||||
|
trace.language = Language: [accent]{0}
|
||||||
trace.mobile = Client Mobil: [accent]{0}
|
trace.mobile = Client Mobil: [accent]{0}
|
||||||
trace.modclient = Client Personalizat: [accent]{0}
|
trace.modclient = Client Personalizat: [accent]{0}
|
||||||
trace.times.joined = A Intrat: de [accent]{0}[] ori
|
trace.times.joined = A Intrat: de [accent]{0}[] ori
|
||||||
@@ -950,13 +951,17 @@ stat.healing = Reparare
|
|||||||
|
|
||||||
ability.forcefield = Câmp de Forță
|
ability.forcefield = Câmp de Forță
|
||||||
ability.repairfield = Câmp de Reparare
|
ability.repairfield = Câmp de Reparare
|
||||||
ability.statusfield = {0} Câmp de Stare
|
ability.statusfield = Câmp de Stare
|
||||||
ability.unitspawn = Fabrică de {0}
|
ability.unitspawn = Fabrică
|
||||||
ability.shieldregenfield = Câmp Regenerare Scut
|
ability.shieldregenfield = Câmp Regenerare Scut
|
||||||
ability.movelightning = Mișcare Fulger
|
ability.movelightning = Mișcare Fulger
|
||||||
ability.shieldarc = Shield Arc
|
ability.shieldarc = Shield Arc
|
||||||
ability.suppressionfield = Regen Suppression Field
|
ability.suppressionfield = Regen Suppression Field
|
||||||
ability.energyfield = Câmp de Energie: [accent]{0}[] forță pe ~ [accent]{1}[] blocuri / [accent]{2}[] ținte
|
ability.energyfield = Câmp de Energie
|
||||||
|
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}%
|
||||||
|
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0}
|
||||||
|
ability.regen = Regeneration
|
||||||
|
|
||||||
bar.onlycoredeposit = Only Core Depositing Allowed
|
bar.onlycoredeposit = Only Core Depositing Allowed
|
||||||
|
|
||||||
bar.drilltierreq = Burghiu Mai Bun Necesar
|
bar.drilltierreq = Burghiu Mai Bun Necesar
|
||||||
@@ -1097,6 +1102,7 @@ setting.position.name = Vezi Poziția Jucătorului
|
|||||||
setting.mouseposition.name = Show Mouse Position
|
setting.mouseposition.name = Show Mouse Position
|
||||||
setting.musicvol.name = Volumul Muzicii
|
setting.musicvol.name = Volumul Muzicii
|
||||||
setting.atmosphere.name = Vezi Atmosfera Planetelor
|
setting.atmosphere.name = Vezi Atmosfera Planetelor
|
||||||
|
setting.drawlight.name = Draw Darkness/Lighting
|
||||||
setting.ambientvol.name = Volum Ambiental
|
setting.ambientvol.name = Volum Ambiental
|
||||||
setting.mutemusic.name = Muzica pe Mut
|
setting.mutemusic.name = Muzica pe Mut
|
||||||
setting.sfxvol.name = Volum Efecte Sonore
|
setting.sfxvol.name = Volum Efecte Sonore
|
||||||
@@ -1847,6 +1853,9 @@ 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.
|
||||||
|
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
||||||
|
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
||||||
|
aegis.tungsten = Tungsten can be mined using an [accent]impact drill[].\nThis structure requires [accent]water[] and [accent]power[].
|
||||||
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)
|
||||||
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
||||||
split.acquire = You must acquire some tungsten to build units.
|
split.acquire = You must acquire some tungsten to build units.
|
||||||
@@ -2229,6 +2238,8 @@ 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.
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
lst.effect = Create a particle effect.
|
||||||
|
lst.sync = Sync a variable across the network.\nOnly invoked 10 times a second at most.
|
||||||
|
|
||||||
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.
|
||||||
|
|
||||||
@@ -2244,6 +2255,7 @@ laccess.dead = Specifică dacă o unitate sau clădire a murit/nu mai e validă.
|
|||||||
laccess.controlled = Returnează:\n[accent]@ctrlProcessor[] dacă controlorul unității e procesor\n[accent]@ctrlPlayer[] dacă controlorul unității/clădirii e jucător\n[accent]@ctrlFormation[] dacă unitatea e într-o formație\nAltfel dă 0.
|
laccess.controlled = Returnează:\n[accent]@ctrlProcessor[] dacă controlorul unității e procesor\n[accent]@ctrlPlayer[] dacă controlorul unității/clădirii e jucător\n[accent]@ctrlFormation[] dacă unitatea e într-o formație\nAltfel dă 0.
|
||||||
laccess.progress = Progresul acțiunii, de la 0 la 1.\nReturnează progresul producției, al construcției sau reîncărcarea armelor.
|
laccess.progress = Progresul acțiunii, de la 0 la 1.\nReturnează progresul producției, al construcției sau reîncărcarea armelor.
|
||||||
laccess.speed = Top speed of a unit, in tiles/sec.
|
laccess.speed = Top speed of a unit, in tiles/sec.
|
||||||
|
laccess.id = ID of a unit/block/item/liquid.\nThis is the inverse of the lookup operation.
|
||||||
lcategory.unknown = Unknown
|
lcategory.unknown = Unknown
|
||||||
lcategory.unknown.description = Uncategorized instructions.
|
lcategory.unknown.description = Uncategorized instructions.
|
||||||
lcategory.io = Input & Output
|
lcategory.io = Input & Output
|
||||||
@@ -2364,6 +2376,7 @@ lenum.unbind = Completely disable logic control.\nResume standard AI.
|
|||||||
lenum.move = Mergi la această poziție.
|
lenum.move = Mergi la această poziție.
|
||||||
lenum.approach = Apropie-te la o anumită distanță de poziție.
|
lenum.approach = Apropie-te la o anumită distanță de poziție.
|
||||||
lenum.pathfind = Găsește ruta către punctul de lansare inamic. Poate fi un nucleu.
|
lenum.pathfind = Găsește ruta către punctul de lansare inamic. Poate fi un nucleu.
|
||||||
|
lenum.autopathfind = Automatically pathfinds to the nearest enemy core or drop point.\nThis is the same as standard wave enemy pathfinding.
|
||||||
lenum.target = Lovește către o poziție.
|
lenum.target = Lovește către o poziție.
|
||||||
lenum.targetp = Lovește o țintă. Anticipează viteza țintei și a proiectilului.
|
lenum.targetp = Lovește o țintă. Anticipează viteza țintei și a proiectilului.
|
||||||
lenum.itemdrop = Descarcă o bucată de material.
|
lenum.itemdrop = Descarcă o bucată de material.
|
||||||
@@ -2377,5 +2390,3 @@ lenum.build = Construiește o structură.
|
|||||||
lenum.getblock = Obține clădirea și tipul clădirii aflate la coordonatele specificate.\nUnitatea trebuie să se afle în raza poziției.\nBlocurile solide care nu sunt clădiri vor avea tipul [accent]@solid[].
|
lenum.getblock = Obține clădirea și tipul clădirii aflate la coordonatele specificate.\nUnitatea trebuie să se afle în raza poziției.\nBlocurile solide care nu sunt clădiri vor avea tipul [accent]@solid[].
|
||||||
lenum.within = Verifică dacă unitatea se află în apropierea poziției.
|
lenum.within = Verifică dacă unitatea se află în apropierea poziției.
|
||||||
lenum.boost = Pornește/oprește propulsorul.
|
lenum.boost = Pornește/oprește propulsorul.
|
||||||
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
|
||||||
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
|
||||||
|
|||||||
@@ -57,7 +57,7 @@ mods.browser.sortstars = Сортировка по количеству звёз
|
|||||||
schematic = Схема
|
schematic = Схема
|
||||||
schematic.add = Сохранить схему…
|
schematic.add = Сохранить схему…
|
||||||
schematics = Схемы
|
schematics = Схемы
|
||||||
schematic.search = Search schematics...
|
schematic.search = Поиск схем…
|
||||||
schematic.replace = Схема с таким названием уже существует. Заменить её?
|
schematic.replace = Схема с таким названием уже существует. Заменить её?
|
||||||
schematic.exists = Схема с таким названием уже существует.
|
schematic.exists = Схема с таким названием уже существует.
|
||||||
schematic.import = Импортировать схему…
|
schematic.import = Импортировать схему…
|
||||||
@@ -70,7 +70,7 @@ schematic.shareworkshop = Поделиться в Мастерской
|
|||||||
schematic.flip = [accent][[{0}][]/[accent][[{1}][]: Отразить схему
|
schematic.flip = [accent][[{0}][]/[accent][[{1}][]: Отразить схему
|
||||||
schematic.saved = Схема сохранена.
|
schematic.saved = Схема сохранена.
|
||||||
schematic.delete.confirm = Эта схема будет поджарена Испепелителем.
|
schematic.delete.confirm = Эта схема будет поджарена Испепелителем.
|
||||||
schematic.edit = Edit Schematic
|
schematic.edit = Редактировать схему
|
||||||
schematic.info = {0}x{1}, {2} блоков
|
schematic.info = {0}x{1}, {2} блоков
|
||||||
schematic.disabled = [scarlet]Схемы отключены[]\nНа этой [accent]карте[] или [accent]сервере[] запрещено использование схем.
|
schematic.disabled = [scarlet]Схемы отключены[]\nНа этой [accent]карте[] или [accent]сервере[] запрещено использование схем.
|
||||||
schematic.tags = Теги:
|
schematic.tags = Теги:
|
||||||
@@ -79,7 +79,7 @@ schematic.addtag = Добавить тег
|
|||||||
schematic.texttag = Текстовый тег
|
schematic.texttag = Текстовый тег
|
||||||
schematic.icontag = Символьный тег
|
schematic.icontag = Символьный тег
|
||||||
schematic.renametag = Переименовать тег
|
schematic.renametag = Переименовать тег
|
||||||
schematic.tagged = {0} tagged
|
schematic.tagged = {0} отмечено
|
||||||
schematic.tagdelconfirm = Удалить этот тег навсегда?
|
schematic.tagdelconfirm = Удалить этот тег навсегда?
|
||||||
schematic.tagexists = Такой тег уже существует.
|
schematic.tagexists = Такой тег уже существует.
|
||||||
|
|
||||||
@@ -255,18 +255,19 @@ trace = Отслеживать игрока
|
|||||||
trace.playername = Имя игрока: [accent]{0}
|
trace.playername = Имя игрока: [accent]{0}
|
||||||
trace.ip = IP: [accent]{0}
|
trace.ip = IP: [accent]{0}
|
||||||
trace.id = ID: [accent]{0}
|
trace.id = ID: [accent]{0}
|
||||||
|
trace.language = Language: [accent]{0}
|
||||||
trace.mobile = Мобильный клиент: [accent]{0}
|
trace.mobile = Мобильный клиент: [accent]{0}
|
||||||
trace.modclient = Пользовательский клиент: [accent]{0}
|
trace.modclient = Пользовательский клиент: [accent]{0}
|
||||||
trace.times.joined = Присоединялся раз: [accent]{0}
|
trace.times.joined = Присоединялся раз: [accent]{0}
|
||||||
trace.times.kicked = Был выгнан раз: [accent]{0}
|
trace.times.kicked = Был выгнан раз: [accent]{0}
|
||||||
trace.ips = IPs:
|
trace.ips = Все адреса:
|
||||||
trace.names = Names:
|
trace.names = Имена:
|
||||||
invalidid = Недопустимый ID клиента! Отправьте отчёт об ошибке.
|
invalidid = Недопустимый ID клиента! Отправьте отчёт об ошибке.
|
||||||
player.ban = Ban
|
player.ban = Заблокировать
|
||||||
player.kick = Kick
|
player.kick = Выгнать
|
||||||
player.trace = Trace
|
player.trace = Статистика
|
||||||
player.admin = Toggle Admin
|
player.admin = Переключить администратора
|
||||||
player.team = Change Team
|
player.team = Сменить команду
|
||||||
server.bans = Блокировки
|
server.bans = Блокировки
|
||||||
server.bans.none = Заблокированных игроков нет!
|
server.bans.none = Заблокированных игроков нет!
|
||||||
server.admins = Администраторы
|
server.admins = Администраторы
|
||||||
@@ -283,10 +284,10 @@ confirmkick = Вы действительно хотите выгнать игр
|
|||||||
confirmunban = Вы действительно хотите разблокировать этого игрока?
|
confirmunban = Вы действительно хотите разблокировать этого игрока?
|
||||||
confirmadmin = Вы действительно хотите сделать игрока «{0}[white]» администратором?
|
confirmadmin = Вы действительно хотите сделать игрока «{0}[white]» администратором?
|
||||||
confirmunadmin = Вы действительно хотите убрать игрока «{0}[white]» из администраторов?
|
confirmunadmin = Вы действительно хотите убрать игрока «{0}[white]» из администраторов?
|
||||||
votekick.reason = Vote-Kick Reason
|
votekick.reason = Причина
|
||||||
votekick.reason.message = Are you sure you want to vote-kick "{0}[white]"?\nIf yes, please enter the reason:
|
votekick.reason.message = Вы уверены, что хотите голосованием выгнать "{0}[white]"?\nЕсли да, введите причину:
|
||||||
joingame.title = Присоединиться к игре
|
joingame.title = Присоединиться к игре
|
||||||
joingame.ip = Адрес:
|
joingame.ip = IP:
|
||||||
disconnect = Отключено.
|
disconnect = Отключено.
|
||||||
disconnect.error = Ошибка соединения.
|
disconnect.error = Ошибка соединения.
|
||||||
disconnect.closed = Соединение закрыто.
|
disconnect.closed = Соединение закрыто.
|
||||||
@@ -469,7 +470,7 @@ waves.sort.begin = Начало
|
|||||||
waves.sort.health = Здоровье
|
waves.sort.health = Здоровье
|
||||||
waves.sort.type = Тип
|
waves.sort.type = Тип
|
||||||
waves.search = Поиск волн...
|
waves.search = Поиск волн...
|
||||||
waves.filter = Unit Filter
|
waves.filter = Фильтр единиц
|
||||||
waves.units.hide = Скрыть все
|
waves.units.hide = Скрыть все
|
||||||
waves.units.show = Показать все
|
waves.units.show = Показать все
|
||||||
|
|
||||||
@@ -542,8 +543,8 @@ toolmode.eraseores = Стереть руды
|
|||||||
toolmode.eraseores.description = Стереть только руды.
|
toolmode.eraseores.description = Стереть только руды.
|
||||||
toolmode.fillteams = Изменить команду блоков
|
toolmode.fillteams = Изменить команду блоков
|
||||||
toolmode.fillteams.description = Изменяет принадлежность\nблоков к команде.
|
toolmode.fillteams.description = Изменяет принадлежность\nблоков к команде.
|
||||||
toolmode.fillerase = Fill Erase
|
toolmode.fillerase = Стереть тип
|
||||||
toolmode.fillerase.description = Erase blocks of the same type.
|
toolmode.fillerase.description = Стирает все блоки этого типа.
|
||||||
toolmode.drawteams = Изменить команду блока
|
toolmode.drawteams = Изменить команду блока
|
||||||
toolmode.drawteams.description = Изменяет принадлежность\nблока к команде.
|
toolmode.drawteams.description = Изменяет принадлежность\nблока к команде.
|
||||||
toolmode.underliquid = Под жидкостями
|
toolmode.underliquid = Под жидкостями
|
||||||
@@ -951,13 +952,16 @@ stat.healing = Ремонт
|
|||||||
|
|
||||||
ability.forcefield = Силовое поле
|
ability.forcefield = Силовое поле
|
||||||
ability.repairfield = Ремонтирующее поле
|
ability.repairfield = Ремонтирующее поле
|
||||||
ability.statusfield = {0} Усиливающее поле
|
ability.statusfield = Усиливающее поле
|
||||||
ability.unitspawn = Завод единиц «{0}»
|
ability.unitspawn = Завод единиц <EFBFBD>
|
||||||
ability.shieldregenfield = Поле восстановления щита
|
ability.shieldregenfield = Поле восстановления щита
|
||||||
ability.movelightning = Молнии при движении
|
ability.movelightning = Молнии при движении
|
||||||
ability.shieldarc = Дуговой щит
|
ability.shieldarc = Дуговой щит
|
||||||
ability.suppressionfield = Поле подавления регенерации
|
ability.suppressionfield = Поле подавления регенерации
|
||||||
ability.energyfield = Энергетическое поле: [accent]{0}[] урона ~ [accent]{1}[] блоков / [accent]{2}[] целей
|
ability.energyfield = Энергетическое поле
|
||||||
|
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}%
|
||||||
|
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0}
|
||||||
|
ability.regen = Regeneration
|
||||||
bar.onlycoredeposit = Доступен перенос только в ядро
|
bar.onlycoredeposit = Доступен перенос только в ядро
|
||||||
|
|
||||||
bar.drilltierreq = Требуется бур получше
|
bar.drilltierreq = Требуется бур получше
|
||||||
@@ -1098,6 +1102,7 @@ setting.position.name = Отображать координаты игрока
|
|||||||
setting.mouseposition.name = Показывать позицию курсора
|
setting.mouseposition.name = Показывать позицию курсора
|
||||||
setting.musicvol.name = Громкость музыки
|
setting.musicvol.name = Громкость музыки
|
||||||
setting.atmosphere.name = Отображать атмосферу планеты
|
setting.atmosphere.name = Отображать атмосферу планеты
|
||||||
|
setting.drawlight.name = Draw Darkness/Lighting
|
||||||
setting.ambientvol.name = Громкость окружения
|
setting.ambientvol.name = Громкость окружения
|
||||||
setting.mutemusic.name = Заглушить музыку
|
setting.mutemusic.name = Заглушить музыку
|
||||||
setting.sfxvol.name = Громкость эффектов
|
setting.sfxvol.name = Громкость эффектов
|
||||||
@@ -1224,7 +1229,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 = Множитель урона блоков
|
||||||
@@ -1789,7 +1794,7 @@ hint.launch = Как только будет собрано достаточно
|
|||||||
hint.launch.mobile = Как только будет собрано достаточно ресурсов, вы сможете осуществить [accent]Запуск[], выбрав близлежащие секторы на \ue827 [accent]Карте[] в \ue88c [accent]Меню[].
|
hint.launch.mobile = Как только будет собрано достаточно ресурсов, вы сможете осуществить [accent]Запуск[], выбрав близлежащие секторы на \ue827 [accent]Карте[] в \ue88c [accent]Меню[].
|
||||||
hint.schematicSelect = Зажмите [accent][[F][] и переместите, чтобы выбрать блоки для копирования и вставки.\n\nЩелкните [accent][[колёсиком][] по блоку для копирования.
|
hint.schematicSelect = Зажмите [accent][[F][] и переместите, чтобы выбрать блоки для копирования и вставки.\n\nЩелкните [accent][[колёсиком][] по блоку для копирования.
|
||||||
hint.rebuildSelect = Удерживайте [accent][[B][] и перетаскивайте, чтобы выбрать уничтоженные блоки.\nОни будут перестроены автоматически.
|
hint.rebuildSelect = Удерживайте [accent][[B][] и перетаскивайте, чтобы выбрать уничтоженные блоки.\nОни будут перестроены автоматически.
|
||||||
hint.rebuildSelect.mobile = Select the \ue874 copy button, then tap the \ue80f rebuild button and drag to select destroyed block plans.\nThis will rebuild them automatically.
|
hint.rebuildSelect.mobile = Выберите кнопку \ue874 копирования, затем нажмите кнопку \ue80f перестройки, и проведите для выбора уничтоженных блоков.\nЭто перестроит их автоматически.
|
||||||
hint.conveyorPathfind = Удерживайте [accent][[Л-Ctrl][] при размещении конвейеров для автоматической прокладки пути.
|
hint.conveyorPathfind = Удерживайте [accent][[Л-Ctrl][] при размещении конвейеров для автоматической прокладки пути.
|
||||||
hint.conveyorPathfind.mobile = Включите \ue844 [accent]диагональный режим[] и перетащите конвейеры для автоматической прокладки пути.
|
hint.conveyorPathfind.mobile = Включите \ue844 [accent]диагональный режим[] и перетащите конвейеры для автоматической прокладки пути.
|
||||||
hint.boost = Удерживайте [accent][[Л-Shift][], чтобы пролететь над препятствиями при помощи вашей единицы.\n\nТолько некоторые наземные единицы могут взлетать.
|
hint.boost = Удерживайте [accent][[Л-Shift][], чтобы пролететь над препятствиями при помощи вашей единицы.\n\nТолько некоторые наземные единицы могут взлетать.
|
||||||
@@ -1806,6 +1811,7 @@ hint.presetDifficulty = У этого сектора [scarlet]высокий у
|
|||||||
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Нажмите на медную руду, чтобы начать строительство бура.
|
||||||
@@ -1826,6 +1832,7 @@ gz.zone1 = Это - вражеская зона высадки.
|
|||||||
gz.zone2 = Все, что построено в её радиусе, будет уничтожено с началом волны.
|
gz.zone2 = Все, что построено в её радиусе, будет уничтожено с началом волны.
|
||||||
gz.zone3 = Волна начнётся прямо сейчас.\nПриготовьтесь.
|
gz.zone3 = Волна начнётся прямо сейчас.\nПриготовьтесь.
|
||||||
gz.finish = Постройте больше турелей, добудьте больше ресурсов,\nи отстойте все волны, чтобы [accent]захватить сектор[].
|
gz.finish = Постройте больше турелей, добудьте больше ресурсов,\nи отстойте все волны, чтобы [accent]захватить сектор[].
|
||||||
|
|
||||||
onset.mine = Нажмите, чтобы добыть \uf748 [accent]бериллий[] из стен.\n\nИспользуйте [accent][[WASD] для передвижения.
|
onset.mine = Нажмите, чтобы добыть \uf748 [accent]бериллий[] из стен.\n\nИспользуйте [accent][[WASD] для передвижения.
|
||||||
onset.mine.mobile = Нажмите, чтобы добыть \uf748 [accent]бериллий[] из стен.
|
onset.mine.mobile = Нажмите, чтобы добыть \uf748 [accent]бериллий[] из стен.
|
||||||
onset.research = Откройте \ue875 дерево исследований.\nИсследуйте, затем поставьте \uf73e [accent]турбинный конденсатор[] на жерло.\nОна будет производить [accent]энергию[].
|
onset.research = Откройте \ue875 дерево исследований.\nИсследуйте, затем поставьте \uf73e [accent]турбинный конденсатор[] на жерло.\nОна будет производить [accent]энергию[].
|
||||||
@@ -1847,6 +1854,10 @@ onset.enemies = Враг на подходе, приготовьтесь защ
|
|||||||
onset.attack = Враг уязвим. Начните контратаку.
|
onset.attack = Враг уязвим. Начните контратаку.
|
||||||
onset.cores = Новые ядра могут быть поставлены на [accent]зоны ядра[].\nНовые ядра функционируют как передовые базы и имеют общий инвентарь между другими ядрами.\nПоставьте \uf725 ядро.
|
onset.cores = Новые ядра могут быть поставлены на [accent]зоны ядра[].\nНовые ядра функционируют как передовые базы и имеют общий инвентарь между другими ядрами.\nПоставьте \uf725 ядро.
|
||||||
onset.detect = Враг обнаружит вас через 2 минуты.\nПриготовьте оборону, добычу и производство.
|
onset.detect = Враг обнаружит вас через 2 минуты.\nПриготовьте оборону, добычу и производство.
|
||||||
|
onset.commandmode = Удерживайте [accent]shift[], чтобы войти в [accent]режим командования[].\n[accent]Щелкните левой кнопкой мыши и выделите область[] для выбора боевых единиц.\n[accent]Щелкните правой кнопкой мыши[], чтобы приказать выбранным единицам двигаться или атаковать.
|
||||||
|
onset.commandmode.mobile = Нажмите [accent]Командовать[], чтобы войти в [accent]режим командования[].\nЗажмите палец, затем [accent]выделите область[] для выбора боевых единиц.\n[accent]Нажмите[], чтобы приказать выбранным единицам двигаться или атаковать.
|
||||||
|
aegis.tungsten = Tungsten can be mined using an [accent]impact drill[].\nThis structure requires [accent]water[] and [accent]power[].
|
||||||
|
|
||||||
split.pickup = Некоторые блоки можно подобрать боевой единицей ядра.\nВозьмите этот [accent]контейнер[] и поставьте его на [accent]грузовой загрузчик[].\n(Клавиши по умолчанию - [ и ] для поднятия и разгрузки)
|
split.pickup = Некоторые блоки можно подобрать боевой единицей ядра.\nВозьмите этот [accent]контейнер[] и поставьте его на [accent]грузовой загрузчик[].\n(Клавиши по умолчанию - [ и ] для поднятия и разгрузки)
|
||||||
split.pickup.mobile = Некоторые блоки можно подобрать боевой единицей ядра.\nВозьмите этот [accent]контейнер[] и поставьте его на [accent]грузовой загрузчик[].\n(Чтобы поднять или разгрузить что-либо, удерживайте палец.)
|
split.pickup.mobile = Некоторые блоки можно подобрать боевой единицей ядра.\nВозьмите этот [accent]контейнер[] и поставьте его на [accent]грузовой загрузчик[].\n(Чтобы поднять или разгрузить что-либо, удерживайте палец.)
|
||||||
split.acquire = Вы должны получить вольфрам для постройки боевых единиц.
|
split.acquire = Вы должны получить вольфрам для постройки боевых единиц.
|
||||||
@@ -2229,6 +2240,8 @@ lst.cutscene = Управляет камерой игрока.
|
|||||||
lst.setflag = Устанавливает глобальный флаг, который может быть прочитан всеми процессорами.
|
lst.setflag = Устанавливает глобальный флаг, который может быть прочитан всеми процессорами.
|
||||||
lst.getflag = Проверяет, установлен ли глобальный флаг.
|
lst.getflag = Проверяет, установлен ли глобальный флаг.
|
||||||
lst.setprop = Устанавливает свойство единицы или постройки.
|
lst.setprop = Устанавливает свойство единицы или постройки.
|
||||||
|
lst.effect = Create a particle effect.
|
||||||
|
lst.sync = Sync a variable across the network.\nOnly invoked 10 times a second at most.
|
||||||
|
|
||||||
logic.nounitbuild = [red]Строительство с помощью процессоров здесь запрещено.
|
logic.nounitbuild = [red]Строительство с помощью процессоров здесь запрещено.
|
||||||
|
|
||||||
@@ -2244,6 +2257,7 @@ laccess.dead = Является ли единица/постройка нера
|
|||||||
laccess.controlled = Возвращает:\n[accent]@ctrlProcessor[] если единица управляется процессором\n[accent]@ctrlPlayer[] если единица/постройка управляется игроком\n[accent]@ctrlFormation[] если единица в строю\nВ противном случае — 0.
|
laccess.controlled = Возвращает:\n[accent]@ctrlProcessor[] если единица управляется процессором\n[accent]@ctrlPlayer[] если единица/постройка управляется игроком\n[accent]@ctrlFormation[] если единица в строю\nВ противном случае — 0.
|
||||||
laccess.progress = Прогресс действия от 0 до 1. Возвращает прогресс производства, перезарядку турели или прогресс постройки.
|
laccess.progress = Прогресс действия от 0 до 1. Возвращает прогресс производства, перезарядку турели или прогресс постройки.
|
||||||
laccess.speed = Максимальная скорость единицы, в тайлах/сек.
|
laccess.speed = Максимальная скорость единицы, в тайлах/сек.
|
||||||
|
laccess.id = ID of a unit/block/item/liquid.\nThis is the inverse of the lookup operation.
|
||||||
lcategory.unknown = Неизвестно
|
lcategory.unknown = Неизвестно
|
||||||
lcategory.unknown.description = Нет категории.
|
lcategory.unknown.description = Нет категории.
|
||||||
lcategory.io = Ввод и вывод
|
lcategory.io = Ввод и вывод
|
||||||
@@ -2289,7 +2303,7 @@ lenum.xor = Побитовое исключающее ИЛИ.
|
|||||||
lenum.min = Минимальное из двух чисел.
|
lenum.min = Минимальное из двух чисел.
|
||||||
lenum.max = Максимальное из двух чисел.
|
lenum.max = Максимальное из двух чисел.
|
||||||
lenum.angle = Угол вектора в градусах.
|
lenum.angle = Угол вектора в градусах.
|
||||||
lenum.anglediff = Absolute distance between two angles in degrees.
|
lenum.anglediff = Абсолютная дистанция между двумя углами, в градусах.
|
||||||
lenum.len = Длина вектора.
|
lenum.len = Длина вектора.
|
||||||
|
|
||||||
lenum.sin = Синус, в градусах.
|
lenum.sin = Синус, в градусах.
|
||||||
@@ -2364,6 +2378,7 @@ lenum.unbind = Полностью отключает управление лог
|
|||||||
lenum.move = Перемещение в определённую позицию.
|
lenum.move = Перемещение в определённую позицию.
|
||||||
lenum.approach = Приближение к позиции с указанным радиусом.
|
lenum.approach = Приближение к позиции с указанным радиусом.
|
||||||
lenum.pathfind = Перемещение к точке появления врагов.
|
lenum.pathfind = Перемещение к точке появления врагов.
|
||||||
|
lenum.autopathfind = Automatically pathfinds to the nearest enemy core or drop point.\nThis is the same as standard wave enemy pathfinding.
|
||||||
lenum.target = Стрельба в определённую позицию.
|
lenum.target = Стрельба в определённую позицию.
|
||||||
lenum.targetp = Стрельба в единицу/постройку с расчётом скорости.
|
lenum.targetp = Стрельба в единицу/постройку с расчётом скорости.
|
||||||
lenum.itemdrop = Сбрасывание предметов.
|
lenum.itemdrop = Сбрасывание предметов.
|
||||||
@@ -2377,5 +2392,3 @@ lenum.build = Строительство блоков.
|
|||||||
lenum.getblock = Распознавание блока и его типа на координатах.\nЕдиница должна находиться в пределах досягаемости.\nТвёрдые не-постройки будут иметь тип [accent]@solid[].
|
lenum.getblock = Распознавание блока и его типа на координатах.\nЕдиница должна находиться в пределах досягаемости.\nТвёрдые не-постройки будут иметь тип [accent]@solid[].
|
||||||
lenum.within = Проверка на нахождение единицы рядом с позицией.
|
lenum.within = Проверка на нахождение единицы рядом с позицией.
|
||||||
lenum.boost = Включение/выключение полёта.
|
lenum.boost = Включение/выключение полёта.
|
||||||
onset.commandmode = Удерживайте [accent]shift[], чтобы войти в [accent]режим командования[].\n[accent]Щелкните левой кнопкой мыши и выделите область[] для выбора боевых единиц.\n[accent]Щелкните правой кнопкой мыши[], чтобы приказать выбранным единицам двигаться или атаковать.
|
|
||||||
onset.commandmode.mobile = Нажмите [accent]Командовать[], чтобы войти в [accent]режим командования[].\nЗажмите палец, затем [accent]выделите область[] для выбора боевых единиц.\n[accent]Нажмите[], чтобы приказать выбранным единицам двигаться или атаковать.
|
|
||||||
|
|||||||
@@ -255,6 +255,7 @@ trace = Nadgledaj Igrača
|
|||||||
trace.playername = Ime igrača: [accent]{0}
|
trace.playername = Ime igrača: [accent]{0}
|
||||||
trace.ip = IP: [accent]{0}
|
trace.ip = IP: [accent]{0}
|
||||||
trace.id = ID: [accent]{0}
|
trace.id = ID: [accent]{0}
|
||||||
|
trace.language = Language: [accent]{0}
|
||||||
trace.mobile = Telefonski Klijent: [accent]{0}
|
trace.mobile = Telefonski Klijent: [accent]{0}
|
||||||
trace.modclient = Svojehodni Klijent: [accent]{0}
|
trace.modclient = Svojehodni Klijent: [accent]{0}
|
||||||
trace.times.joined = Puta Povezano: [accent]{0}
|
trace.times.joined = Puta Povezano: [accent]{0}
|
||||||
@@ -952,13 +953,17 @@ stat.healing = Popravlja
|
|||||||
|
|
||||||
ability.forcefield = Polje Sile
|
ability.forcefield = Polje Sile
|
||||||
ability.repairfield = Polje Popravke
|
ability.repairfield = Polje Popravke
|
||||||
ability.statusfield = {0} Statusno Polje
|
ability.statusfield = Statusno Polje
|
||||||
ability.unitspawn = {0} Fabrika
|
ability.unitspawn = Fabrika
|
||||||
ability.shieldregenfield = Brzina Obnove Štita
|
ability.shieldregenfield = Brzina Obnove Štita
|
||||||
ability.movelightning = Munje Pri Kretanju
|
ability.movelightning = Munje Pri Kretanju
|
||||||
ability.shieldarc = Elektrolučni Štit
|
ability.shieldarc = Elektrolučni Štit
|
||||||
ability.suppressionfield = Polje Prigušivanja Popravki
|
ability.suppressionfield = Polje Prigušivanja Popravki
|
||||||
ability.energyfield = Energetsko Polje: [accent]{0}[] štete ~ [accent]{1}[] polja / [accent]{2}[] maksimalnih meta
|
ability.energyfield = Energetsko Polje
|
||||||
|
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}%
|
||||||
|
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0}
|
||||||
|
ability.regen = Regeneration
|
||||||
|
|
||||||
bar.onlycoredeposit = Dozvoljeno Dostavljanje Samo Unutar Jezgra
|
bar.onlycoredeposit = Dozvoljeno Dostavljanje Samo Unutar Jezgra
|
||||||
|
|
||||||
bar.drilltierreq = Bolja Bušilica Potrebna
|
bar.drilltierreq = Bolja Bušilica Potrebna
|
||||||
@@ -1099,6 +1104,7 @@ setting.position.name = Prikaži Poziciju Igrača
|
|||||||
setting.mouseposition.name = Prilaži Poziciju Miša
|
setting.mouseposition.name = Prilaži Poziciju Miša
|
||||||
setting.musicvol.name = Jačina Muzike
|
setting.musicvol.name = Jačina Muzike
|
||||||
setting.atmosphere.name = Prikaži Atmosferu Planete
|
setting.atmosphere.name = Prikaži Atmosferu Planete
|
||||||
|
setting.drawlight.name = Draw Darkness/Lighting
|
||||||
setting.ambientvol.name = Jačina Zvuka Ambijenta
|
setting.ambientvol.name = Jačina Zvuka Ambijenta
|
||||||
setting.mutemusic.name = Nema Muzike
|
setting.mutemusic.name = Nema Muzike
|
||||||
setting.sfxvol.name = Jačina Zvučnih Efekata
|
setting.sfxvol.name = Jačina Zvučnih Efekata
|
||||||
@@ -1850,6 +1856,9 @@ onset.enemies = Neprijatelj dolazi, spremite se.
|
|||||||
onset.attack = The enemy is vulnerable. Counter-attack.
|
onset.attack = The enemy is vulnerable. Counter-attack.
|
||||||
onset.cores = Nova jezgra se mogu postaviti na [accent]poljima jezgra[].\nNova jezgra funkcionišu kao prednje baze i dele resursni invetar sa ostalim jezgrima.\nPostavi \uf725 jezgro.
|
onset.cores = Nova jezgra se mogu postaviti na [accent]poljima jezgra[].\nNova jezgra funkcionišu kao prednje baze i dele resursni invetar sa ostalim jezgrima.\nPostavi \uf725 jezgro.
|
||||||
onset.detect = Neprijatelj će te primetiti za 2 minuta.\nPostavite odbranu, rudu i proizvodnju.
|
onset.detect = Neprijatelj će te primetiti za 2 minuta.\nPostavite odbranu, rudu i proizvodnju.
|
||||||
|
onset.commandmode = Drži [accent]shift[] da bi ušao u [accent]komandni mod[].\n[accent]Levi-klik i vuci[] da izabereš jedinice.\n[accent]Desni-klik[] da bi naredio jedinicama da se kreću ili napadaju.
|
||||||
|
onset.commandmode.mobile = Pritisni [accent]komandno dugme[] da bi ušao [accent]komandni mod[].\nDrži prstom, pritom [accent]vuci[] da izabereš jedinice.\n[accent]Pritisni[] da bi naredio jedinicama da se kreću ili napadaju.
|
||||||
|
aegis.tungsten = Tungsten can be mined using an [accent]impact drill[].\nThis structure requires [accent]water[] and [accent]power[].
|
||||||
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)
|
||||||
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
||||||
split.acquire = Moraš preuzeti nešto volframa da bi proizvodio jedinice.
|
split.acquire = Moraš preuzeti nešto volframa da bi proizvodio jedinice.
|
||||||
@@ -2232,6 +2241,8 @@ 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.
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
lst.effect = Create a particle effect.
|
||||||
|
lst.sync = Sync a variable across the network.\nOnly invoked 10 times a second at most.
|
||||||
|
|
||||||
logic.nounitbuild = [red]Unit building logic is not allowed here.
|
logic.nounitbuild = [red]Unit building logic is not allowed here.
|
||||||
|
|
||||||
@@ -2247,6 +2258,7 @@ laccess.dead = Da li je građevina/jedinica mrtva, ili više ne radi.
|
|||||||
laccess.controlled = Returns:\n[accent]@ctrlProcessor[] if unit controller is processor\n[accent]@ctrlPlayer[] if unit/building controller is player\n[accent]@ctrlFormation[] if unit is in formation\nOtherwise, 0.
|
laccess.controlled = Returns:\n[accent]@ctrlProcessor[] if unit controller is processor\n[accent]@ctrlPlayer[] if unit/building controller is player\n[accent]@ctrlFormation[] if unit is in formation\nOtherwise, 0.
|
||||||
laccess.progress = Action progress, 0 to 1.\nReturns production, turret reload or construction progress.
|
laccess.progress = Action progress, 0 to 1.\nReturns production, turret reload or construction progress.
|
||||||
laccess.speed = Maksimalna brzina jedinice, u polja/sekundi.
|
laccess.speed = Maksimalna brzina jedinice, u polja/sekundi.
|
||||||
|
laccess.id = ID of a unit/block/item/liquid.\nThis is the inverse of the lookup operation.
|
||||||
lcategory.unknown = Nepoznato
|
lcategory.unknown = Nepoznato
|
||||||
lcategory.unknown.description = Uncategorized instructions.
|
lcategory.unknown.description = Uncategorized instructions.
|
||||||
lcategory.io = Input & Output
|
lcategory.io = Input & Output
|
||||||
@@ -2367,6 +2379,7 @@ lenum.unbind = Completely disable logic control.\nResume standard AI.
|
|||||||
lenum.move = Idi do tačnog mesta.
|
lenum.move = Idi do tačnog mesta.
|
||||||
lenum.approach = Approach a position with a radius.
|
lenum.approach = Approach a position with a radius.
|
||||||
lenum.pathfind = Pathfind to the enemy spawn.
|
lenum.pathfind = Pathfind to the enemy spawn.
|
||||||
|
lenum.autopathfind = Automatically pathfinds to the nearest enemy core or drop point.\nThis is the same as standard wave enemy pathfinding.
|
||||||
lenum.target = Pucaj na mesto.
|
lenum.target = Pucaj na mesto.
|
||||||
lenum.targetp = Shoot a target with velocity prediction.
|
lenum.targetp = Shoot a target with velocity prediction.
|
||||||
lenum.itemdrop = Drop an item.
|
lenum.itemdrop = Drop an item.
|
||||||
@@ -2380,5 +2393,3 @@ lenum.build = Build a structure.
|
|||||||
lenum.getblock = Fetch a building and type at coordinates.\nUnit must be in range of position.\nSolid non-buildings will have the type [accent]@solid[].
|
lenum.getblock = Fetch a building and type at coordinates.\nUnit must be in range of position.\nSolid non-buildings will have the type [accent]@solid[].
|
||||||
lenum.within = Check if unit is near a position.
|
lenum.within = Check if unit is near a position.
|
||||||
lenum.boost = Start/stop boosting.
|
lenum.boost = Start/stop boosting.
|
||||||
onset.commandmode = Drži [accent]shift[] da bi ušao u [accent]komandni mod[].\n[accent]Levi-klik i vuci[] da izabereš jedinice.\n[accent]Desni-klik[] da bi naredio jedinicama da se kreću ili napadaju.
|
|
||||||
onset.commandmode.mobile = Pritisni [accent]komandno dugme[] da bi ušao [accent]komandni mod[].\nDrži prstom, pritom [accent]vuci[] da izabereš jedinice.\n[accent]Pritisni[] da bi naredio jedinicama da se kreću ili napadaju.
|
|
||||||
|
|||||||
@@ -251,6 +251,7 @@ trace = Trace Player
|
|||||||
trace.playername = Spelarnamn: [accent]{0}
|
trace.playername = Spelarnamn: [accent]{0}
|
||||||
trace.ip = IP: [accent]{0}
|
trace.ip = IP: [accent]{0}
|
||||||
trace.id = Unique ID: [accent]{0}
|
trace.id = Unique ID: [accent]{0}
|
||||||
|
trace.language = Language: [accent]{0}
|
||||||
trace.mobile = Mobile Client: [accent]{0}
|
trace.mobile = Mobile Client: [accent]{0}
|
||||||
trace.modclient = Custom Client: [accent]{0}
|
trace.modclient = Custom Client: [accent]{0}
|
||||||
trace.times.joined = Times Joined: [accent]{0}
|
trace.times.joined = Times Joined: [accent]{0}
|
||||||
@@ -939,12 +940,16 @@ stat.healing = Healing
|
|||||||
ability.forcefield = Force Field
|
ability.forcefield = Force Field
|
||||||
ability.repairfield = Repair Field
|
ability.repairfield = Repair Field
|
||||||
ability.statusfield = Status Field
|
ability.statusfield = Status Field
|
||||||
ability.unitspawn = {0} Factory
|
ability.unitspawn = 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 = Regen Suppression Field
|
||||||
ability.energyfield = Energy Field: [accent]{0}[] damage ~ [accent]{1}[] blocks / [accent]{2}[] targets
|
ability.energyfield = Energy Field
|
||||||
|
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}%
|
||||||
|
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0}
|
||||||
|
ability.regen = Regeneration
|
||||||
|
|
||||||
bar.onlycoredeposit = Only Core Depositing Allowed
|
bar.onlycoredeposit = Only Core Depositing Allowed
|
||||||
|
|
||||||
bar.drilltierreq = Bättre Borr Krävs
|
bar.drilltierreq = Bättre Borr Krävs
|
||||||
@@ -1085,6 +1090,7 @@ setting.position.name = Show Player Position
|
|||||||
setting.mouseposition.name = Show Mouse Position
|
setting.mouseposition.name = Show Mouse Position
|
||||||
setting.musicvol.name = Musikvolym
|
setting.musicvol.name = Musikvolym
|
||||||
setting.atmosphere.name = Show Planet Atmosphere
|
setting.atmosphere.name = Show Planet Atmosphere
|
||||||
|
setting.drawlight.name = Draw Darkness/Lighting
|
||||||
setting.ambientvol.name = Ambient Volume
|
setting.ambientvol.name = Ambient Volume
|
||||||
setting.mutemusic.name = Stäng Av Musik
|
setting.mutemusic.name = Stäng Av Musik
|
||||||
setting.sfxvol.name = Ljudeffektvolym
|
setting.sfxvol.name = Ljudeffektvolym
|
||||||
@@ -1832,6 +1838,9 @@ 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.
|
||||||
|
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
||||||
|
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
||||||
|
aegis.tungsten = Tungsten can be mined using an [accent]impact drill[].\nThis structure requires [accent]water[] and [accent]power[].
|
||||||
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)
|
||||||
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
||||||
split.acquire = You must acquire some tungsten to build units.
|
split.acquire = You must acquire some tungsten to build units.
|
||||||
@@ -2211,6 +2220,8 @@ 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.
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
lst.effect = Create a particle effect.
|
||||||
|
lst.sync = Sync a variable across the network.\nOnly invoked 10 times a second at most.
|
||||||
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.
|
||||||
@@ -2223,6 +2234,7 @@ laccess.dead = Whether a unit/building is dead or no longer valid.
|
|||||||
laccess.controlled = Returns:\n[accent]@ctrlProcessor[] if unit controller is processor\n[accent]@ctrlPlayer[] if unit/building controller is player\n[accent]@ctrlFormation[] if unit is in formation\nOtherwise, 0.
|
laccess.controlled = Returns:\n[accent]@ctrlProcessor[] if unit controller is processor\n[accent]@ctrlPlayer[] if unit/building controller is player\n[accent]@ctrlFormation[] if unit is in formation\nOtherwise, 0.
|
||||||
laccess.progress = Action progress, 0 to 1.\nReturns production, turret reload or construction progress.
|
laccess.progress = Action progress, 0 to 1.\nReturns production, turret reload or construction progress.
|
||||||
laccess.speed = Top speed of a unit, in tiles/sec.
|
laccess.speed = Top speed of a unit, in tiles/sec.
|
||||||
|
laccess.id = ID of a unit/block/item/liquid.\nThis is the inverse of the lookup operation.
|
||||||
lcategory.unknown = Unknown
|
lcategory.unknown = Unknown
|
||||||
lcategory.unknown.description = Uncategorized instructions.
|
lcategory.unknown.description = Uncategorized instructions.
|
||||||
lcategory.io = Input & Output
|
lcategory.io = Input & Output
|
||||||
@@ -2327,6 +2339,7 @@ lenum.unbind = Completely disable logic control.\nResume standard AI.
|
|||||||
lenum.move = Move to exact position.
|
lenum.move = Move to exact position.
|
||||||
lenum.approach = Approach a position with a radius.
|
lenum.approach = Approach a position with a radius.
|
||||||
lenum.pathfind = Pathfind to the enemy spawn.
|
lenum.pathfind = Pathfind to the enemy spawn.
|
||||||
|
lenum.autopathfind = Automatically pathfinds to the nearest enemy core or drop point.\nThis is the same as standard wave enemy pathfinding.
|
||||||
lenum.target = Shoot a position.
|
lenum.target = Shoot a position.
|
||||||
lenum.targetp = Shoot a target with velocity prediction.
|
lenum.targetp = Shoot a target with velocity prediction.
|
||||||
lenum.itemdrop = Drop an item.
|
lenum.itemdrop = Drop an item.
|
||||||
@@ -2340,5 +2353,3 @@ lenum.build = Build a structure.
|
|||||||
lenum.getblock = Fetch a building and type at coordinates.\nUnit must be in range of position.\nSolid non-buildings will have the type [accent]@solid[].
|
lenum.getblock = Fetch a building and type at coordinates.\nUnit must be in range of position.\nSolid non-buildings will have the type [accent]@solid[].
|
||||||
lenum.within = Check if unit is near a position.
|
lenum.within = Check if unit is near a position.
|
||||||
lenum.boost = Start/stop boosting.
|
lenum.boost = Start/stop boosting.
|
||||||
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
|
||||||
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
|
||||||
|
|||||||
@@ -255,6 +255,7 @@ trace = แกะรอยผู้เล่น
|
|||||||
trace.playername = ชื่อผู้เล่น: [accent]{0}
|
trace.playername = ชื่อผู้เล่น: [accent]{0}
|
||||||
trace.ip = IP: [accent]{0}
|
trace.ip = IP: [accent]{0}
|
||||||
trace.id = ID: [accent]{0}
|
trace.id = ID: [accent]{0}
|
||||||
|
trace.language = Language: [accent]{0}
|
||||||
trace.mobile = ไคลเอนต์โทรศัพท์: [accent]{0}
|
trace.mobile = ไคลเอนต์โทรศัพท์: [accent]{0}
|
||||||
trace.modclient = ไคลเอนต์ปรับแต่ง: [accent]{0}
|
trace.modclient = ไคลเอนต์ปรับแต่ง: [accent]{0}
|
||||||
trace.times.joined = ครั้งที่เข้า: [accent]{0}
|
trace.times.joined = ครั้งที่เข้า: [accent]{0}
|
||||||
@@ -952,13 +953,16 @@ stat.healing = การรักษา
|
|||||||
|
|
||||||
ability.forcefield = โล่พลังงาน
|
ability.forcefield = โล่พลังงาน
|
||||||
ability.repairfield = สนามซ่อมแซม
|
ability.repairfield = สนามซ่อมแซม
|
||||||
ability.statusfield = {0} สนามเอฟเฟกต์
|
ability.statusfield = สนามเอฟเฟกต์
|
||||||
ability.unitspawn = โรงงานผลิต [accent]{0}
|
ability.unitspawn = โรงงานผลิต
|
||||||
ability.shieldregenfield = สนามรักษาโล่
|
ability.shieldregenfield = สนามรักษาโล่
|
||||||
ability.movelightning = ปล่อยสายฟ้าเมื่อเคลื่อนที่
|
ability.movelightning = ปล่อยสายฟ้าเมื่อเคลื่อนที่
|
||||||
ability.shieldarc = โล่พลังงานโค้ง
|
ability.shieldarc = โล่พลังงานโค้ง
|
||||||
ability.suppressionfield = สนามระงับการฟื้นฟู
|
ability.suppressionfield = สนามระงับการฟื้นฟู
|
||||||
ability.energyfield = สนามพลังงาน: [accent]{0}[] ดาเมจ ~ [accent]{1}[] บล็อก / [accent]{2}[] เป้าหมาย
|
ability.energyfield = สนามพลังงาน
|
||||||
|
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}%
|
||||||
|
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0}
|
||||||
|
ability.regen = Regeneration
|
||||||
|
|
||||||
bar.onlycoredeposit = ขนย้ายทรัพยากรลงแกนกลางได้เท่านั้น
|
bar.onlycoredeposit = ขนย้ายทรัพยากรลงแกนกลางได้เท่านั้น
|
||||||
bar.drilltierreq = ต้องมีเครื่องขุดที่ดีกว่านี้
|
bar.drilltierreq = ต้องมีเครื่องขุดที่ดีกว่านี้
|
||||||
@@ -1099,6 +1103,7 @@ setting.position.name = แสดงตำแหน่งของผู้เ
|
|||||||
setting.mouseposition.name = แสดงตำแหน่งเม้าส์
|
setting.mouseposition.name = แสดงตำแหน่งเม้าส์
|
||||||
setting.musicvol.name = ระดับเสียงเพลง
|
setting.musicvol.name = ระดับเสียงเพลง
|
||||||
setting.atmosphere.name = แสดงชั้นบรรยากาศของดาว
|
setting.atmosphere.name = แสดงชั้นบรรยากาศของดาว
|
||||||
|
setting.drawlight.name = Draw Darkness/Lighting
|
||||||
setting.ambientvol.name = ระดับเสียงแวดล้อม
|
setting.ambientvol.name = ระดับเสียงแวดล้อม
|
||||||
setting.mutemusic.name = ปิดเสียงเพลง
|
setting.mutemusic.name = ปิดเสียงเพลง
|
||||||
setting.sfxvol.name = ระดับเสียง SFX
|
setting.sfxvol.name = ระดับเสียง SFX
|
||||||
@@ -1858,6 +1863,11 @@ onset.attack = ศัตรูอ่อนแอลงแล้ว ตอบโ
|
|||||||
onset.cores = แกนกลางใหม่สามารถวางได้บน[accent]โซนแกนกลาง[]\nแกนกลางใหม่จะทำหน้าที่เป็นฐานทัพหน้าด่านและจะแบ่งปันทรัพยากรกับแกนกลางอื่นๆ\nวาง \uf725 แกนกลาง
|
onset.cores = แกนกลางใหม่สามารถวางได้บน[accent]โซนแกนกลาง[]\nแกนกลางใหม่จะทำหน้าที่เป็นฐานทัพหน้าด่านและจะแบ่งปันทรัพยากรกับแกนกลางอื่นๆ\nวาง \uf725 แกนกลาง
|
||||||
onset.detect = ศัตรูจะสามารถตรวจจับการมีอยู่ของคุณได้ในอีก 2 นาที\nจัดตั้งกองกำลังป้องกัน ปฏิบัติการขุด และการผลิต
|
onset.detect = ศัตรูจะสามารถตรวจจับการมีอยู่ของคุณได้ในอีก 2 นาที\nจัดตั้งกองกำลังป้องกัน ปฏิบัติการขุด และการผลิต
|
||||||
|
|
||||||
|
#Don't translate these yet!
|
||||||
|
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
||||||
|
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
||||||
|
aegis.tungsten = Tungsten can be mined using an [accent]impact drill[].\nThis structure requires [accent]water[] and [accent]power[].
|
||||||
|
|
||||||
split.pickup = บล็อกบางชนิดสามารถถูกหยิบขึ้นมาได้ด้วยยูนิตแกนกลาง\nบรรทุก[accent]ที่เก็บของ[]นี้มาแล้วเอาไปวางใน[accent]เครื่องโหลดสิ่งบรรทุก[]\n(ปุ่มค่าเริ่มต้นคือ [ สำหรับหยิบและ ] สำหรับวางบล็อก)
|
split.pickup = บล็อกบางชนิดสามารถถูกหยิบขึ้นมาได้ด้วยยูนิตแกนกลาง\nบรรทุก[accent]ที่เก็บของ[]นี้มาแล้วเอาไปวางใน[accent]เครื่องโหลดสิ่งบรรทุก[]\n(ปุ่มค่าเริ่มต้นคือ [ สำหรับหยิบและ ] สำหรับวางบล็อก)
|
||||||
split.pickup.mobile = บล็อกบางชนิดสามารถถูกหยิบขึ้นมาได้ด้วยยูนิตแกนกลาง\nบรรทุก[accent]ตู้เก็บของ[]นี้มาแล้วเอาไปวางใน[accent]เครื่องโหลดสิ่งบรรทุก[]\n(เพื่อจะหยิบหรือวางสิ่งใดๆ ให้กดค้างที่ตำแหน่งที่ต้องการหยิบหรือวาง)
|
split.pickup.mobile = บล็อกบางชนิดสามารถถูกหยิบขึ้นมาได้ด้วยยูนิตแกนกลาง\nบรรทุก[accent]ตู้เก็บของ[]นี้มาแล้วเอาไปวางใน[accent]เครื่องโหลดสิ่งบรรทุก[]\n(เพื่อจะหยิบหรือวางสิ่งใดๆ ให้กดค้างที่ตำแหน่งที่ต้องการหยิบหรือวาง)
|
||||||
split.acquire = คุณต้องหาทังสเตนมาเพื่อสร้างยูนิต
|
split.acquire = คุณต้องหาทังสเตนมาเพื่อสร้างยูนิต
|
||||||
@@ -2248,6 +2258,8 @@ lst.cutscene = ควบคุมมุมกล้องของผู้เ
|
|||||||
lst.setflag = เซ็ตธงทั่วโลกที่ตัวประมวลผลทุกตัวสามารถอ่านค่าได้
|
lst.setflag = เซ็ตธงทั่วโลกที่ตัวประมวลผลทุกตัวสามารถอ่านค่าได้
|
||||||
lst.getflag = เช็กว่าธงทั่วโลกนั้นได้ถูกเซ็ตอยู่รึเปล่า
|
lst.getflag = เช็กว่าธงทั่วโลกนั้นได้ถูกเซ็ตอยู่รึเปล่า
|
||||||
lst.setprop = ตั้งค่าคุณสมบัติของยูนิตและสิ่งก่อสร้าง
|
lst.setprop = ตั้งค่าคุณสมบัติของยูนิตและสิ่งก่อสร้าง
|
||||||
|
lst.effect = Create a particle effect.
|
||||||
|
lst.sync = Sync a variable across the network.\nOnly invoked 10 times a second at most.
|
||||||
|
|
||||||
logic.nounitbuild = [red]ไม่อนุญาตให้ใช้ลอจิกควบคุมให้ยูนิตสร้างที่นี่
|
logic.nounitbuild = [red]ไม่อนุญาตให้ใช้ลอจิกควบคุมให้ยูนิตสร้างที่นี่
|
||||||
|
|
||||||
@@ -2263,6 +2275,7 @@ laccess.dead = ว่าสิ่งก่อสร้าง/ยูนิตน
|
|||||||
laccess.controlled = จะส่งกลับ:\n[accent]@ctrlProcessor[] ถ้าผู้ควบคุมคือตัวประมวลผลลอจิก\n[accent]@ctrlPlayer[] ถ้าสิ่งก่อสร้าง/ยูนิตถูกควบคุมโดยผู้เล่น\n[accent]@ctrlCommand[] ถ้ายูนิตถูกสั่งการโดยผู้เล่นอยู่\nนอกนั้นจะเป็น 0
|
laccess.controlled = จะส่งกลับ:\n[accent]@ctrlProcessor[] ถ้าผู้ควบคุมคือตัวประมวลผลลอจิก\n[accent]@ctrlPlayer[] ถ้าสิ่งก่อสร้าง/ยูนิตถูกควบคุมโดยผู้เล่น\n[accent]@ctrlCommand[] ถ้ายูนิตถูกสั่งการโดยผู้เล่นอยู่\nนอกนั้นจะเป็น 0
|
||||||
laccess.progress = ความคืบหน้าการดำเนินการจาก 0 ถึง 1\nจะส่งกลับค่าการผลิต การรีโหลดของป้อมปืน หรือความคืบหน้าในการสร้างสิ่งก่อสร้าง
|
laccess.progress = ความคืบหน้าการดำเนินการจาก 0 ถึง 1\nจะส่งกลับค่าการผลิต การรีโหลดของป้อมปืน หรือความคืบหน้าในการสร้างสิ่งก่อสร้าง
|
||||||
laccess.speed = ความเร็วสูงสุดของยูนิตในหน่วย ช่อง/วินาที
|
laccess.speed = ความเร็วสูงสุดของยูนิตในหน่วย ช่อง/วินาที
|
||||||
|
laccess.id = ID of a unit/block/item/liquid.\nThis is the inverse of the lookup operation.
|
||||||
|
|
||||||
lcategory.unknown = ไม่ทราบ
|
lcategory.unknown = ไม่ทราบ
|
||||||
lcategory.unknown.description = คำสั่งที่ไม่อยู่ในหมวดหมู่ใดๆเลย
|
lcategory.unknown.description = คำสั่งที่ไม่อยู่ในหมวดหมู่ใดๆเลย
|
||||||
@@ -2384,6 +2397,7 @@ lenum.unbind = ยกเลิกการควบคุมลอจิกท
|
|||||||
lenum.move = ขยับไปที่ตำแหน่งที่กำหนดไว้
|
lenum.move = ขยับไปที่ตำแหน่งที่กำหนดไว้
|
||||||
lenum.approach = เข้าใกล้ตำแหน่งโดยกำหนดระยะห่าง
|
lenum.approach = เข้าใกล้ตำแหน่งโดยกำหนดระยะห่าง
|
||||||
lenum.pathfind = ขยับไปที่ตำแหน่งที่กำหนดไว้ โดยมีการคำนวณเพื่อเลี่ยงสิ่งกีดขวาง
|
lenum.pathfind = ขยับไปที่ตำแหน่งที่กำหนดไว้ โดยมีการคำนวณเพื่อเลี่ยงสิ่งกีดขวาง
|
||||||
|
lenum.autopathfind = Automatically pathfinds to the nearest enemy core or drop point.\nThis is the same as standard wave enemy pathfinding.
|
||||||
lenum.target = ยิงไปที่ตำแหน่งเป้าหมาย
|
lenum.target = ยิงไปที่ตำแหน่งเป้าหมาย
|
||||||
lenum.targetp = ยิงไปที่เป้าหมาย โดยมีการคำนวณความเร็ว
|
lenum.targetp = ยิงไปที่เป้าหมาย โดยมีการคำนวณความเร็ว
|
||||||
lenum.itemdrop = ปล่อยไอเท็ม
|
lenum.itemdrop = ปล่อยไอเท็ม
|
||||||
@@ -2397,7 +2411,3 @@ lenum.build = สร้างสิ่งก่อสร้าง
|
|||||||
lenum.getblock = ดึงข้อมูลสิ่งก่อสร้างและประเภทของสิ่งก่อสร้างที่ตำแหน่งเป้าหมาย\nยูนิตต้องอยู่ในระยะของตำแหน่ง\nบล็อกตันที่ไม่ใช่สิ่งก่อสร้างจะมีชนิดเป็น [accent]@solid[]
|
lenum.getblock = ดึงข้อมูลสิ่งก่อสร้างและประเภทของสิ่งก่อสร้างที่ตำแหน่งเป้าหมาย\nยูนิตต้องอยู่ในระยะของตำแหน่ง\nบล็อกตันที่ไม่ใช่สิ่งก่อสร้างจะมีชนิดเป็น [accent]@solid[]
|
||||||
lenum.within = ตรวจสอบว่ายูนิตนั้นอยู่ในระยะหรือไม่
|
lenum.within = ตรวจสอบว่ายูนิตนั้นอยู่ในระยะหรือไม่
|
||||||
lenum.boost = เริ่ม/หยุดการบูสต์
|
lenum.boost = เริ่ม/หยุดการบูสต์
|
||||||
|
|
||||||
#Don't translate these yet!
|
|
||||||
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
|
||||||
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
|
||||||
|
|||||||
@@ -251,6 +251,7 @@ trace = Oyuncu isaretle
|
|||||||
trace.playername = Player name: [accent]{0}
|
trace.playername = Player name: [accent]{0}
|
||||||
trace.ip = IP: [accent]{0}
|
trace.ip = IP: [accent]{0}
|
||||||
trace.id = Unik ID: [accent]{0}
|
trace.id = Unik ID: [accent]{0}
|
||||||
|
trace.language = Language: [accent]{0}
|
||||||
trace.mobile = Mobile Client: [accent]{0}
|
trace.mobile = Mobile Client: [accent]{0}
|
||||||
trace.modclient = Ozel islemci Kullanicisi: [accent]{0}
|
trace.modclient = Ozel islemci Kullanicisi: [accent]{0}
|
||||||
trace.times.joined = Times Joined: [accent]{0}
|
trace.times.joined = Times Joined: [accent]{0}
|
||||||
@@ -939,12 +940,16 @@ stat.healing = Healing
|
|||||||
ability.forcefield = Force Field
|
ability.forcefield = Force Field
|
||||||
ability.repairfield = Repair Field
|
ability.repairfield = Repair Field
|
||||||
ability.statusfield = Status Field
|
ability.statusfield = Status Field
|
||||||
ability.unitspawn = {0} Factory
|
ability.unitspawn = 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 = Regen Suppression Field
|
||||||
ability.energyfield = Energy Field: [accent]{0}[] damage ~ [accent]{1}[] blocks / [accent]{2}[] targets
|
ability.energyfield = Energy Field
|
||||||
|
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}%
|
||||||
|
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0}
|
||||||
|
ability.regen = Regeneration
|
||||||
|
|
||||||
bar.onlycoredeposit = Only Core Depositing Allowed
|
bar.onlycoredeposit = Only Core Depositing Allowed
|
||||||
|
|
||||||
bar.drilltierreq = Better Drill Required
|
bar.drilltierreq = Better Drill Required
|
||||||
@@ -1085,6 +1090,7 @@ setting.position.name = Show Player Position
|
|||||||
setting.mouseposition.name = Show Mouse Position
|
setting.mouseposition.name = Show Mouse Position
|
||||||
setting.musicvol.name = Ses yuksekligi
|
setting.musicvol.name = Ses yuksekligi
|
||||||
setting.atmosphere.name = Show Planet Atmosphere
|
setting.atmosphere.name = Show Planet Atmosphere
|
||||||
|
setting.drawlight.name = Draw Darkness/Lighting
|
||||||
setting.ambientvol.name = Ambient Volume
|
setting.ambientvol.name = Ambient Volume
|
||||||
setting.mutemusic.name = Sesi kapat
|
setting.mutemusic.name = Sesi kapat
|
||||||
setting.sfxvol.name = Ses seviyesi
|
setting.sfxvol.name = Ses seviyesi
|
||||||
@@ -1832,6 +1838,9 @@ 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.
|
||||||
|
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
||||||
|
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
||||||
|
aegis.tungsten = Tungsten can be mined using an [accent]impact drill[].\nThis structure requires [accent]water[] and [accent]power[].
|
||||||
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)
|
||||||
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
||||||
split.acquire = You must acquire some tungsten to build units.
|
split.acquire = You must acquire some tungsten to build units.
|
||||||
@@ -2211,6 +2220,8 @@ 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.
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
lst.effect = Create a particle effect.
|
||||||
|
lst.sync = Sync a variable across the network.\nOnly invoked 10 times a second at most.
|
||||||
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.
|
||||||
@@ -2223,6 +2234,7 @@ laccess.dead = Whether a unit/building is dead or no longer valid.
|
|||||||
laccess.controlled = Returns:\n[accent]@ctrlProcessor[] if unit controller is processor\n[accent]@ctrlPlayer[] if unit/building controller is player\n[accent]@ctrlFormation[] if unit is in formation\nOtherwise, 0.
|
laccess.controlled = Returns:\n[accent]@ctrlProcessor[] if unit controller is processor\n[accent]@ctrlPlayer[] if unit/building controller is player\n[accent]@ctrlFormation[] if unit is in formation\nOtherwise, 0.
|
||||||
laccess.progress = Action progress, 0 to 1.\nReturns production, turret reload or construction progress.
|
laccess.progress = Action progress, 0 to 1.\nReturns production, turret reload or construction progress.
|
||||||
laccess.speed = Top speed of a unit, in tiles/sec.
|
laccess.speed = Top speed of a unit, in tiles/sec.
|
||||||
|
laccess.id = ID of a unit/block/item/liquid.\nThis is the inverse of the lookup operation.
|
||||||
lcategory.unknown = Unknown
|
lcategory.unknown = Unknown
|
||||||
lcategory.unknown.description = Uncategorized instructions.
|
lcategory.unknown.description = Uncategorized instructions.
|
||||||
lcategory.io = Input & Output
|
lcategory.io = Input & Output
|
||||||
@@ -2327,6 +2339,7 @@ lenum.unbind = Completely disable logic control.\nResume standard AI.
|
|||||||
lenum.move = Move to exact position.
|
lenum.move = Move to exact position.
|
||||||
lenum.approach = Approach a position with a radius.
|
lenum.approach = Approach a position with a radius.
|
||||||
lenum.pathfind = Pathfind to the enemy spawn.
|
lenum.pathfind = Pathfind to the enemy spawn.
|
||||||
|
lenum.autopathfind = Automatically pathfinds to the nearest enemy core or drop point.\nThis is the same as standard wave enemy pathfinding.
|
||||||
lenum.target = Shoot a position.
|
lenum.target = Shoot a position.
|
||||||
lenum.targetp = Shoot a target with velocity prediction.
|
lenum.targetp = Shoot a target with velocity prediction.
|
||||||
lenum.itemdrop = Drop an item.
|
lenum.itemdrop = Drop an item.
|
||||||
@@ -2340,5 +2353,3 @@ lenum.build = Build a structure.
|
|||||||
lenum.getblock = Fetch a building and type at coordinates.\nUnit must be in range of position.\nSolid non-buildings will have the type [accent]@solid[].
|
lenum.getblock = Fetch a building and type at coordinates.\nUnit must be in range of position.\nSolid non-buildings will have the type [accent]@solid[].
|
||||||
lenum.within = Check if unit is near a position.
|
lenum.within = Check if unit is near a position.
|
||||||
lenum.boost = Start/stop boosting.
|
lenum.boost = Start/stop boosting.
|
||||||
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
|
||||||
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
|
||||||
|
|||||||
@@ -255,6 +255,7 @@ trace = Oyuncuyu Takip Et
|
|||||||
trace.playername = Oyuncu İsmi: [accent]{0}
|
trace.playername = Oyuncu İsmi: [accent]{0}
|
||||||
trace.ip = IP: [accent]{0}
|
trace.ip = IP: [accent]{0}
|
||||||
trace.id = Özel ID: [accent]{0}
|
trace.id = Özel ID: [accent]{0}
|
||||||
|
trace.language = Language: [accent]{0}
|
||||||
trace.mobile = Mobil Sürüm: [accent]{0}
|
trace.mobile = Mobil Sürüm: [accent]{0}
|
||||||
trace.modclient = Özel Sürüm: [accent]{0}
|
trace.modclient = Özel Sürüm: [accent]{0}
|
||||||
trace.times.joined = Girme Sayısı: [accent]{0}
|
trace.times.joined = Girme Sayısı: [accent]{0}
|
||||||
@@ -950,12 +951,15 @@ stat.healing = Tamir Eder
|
|||||||
ability.forcefield = Güç Kalkanı
|
ability.forcefield = Güç Kalkanı
|
||||||
ability.repairfield = Onarma Alanı
|
ability.repairfield = Onarma Alanı
|
||||||
ability.statusfield = Hızlandırma Alanı
|
ability.statusfield = Hızlandırma Alanı
|
||||||
ability.unitspawn = {0} Birliği Fabrikası
|
ability.unitspawn = Birliği Fabrikası
|
||||||
ability.shieldregenfield = Kalkan Yenileme Alanı
|
ability.shieldregenfield = Kalkan Yenileme Alanı
|
||||||
ability.movelightning = Hareket Enerjisi
|
ability.movelightning = Hareket Enerjisi
|
||||||
ability.shieldarc = Arc Kalkan
|
ability.shieldarc = Arc Kalkan
|
||||||
ability.suppressionfield = Tamir Engelleme Alanı
|
ability.suppressionfield = Tamir Engelleme Alanı
|
||||||
ability.energyfield = Güç Kalkanı: [accent]{0}[] hasar ~ [accent]{1}[] blok / [accent]{2}[] hedef
|
ability.energyfield = Güç Kalkanı
|
||||||
|
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}%
|
||||||
|
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0}
|
||||||
|
ability.regen = Regeneration
|
||||||
bar.onlycoredeposit = Sadece Merkeze Aktarım Mümkün
|
bar.onlycoredeposit = Sadece Merkeze Aktarım Mümkün
|
||||||
|
|
||||||
bar.drilltierreq = Daha Güçlü Matkap Gerekli
|
bar.drilltierreq = Daha Güçlü Matkap Gerekli
|
||||||
@@ -1096,6 +1100,7 @@ setting.position.name = Oyuncu Noktasını Göster
|
|||||||
setting.mouseposition.name = Fareyi Göster
|
setting.mouseposition.name = Fareyi Göster
|
||||||
setting.musicvol.name = Müzik Sesi
|
setting.musicvol.name = Müzik Sesi
|
||||||
setting.atmosphere.name = Gezegen Atmosferini Göster
|
setting.atmosphere.name = Gezegen Atmosferini Göster
|
||||||
|
setting.drawlight.name = Draw Darkness/Lighting
|
||||||
setting.ambientvol.name = Çevresel Ses
|
setting.ambientvol.name = Çevresel Ses
|
||||||
setting.mutemusic.name = Müziği Kapat
|
setting.mutemusic.name = Müziği Kapat
|
||||||
setting.sfxvol.name = Oyun Sesi
|
setting.sfxvol.name = Oyun Sesi
|
||||||
@@ -1848,6 +1853,9 @@ onset.enemies = DÜŞMAN GELİYO!!! Hazırlan.
|
|||||||
onset.attack = Düşman zayıf! Hemen geri dal!
|
onset.attack = Düşman zayıf! Hemen geri dal!
|
||||||
onset.cores = [accent]Merkez Zemin[]lerinin üzerine yeni merkezler inşaa edilebilir.\nTüm merkezler birbirleri ile malzemeleri paylaşır.\n\uf725 Bir çekirdek inşaa et.
|
onset.cores = [accent]Merkez Zemin[]lerinin üzerine yeni merkezler inşaa edilebilir.\nTüm merkezler birbirleri ile malzemeleri paylaşır.\n\uf725 Bir çekirdek inşaa et.
|
||||||
onset.detect = Düşman seni 2 dakika içinde tespit edicek.\nSavunma, maden ve üretime başla.
|
onset.detect = Düşman seni 2 dakika içinde tespit edicek.\nSavunma, maden ve üretime başla.
|
||||||
|
onset.commandmode = [accent]Shift[] e basılı tutarak [accent]Komuta Modu[]na geç.\n[accent]Sol Tıklayıp sürekleyerek[] birim seç.\n[accent]Sağ Tıklayarak[] Birimleri Yönlendir veya saldırt.
|
||||||
|
onset.commandmode.mobile = [accent]Komuta Düğmesine[] basarak [accent]Komuta Moduna[] gir.\nBir Parmağını basılı tut ve değirini [accent]sürükle[]yerek birim seç.\n[accent]Tıkla[]yarak birimleri saldırttırabilir veya yönlendirebilirsin.
|
||||||
|
aegis.tungsten = Tungsten can be mined using an [accent]impact drill[].\nThis structure requires [accent]water[] and [accent]power[].
|
||||||
split.pickup = Bazı bloklar merkez birimi ile taşınabilir.\nBu [accent]Konteyner[]i kaldır ve [accent]Küyle Yükleyici[]ye koy.\n([ ve ] tuşlarını kullan)
|
split.pickup = Bazı bloklar merkez birimi ile taşınabilir.\nBu [accent]Konteyner[]i kaldır ve [accent]Küyle Yükleyici[]ye koy.\n([ ve ] tuşlarını kullan)
|
||||||
split.pickup.mobile = Bazı bloklar merkez birimi ile taşınabilir.\nBu [accent]Konteyner[]i kaldır ve [accent]Küyle Yükleyici[]ye koy.\n(Uzun basarak bir şeyi taşı.)
|
split.pickup.mobile = Bazı bloklar merkez birimi ile taşınabilir.\nBu [accent]Konteyner[]i kaldır ve [accent]Küyle Yükleyici[]ye koy.\n(Uzun basarak bir şeyi taşı.)
|
||||||
split.acquire = Birim üretmek için Tungsten kaz.
|
split.acquire = Birim üretmek için Tungsten kaz.
|
||||||
@@ -2230,6 +2238,8 @@ 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.
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
lst.effect = Create a particle effect.
|
||||||
|
lst.sync = Sync a variable across the network.\nOnly invoked 10 times a second at most.
|
||||||
|
|
||||||
logic.nounitbuild = [red]Birim İnşası Yasak!
|
logic.nounitbuild = [red]Birim İnşası Yasak!
|
||||||
|
|
||||||
@@ -2245,6 +2255,7 @@ laccess.dead = Bir bina veya birim hala var mı?
|
|||||||
laccess.controlled = Bir birim ne tarafından kontrol ediliyor?
|
laccess.controlled = Bir birim ne tarafından kontrol ediliyor?
|
||||||
laccess.progress = Bir şeyin oluş aşaması, örnek: bir turetin yeniden doldurma süresindeki aşama.
|
laccess.progress = Bir şeyin oluş aşaması, örnek: bir turetin yeniden doldurma süresindeki aşama.
|
||||||
laccess.speed = Bir Birimin Maks hızı, blok/sn.
|
laccess.speed = Bir Birimin Maks hızı, blok/sn.
|
||||||
|
laccess.id = ID of a unit/block/item/liquid.\nThis is the inverse of the lookup operation.
|
||||||
lcategory.unknown = ???
|
lcategory.unknown = ???
|
||||||
lcategory.unknown.description = Kategorilenmemiş Talimatlar
|
lcategory.unknown.description = Kategorilenmemiş Talimatlar
|
||||||
lcategory.io = Giriş & Çıkış
|
lcategory.io = Giriş & Çıkış
|
||||||
@@ -2365,6 +2376,7 @@ lenum.unbind = Logic Kontrolü tamaman devre dışı bırak.\nNormal AI ı devre
|
|||||||
lenum.move = Tam konuma git.
|
lenum.move = Tam konuma git.
|
||||||
lenum.approach = Bir Konuma yaklaş.
|
lenum.approach = Bir Konuma yaklaş.
|
||||||
lenum.pathfind = Düşman Doğuş noktasına git.
|
lenum.pathfind = Düşman Doğuş noktasına git.
|
||||||
|
lenum.autopathfind = Automatically pathfinds to the nearest enemy core or drop point.\nThis is the same as standard wave enemy pathfinding.
|
||||||
lenum.target = Bir alana ateş et.
|
lenum.target = Bir alana ateş et.
|
||||||
lenum.targetp = Bir cisme ateş et.
|
lenum.targetp = Bir cisme ateş et.
|
||||||
lenum.itemdrop = Bir itemi bırak.
|
lenum.itemdrop = Bir itemi bırak.
|
||||||
@@ -2378,5 +2390,3 @@ lenum.build = Bina inşa et.
|
|||||||
lenum.getblock = Bir bloğun verilerini al.
|
lenum.getblock = Bir bloğun verilerini al.
|
||||||
lenum.within = Bir birim menzil alanında mı?
|
lenum.within = Bir birim menzil alanında mı?
|
||||||
lenum.boost = Boostlamaya başla/dur
|
lenum.boost = Boostlamaya başla/dur
|
||||||
onset.commandmode = [accent]Shift[] e basılı tutarak [accent]Komuta Modu[]na geç.\n[accent]Sol Tıklayıp sürekleyerek[] birim seç.\n[accent]Sağ Tıklayarak[] Birimleri Yönlendir veya saldırt.
|
|
||||||
onset.commandmode.mobile = [accent]Komuta Düğmesine[] basarak [accent]Komuta Moduna[] gir.\nBir Parmağını basılı tut ve değirini [accent]sürükle[]yerek birim seç.\n[accent]Tıkla[]yarak birimleri saldırttırabilir veya yönlendirebilirsin.
|
|
||||||
|
|||||||
@@ -257,6 +257,7 @@ trace = Стежити за гравцем
|
|||||||
trace.playername = Ім’я гравця: [accent]{0}
|
trace.playername = Ім’я гравця: [accent]{0}
|
||||||
trace.ip = IP: [accent]{0}
|
trace.ip = IP: [accent]{0}
|
||||||
trace.id = Ідентифікатор: [accent]{0}
|
trace.id = Ідентифікатор: [accent]{0}
|
||||||
|
trace.language = Language: [accent]{0}
|
||||||
trace.mobile = Мобільний клієнт: [accent]{0}
|
trace.mobile = Мобільний клієнт: [accent]{0}
|
||||||
trace.modclient = Користувацький клієнт: [accent]{0}
|
trace.modclient = Користувацький клієнт: [accent]{0}
|
||||||
trace.times.joined = Кількість приєднань: [accent]{0}
|
trace.times.joined = Кількість приєднань: [accent]{0}
|
||||||
@@ -960,13 +961,16 @@ stat.healing = Відновлювання
|
|||||||
|
|
||||||
ability.forcefield = Щитове поле
|
ability.forcefield = Щитове поле
|
||||||
ability.repairfield = Ремонтувальне поле
|
ability.repairfield = Ремонтувальне поле
|
||||||
ability.statusfield = {0} Поле підсилення
|
ability.statusfield = Поле підсилення
|
||||||
ability.unitspawn = Завод одиниць «{0}»
|
ability.unitspawn = Завод одиниць <EFBFBD>
|
||||||
ability.shieldregenfield = Щитовідновлювальне поле
|
ability.shieldregenfield = Щитовідновлювальне поле
|
||||||
ability.movelightning = Блискавки під час руху
|
ability.movelightning = Блискавки під час руху
|
||||||
ability.shieldarc = Щитова дуга
|
ability.shieldarc = Щитова дуга
|
||||||
ability.suppressionfield = Поле пригнічення відновлення
|
ability.suppressionfield = Поле пригнічення відновлення
|
||||||
ability.energyfield = Енергетичне поле: [accent]{0}[] шкоди ~ [accent]{1}[] блоків / [accent]{2}[] цілей
|
ability.energyfield = Енергетичне поле
|
||||||
|
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}%
|
||||||
|
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0}
|
||||||
|
ability.regen = Regeneration
|
||||||
|
|
||||||
bar.onlycoredeposit = Передача предметів дозволена лише до ядра
|
bar.onlycoredeposit = Передача предметів дозволена лише до ядра
|
||||||
bar.drilltierreq = Потрібен ліпший бур
|
bar.drilltierreq = Потрібен ліпший бур
|
||||||
@@ -1107,6 +1111,7 @@ setting.position.name = Показувати координати гравця
|
|||||||
setting.mouseposition.name = Показувати координати курсора
|
setting.mouseposition.name = Показувати координати курсора
|
||||||
setting.musicvol.name = Гучність музики
|
setting.musicvol.name = Гучність музики
|
||||||
setting.atmosphere.name = Показувати планетарну атмосферу
|
setting.atmosphere.name = Показувати планетарну атмосферу
|
||||||
|
setting.drawlight.name = Draw Darkness/Lighting
|
||||||
setting.ambientvol.name = Звуки довкілля
|
setting.ambientvol.name = Звуки довкілля
|
||||||
setting.mutemusic.name = Заглушити музику
|
setting.mutemusic.name = Заглушити музику
|
||||||
setting.sfxvol.name = Гучність звукових ефектів
|
setting.sfxvol.name = Гучність звукових ефектів
|
||||||
@@ -1865,6 +1870,11 @@ onset.attack = Ворог беззахисний. Контратакуйте.
|
|||||||
onset.cores = Нові ядра можуть бути розміщені на плитках [accent]зони ядра[].\nНові ядра функціонують як передові бази й мають спільний інвентар ресурсів з іншими ядрами.\nРозмістіть \uf725 ядро.
|
onset.cores = Нові ядра можуть бути розміщені на плитках [accent]зони ядра[].\nНові ядра функціонують як передові бази й мають спільний інвентар ресурсів з іншими ядрами.\nРозмістіть \uf725 ядро.
|
||||||
onset.detect = Ворог зможе виявити вас за 2 хвилини.\nОрганізуйте оборону, видобуток корисних копалин та виробництво.
|
onset.detect = Ворог зможе виявити вас за 2 хвилини.\nОрганізуйте оборону, видобуток корисних копалин та виробництво.
|
||||||
|
|
||||||
|
#Don't translate these yet!
|
||||||
|
onset.commandmode = Утримуйте [accent]Shift[], щоб увійти в [accent]режим командування[].\n[accent]Зажміть ЛКМ і потягніть,[] щоб обрати одиниці.\n[accent]Використовуйте ПКМ[], щоби наказати обраним одиницям рухатися чи атакувати.
|
||||||
|
onset.commandmode.mobile = Натисніть кнопку [accent]Командувати[], щоб увійти [accent]в режим командування[].\nУтримуйте палець і [accent]потягніть[], щоб обрати одиниці.\n[accent] Зробіть коротке натискання[], щоби наказати обраним одиницям рухатися чи атакувати.
|
||||||
|
aegis.tungsten = Tungsten can be mined using an [accent]impact drill[].\nThis structure requires [accent]water[] and [accent]power[].
|
||||||
|
|
||||||
split.pickup = Деякі блоки можуть бути підібрані основною ядровою одиницею.\nПідніміть цей [accent]контейнер[] і помістіть його до [accent]вантажного завантажувача[].\n(Клавіші за замовчуванням - [[ і ] для підняття та скидання)
|
split.pickup = Деякі блоки можуть бути підібрані основною ядровою одиницею.\nПідніміть цей [accent]контейнер[] і помістіть його до [accent]вантажного завантажувача[].\n(Клавіші за замовчуванням - [[ і ] для підняття та скидання)
|
||||||
split.pickup.mobile = Деякі блоки можуть бути підібрані основною ядровою одиницею.\nПідніміть цей [accent]контейнер[] і помістіть його до [accent]вантажного завантажувача[].\n(Щоб підняти або скинути щось, довго натискайте на це щось.)
|
split.pickup.mobile = Деякі блоки можуть бути підібрані основною ядровою одиницею.\nПідніміть цей [accent]контейнер[] і помістіть його до [accent]вантажного завантажувача[].\n(Щоб підняти або скинути щось, довго натискайте на це щось.)
|
||||||
split.acquire = Ви повинні дістати трохи вольфраму, щоби побудувати одиниці.
|
split.acquire = Ви повинні дістати трохи вольфраму, щоби побудувати одиниці.
|
||||||
@@ -2255,6 +2265,8 @@ lst.cutscene = Керує камерою гравця.
|
|||||||
lst.setflag = Установлює глобальний прапорець, який можуть прочитати усі процесори.
|
lst.setflag = Установлює глобальний прапорець, який можуть прочитати усі процесори.
|
||||||
lst.getflag = Перевіряє, чи встановлено глобальний прапорець.
|
lst.getflag = Перевіряє, чи встановлено глобальний прапорець.
|
||||||
lst.setprop = Установлює властивість одиниці чи будівлі.
|
lst.setprop = Установлює властивість одиниці чи будівлі.
|
||||||
|
lst.effect = Create a particle effect.
|
||||||
|
lst.sync = Sync a variable across the network.\nOnly invoked 10 times a second at most.
|
||||||
|
|
||||||
logic.nounitbuild = [red]Будування за допомогою процесорів заборено.
|
logic.nounitbuild = [red]Будування за допомогою процесорів заборено.
|
||||||
|
|
||||||
@@ -2270,6 +2282,7 @@ laccess.dead = Чи є одиниця або будівля мертвою аб
|
|||||||
laccess.controlled = Повертає \n[accent]@ctrlProcessor[] якщо одиниця контролюється процесором;\n[accent]@ctrlPlayer[] якщо одиниця чи будівля контролюєть гравцем\n[accent]@ctrlFormation[] якщо одиниця у загоні (формуванні)\nІнакше — 0.
|
laccess.controlled = Повертає \n[accent]@ctrlProcessor[] якщо одиниця контролюється процесором;\n[accent]@ctrlPlayer[] якщо одиниця чи будівля контролюєть гравцем\n[accent]@ctrlFormation[] якщо одиниця у загоні (формуванні)\nІнакше — 0.
|
||||||
laccess.progress = Прогрес дії, від 0 до 1.\nПовертає виробництво, перезавантаження башти або хід будівництва.
|
laccess.progress = Прогрес дії, від 0 до 1.\nПовертає виробництво, перезавантаження башти або хід будівництва.
|
||||||
laccess.speed = Максимальна швидкість одиниці, у плитках за секунду.
|
laccess.speed = Максимальна швидкість одиниці, у плитках за секунду.
|
||||||
|
laccess.id = ID of a unit/block/item/liquid.\nThis is the inverse of the lookup operation.
|
||||||
|
|
||||||
lcategory.unknown = Невідома категорія
|
lcategory.unknown = Невідома категорія
|
||||||
lcategory.unknown.description = Команди без категорії.
|
lcategory.unknown.description = Команди без категорії.
|
||||||
@@ -2391,6 +2404,7 @@ lenum.unbind = Повністю вимикає усю логіку.\nПродо
|
|||||||
lenum.move = Перемістити в точне положення.
|
lenum.move = Перемістити в точне положення.
|
||||||
lenum.approach = Наближення до позиції із зазначеним радіусом.
|
lenum.approach = Наближення до позиції із зазначеним радіусом.
|
||||||
lenum.pathfind = Знайдення шляху до точки появи ворогів.
|
lenum.pathfind = Знайдення шляху до точки появи ворогів.
|
||||||
|
lenum.autopathfind = Automatically pathfinds to the nearest enemy core or drop point.\nThis is the same as standard wave enemy pathfinding.
|
||||||
lenum.target = Стрільба в задану позицію.
|
lenum.target = Стрільба в задану позицію.
|
||||||
lenum.targetp = Стріляти в ціль із передбаченням швидкості.
|
lenum.targetp = Стріляти в ціль із передбаченням швидкості.
|
||||||
lenum.itemdrop = Викинути предмет.
|
lenum.itemdrop = Викинути предмет.
|
||||||
@@ -2404,7 +2418,3 @@ lenum.build = Побудувати будівлю.
|
|||||||
lenum.getblock = Розпізнавання блока та його типа за координатами.\nОдиниця повинна знаходитися в межах досяжності.\nСуцільні не-будівлі матимуть тип [accent]@solid[].
|
lenum.getblock = Розпізнавання блока та його типа за координатами.\nОдиниця повинна знаходитися в межах досяжності.\nСуцільні не-будівлі матимуть тип [accent]@solid[].
|
||||||
lenum.within = Чи знаходиться одиниця біля позиції.
|
lenum.within = Чи знаходиться одиниця біля позиції.
|
||||||
lenum.boost = Почати чи зупинити політ.
|
lenum.boost = Почати чи зупинити політ.
|
||||||
|
|
||||||
#Don't translate these yet!
|
|
||||||
onset.commandmode = Утримуйте [accent]Shift[], щоб увійти в [accent]режим командування[].\n[accent]Зажміть ЛКМ і потягніть,[] щоб обрати одиниці.\n[accent]Використовуйте ПКМ[], щоби наказати обраним одиницям рухатися чи атакувати.
|
|
||||||
onset.commandmode.mobile = Натисніть кнопку [accent]Командувати[], щоб увійти [accent]в режим командування[].\nУтримуйте палець і [accent]потягніть[], щоб обрати одиниці.\n[accent] Зробіть коротке натискання[], щоби наказати обраним одиницям рухатися чи атакувати.
|
|
||||||
|
|||||||
@@ -88,7 +88,7 @@ stats.wave = Đợt đã vượt qua
|
|||||||
stats.unitsCreated = Số đơn vị đã tạo
|
stats.unitsCreated = Số đơn vị đã tạo
|
||||||
stats.enemiesDestroyed = Số kẻ địch đã tiêu diệt
|
stats.enemiesDestroyed = Số kẻ địch đã tiêu diệt
|
||||||
stats.built = Số công trình đã xây
|
stats.built = Số công trình đã xây
|
||||||
stats.destroyed = Số công trình bị phá huỷ
|
stats.destroyed = Số công trình bị phá hủy
|
||||||
stats.deconstructed = Số công trình đã phá dỡ
|
stats.deconstructed = Số công trình đã phá dỡ
|
||||||
stats.playtime = Thời gian chơi
|
stats.playtime = Thời gian chơi
|
||||||
|
|
||||||
@@ -256,18 +256,19 @@ trace = Tìm người chơi
|
|||||||
trace.playername = Tên người chơi: [accent]{0}
|
trace.playername = Tên người chơi: [accent]{0}
|
||||||
trace.ip = IP: [accent]{0}
|
trace.ip = IP: [accent]{0}
|
||||||
trace.id = ID: [accent]{0}
|
trace.id = ID: [accent]{0}
|
||||||
trace.mobile = Mobile Client: [accent]{0}
|
trace.language = Language: [accent]{0}
|
||||||
trace.modclient = Client tùy chỉnh: [accent]{0}
|
trace.mobile = Máy khách di động: [accent]{0}
|
||||||
|
trace.modclient = Máy khách tùy chỉnh: [accent]{0}
|
||||||
trace.times.joined = Số lần tham gia: [accent]{0}
|
trace.times.joined = Số lần tham gia: [accent]{0}
|
||||||
trace.times.kicked = Số lần bị buộc rời: [accent]{0}
|
trace.times.kicked = Số lần bị buộc rời: [accent]{0}
|
||||||
trace.ips = IPs:
|
trace.ips = Các IP:
|
||||||
trace.names = Names:
|
trace.names = Các tên:
|
||||||
invalidid = Client ID không hợp lệ! Vui lòng gửi báo cáo lỗi.
|
invalidid = Định danh máy khách không hợp lệ! Vui lòng gửi báo cáo lỗi.
|
||||||
player.ban = Ban
|
player.ban = Cấm
|
||||||
player.kick = Kick
|
player.kick = Đá
|
||||||
player.trace = Trace
|
player.trace = Truy vết
|
||||||
player.admin = Toggle Admin
|
player.admin = Hoán đổi quản trị viên
|
||||||
player.team = Change Team
|
player.team = Đổi đội
|
||||||
server.bans = Cấm
|
server.bans = Cấm
|
||||||
server.bans.none = Không có người chơi nào bị cấm!
|
server.bans.none = Không có người chơi nào bị cấm!
|
||||||
server.admins = Quản trị viên
|
server.admins = Quản trị viên
|
||||||
@@ -278,14 +279,14 @@ server.edit = Chỉnh sửa máy chủ
|
|||||||
server.outdated = [scarlet]Máy chủ lỗi thời![]
|
server.outdated = [scarlet]Máy chủ lỗi thời![]
|
||||||
server.outdated.client = [scarlet]Trò chơi lỗi thời![]
|
server.outdated.client = [scarlet]Trò chơi lỗi thời![]
|
||||||
server.version = [gray]v{0} {1}
|
server.version = [gray]v{0} {1}
|
||||||
server.custombuild = [accent]Phiên bản tùy chỉnh
|
server.custombuild = [accent]Bản dựng tùy chỉnh
|
||||||
confirmban = Bạn có chắc chắn muốn cấm "{0}[white]"?
|
confirmban = Bạn có chắc chắn muốn cấm "{0}[white]"?
|
||||||
confirmkick = Bạn có chắc chắn muốn buộc "{0}[white]" rời?
|
confirmkick = Bạn có chắc chắn muốn buộc "{0}[white]" rời?
|
||||||
confirmunban = Bạn có chắc chắn muốn gỡ cấm người chơi này?
|
confirmunban = Bạn có chắc chắn muốn gỡ cấm người chơi này?
|
||||||
confirmadmin = Bạn có chắc chắn muốn thêm "{0}[white]" làm quản trị viên?
|
confirmadmin = Bạn có chắc chắn muốn thêm "{0}[white]" làm quản trị viên?
|
||||||
confirmunadmin = Bạn có chắc chắn muốn xóa quyền quản trị viên của "{0}[white]" ?
|
confirmunadmin = Bạn có chắc chắn muốn xóa quyền quản trị viên của "{0}[white]"?
|
||||||
votekick.reason = Vote-Kick Reason
|
votekick.reason = Lý do bỏ phiếu đá
|
||||||
votekick.reason.message = Are you sure you want to vote-kick "{0}[white]"?\nIf yes, please enter the reason:
|
votekick.reason.message = Bạn có chắc muốn bỏ phiếu đá "{0}[white]"?\nNếu có, xin hãy nhập lý do:
|
||||||
joingame.title = Tham gia trò chơi
|
joingame.title = Tham gia trò chơi
|
||||||
joingame.ip = Địa chỉ:
|
joingame.ip = Địa chỉ:
|
||||||
disconnect = Ngắt kết nối.
|
disconnect = Ngắt kết nối.
|
||||||
@@ -378,14 +379,14 @@ wave = [accent]Đợt {0}
|
|||||||
wave.cap = [accent]Đợt {0}/{1}
|
wave.cap = [accent]Đợt {0}/{1}
|
||||||
wave.waiting = [lightgray]Kẻ địch xuất hiện sau {0}
|
wave.waiting = [lightgray]Kẻ địch xuất hiện sau {0}
|
||||||
wave.waveInProgress = [lightgray]Địch đang xuất hiện.
|
wave.waveInProgress = [lightgray]Địch đang xuất hiện.
|
||||||
waiting = [lightgray]Chờ...
|
waiting = [lightgray]Đang chờ...
|
||||||
waiting.players = Đang chờ thêm người chơi...
|
waiting.players = Đang chờ thêm người chơi...
|
||||||
wave.enemies = [lightgray]{0} Kẻ địch còn lại
|
wave.enemies = [lightgray]{0} Kẻ địch còn lại
|
||||||
wave.enemycores = [accent]{0}[lightgray] Căn cứ địch
|
wave.enemycores = [accent]{0}[lightgray] Căn cứ địch
|
||||||
wave.enemycore = [accent]{0}[lightgray] Căn cứ địch
|
wave.enemycore = [accent]{0}[lightgray] Căn cứ địch
|
||||||
wave.enemy = [lightgray]{0} Kẻ địch còn lại
|
wave.enemy = [lightgray]{0} Kẻ địch còn lại
|
||||||
wave.guardianwarn = Boss sẽ xuất hiện sau [accent]{0}[] đợt.
|
wave.guardianwarn = Trùm sẽ xuất hiện sau [accent]{0}[] đợt.
|
||||||
wave.guardianwarn.one = Boss sẽ xuất hiện sau [accent]{0}[] đợt.
|
wave.guardianwarn.one = Trùm sẽ xuất hiện sau [accent]{0}[] đợt.
|
||||||
loadimage = Tải hình ảnh
|
loadimage = Tải hình ảnh
|
||||||
saveimage = Lưu hình ảnh
|
saveimage = Lưu hình ảnh
|
||||||
unknown = Không xác định
|
unknown = Không xác định
|
||||||
@@ -394,8 +395,8 @@ builtin = Xây trong
|
|||||||
map.delete.confirm = Bạn có chắc chắn muốn xóa bản đồ này không? Hành động này không thể hoàn tác!
|
map.delete.confirm = Bạn có chắc chắn muốn xóa bản đồ này không? Hành động này không thể hoàn tác!
|
||||||
map.random = [accent]Bản đồ ngẫu nhiên
|
map.random = [accent]Bản đồ ngẫu nhiên
|
||||||
map.nospawn = Bản đồ này không có bất kỳ căn cứ nào để người chơi hồi sinh! Thêm một căn cứ {0} vào bản đồ ở trình chỉnh sửa.
|
map.nospawn = Bản đồ này không có bất kỳ căn cứ nào để người chơi hồi sinh! Thêm một căn cứ {0} vào bản đồ ở trình chỉnh sửa.
|
||||||
map.nospawn.pvp = Bản đồ này không có bất kỳ căn cứ kẻ thù nào để người chơi hồi sinh! Thêm một căn cứ khác màu [scarlet]cam[] vào bản đồ ở trình chỉnh sửa.
|
map.nospawn.pvp = Bản đồ này không có bất kỳ căn cứ kẻ thù nào để người chơi hồi sinh! Thêm một căn cứ[scarlet] không phải màu cam[] vào bản đồ ở trình chỉnh sửa.
|
||||||
map.nospawn.attack = Bản đồ này không có bất kỳ căn cứ kẻ thù nào để người chơi tấn công! Thêm một căn cứ màu {0} vào bản đồ ở trình chỉnh sửa.
|
map.nospawn.attack = Bản đồ này không có bất kỳ căn cứ kẻ thù nào để người chơi tấn công! Thêm một căn cứ {0} vào bản đồ ở trình chỉnh sửa.
|
||||||
map.invalid = Lỗi khi tải bản đồ: tệp bản đồ bị hỏng hoặc không hợp lệ.
|
map.invalid = Lỗi khi tải bản đồ: tệp bản đồ bị hỏng hoặc không hợp lệ.
|
||||||
workshop.update = Cập nhật mục
|
workshop.update = Cập nhật mục
|
||||||
workshop.error = Lỗi khi tìm nạp thông tin chi tiết ở workshop: {0}
|
workshop.error = Lỗi khi tìm nạp thông tin chi tiết ở workshop: {0}
|
||||||
@@ -678,12 +679,12 @@ launch.capacity = Lượng vật phẩm tối đa có thể phóng: [accent]{0}
|
|||||||
launch.destination = Đích đến: {0}
|
launch.destination = Đích đến: {0}
|
||||||
configure.invalid = Số lượng phải là số trong khoảng 0 đến {0}.
|
configure.invalid = Số lượng phải là số trong khoảng 0 đến {0}.
|
||||||
add = Thêm...
|
add = Thêm...
|
||||||
guardian = Boss
|
guardian = Trùm
|
||||||
|
|
||||||
connectfail = [scarlet]Lỗi kết nối:\n\n[accent]{0}
|
connectfail = [scarlet]Lỗi kết nối:\n\n[accent]{0}
|
||||||
error.unreachable = Không thể truy cập máy chủ.\nKiểm tra lại xem địa chỉ có đúng không?
|
error.unreachable = Không thể truy cập máy chủ.\nKiểm tra lại xem địa chỉ có đúng không?
|
||||||
error.invalidaddress = Địa chỉ không hợp lệ.
|
error.invalidaddress = Địa chỉ không hợp lệ.
|
||||||
error.timedout = Hết thời gian chờ!\nĐảm bảo máy chủ đã thiết lập port forwarding, và địa chỉ đó là chính xác!
|
error.timedout = Hết thời gian chờ!\nĐảm bảo máy chủ đã thiết lập điều hướng cổng, và địa chỉ đó là chính xác!
|
||||||
error.mismatch = Lỗi packet:\nphiên bản máy khách / máy chủ có thể không khớp.\nĐảm bảo bạn và máy chủ có phiên bản Mindustry mới nhất!
|
error.mismatch = Lỗi packet:\nphiên bản máy khách / máy chủ có thể không khớp.\nĐảm bảo bạn và máy chủ có phiên bản Mindustry mới nhất!
|
||||||
error.alreadyconnected = Đã kết nối.
|
error.alreadyconnected = Đã kết nối.
|
||||||
error.mapnotfound = Không tìm thấy tệp bản đồ!
|
error.mapnotfound = Không tìm thấy tệp bản đồ!
|
||||||
@@ -953,13 +954,16 @@ stat.healing = Sửa chữa
|
|||||||
|
|
||||||
ability.forcefield = Tạo khiên
|
ability.forcefield = Tạo khiên
|
||||||
ability.repairfield = Sửa chữa/Xây dựng
|
ability.repairfield = Sửa chữa/Xây dựng
|
||||||
ability.statusfield = {0} Vùng gia tốc
|
ability.statusfield = Vùng gia tốc
|
||||||
ability.unitspawn = Sản xuất {0}
|
ability.unitspawn = Sản xuất
|
||||||
ability.shieldregenfield = Tạo khiên nhỏ
|
ability.shieldregenfield = Tạo khiên nhỏ
|
||||||
ability.movelightning = Phóng điện khi di chuyển
|
ability.movelightning = Phóng điện khi di chuyển
|
||||||
ability.shieldarc = Khiên Vòng Cung
|
ability.shieldarc = Khiên Vòng Cung
|
||||||
ability.suppressionfield = Trường sửa chữa
|
ability.suppressionfield = Trường sửa chữa
|
||||||
ability.energyfield = Trường điện từ: [accent]{0}[] sát thương ~ [accent]{1}[] khối / [accent]{2}[] mục tiêu
|
ability.energyfield = Trường điện từ
|
||||||
|
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}%
|
||||||
|
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0}
|
||||||
|
ability.regen = Regeneration
|
||||||
bar.onlycoredeposit = Chỉ có thể đưa vào căn cứ
|
bar.onlycoredeposit = Chỉ có thể đưa vào căn cứ
|
||||||
|
|
||||||
bar.drilltierreq = Cần máy khoan tốt hơn
|
bar.drilltierreq = Cần máy khoan tốt hơn
|
||||||
@@ -1100,6 +1104,7 @@ setting.position.name = Hiển thị vị trí người chơi
|
|||||||
setting.mouseposition.name = Hiện vị trí trỏ chuột
|
setting.mouseposition.name = Hiện vị trí trỏ chuột
|
||||||
setting.musicvol.name = Âm lượng nhạc
|
setting.musicvol.name = Âm lượng nhạc
|
||||||
setting.atmosphere.name = Hiển thị bầu khí quyển hành tinh
|
setting.atmosphere.name = Hiển thị bầu khí quyển hành tinh
|
||||||
|
setting.drawlight.name = Draw Darkness/Lighting
|
||||||
setting.ambientvol.name = Âm lượng tổng
|
setting.ambientvol.name = Âm lượng tổng
|
||||||
setting.mutemusic.name = Tắt nhạc
|
setting.mutemusic.name = Tắt nhạc
|
||||||
setting.sfxvol.name = Âm lượng SFX
|
setting.sfxvol.name = Âm lượng SFX
|
||||||
@@ -1309,9 +1314,9 @@ liquid.cryofluid.name = Chất làm lạnh
|
|||||||
liquid.neoplasm.name = Dị thể
|
liquid.neoplasm.name = Dị thể
|
||||||
liquid.arkycite.name = Arkycite
|
liquid.arkycite.name = Arkycite
|
||||||
liquid.gallium.name = Thuỷ Ngân
|
liquid.gallium.name = Thuỷ Ngân
|
||||||
liquid.ozone.name = Khí Ô-zôn
|
liquid.ozone.name = Ô-zôn
|
||||||
liquid.hydrogen.name = Khí Hy-dro
|
liquid.hydrogen.name = Hy-dro lỏng
|
||||||
liquid.nitrogen.name = Khí Ni-tơ
|
liquid.nitrogen.name = Ni-tơ lỏng
|
||||||
liquid.cyanogen.name = Cyanogen
|
liquid.cyanogen.name = Cyanogen
|
||||||
|
|
||||||
unit.dagger.name = Dagger
|
unit.dagger.name = Dagger
|
||||||
@@ -1801,7 +1806,7 @@ hint.payloadDrop = Nhấn [accent]][] để thả một vật phẩm.
|
|||||||
hint.payloadDrop.mobile = [accent]Nhấn và giữ[] tại một khu vực trống để thả vật phẩm.
|
hint.payloadDrop.mobile = [accent]Nhấn và giữ[] tại một khu vực trống để thả vật phẩm.
|
||||||
hint.waveFire = [accent]Wave[] súng có nước làm đạn dược sẽ tự động dập tắt các đám cháy gần đó.
|
hint.waveFire = [accent]Wave[] súng có nước làm đạn dược sẽ tự động dập tắt các đám cháy gần đó.
|
||||||
hint.generator = \uf879 [accent]Máy phát điện đốt cháy[] đốt than và truyền năng lượng cho các khối liền kề.\n\nPhạm vi truyền tải năng lượng có thể được mở rộng với \uf87f [accent]Chốt điện[].
|
hint.generator = \uf879 [accent]Máy phát điện đốt cháy[] đốt than và truyền năng lượng cho các khối liền kề.\n\nPhạm vi truyền tải năng lượng có thể được mở rộng với \uf87f [accent]Chốt điện[].
|
||||||
hint.guardian = [accent]Boss[] được bọc giáp. Sử dụng loại đạn yếu chẳng hạn như [accent]Đồng[] và [accent]Chì[] là [scarlet]không hiệu quả[].\n\nSử dụng súng tiên tiến hơn hoặc sử dụng \uf835 [accent]Than chì làm đạn [] \uf861Duo/\uf859Salvo đạn dược để hạ gục Boss.
|
hint.guardian = [accent]Trùm[] được bọc giáp. Sử dụng loại đạn yếu chẳng hạn như [accent]Đồng[] và [accent]Chì[] là [scarlet]không hiệu quả[].\n\nSử dụng súng tiên tiến hơn hoặc sử dụng \uf835 [accent]Than chì làm đạn [] \uf861Duo/\uf859Salvo đạn dược để hạ gục Trùm.
|
||||||
hint.coreUpgrade = Các căn cứ có thể được nâng cấp bằng cách [accent]đặt căn cứ cấp cao hơn trên chúng[].\n\nĐặt một căn cứ \uf868 [accent]Trụ sở[] trên căn cứ \uf869 [accent]Cơ sở[]. Đảm bảo không có vật cản gần đó.
|
hint.coreUpgrade = Các căn cứ có thể được nâng cấp bằng cách [accent]đặt căn cứ cấp cao hơn trên chúng[].\n\nĐặt một căn cứ \uf868 [accent]Trụ sở[] trên căn cứ \uf869 [accent]Cơ sở[]. Đảm bảo không có vật cản gần đó.
|
||||||
hint.presetLaunch = Khác khu vực đáp [accent] xám[], như [accent]Frozen Forest[], có thể được phóng đến từ bất cứ đâu. Nó không yêu cầu chiếm các khu vực lân cận.\n\n[accent]Các khu vực được đánh số[], chẳng hạn như cái này, là [accent]không bắt buộc[].
|
hint.presetLaunch = Khác khu vực đáp [accent] xám[], như [accent]Frozen Forest[], có thể được phóng đến từ bất cứ đâu. Nó không yêu cầu chiếm các khu vực lân cận.\n\n[accent]Các khu vực được đánh số[], chẳng hạn như cái này, là [accent]không bắt buộc[].
|
||||||
hint.presetDifficulty = Khu vực này có [scarlet]mối đe dọa cao[].\nPhóng đến khu vực như vậy [accent]không được khuyến khích[] nếu không có công nghệ và chuẩn bị phù hợp.
|
hint.presetDifficulty = Khu vực này có [scarlet]mối đe dọa cao[].\nPhóng đến khu vực như vậy [accent]không được khuyến khích[] nếu không có công nghệ và chuẩn bị phù hợp.
|
||||||
@@ -1849,6 +1854,9 @@ onset.enemies = Quân địch đang đến, hãy chuẩn bị phòng thủ.
|
|||||||
onset.attack = Quân địch đã suy yếu.\nHãy phản công.
|
onset.attack = Quân địch đã suy yếu.\nHãy phản công.
|
||||||
onset.cores = Các căn cứ có thể được đặt trên [accent]ô căn cứ[].\nCác căn cứ mới có thể được đặt ở bất kỳ đâu trên bản đồ.\nĐặt một \uf725 căn cứ.
|
onset.cores = Các căn cứ có thể được đặt trên [accent]ô căn cứ[].\nCác căn cứ mới có thể được đặt ở bất kỳ đâu trên bản đồ.\nĐặt một \uf725 căn cứ.
|
||||||
onset.detect = Quân địch sẽ phát hiện bạn trong vòng 2 phút.\nHãy chuẩn bị phòng thủ, khai thác và sản xuất.
|
onset.detect = Quân địch sẽ phát hiện bạn trong vòng 2 phút.\nHãy chuẩn bị phòng thủ, khai thác và sản xuất.
|
||||||
|
onset.commandmode = Giữ [accent]Shift[] để vào [accent]chế độ điều khiển quân[].\n[accent]Nhấp chuột trái và kéo[] để chọn các đơn vị.\n[accent]Chuộc phải[] để điều khiển các đơn vị di chuyển hoặc tấn công.
|
||||||
|
onset.commandmode.mobile = Nhấn vào [accent]nút điều khiển[] để vào [accent]chế độ điều khiển quân[].\nGiữ một ngón tay, sau đó [accent]kéo[] để chọn các đơn vị.\n[accent]Nhấp[] để điều khiển các đơn vị di chuyển hoặc tấn công.
|
||||||
|
aegis.tungsten = Tungsten can be mined using an [accent]impact drill[].\nThis structure requires [accent]water[] and [accent]power[].
|
||||||
split.pickup = Một số khối có thể được mang bởi đơn vị.\nNhấp vào [accent]container[] và đặt nó lên [accent]máy nạp vật phẩm[].\n(Phím mặc định là [ và ] để mang và thả)
|
split.pickup = Một số khối có thể được mang bởi đơn vị.\nNhấp vào [accent]container[] và đặt nó lên [accent]máy nạp vật phẩm[].\n(Phím mặc định là [ và ] để mang và thả)
|
||||||
split.pickup.mobile = Một số khối có thể được mang bởi đơn vị.\nNhấp vào [accent]container[] và đặt nó lên [accent]máy nạp vật phẩm[].\n(Để mang hoặc thả một khối, ấn giữ nó một chút.)
|
split.pickup.mobile = Một số khối có thể được mang bởi đơn vị.\nNhấp vào [accent]container[] và đặt nó lên [accent]máy nạp vật phẩm[].\n(Để mang hoặc thả một khối, ấn giữ nó một chút.)
|
||||||
split.acquire = Bạn cần một số tungsten để sản xuất đơn vị.
|
split.acquire = Bạn cần một số tungsten để sản xuất đơn vị.
|
||||||
@@ -1891,7 +1899,7 @@ liquid.hydrogen.description = Được sử dụng trong khai thác tài nguyên
|
|||||||
liquid.cyanogen.description = Được sử dụng cho đạn dược, xây dựng các đơn vị tiên tiến và các phản ứng khác nhau trong các khối tiên tiến. Rất dễ cháy.
|
liquid.cyanogen.description = Được sử dụng cho đạn dược, xây dựng các đơn vị tiên tiến và các phản ứng khác nhau trong các khối tiên tiến. Rất dễ cháy.
|
||||||
liquid.nitrogen.description = Được sử dụng trong khai thác tài nguyên, tạo khí và sản xuất đơn vị. Trơ.
|
liquid.nitrogen.description = Được sử dụng trong khai thác tài nguyên, tạo khí và sản xuất đơn vị. Trơ.
|
||||||
liquid.neoplasm.description = Một sản phẩm phụ sinh học nguy hiểm của lò phản ứng Neoplasia. Lan nhanh sang bất kì khối chứa nước nào mà nó chạm vào và gây hư hại chúng. Nhớt.
|
liquid.neoplasm.description = Một sản phẩm phụ sinh học nguy hiểm của lò phản ứng Neoplasia. Lan nhanh sang bất kì khối chứa nước nào mà nó chạm vào và gây hư hại chúng. Nhớt.
|
||||||
liquid.neoplasm.details = Neoplasm. Một khối lượng các tế bào tổng hợp phân chia nhanh chóng không kiểm soát với độ đặc giống như bùn. Kháng nhiệt. Cực kì nguy hiểm cho bất cứ khối nào có liên quan đến nước.\n\nQuá phức tạp và không ổn định để được phân tích. Chưa rõ được tiềm năng và ứng dụng của nó. Khuyến nghị đốt chúng trong các lò xỉ nóng chảy
|
liquid.neoplasm.details = Neoplasm. Một khối lượng các tế bào tổng hợp phân chia nhanh chóng không kiểm soát với độ đặc giống như bùn. Kháng nhiệt. Cực kì nguy hiểm cho bất cứ khối nào có liên quan đến nước.\n\nQuá phức tạp và không ổn định để được phân tích. Chưa rõ được tiềm năng và ứng dụng của nó. Khuyến nghị đốt chúng trong xỉ nóng chảy
|
||||||
|
|
||||||
block.derelict = \uf77e [lightgray]Không xác định
|
block.derelict = \uf77e [lightgray]Không xác định
|
||||||
block.armored-conveyor.description = Vận chuyển vật phẩm về phía trước. Không nhận đầu vào từ phía bên cạnh.
|
block.armored-conveyor.description = Vận chuyển vật phẩm về phía trước. Không nhận đầu vào từ phía bên cạnh.
|
||||||
@@ -2032,7 +2040,7 @@ block.naval-factory.description = Sản xuất binh lính hải quân. Các đơ
|
|||||||
block.additive-reconstructor.description = Nâng cấp quân của bạn lên cấp hai.
|
block.additive-reconstructor.description = Nâng cấp quân của bạn lên cấp hai.
|
||||||
block.multiplicative-reconstructor.description = Nâng cấp quân của bạn lên cấp ba.
|
block.multiplicative-reconstructor.description = Nâng cấp quân của bạn lên cấp ba.
|
||||||
block.exponential-reconstructor.description = Nâng cấp quân của bạn lên cấp bốn.
|
block.exponential-reconstructor.description = Nâng cấp quân của bạn lên cấp bốn.
|
||||||
block.tetrative-reconstructor.description = Nâng cấp quân của bạn nên cấp năm (cuối cùng).
|
block.tetrative-reconstructor.description = Nâng cấp quân của bạn lên cấp năm (cuối cùng).
|
||||||
block.switch.description = Công tắc, trạng thái có thể được đọc và điều khiển với vi xử lý logic.
|
block.switch.description = Công tắc, trạng thái có thể được đọc và điều khiển với vi xử lý logic.
|
||||||
block.micro-processor.description = Chạy tập hợp các chỉ dẫn trong một vòng lặp, có thể dùng để điều khiển robot và công trình.
|
block.micro-processor.description = Chạy tập hợp các chỉ dẫn trong một vòng lặp, có thể dùng để điều khiển robot và công trình.
|
||||||
block.logic-processor.description = Chạy tập hợp các chỉ dẫn trong một vòng lặp, có thể dùng để điều khiển robot và công trình. Nhanh hơn bộ xử lý nhỏ.
|
block.logic-processor.description = Chạy tập hợp các chỉ dẫn trong một vòng lặp, có thể dùng để điều khiển robot và công trình. Nhanh hơn bộ xử lý nhỏ.
|
||||||
@@ -2231,8 +2239,10 @@ lst.cutscene = Điều khiển góc máy quay của người chơi.
|
|||||||
lst.setflag = Đặt một cờ toàn cục mà có thể đọc được bởi tất cả khối xử lý.
|
lst.setflag = Đặt một cờ toàn cục mà có thể đọc được bởi tất cả khối xử lý.
|
||||||
lst.getflag = Kiểm tra nếu cờ toàn cục được đặt.
|
lst.getflag = Kiểm tra nếu cờ toàn cục được đặt.
|
||||||
lst.setprop = Đặt một thuộc tính của đơn vị hoặc công trình.
|
lst.setprop = Đặt một thuộc tính của đơn vị hoặc công trình.
|
||||||
|
lst.effect = Tạo một phần hiệu ứng nhỏ.
|
||||||
|
lst.sync = Đồng bộ giá trị biến qua mạng.\nChỉ gọi tối đa 10 lần mỗi giây.
|
||||||
|
|
||||||
logic.nounitbuild = [red]Unit building logic is not allowed here.
|
logic.nounitbuild = [red]Lô-gíc xây dựng đơn vị không được phép ở đây.
|
||||||
|
|
||||||
lenum.type = Kiểu của công trình/đơn vị.\n Ví dụ, cho Bộ phân phát (router), nó sẽ trả về [accent]@router[].\nKhông phải một chuỗi.
|
lenum.type = Kiểu của công trình/đơn vị.\n Ví dụ, cho Bộ phân phát (router), nó sẽ trả về [accent]@router[].\nKhông phải một chuỗi.
|
||||||
lenum.shoot = Bắn vào vị trí xác định.
|
lenum.shoot = Bắn vào vị trí xác định.
|
||||||
@@ -2246,6 +2256,7 @@ laccess.dead = Đơn vị/công trình đã chết hoặc không còn hợp lệ
|
|||||||
laccess.controlled = Trả về:\n[accent]@ctrlProcessor[] nếu điều khiển là khối xử lý\n[accent]@ctrlPlayer[] nếu người điều khiển đơn vị/công trình là người chơi\n[accent]@ctrlFormation[] nếu đơn vị trọng đội hình\nNgược lại, 0.
|
laccess.controlled = Trả về:\n[accent]@ctrlProcessor[] nếu điều khiển là khối xử lý\n[accent]@ctrlPlayer[] nếu người điều khiển đơn vị/công trình là người chơi\n[accent]@ctrlFormation[] nếu đơn vị trọng đội hình\nNgược lại, 0.
|
||||||
laccess.progress = Tiến trình thực hiện, 0 đến 1.\n Trả về tiến trình sản xuất, nạp đạn bệ súng hoặc xây dựng.
|
laccess.progress = Tiến trình thực hiện, 0 đến 1.\n Trả về tiến trình sản xuất, nạp đạn bệ súng hoặc xây dựng.
|
||||||
laccess.speed = Tốc độ của đơn vị, tính bằng ô/giây.
|
laccess.speed = Tốc độ của đơn vị, tính bằng ô/giây.
|
||||||
|
laccess.id = Định danh của một đơn vị/khối/vật phẩm/chất lỏng.\nViệc này làm ngược lại với thao tác tra cứu.
|
||||||
lcategory.unknown = Không xác định
|
lcategory.unknown = Không xác định
|
||||||
lcategory.unknown.description = Chỉ thị không được phân loại.
|
lcategory.unknown.description = Chỉ thị không được phân loại.
|
||||||
lcategory.io = Đầu Vào & Ra
|
lcategory.io = Đầu Vào & Ra
|
||||||
@@ -2366,6 +2377,7 @@ lenum.unbind = Vô hiệu hóa hoàn toàn điều khiển lô-gíc.\n Khôi ph
|
|||||||
lenum.move = Di chuyển đến vị trí xác định.
|
lenum.move = Di chuyển đến vị trí xác định.
|
||||||
lenum.approach = Tiếp cận một vị trí với bán kính.
|
lenum.approach = Tiếp cận một vị trí với bán kính.
|
||||||
lenum.pathfind = Tìm đường đến nơi tạo ra kẻ địch.
|
lenum.pathfind = Tìm đường đến nơi tạo ra kẻ địch.
|
||||||
|
lenum.autopathfind = Tự động tìm đường đến lõi hoặc nơi hạ cánh gần nhất của kẻ địch.\n Việc này tương tự như việc tìm đường của kẻ địch trong các lượt.
|
||||||
lenum.target = Bắn vào vị trí xác định.
|
lenum.target = Bắn vào vị trí xác định.
|
||||||
lenum.targetp = Bắn vào một mục tiêu với tốc độ dự đoán
|
lenum.targetp = Bắn vào một mục tiêu với tốc độ dự đoán
|
||||||
lenum.itemdrop = Thả vật phẩm.
|
lenum.itemdrop = Thả vật phẩm.
|
||||||
@@ -2379,5 +2391,3 @@ lenum.build = Xây công trình.
|
|||||||
lenum.getblock = Lấy một cấu trúc và kiểu tại một tọa độ.\nĐơn vị phải nằm trong tầm của vị trí.\nKhối rắn không phải công trình có kiểu [accent]@solid[].
|
lenum.getblock = Lấy một cấu trúc và kiểu tại một tọa độ.\nĐơn vị phải nằm trong tầm của vị trí.\nKhối rắn không phải công trình có kiểu [accent]@solid[].
|
||||||
lenum.within = Kiểm tra xem đơn vị có gần vị trí không.
|
lenum.within = Kiểm tra xem đơn vị có gần vị trí không.
|
||||||
lenum.boost = Bắt đầu/Dừng tăng tốc.
|
lenum.boost = Bắt đầu/Dừng tăng tốc.
|
||||||
onset.commandmode = Giữ [accent]shift[] để vào [accent]chế độ điều khiển quân[].\n[accent]Nhấp chuột trái và kéo[] để chọn các đơn vị.\n[accent]Chuộc phải[] để điều khiển các đơn vị di chuyển hoặc tấn công.
|
|
||||||
onset.commandmode.mobile = Nhấn vào [accent]nút điều khiển[] để vào [accent]chế độ điều khiển quân[].\nGiữ một ngón tay, sau đó [accent]kéo[] để chọn các đơn vị.\n[accent]Nhấp[] để điều khiển các đơn vị di chuyển hoặc tấn công.
|
|
||||||
|
|||||||
@@ -258,6 +258,7 @@ trace = 跟踪玩家
|
|||||||
trace.playername = 玩家名称:[accent]{0}
|
trace.playername = 玩家名称:[accent]{0}
|
||||||
trace.ip = IP地址:[accent]{0}
|
trace.ip = IP地址:[accent]{0}
|
||||||
trace.id = 玩家 ID:[accent]{0}
|
trace.id = 玩家 ID:[accent]{0}
|
||||||
|
trace.language = Language: [accent]{0}
|
||||||
trace.mobile = 移动客户端:[accent]{0}
|
trace.mobile = 移动客户端:[accent]{0}
|
||||||
trace.modclient = 自定义客户端:[accent]{0}
|
trace.modclient = 自定义客户端:[accent]{0}
|
||||||
trace.times.joined = 进入服务器次数: [accent]{0}
|
trace.times.joined = 进入服务器次数: [accent]{0}
|
||||||
@@ -961,13 +962,16 @@ stat.healing = 治疗
|
|||||||
|
|
||||||
ability.forcefield = 力墙场
|
ability.forcefield = 力墙场
|
||||||
ability.repairfield = 修复场
|
ability.repairfield = 修复场
|
||||||
ability.statusfield = {0}状态场
|
ability.statusfield = 状态场
|
||||||
ability.unitspawn = {0}单位工厂
|
ability.unitspawn = 单位工厂
|
||||||
ability.shieldregenfield = 护盾再生场
|
ability.shieldregenfield = 护盾再生场
|
||||||
ability.movelightning = 闪电助推器
|
ability.movelightning = 闪电助推器
|
||||||
ability.shieldarc = 弧形护盾
|
ability.shieldarc = 弧形护盾
|
||||||
ability.suppressionfield = 修复压制场
|
ability.suppressionfield = 修复压制场
|
||||||
ability.energyfield = 能量场:[accent]{0}[]伤害~[accent]{1}[]格/[accent]{2}[]目标
|
ability.energyfield = 能量场:
|
||||||
|
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}%
|
||||||
|
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0}
|
||||||
|
ability.regen = Regeneration
|
||||||
|
|
||||||
bar.onlycoredeposit = 仅核心可丢入资源
|
bar.onlycoredeposit = 仅核心可丢入资源
|
||||||
bar.drilltierreq = 需要更高级的钻头
|
bar.drilltierreq = 需要更高级的钻头
|
||||||
@@ -1108,6 +1112,7 @@ setting.position.name = 显示玩家坐标
|
|||||||
setting.mouseposition.name = 显示鼠标坐标
|
setting.mouseposition.name = 显示鼠标坐标
|
||||||
setting.musicvol.name = 音乐音量
|
setting.musicvol.name = 音乐音量
|
||||||
setting.atmosphere.name = 显示行星大气层
|
setting.atmosphere.name = 显示行星大气层
|
||||||
|
setting.drawlight.name = Draw Darkness/Lighting
|
||||||
setting.ambientvol.name = 环境音量
|
setting.ambientvol.name = 环境音量
|
||||||
setting.mutemusic.name = 禁用音乐
|
setting.mutemusic.name = 禁用音乐
|
||||||
setting.sfxvol.name = 音效音量
|
setting.sfxvol.name = 音效音量
|
||||||
@@ -1865,6 +1870,9 @@ onset.enemies = 敌人来袭,准备防御。
|
|||||||
onset.attack = 敌军基地十分脆弱。 发动反攻。
|
onset.attack = 敌军基地十分脆弱。 发动反攻。
|
||||||
onset.cores = 你可以在[accent]核心地块[]上建造新的核心。\n新核心的功能类似于前沿基地,且与其他核心共享资源仓库。\n放置一个\uf725核心。
|
onset.cores = 你可以在[accent]核心地块[]上建造新的核心。\n新核心的功能类似于前沿基地,且与其他核心共享资源仓库。\n放置一个\uf725核心。
|
||||||
onset.detect = 敌军将在2分钟内发现你。\n设立防御,挖掘矿物,并建造生产设施。
|
onset.detect = 敌军将在2分钟内发现你。\n设立防御,挖掘矿物,并建造生产设施。
|
||||||
|
onset.commandmode = 按住[accent]shift[]键进入[accent]指挥模式[]。\n按住[accent]鼠标左键[]框选单位。\n[accent]右键[]指挥所选单位移动或攻击。
|
||||||
|
onset.commandmode.mobile = 点击左下角的[accent]指挥[]进入[accent]指挥模式[]。\n按住屏幕,[accent]拖动[]框选单位。\n[accent]点击[]指挥所选单位移动或攻击。
|
||||||
|
aegis.tungsten = Tungsten can be mined using an [accent]impact drill[].\nThis structure requires [accent]water[] and [accent]power[].
|
||||||
|
|
||||||
split.pickup = 核心单位可以拾取一些方块。\n拾取这个[accent]强化容器[]并将其放到[accent]载荷装载器[]中。\n(默认使用[拾取,]放下载荷)
|
split.pickup = 核心单位可以拾取一些方块。\n拾取这个[accent]强化容器[]并将其放到[accent]载荷装载器[]中。\n(默认使用[拾取,]放下载荷)
|
||||||
split.pickup.mobile = 核心单位可以拾取一些方块。\n拾取这个[accent]强化容器[]并将其放到[accent]载荷装载器[]中。\n(长按以拾取或放下载荷)
|
split.pickup.mobile = 核心单位可以拾取一些方块。\n拾取这个[accent]强化容器[]并将其放到[accent]载荷装载器[]中。\n(长按以拾取或放下载荷)
|
||||||
@@ -2256,6 +2264,8 @@ lst.cutscene = 控制玩家游戏视角
|
|||||||
lst.setflag = 设置一个可以被所有处理器读取的全局flag
|
lst.setflag = 设置一个可以被所有处理器读取的全局flag
|
||||||
lst.getflag = 检查是否设置了全局flag
|
lst.getflag = 检查是否设置了全局flag
|
||||||
lst.setprop = Sets a property of a unit or building.
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
lst.effect = Create a particle effect.
|
||||||
|
lst.sync = Sync a variable across the network.\nOnly invoked 10 times a second at most.
|
||||||
|
|
||||||
logic.nounitbuild = [red]此处不允许处理器操控单位去建设
|
logic.nounitbuild = [red]此处不允许处理器操控单位去建设
|
||||||
|
|
||||||
@@ -2271,6 +2281,7 @@ laccess.dead = 单位或建筑是否已被摧毁或者已失效
|
|||||||
laccess.controlled = 若单位的控制方是处理器,返回[accent]@ctrlProcessor[]\n若单位/建筑由玩家控制,返回[accent]@ctrlPlayer[]\n若单位在编队中,返回[accent]@ctrlFormation[]\n其他情况,返回0
|
laccess.controlled = 若单位的控制方是处理器,返回[accent]@ctrlProcessor[]\n若单位/建筑由玩家控制,返回[accent]@ctrlPlayer[]\n若单位在编队中,返回[accent]@ctrlFormation[]\n其他情况,返回0
|
||||||
laccess.progress = 进度,0到1之间的数值。 \n返回工厂生产、 炮塔装填,或者建筑建造的进度
|
laccess.progress = 进度,0到1之间的数值。 \n返回工厂生产、 炮塔装填,或者建筑建造的进度
|
||||||
laccess.speed = 单位的最高速度(格/秒)
|
laccess.speed = 单位的最高速度(格/秒)
|
||||||
|
laccess.id = ID of a unit/block/item/liquid.\nThis is the inverse of the lookup operation.
|
||||||
|
|
||||||
lcategory.unknown = 未知
|
lcategory.unknown = 未知
|
||||||
lcategory.unknown.description = 未分类的指令
|
lcategory.unknown.description = 未分类的指令
|
||||||
@@ -2392,6 +2403,7 @@ lenum.unbind = 停用单位的逻辑控制\n恢复常规AI
|
|||||||
lenum.move = 移动到某个位置
|
lenum.move = 移动到某个位置
|
||||||
lenum.approach = 靠近某个位置至一定的距离内
|
lenum.approach = 靠近某个位置至一定的距离内
|
||||||
lenum.pathfind = 寻路移动至敌人出生点
|
lenum.pathfind = 寻路移动至敌人出生点
|
||||||
|
lenum.autopathfind = Automatically pathfinds to the nearest enemy core or drop point.\nThis is the same as standard wave enemy pathfinding.
|
||||||
lenum.target = 向某个位置瞄准/射击
|
lenum.target = 向某个位置瞄准/射击
|
||||||
lenum.targetp = 根据提前量向某个目标瞄准/射击
|
lenum.targetp = 根据提前量向某个目标瞄准/射击
|
||||||
lenum.itemdrop = 将携带的物品放入一座建筑
|
lenum.itemdrop = 将携带的物品放入一座建筑
|
||||||
@@ -2405,5 +2417,3 @@ lenum.build = 建造建筑
|
|||||||
lenum.getblock = 获取某个坐标处的建筑及其类型\n坐标需要在单位的感知范围内\n无建筑的地面返回[accent]@air[],墙壁返回[accent]@solid[]
|
lenum.getblock = 获取某个坐标处的建筑及其类型\n坐标需要在单位的感知范围内\n无建筑的地面返回[accent]@air[],墙壁返回[accent]@solid[]
|
||||||
lenum.within = 检查单位是否接近了某个位置
|
lenum.within = 检查单位是否接近了某个位置
|
||||||
lenum.boost = 开始/停止助推
|
lenum.boost = 开始/停止助推
|
||||||
onset.commandmode = 按住[accent]shift[]键进入[accent]指挥模式[]。\n按住[accent]鼠标左键[]框选单位。\n[accent]右键[]指挥所选单位移动或攻击。
|
|
||||||
onset.commandmode.mobile = 点击左下角的[accent]指挥[]进入[accent]指挥模式[]。\n按住屏幕,[accent]拖动[]框选单位。\n[accent]点击[]指挥所选单位移动或攻击。
|
|
||||||
|
|||||||
@@ -255,6 +255,7 @@ trace = 追蹤玩家
|
|||||||
trace.playername = 玩家名稱:[accent]{0}
|
trace.playername = 玩家名稱:[accent]{0}
|
||||||
trace.ip = IP:[accent]{0}
|
trace.ip = IP:[accent]{0}
|
||||||
trace.id = ID:[accent]{0}
|
trace.id = ID:[accent]{0}
|
||||||
|
trace.language = Language: [accent]{0}
|
||||||
trace.mobile = 行動客戶端:[accent]{0}
|
trace.mobile = 行動客戶端:[accent]{0}
|
||||||
trace.modclient = 自訂客戶端:[accent]{0}
|
trace.modclient = 自訂客戶端:[accent]{0}
|
||||||
trace.times.joined = 加入次數:[accent]{0}
|
trace.times.joined = 加入次數:[accent]{0}
|
||||||
@@ -957,13 +958,16 @@ stat.healing = 治癒
|
|||||||
|
|
||||||
ability.forcefield = 防護罩
|
ability.forcefield = 防護罩
|
||||||
ability.repairfield = 維修力場
|
ability.repairfield = 維修力場
|
||||||
ability.statusfield = {0}狀態力場
|
ability.statusfield = 狀態力場
|
||||||
ability.unitspawn = {0}工廠
|
ability.unitspawn = 工廠
|
||||||
ability.shieldregenfield = 護盾充能力場
|
ability.shieldregenfield = 護盾充能力場
|
||||||
ability.movelightning = 移動閃電
|
ability.movelightning = 移動閃電
|
||||||
ability.shieldarc = Shield Arc
|
ability.shieldarc = Shield Arc
|
||||||
ability.suppressionfield = Regen Suppression Field
|
ability.suppressionfield = Regen Suppression Field
|
||||||
ability.energyfield = 能量場: [accent]{0}[] 傷害 ~ [accent]{1}[] 方格 / [accent]{2}[] 目標數
|
ability.energyfield = 能量場:
|
||||||
|
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}%
|
||||||
|
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0}
|
||||||
|
ability.regen = Regeneration
|
||||||
|
|
||||||
bar.onlycoredeposit = 僅允許向核心放置物品
|
bar.onlycoredeposit = 僅允許向核心放置物品
|
||||||
bar.drilltierreq = 需要更好的鑽頭
|
bar.drilltierreq = 需要更好的鑽頭
|
||||||
@@ -1104,6 +1108,7 @@ setting.position.name = 顯示玩家位置
|
|||||||
setting.mouseposition.name = 顯示滑鼠座標
|
setting.mouseposition.name = 顯示滑鼠座標
|
||||||
setting.musicvol.name = 音樂音量
|
setting.musicvol.name = 音樂音量
|
||||||
setting.atmosphere.name = 顯示星球大氣層
|
setting.atmosphere.name = 顯示星球大氣層
|
||||||
|
setting.drawlight.name = Draw Darkness/Lighting
|
||||||
setting.ambientvol.name = 環境音量
|
setting.ambientvol.name = 環境音量
|
||||||
setting.mutemusic.name = 靜音
|
setting.mutemusic.name = 靜音
|
||||||
setting.sfxvol.name = 音效音量
|
setting.sfxvol.name = 音效音量
|
||||||
@@ -1858,6 +1863,11 @@ 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.
|
||||||
|
|
||||||
|
#Don't translate these yet!
|
||||||
|
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
||||||
|
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
||||||
|
aegis.tungsten = Tungsten can be mined using an [accent]impact drill[].\nThis structure requires [accent]water[] and [accent]power[].
|
||||||
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)
|
||||||
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
|
||||||
split.acquire = You must acquire some tungsten to build units.
|
split.acquire = You must acquire some tungsten to build units.
|
||||||
@@ -2240,6 +2250,8 @@ lst.cutscene = 控制玩家鏡頭
|
|||||||
lst.setflag = 設置一個全局flag,可被所有處理器讀取
|
lst.setflag = 設置一個全局flag,可被所有處理器讀取
|
||||||
lst.getflag = 檢查某一全局flag是否存在
|
lst.getflag = 檢查某一全局flag是否存在
|
||||||
lst.setprop = Sets a property of a unit or building.
|
lst.setprop = Sets a property of a unit or building.
|
||||||
|
lst.effect = Create a particle effect.
|
||||||
|
lst.sync = Sync a variable across the network.\nOnly invoked 10 times a second at most.
|
||||||
|
|
||||||
logic.nounitbuild = [red]單位建造邏輯已被禁止。
|
logic.nounitbuild = [red]單位建造邏輯已被禁止。
|
||||||
|
|
||||||
@@ -2255,6 +2267,7 @@ laccess.dead = 單位或建築是否已死亡或不存在。
|
|||||||
laccess.controlled = 將回傳:\n處理器控制:[accent]@ctrlProcessor[]\n玩家控制:[accent]@ctrlPlayer[]\n在隊形中:[accent]@ctrlFormation[]\n其他:[accent]0[]。
|
laccess.controlled = 將回傳:\n處理器控制:[accent]@ctrlProcessor[]\n玩家控制:[accent]@ctrlPlayer[]\n在隊形中:[accent]@ctrlFormation[]\n其他:[accent]0[]。
|
||||||
laccess.progress = 建造、生產進度。以 0 到 1 表示。以及砲台裝填。
|
laccess.progress = 建造、生產進度。以 0 到 1 表示。以及砲台裝填。
|
||||||
laccess.speed = 單位最快速度(格子/秒)
|
laccess.speed = 單位最快速度(格子/秒)
|
||||||
|
laccess.id = ID of a unit/block/item/liquid.\nThis is the inverse of the lookup operation.
|
||||||
|
|
||||||
lcategory.unknown = 未知
|
lcategory.unknown = 未知
|
||||||
lcategory.unknown.description = Uncategorized instructions.
|
lcategory.unknown.description = Uncategorized instructions.
|
||||||
@@ -2376,6 +2389,7 @@ lenum.unbind = 完全停用邏輯控制\n恢復爲原始AI
|
|||||||
lenum.move = 移動到指定位置
|
lenum.move = 移動到指定位置
|
||||||
lenum.approach = 移動到距離指定位置一段距離的地方
|
lenum.approach = 移動到距離指定位置一段距離的地方
|
||||||
lenum.pathfind = 由內建AI前往敵方重生點
|
lenum.pathfind = 由內建AI前往敵方重生點
|
||||||
|
lenum.autopathfind = Automatically pathfinds to the nearest enemy core or drop point.\nThis is the same as standard wave enemy pathfinding.
|
||||||
lenum.target = 射擊指定區域
|
lenum.target = 射擊指定區域
|
||||||
lenum.targetp = 帶自瞄射擊指定的目標
|
lenum.targetp = 帶自瞄射擊指定的目標
|
||||||
lenum.itemdrop = 放下物品
|
lenum.itemdrop = 放下物品
|
||||||
@@ -2389,7 +2403,3 @@ lenum.build = 建造一個建築
|
|||||||
lenum.getblock = 獲取指定位置的建築種類和該建築\n必須在單位的範圍內\n實體障礙物,如高山會回傳[accent]@solid[]
|
lenum.getblock = 獲取指定位置的建築種類和該建築\n必須在單位的範圍內\n實體障礙物,如高山會回傳[accent]@solid[]
|
||||||
lenum.within = 單位是否在指定範圍內
|
lenum.within = 單位是否在指定範圍內
|
||||||
lenum.boost = 使用推進器
|
lenum.boost = 使用推進器
|
||||||
|
|
||||||
#Don't translate these yet!
|
|
||||||
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
|
|
||||||
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
|
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ Timmeey86
|
|||||||
Epowerj
|
Epowerj
|
||||||
Baltazár Radics
|
Baltazár Radics
|
||||||
Dexapnow
|
Dexapnow
|
||||||
|
Somka
|
||||||
Milinai
|
Milinai
|
||||||
키에르
|
키에르
|
||||||
skybldev
|
skybldev
|
||||||
@@ -158,3 +159,4 @@ xStaBUx
|
|||||||
WayZer
|
WayZer
|
||||||
SITUVNgcd
|
SITUVNgcd
|
||||||
Gabriel "red" Fondato
|
Gabriel "red" Fondato
|
||||||
|
Yoru Kitsune
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -19,7 +19,8 @@ void main(){
|
|||||||
|
|
||||||
float stime = u_time / 5.0;
|
float stime = u_time / 5.0;
|
||||||
|
|
||||||
vec3 color = texture2D(u_texture, c + vec2(sin(stime/3.0 + coords.y/0.75) * v.x, 0.0)).rgb * vec3(0.9, 0.9, 1);
|
vec4 sampled = texture2D(u_texture, c + vec2(sin(stime/3.0 + coords.y/0.75) * v.x, 0.0));
|
||||||
|
vec3 color = sampled.rgb * vec3(0.9, 0.9, 1);
|
||||||
|
|
||||||
float tester = mod((coords.x + coords.y*1.1 + sin(stime / 8.0 + coords.x/5.0 - coords.y/100.0)*2.0) +
|
float tester = mod((coords.x + coords.y*1.1 + sin(stime / 8.0 + coords.x/5.0 - coords.y/100.0)*2.0) +
|
||||||
sin(stime / 20.0 + coords.y/3.0) * 1.0 +
|
sin(stime / 20.0 + coords.y/3.0) * 1.0 +
|
||||||
@@ -32,5 +33,5 @@ void main(){
|
|||||||
color *= 1.2;
|
color *= 1.2;
|
||||||
}
|
}
|
||||||
|
|
||||||
gl_FragColor = vec4(color.rgb, 1.0);
|
gl_FragColor = vec4(color.rgb, min(sampled.a * 100.0, 1.0));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ import static mindustry.Vars.*;
|
|||||||
public abstract class ClientLauncher extends ApplicationCore implements Platform{
|
public abstract class ClientLauncher extends ApplicationCore implements Platform{
|
||||||
private static final int loadingFPS = 20;
|
private static final int loadingFPS = 20;
|
||||||
|
|
||||||
private long lastTime;
|
private long nextFrame;
|
||||||
private long beginTime;
|
private long beginTime;
|
||||||
private boolean finished = false;
|
private boolean finished = false;
|
||||||
private LoadRenderer loader;
|
private LoadRenderer loader;
|
||||||
@@ -199,6 +199,15 @@ public abstract class ClientLauncher extends ApplicationCore implements Platform
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void update(){
|
public void update(){
|
||||||
|
int targetfps = Core.settings.getInt("fpscap", 120);
|
||||||
|
boolean limitFps = targetfps > 0 && targetfps <= 240;
|
||||||
|
|
||||||
|
if(limitFps){
|
||||||
|
nextFrame += (1000 * 1000000) / targetfps;
|
||||||
|
}else{
|
||||||
|
nextFrame = Time.nanos();
|
||||||
|
}
|
||||||
|
|
||||||
if(!finished){
|
if(!finished){
|
||||||
if(loader != null){
|
if(loader != null){
|
||||||
loader.draw();
|
loader.draw();
|
||||||
@@ -230,17 +239,13 @@ public abstract class ClientLauncher extends ApplicationCore implements Platform
|
|||||||
asyncCore.end();
|
asyncCore.end();
|
||||||
}
|
}
|
||||||
|
|
||||||
int targetfps = Core.settings.getInt("fpscap", 120);
|
if(limitFps){
|
||||||
|
long current = Time.nanos();
|
||||||
if(targetfps > 0 && targetfps <= 240){
|
if(nextFrame > current){
|
||||||
long target = (1000 * 1000000) / targetfps; //target in nanos
|
long toSleep = nextFrame - current;
|
||||||
long elapsed = Time.timeSinceNanos(lastTime);
|
Threads.sleep(toSleep / 1000000, (int)(toSleep % 1000000));
|
||||||
if(elapsed < target){
|
|
||||||
Threads.sleep((target - elapsed) / 1000000, (int)((target - elapsed) % 1000000));
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
lastTime = Time.nanos();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -251,6 +256,7 @@ public abstract class ClientLauncher extends ApplicationCore implements Platform
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void init(){
|
public void init(){
|
||||||
|
nextFrame = Time.nanos();
|
||||||
setup();
|
setup();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -7,7 +7,6 @@ import arc.math.*;
|
|||||||
import arc.math.geom.*;
|
import arc.math.geom.*;
|
||||||
import arc.struct.*;
|
import arc.struct.*;
|
||||||
import arc.util.*;
|
import arc.util.*;
|
||||||
import mindustry.content.*;
|
|
||||||
import mindustry.core.*;
|
import mindustry.core.*;
|
||||||
import mindustry.game.EventType.*;
|
import mindustry.game.EventType.*;
|
||||||
import mindustry.game.*;
|
import mindustry.game.*;
|
||||||
@@ -56,7 +55,8 @@ public class ControlPathfinder{
|
|||||||
|
|
||||||
costNaval = (team, tile) ->
|
costNaval = (team, tile) ->
|
||||||
//impassable same-team neutral block, or non-liquid
|
//impassable same-team neutral block, or non-liquid
|
||||||
((PathTile.solid(tile) && ((PathTile.team(tile) == team && !PathTile.teamPassable(tile)) || PathTile.team(tile) == 0)) || !PathTile.liquid(tile) ? impassable : 1) +
|
(PathTile.solid(tile) && ((PathTile.team(tile) == team && !PathTile.teamPassable(tile)) || PathTile.team(tile) == 0)) || !PathTile.liquid(tile) ? impassable :
|
||||||
|
1 +
|
||||||
//impassable synthetic enemy block
|
//impassable synthetic enemy block
|
||||||
((PathTile.team(tile) != team && PathTile.team(tile) != 0) && PathTile.solid(tile) ? wallImpassableCap : 0) +
|
((PathTile.team(tile) != team && PathTile.team(tile) != 0) && PathTile.solid(tile) ? wallImpassableCap : 0) +
|
||||||
(PathTile.nearGround(tile) || PathTile.nearSolid(tile) ? 6 : 0);
|
(PathTile.nearGround(tile) || PathTile.nearSolid(tile) ? 6 : 0);
|
||||||
@@ -194,7 +194,7 @@ public class ControlPathfinder{
|
|||||||
}
|
}
|
||||||
|
|
||||||
//destination is impassable, can't go there.
|
//destination is impassable, can't go there.
|
||||||
if(solid(team, costType, world.packArray(World.toTile(destination.x), World.toTile(destination.y)))){
|
if(solid(team, costType, world.packArray(World.toTile(destination.x), World.toTile(destination.y)), false)){
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -233,7 +233,7 @@ public class ControlPathfinder{
|
|||||||
req.curId = pathId;
|
req.curId = pathId;
|
||||||
|
|
||||||
//check for the unit getting stuck every N seconds
|
//check for the unit getting stuck every N seconds
|
||||||
if((req.stuckTimer += Time.delta) >= 60f * 1.5f){
|
if(req.done && (req.stuckTimer += Time.delta) >= 60f * 1.5f){
|
||||||
req.stuckTimer = 0f;
|
req.stuckTimer = 0f;
|
||||||
//force recalculate
|
//force recalculate
|
||||||
if(req.lastPos.within(unit, 1.5f)){
|
if(req.lastPos.within(unit, 1.5f)){
|
||||||
@@ -286,9 +286,6 @@ public class ControlPathfinder{
|
|||||||
float angleToDest = unit.angleTo(tile);
|
float angleToDest = unit.angleTo(tile);
|
||||||
//force recalculate when the unit moves backwards
|
//force recalculate when the unit moves backwards
|
||||||
if(Angles.angleDist(angleToNext, angleToDest) > 80f && !unit.within(tile, 1f)){
|
if(Angles.angleDist(angleToNext, angleToDest) > 80f && !unit.within(tile, 1f)){
|
||||||
if(showDebug){
|
|
||||||
Fx.placeBlock.at(unit, 1f);
|
|
||||||
}
|
|
||||||
req.forceRecalculate();
|
req.forceRecalculate();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -384,7 +381,7 @@ public class ControlPathfinder{
|
|||||||
int err = dx - dy;
|
int err = dx - dy;
|
||||||
|
|
||||||
while(x >= 0 && y >= 0 && x < ww && y < wh){
|
while(x >= 0 && y >= 0 && x < ww && y < wh){
|
||||||
if(solid(team, type, x + y * wwidth)) return true;
|
if(solid(team, type, x + y * wwidth, true)) return true;
|
||||||
if(x == x2 && y == y2) return false;
|
if(x == x2 && y == y2) return false;
|
||||||
|
|
||||||
//no diagonals
|
//no diagonals
|
||||||
@@ -433,9 +430,9 @@ public class ControlPathfinder{
|
|||||||
return cost == impassable || cost >= 2;
|
return cost == impassable || cost >= 2;
|
||||||
}
|
}
|
||||||
|
|
||||||
private static boolean solid(int team, PathCost type, int tilePos){
|
private static boolean solid(int team, PathCost type, int tilePos, boolean checkWall){
|
||||||
int cost = cost(team, type, tilePos);
|
int cost = cost(team, type, tilePos);
|
||||||
return cost == impassable || cost >= 6000;
|
return cost == impassable || (checkWall && cost >= 6000);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static float tileCost(int team, PathCost type, int a, int b){
|
private static float tileCost(int team, PathCost type, int a, int b){
|
||||||
|
|||||||
@@ -65,6 +65,10 @@ public class UnitCommand{
|
|||||||
return Icon.icons.get(icon, Icon.cancel);
|
return Icon.icons.get(icon, Icon.cancel);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public char getEmoji() {
|
||||||
|
return (char) Iconc.codes.get(icon, Iconc.cancel);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String toString(){
|
public String toString(){
|
||||||
return "UnitCommand:" + name;
|
return "UnitCommand:" + name;
|
||||||
|
|||||||
@@ -4,9 +4,13 @@ import arc.math.*;
|
|||||||
import arc.struct.*;
|
import arc.struct.*;
|
||||||
import arc.util.*;
|
import arc.util.*;
|
||||||
import mindustry.*;
|
import mindustry.*;
|
||||||
|
import mindustry.ai.*;
|
||||||
import mindustry.entities.units.*;
|
import mindustry.entities.units.*;
|
||||||
import mindustry.gen.*;
|
import mindustry.gen.*;
|
||||||
import mindustry.logic.*;
|
import mindustry.logic.*;
|
||||||
|
import mindustry.world.*;
|
||||||
|
|
||||||
|
import static mindustry.Vars.*;
|
||||||
|
|
||||||
public class LogicAI extends AIController{
|
public class LogicAI extends AIController{
|
||||||
/** Minimum delay between item transfers. */
|
/** Minimum delay between item transfers. */
|
||||||
@@ -40,6 +44,12 @@ public class LogicAI extends AIController{
|
|||||||
private float lastMoveX, lastMoveY;
|
private float lastMoveX, lastMoveY;
|
||||||
private int lastPathId = 0;
|
private int lastPathId = 0;
|
||||||
|
|
||||||
|
// LogicAI state should not be reset after reading.
|
||||||
|
@Override
|
||||||
|
public boolean keepState(){
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void updateMovement(){
|
public void updateMovement(){
|
||||||
if(control == LUnitControl.pathfind){
|
if(control == LUnitControl.pathfind){
|
||||||
@@ -81,6 +91,30 @@ public class LogicAI extends AIController{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
case autoPathfind -> {
|
||||||
|
Building core = unit.closestEnemyCore();
|
||||||
|
|
||||||
|
if((core == null || !unit.within(core, unit.range() * 0.5f))){
|
||||||
|
boolean move = true;
|
||||||
|
Tile spawner = null;
|
||||||
|
|
||||||
|
if(state.rules.waves && unit.team == state.rules.defaultTeam){
|
||||||
|
spawner = getClosestSpawner();
|
||||||
|
if(spawner != null && unit.within(spawner, state.rules.dropZoneRadius + 120f)) move = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(move){
|
||||||
|
if(unit.isFlying()){
|
||||||
|
var target = core == null ? spawner : core;
|
||||||
|
if(target != null){
|
||||||
|
moveTo(target, unit.range() * 0.5f);
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
pathfind(Pathfinder.fieldCore);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
case stop -> {
|
case stop -> {
|
||||||
unit.clearBuilding();
|
unit.clearBuilding();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -23,6 +23,11 @@ public class MinerAI extends AIController{
|
|||||||
unit.mineTile(null);
|
unit.mineTile(null);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(ore != null && !unit.validMine(ore)){
|
||||||
|
ore = null;
|
||||||
|
unit.mineTile = null;
|
||||||
|
}
|
||||||
|
|
||||||
if(mining){
|
if(mining){
|
||||||
if(timer.get(timerTarget2, 60 * 4) || targetItem == null){
|
if(timer.get(timerTarget2, 60 * 4) || targetItem == null){
|
||||||
targetItem = unit.type.mineItems.min(i -> indexer.hasOre(i) && unit.canMine(i), i -> core.items.get(i));
|
targetItem = unit.type.mineItems.min(i -> indexer.hasOre(i) && unit.canMine(i), i -> core.items.get(i));
|
||||||
|
|||||||
@@ -1315,6 +1315,7 @@ public class Blocks{
|
|||||||
|
|
||||||
researchCostMultiplier = 10f;
|
researchCostMultiplier = 10f;
|
||||||
|
|
||||||
|
group = BlockGroup.heat;
|
||||||
size = 3;
|
size = 3;
|
||||||
drawer = new DrawMulti(new DrawDefault(), new DrawHeatOutput(), new DrawHeatInput("-heat"));
|
drawer = new DrawMulti(new DrawDefault(), new DrawHeatOutput(), new DrawHeatInput("-heat"));
|
||||||
regionRotated1 = 1;
|
regionRotated1 = 1;
|
||||||
@@ -1325,6 +1326,7 @@ public class Blocks{
|
|||||||
|
|
||||||
researchCostMultiplier = 10f;
|
researchCostMultiplier = 10f;
|
||||||
|
|
||||||
|
group = BlockGroup.heat;
|
||||||
size = 3;
|
size = 3;
|
||||||
drawer = new DrawMulti(new DrawDefault(), new DrawHeatOutput(-1, false), new DrawHeatOutput(), new DrawHeatOutput(1, false), new DrawHeatInput("-heat"));
|
drawer = new DrawMulti(new DrawDefault(), new DrawHeatOutput(-1, false), new DrawHeatOutput(), new DrawHeatOutput(1, false), new DrawHeatInput("-heat"));
|
||||||
regionRotated1 = 1;
|
regionRotated1 = 1;
|
||||||
@@ -2456,6 +2458,7 @@ public class Blocks{
|
|||||||
consumesPower = outputsPower = true;
|
consumesPower = outputsPower = true;
|
||||||
range = 23;
|
range = 23;
|
||||||
scaledHealth = 90;
|
scaledHealth = 90;
|
||||||
|
fogRadius = 2;
|
||||||
|
|
||||||
consumePowerBuffered(40000f);
|
consumePowerBuffered(40000f);
|
||||||
}};
|
}};
|
||||||
@@ -2934,6 +2937,7 @@ public class Blocks{
|
|||||||
armor = 5f;
|
armor = 5f;
|
||||||
alwaysUnlocked = true;
|
alwaysUnlocked = true;
|
||||||
incinerateNonBuildable = true;
|
incinerateNonBuildable = true;
|
||||||
|
requiresCoreZone = true;
|
||||||
|
|
||||||
//TODO should this be higher?
|
//TODO should this be higher?
|
||||||
buildCostMultiplier = 0.7f;
|
buildCostMultiplier = 0.7f;
|
||||||
@@ -2953,6 +2957,7 @@ public class Blocks{
|
|||||||
armor = 10f;
|
armor = 10f;
|
||||||
incinerateNonBuildable = true;
|
incinerateNonBuildable = true;
|
||||||
buildCostMultiplier = 0.7f;
|
buildCostMultiplier = 0.7f;
|
||||||
|
requiresCoreZone = true;
|
||||||
|
|
||||||
unitCapModifier = 15;
|
unitCapModifier = 15;
|
||||||
researchCostMultipliers.put(Items.silicon, 0.5f);
|
researchCostMultipliers.put(Items.silicon, 0.5f);
|
||||||
@@ -2970,6 +2975,7 @@ public class Blocks{
|
|||||||
armor = 15f;
|
armor = 15f;
|
||||||
incinerateNonBuildable = true;
|
incinerateNonBuildable = true;
|
||||||
buildCostMultiplier = 0.7f;
|
buildCostMultiplier = 0.7f;
|
||||||
|
requiresCoreZone = true;
|
||||||
|
|
||||||
unitCapModifier = 15;
|
unitCapModifier = 15;
|
||||||
researchCostMultipliers.put(Items.silicon, 0.4f);
|
researchCostMultipliers.put(Items.silicon, 0.4f);
|
||||||
@@ -4531,7 +4537,7 @@ public class Blocks{
|
|||||||
}};
|
}};
|
||||||
|
|
||||||
scathe = new ItemTurret("scathe"){{
|
scathe = new ItemTurret("scathe"){{
|
||||||
requirements(Category.turret, with(Items.silicon, 450, Items.graphite, 400, Items.tungsten, 500, Items.carbide, 300));
|
requirements(Category.turret, with(Items.silicon, 450, Items.graphite, 400, Items.tungsten, 500, Items.oxide, 100, Items.carbide, 200));
|
||||||
|
|
||||||
ammo(
|
ammo(
|
||||||
Items.carbide, new BasicBulletType(0f, 1){{
|
Items.carbide, new BasicBulletType(0f, 1){{
|
||||||
@@ -4568,7 +4574,7 @@ public class Blocks{
|
|||||||
deathExplosionEffect = Fx.massiveExplosion;
|
deathExplosionEffect = Fx.massiveExplosion;
|
||||||
shootOnDeath = true;
|
shootOnDeath = true;
|
||||||
shake = 10f;
|
shake = 10f;
|
||||||
bullet = new ExplosionBulletType(640f, 65f){{
|
bullet = new ExplosionBulletType(700f, 65f){{
|
||||||
hitColor = Pal.redLight;
|
hitColor = Pal.redLight;
|
||||||
shootEffect = new MultiEffect(Fx.massiveExplosion, Fx.scatheExplosion, Fx.scatheLight, new WaveEffect(){{
|
shootEffect = new MultiEffect(Fx.massiveExplosion, Fx.scatheExplosion, Fx.scatheLight, new WaveEffect(){{
|
||||||
lifetime = 10f;
|
lifetime = 10f;
|
||||||
@@ -4674,7 +4680,7 @@ public class Blocks{
|
|||||||
targetUnderBlocks = false;
|
targetUnderBlocks = false;
|
||||||
|
|
||||||
shake = 6f;
|
shake = 6f;
|
||||||
ammoPerShot = 20;
|
ammoPerShot = 15;
|
||||||
maxAmmo = 30;
|
maxAmmo = 30;
|
||||||
shootY = -1;
|
shootY = -1;
|
||||||
outlineColor = Pal.darkOutline;
|
outlineColor = Pal.darkOutline;
|
||||||
@@ -5896,7 +5902,7 @@ public class Blocks{
|
|||||||
}};
|
}};
|
||||||
|
|
||||||
canvas = new CanvasBlock("canvas"){{
|
canvas = new CanvasBlock("canvas"){{
|
||||||
requirements(Category.logic, BuildVisibility.shown, with(Items.silicon, 30, Items.beryllium, 10));
|
requirements(Category.logic, BuildVisibility.shown, with(Items.silicon, 10, Items.beryllium, 10));
|
||||||
|
|
||||||
canvasSize = 12;
|
canvasSize = 12;
|
||||||
padding = 7f / 4f * 2f;
|
padding = 7f / 4f * 2f;
|
||||||
|
|||||||
@@ -29,11 +29,11 @@ public class Fx{
|
|||||||
|
|
||||||
none = new Effect(0, 0f, e -> {}),
|
none = new Effect(0, 0f, e -> {}),
|
||||||
|
|
||||||
blockCrash = new Effect(100f, e -> {
|
blockCrash = new Effect(90f, e -> {
|
||||||
if(!(e.data instanceof Block block)) return;
|
if(!(e.data instanceof Block block)) return;
|
||||||
|
|
||||||
alpha(e.fin() + 0.5f);
|
alpha(e.fin() + 0.5f);
|
||||||
float offset = Mathf.lerp(0f, 200f, e.fout());
|
float offset = Mathf.lerp(0f, 180f, e.fout());
|
||||||
color(0f, 0f, 0f, 0.44f);
|
color(0f, 0f, 0f, 0.44f);
|
||||||
rect(block.fullIcon, e.x - offset * 4f, e.y, (float)block.size * 8f, (float)block.size * 8f);
|
rect(block.fullIcon, e.x - offset * 4f, e.y, (float)block.size * 8f, (float)block.size * 8f);
|
||||||
color(Color.white);
|
color(Color.white);
|
||||||
@@ -417,6 +417,20 @@ public class Fx{
|
|||||||
Lines.spikes(e.x, e.y, 1f + e.fin() * 6f, e.fout() * 4f, 6);
|
Lines.spikes(e.x, e.y, 1f + e.fin() * 6f, e.fout() * 4f, 6);
|
||||||
}),
|
}),
|
||||||
|
|
||||||
|
sparkExplosion = new Effect(30f, 160f, e -> {
|
||||||
|
color(e.color);
|
||||||
|
stroke(e.fout() * 3f);
|
||||||
|
float circleRad = 6f + e.finpow() * e.rotation;
|
||||||
|
Lines.circle(e.x, e.y, circleRad);
|
||||||
|
|
||||||
|
rand.setSeed(e.id);
|
||||||
|
for(int i = 0; i < 16; i++){
|
||||||
|
float angle = rand.random(360f);
|
||||||
|
float lenRand = rand.random(0.5f, 1f);
|
||||||
|
Lines.lineAngle(e.x, e.y, angle, e.foutpow() * e.rotation * 0.8f * rand.random(1f, 0.6f) + 2f, e.finpow() * e.rotation * 1.2f * lenRand + 6f);
|
||||||
|
}
|
||||||
|
}),
|
||||||
|
|
||||||
titanExplosion = new Effect(30f, 160f, e -> {
|
titanExplosion = new Effect(30f, 160f, e -> {
|
||||||
color(e.color);
|
color(e.color);
|
||||||
stroke(e.fout() * 3f);
|
stroke(e.fout() * 3f);
|
||||||
@@ -609,6 +623,12 @@ public class Fx{
|
|||||||
Lines.circle(e.x, e.y, 2f + e.finpow() * 7f);
|
Lines.circle(e.x, e.y, 2f + e.finpow() * 7f);
|
||||||
}),
|
}),
|
||||||
|
|
||||||
|
dynamicWave = new Effect(22, e -> {
|
||||||
|
color(e.color, 0.7f);
|
||||||
|
stroke(e.fout() * 2f);
|
||||||
|
Lines.circle(e.x, e.y, 4f + e.finpow() * e.rotation);
|
||||||
|
}),
|
||||||
|
|
||||||
shieldWave = new Effect(22, e -> {
|
shieldWave = new Effect(22, e -> {
|
||||||
color(e.color, 0.7f);
|
color(e.color, 0.7f);
|
||||||
stroke(e.fout() * 2f);
|
stroke(e.fout() * 2f);
|
||||||
@@ -1517,6 +1537,15 @@ public class Fx{
|
|||||||
});
|
});
|
||||||
}),
|
}),
|
||||||
|
|
||||||
|
smokePuff = new Effect(30, e -> {
|
||||||
|
color(e.color);
|
||||||
|
|
||||||
|
randLenVectors(e.id, 6, 4f + 30f * e.finpow(), (x, y) -> {
|
||||||
|
Fill.circle(e.x + x, e.y + y, e.fout() * 3f);
|
||||||
|
Fill.circle(e.x + x / 2f, e.y + y / 2f, e.fout());
|
||||||
|
});
|
||||||
|
}),
|
||||||
|
|
||||||
shootSmall = new Effect(8, e -> {
|
shootSmall = new Effect(8, e -> {
|
||||||
color(Pal.lighterOrange, Pal.lightOrange, e.fin());
|
color(Pal.lighterOrange, Pal.lightOrange, e.fin());
|
||||||
float w = 1f + 5 * e.fout();
|
float w = 1f + 5 * e.fout();
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ import mindustry.type.*;
|
|||||||
import static mindustry.Vars.*;
|
import static mindustry.Vars.*;
|
||||||
|
|
||||||
public class StatusEffects{
|
public class StatusEffects{
|
||||||
public static StatusEffect none, burning, freezing, unmoving, slow, wet, muddy, melting, sapped, tarred, overdrive, overclock, shielded, shocked, blasted, corroded, boss, sporeSlowed, disarmed, electrified, invincible;
|
public static StatusEffect none, burning, freezing, unmoving, slow, fast, wet, muddy, melting, sapped, tarred, overdrive, overclock, shielded, shocked, blasted, corroded, boss, sporeSlowed, disarmed, electrified, invincible;
|
||||||
|
|
||||||
public static void load(){
|
public static void load(){
|
||||||
|
|
||||||
@@ -60,6 +60,15 @@ public class StatusEffects{
|
|||||||
slow = new StatusEffect("slow"){{
|
slow = new StatusEffect("slow"){{
|
||||||
color = Pal.lightishGray;
|
color = Pal.lightishGray;
|
||||||
speedMultiplier = 0.4f;
|
speedMultiplier = 0.4f;
|
||||||
|
|
||||||
|
init(() -> opposite(fast));
|
||||||
|
}};
|
||||||
|
|
||||||
|
fast = new StatusEffect("fast"){{
|
||||||
|
color = Pal.boostTo;
|
||||||
|
speedMultiplier = 1.6f;
|
||||||
|
|
||||||
|
init(() -> opposite(slow));
|
||||||
}};
|
}};
|
||||||
|
|
||||||
wet = new StatusEffect("wet"){{
|
wet = new StatusEffect("wet"){{
|
||||||
@@ -71,7 +80,10 @@ public class StatusEffects{
|
|||||||
|
|
||||||
init(() -> {
|
init(() -> {
|
||||||
affinity(shocked, (unit, result, time) -> {
|
affinity(shocked, (unit, result, time) -> {
|
||||||
unit.damagePierce(transitionDamage);
|
float pierceFraction = 0.3f;
|
||||||
|
|
||||||
|
unit.damagePierce(transitionDamage * pierceFraction);
|
||||||
|
unit.damage(transitionDamage * (1f - pierceFraction));
|
||||||
if(unit.team == state.rules.waveTeam){
|
if(unit.team == state.rules.waveTeam){
|
||||||
Events.fire(Trigger.shock);
|
Events.fire(Trigger.shock);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -127,6 +127,7 @@ public class TechTree{
|
|||||||
});
|
});
|
||||||
|
|
||||||
content.techNode = this;
|
content.techNode = this;
|
||||||
|
content.techNodes.add(this);
|
||||||
all.add(this);
|
all.add(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -252,11 +252,11 @@ public class UnitTypes{
|
|||||||
}};
|
}};
|
||||||
|
|
||||||
reign = new UnitType("reign"){{
|
reign = new UnitType("reign"){{
|
||||||
speed = 0.35f;
|
speed = 0.4f;
|
||||||
hitSize = 26f;
|
hitSize = 26f;
|
||||||
rotateSpeed = 1.65f;
|
rotateSpeed = 1.65f;
|
||||||
health = 24000;
|
health = 24000;
|
||||||
armor = 14f;
|
armor = 18f;
|
||||||
mechStepParticles = true;
|
mechStepParticles = true;
|
||||||
stepShake = 0.75f;
|
stepShake = 0.75f;
|
||||||
drownTimeMultiplier = 6f;
|
drownTimeMultiplier = 6f;
|
||||||
@@ -2153,13 +2153,15 @@ public class UnitTypes{
|
|||||||
abilities.add(new EnergyFieldAbility(40f, 65f, 180f){{
|
abilities.add(new EnergyFieldAbility(40f, 65f, 180f){{
|
||||||
statusDuration = 60f * 6f;
|
statusDuration = 60f * 6f;
|
||||||
maxTargets = 25;
|
maxTargets = 25;
|
||||||
|
healPercent = 1.5f;
|
||||||
|
sameTypeHealMult = 0.5f;
|
||||||
}});
|
}});
|
||||||
|
|
||||||
for(float mountY : new float[]{-18f, 14}){
|
for(float mountY : new float[]{-18f, 14}){
|
||||||
weapons.add(new PointDefenseWeapon("point-defense-mount"){{
|
weapons.add(new PointDefenseWeapon("point-defense-mount"){{
|
||||||
x = 12.5f;
|
x = 12.5f;
|
||||||
y = mountY;
|
y = mountY;
|
||||||
reload = 6f;
|
reload = 4f;
|
||||||
targetInterval = 8f;
|
targetInterval = 8f;
|
||||||
targetSwitchInterval = 8f;
|
targetSwitchInterval = 8f;
|
||||||
|
|
||||||
@@ -2167,7 +2169,7 @@ public class UnitTypes{
|
|||||||
shootEffect = Fx.sparkShoot;
|
shootEffect = Fx.sparkShoot;
|
||||||
hitEffect = Fx.pointHit;
|
hitEffect = Fx.pointHit;
|
||||||
maxRange = 180f;
|
maxRange = 180f;
|
||||||
damage = 25f;
|
damage = 30f;
|
||||||
}};
|
}};
|
||||||
}});
|
}});
|
||||||
}
|
}
|
||||||
@@ -2343,6 +2345,7 @@ public class UnitTypes{
|
|||||||
speed = 3f;
|
speed = 3f;
|
||||||
rotateSpeed = 15f;
|
rotateSpeed = 15f;
|
||||||
accel = 0.1f;
|
accel = 0.1f;
|
||||||
|
fogRadius = 0f;
|
||||||
itemCapacity = 30;
|
itemCapacity = 30;
|
||||||
health = 150f;
|
health = 150f;
|
||||||
engineOffset = 6f;
|
engineOffset = 6f;
|
||||||
@@ -2379,6 +2382,7 @@ public class UnitTypes{
|
|||||||
speed = 3.3f;
|
speed = 3.3f;
|
||||||
rotateSpeed = 17f;
|
rotateSpeed = 17f;
|
||||||
accel = 0.1f;
|
accel = 0.1f;
|
||||||
|
fogRadius = 0f;
|
||||||
itemCapacity = 50;
|
itemCapacity = 50;
|
||||||
health = 170f;
|
health = 170f;
|
||||||
engineOffset = 6f;
|
engineOffset = 6f;
|
||||||
@@ -2420,6 +2424,7 @@ public class UnitTypes{
|
|||||||
speed = 3.55f;
|
speed = 3.55f;
|
||||||
rotateSpeed = 19f;
|
rotateSpeed = 19f;
|
||||||
accel = 0.11f;
|
accel = 0.11f;
|
||||||
|
fogRadius = 0f;
|
||||||
itemCapacity = 70;
|
itemCapacity = 70;
|
||||||
health = 220f;
|
health = 220f;
|
||||||
engineOffset = 6f;
|
engineOffset = 6f;
|
||||||
@@ -2629,6 +2634,9 @@ public class UnitTypes{
|
|||||||
height = 7f;
|
height = 7f;
|
||||||
lifetime = 15f;
|
lifetime = 15f;
|
||||||
hitSize = 4f;
|
hitSize = 4f;
|
||||||
|
pierceCap = 3;
|
||||||
|
pierce = true;
|
||||||
|
pierceBuilding = true;
|
||||||
hitColor = backColor = trailColor = Color.valueOf("feb380");
|
hitColor = backColor = trailColor = Color.valueOf("feb380");
|
||||||
frontColor = Color.white;
|
frontColor = Color.white;
|
||||||
trailWidth = 1.7f;
|
trailWidth = 1.7f;
|
||||||
|
|||||||
@@ -458,7 +458,6 @@ public class Logic implements ApplicationListener{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//TODO objectives clientside???
|
|
||||||
if(!state.isEditor()){
|
if(!state.isEditor()){
|
||||||
state.rules.objectives.update();
|
state.rules.objectives.update();
|
||||||
if(state.rules.objectives.checkChanged() && net.server()){
|
if(state.rules.objectives.checkChanged() && net.server()){
|
||||||
|
|||||||
@@ -165,14 +165,14 @@ public class NetClient implements ApplicationListener{
|
|||||||
public static void sound(Sound sound, float volume, float pitch, float pan){
|
public static void sound(Sound sound, float volume, float pitch, float pan){
|
||||||
if(sound == null || headless) return;
|
if(sound == null || headless) return;
|
||||||
|
|
||||||
sound.play(Mathf.clamp(volume, 0, 8f) * Core.settings.getInt("sfxvol") / 100f, pitch, pan, false, false);
|
sound.play(Mathf.clamp(volume, 0, 8f) * Core.settings.getInt("sfxvol") / 100f, Mathf.clamp(pitch, 0f, 20f), pan, false, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Remote(variants = Variant.both, unreliable = true, called = Loc.server)
|
@Remote(variants = Variant.both, unreliable = true, called = Loc.server)
|
||||||
public static void soundAt(Sound sound, float x, float y, float volume, float pitch){
|
public static void soundAt(Sound sound, float x, float y, float volume, float pitch){
|
||||||
if(sound == null || headless) return;
|
if(sound == null || headless) return;
|
||||||
|
|
||||||
sound.at(x, y, pitch, Mathf.clamp(volume, 0, 4f));
|
sound.at(x, y, Mathf.clamp(pitch, 0f, 20f), Mathf.clamp(volume, 0, 4f));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Remote(variants = Variant.both, unreliable = true)
|
@Remote(variants = Variant.both, unreliable = true)
|
||||||
@@ -414,7 +414,7 @@ public class NetClient implements ApplicationListener{
|
|||||||
|
|
||||||
//entity must not be added yet, so create it
|
//entity must not be added yet, so create it
|
||||||
if(entity == null){
|
if(entity == null){
|
||||||
entity = (Syncc)EntityMapping.map(typeID).get();
|
entity = (Syncc)EntityMapping.map(typeID & 0xFF).get();
|
||||||
entity.id(id);
|
entity.id(id);
|
||||||
if(!netClient.isEntityUsed(entity.id())){
|
if(!netClient.isEntityUsed(entity.id())){
|
||||||
add = true;
|
add = true;
|
||||||
|
|||||||
@@ -99,6 +99,15 @@ public class NetServer implements ApplicationListener{
|
|||||||
private Interval timer = new Interval(10);
|
private Interval timer = new Interval(10);
|
||||||
private IntSet buildHealthChanged = new IntSet();
|
private IntSet buildHealthChanged = new IntSet();
|
||||||
|
|
||||||
|
/** Current kick session. */
|
||||||
|
public @Nullable VoteSession currentlyKicking = null;
|
||||||
|
/** Duration of a kick in seconds. */
|
||||||
|
public static int kickDuration = 60 * 60;
|
||||||
|
/** Voting round duration in seconds. */
|
||||||
|
public static float voteDuration = 0.5f * 60;
|
||||||
|
/** Cooldown between votes in seconds. */
|
||||||
|
public static int voteCooldown = 60 * 5;
|
||||||
|
|
||||||
private ReusableByteOutStream writeBuffer = new ReusableByteOutStream(127);
|
private ReusableByteOutStream writeBuffer = new ReusableByteOutStream(127);
|
||||||
private Writes outputBuffer = new Writes(new DataOutputStream(writeBuffer));
|
private Writes outputBuffer = new Writes(new DataOutputStream(writeBuffer));
|
||||||
|
|
||||||
@@ -340,62 +349,8 @@ public class NetServer implements ApplicationListener{
|
|||||||
Groups.player.each(Player::admin, a -> a.sendMessage(raw, player, args[0]));
|
Groups.player.each(Player::admin, a -> a.sendMessage(raw, player, args[0]));
|
||||||
});
|
});
|
||||||
|
|
||||||
//duration of a kick in seconds
|
|
||||||
int kickDuration = 60 * 60;
|
|
||||||
//voting round duration in seconds
|
|
||||||
float voteDuration = 0.5f * 60;
|
|
||||||
//cooldown between votes in seconds
|
|
||||||
int voteCooldown = 60 * 5;
|
|
||||||
|
|
||||||
class VoteSession{
|
|
||||||
Player target;
|
|
||||||
ObjectIntMap<String> voted = new ObjectIntMap<>();
|
|
||||||
VoteSession[] map;
|
|
||||||
Timer.Task task;
|
|
||||||
int votes;
|
|
||||||
|
|
||||||
public VoteSession(VoteSession[] map, Player target){
|
|
||||||
this.target = target;
|
|
||||||
this.map = map;
|
|
||||||
this.task = Timer.schedule(() -> {
|
|
||||||
if(!checkPass()){
|
|
||||||
Call.sendMessage(Strings.format("[lightgray]Vote failed. Not enough votes to kick[orange] @[lightgray].", target.name));
|
|
||||||
map[0] = null;
|
|
||||||
task.cancel();
|
|
||||||
}
|
|
||||||
}, voteDuration);
|
|
||||||
}
|
|
||||||
|
|
||||||
void vote(Player player, int d){
|
|
||||||
int lastVote = voted.get(player.uuid(), 0) | voted.get(admins.getInfo(player.uuid()).lastIP, 0);
|
|
||||||
votes -= lastVote;
|
|
||||||
|
|
||||||
votes += d;
|
|
||||||
voted.put(player.uuid(), d);
|
|
||||||
voted.put(admins.getInfo(player.uuid()).lastIP, d);
|
|
||||||
|
|
||||||
Call.sendMessage(Strings.format("[lightgray]@[lightgray] has voted on kicking[orange] @[lightgray].[accent] (@/@)\n[lightgray]Type[orange] /vote <y/n>[] to agree.",
|
|
||||||
player.name, target.name, votes, votesRequired()));
|
|
||||||
|
|
||||||
checkPass();
|
|
||||||
}
|
|
||||||
|
|
||||||
boolean checkPass(){
|
|
||||||
if(votes >= votesRequired()){
|
|
||||||
Call.sendMessage(Strings.format("[orange]Vote passed.[scarlet] @[orange] will be banned from the server for @ minutes.", target.name, (kickDuration / 60)));
|
|
||||||
Groups.player.each(p -> p.uuid().equals(target.uuid()), p -> p.kick(KickReason.vote, kickDuration * 1000));
|
|
||||||
map[0] = null;
|
|
||||||
task.cancel();
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
//cooldowns per player
|
//cooldowns per player
|
||||||
ObjectMap<String, Timekeeper> cooldowns = new ObjectMap<>();
|
ObjectMap<String, Timekeeper> cooldowns = new ObjectMap<>();
|
||||||
//current kick sessions
|
|
||||||
VoteSession[] currentlyKicking = {null};
|
|
||||||
|
|
||||||
clientCommands.<Player>register("votekick", "[player] [reason...]", "Vote to kick a player with a valid reason.", (args, player) -> {
|
clientCommands.<Player>register("votekick", "[player] [reason...]", "Vote to kick a player with a valid reason.", (args, player) -> {
|
||||||
if(!Config.enableVotekick.bool()){
|
if(!Config.enableVotekick.bool()){
|
||||||
@@ -413,7 +368,7 @@ public class NetServer implements ApplicationListener{
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(currentlyKicking[0] != null){
|
if(currentlyKicking != null){
|
||||||
player.sendMessage("[scarlet]A vote is already in progress.");
|
player.sendMessage("[scarlet]A vote is already in progress.");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -454,11 +409,11 @@ public class NetServer implements ApplicationListener{
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
VoteSession session = new VoteSession(currentlyKicking, found);
|
VoteSession session = new VoteSession(found);
|
||||||
session.vote(player, 1);
|
session.vote(player, 1);
|
||||||
Call.sendMessage(Strings.format("[lightgray]Reason:[orange] @[lightgray].", args[1]));
|
Call.sendMessage(Strings.format("[lightgray]Reason:[orange] @[lightgray].", args[1]));
|
||||||
vtime.reset();
|
vtime.reset();
|
||||||
currentlyKicking[0] = session;
|
currentlyKicking = session;
|
||||||
}
|
}
|
||||||
}else{
|
}else{
|
||||||
player.sendMessage("[scarlet]No player [orange]'" + args[0] + "'[scarlet] found.");
|
player.sendMessage("[scarlet]No player [orange]'" + args[0] + "'[scarlet] found.");
|
||||||
@@ -467,13 +422,13 @@ public class NetServer implements ApplicationListener{
|
|||||||
});
|
});
|
||||||
|
|
||||||
clientCommands.<Player>register("vote", "<y/n/c>", "Vote to kick the current player. Admin can cancel the voting with 'c'.", (arg, player) -> {
|
clientCommands.<Player>register("vote", "<y/n/c>", "Vote to kick the current player. Admin can cancel the voting with 'c'.", (arg, player) -> {
|
||||||
if(currentlyKicking[0] == null){
|
if(currentlyKicking == null){
|
||||||
player.sendMessage("[scarlet]Nobody is being voted on.");
|
player.sendMessage("[scarlet]Nobody is being voted on.");
|
||||||
}else{
|
}else{
|
||||||
if(player.admin && arg[0].equalsIgnoreCase("c")){
|
if(player.admin && arg[0].equalsIgnoreCase("c")){
|
||||||
Call.sendMessage(Strings.format("[lightgray]Vote canceled by admin[orange] @[lightgray].", player.name));
|
Call.sendMessage(Strings.format("[lightgray]Vote canceled by admin[orange] @[lightgray].", player.name));
|
||||||
currentlyKicking[0].task.cancel();
|
currentlyKicking.task.cancel();
|
||||||
currentlyKicking[0] = null;
|
currentlyKicking = null;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -489,17 +444,17 @@ public class NetServer implements ApplicationListener{
|
|||||||
};
|
};
|
||||||
|
|
||||||
//hosts can vote all they want
|
//hosts can vote all they want
|
||||||
if((currentlyKicking[0].voted.get(player.uuid(), 2) == sign || currentlyKicking[0].voted.get(admins.getInfo(player.uuid()).lastIP, 2) == sign)){
|
if((currentlyKicking.voted.get(player.uuid(), 2) == sign || currentlyKicking.voted.get(admins.getInfo(player.uuid()).lastIP, 2) == sign)){
|
||||||
player.sendMessage(Strings.format("[scarlet]You've already voted @. Sit down.", arg[0].toLowerCase()));
|
player.sendMessage(Strings.format("[scarlet]You've already voted @. Sit down.", arg[0].toLowerCase()));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(currentlyKicking[0].target == player){
|
if(currentlyKicking.target == player){
|
||||||
player.sendMessage("[scarlet]You can't vote on your own trial.");
|
player.sendMessage("[scarlet]You can't vote on your own trial.");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(currentlyKicking[0].target.team() != player.team()){
|
if(currentlyKicking.target.team() != player.team()){
|
||||||
player.sendMessage("[scarlet]You can't vote for other teams.");
|
player.sendMessage("[scarlet]You can't vote for other teams.");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -509,7 +464,7 @@ public class NetServer implements ApplicationListener{
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
currentlyKicking[0].vote(player, sign);
|
currentlyKicking.vote(player, sign);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -992,7 +947,7 @@ public class NetServer implements ApplicationListener{
|
|||||||
|
|
||||||
//write all entities now
|
//write all entities now
|
||||||
dataStream.writeInt(entity.id()); //write id
|
dataStream.writeInt(entity.id()); //write id
|
||||||
dataStream.writeByte(entity.classId()); //write type ID
|
dataStream.writeByte(entity.classId() & 0xFF); //write type ID
|
||||||
entity.writeSync(Writes.get(dataStream)); //write entity
|
entity.writeSync(Writes.get(dataStream)); //write entity
|
||||||
|
|
||||||
sent++;
|
sent++;
|
||||||
@@ -1125,6 +1080,49 @@ public class NetServer implements ApplicationListener{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public class VoteSession{
|
||||||
|
Player target;
|
||||||
|
ObjectIntMap<String> voted = new ObjectIntMap<>();
|
||||||
|
Timer.Task task;
|
||||||
|
int votes;
|
||||||
|
|
||||||
|
public VoteSession(Player target){
|
||||||
|
this.target = target;
|
||||||
|
this.task = Timer.schedule(() -> {
|
||||||
|
if(!checkPass()){
|
||||||
|
Call.sendMessage(Strings.format("[lightgray]Vote failed. Not enough votes to kick[orange] @[lightgray].", target.name));
|
||||||
|
currentlyKicking = null;
|
||||||
|
task.cancel();
|
||||||
|
}
|
||||||
|
}, voteDuration);
|
||||||
|
}
|
||||||
|
|
||||||
|
void vote(Player player, int d){
|
||||||
|
int lastVote = voted.get(player.uuid(), 0) | voted.get(admins.getInfo(player.uuid()).lastIP, 0);
|
||||||
|
votes -= lastVote;
|
||||||
|
|
||||||
|
votes += d;
|
||||||
|
voted.put(player.uuid(), d);
|
||||||
|
voted.put(admins.getInfo(player.uuid()).lastIP, d);
|
||||||
|
|
||||||
|
Call.sendMessage(Strings.format("[lightgray]@[lightgray] has voted on kicking[orange] @[lightgray].[accent] (@/@)\n[lightgray]Type[orange] /vote <y/n>[] to agree.",
|
||||||
|
player.name, target.name, votes, votesRequired()));
|
||||||
|
|
||||||
|
checkPass();
|
||||||
|
}
|
||||||
|
|
||||||
|
boolean checkPass(){
|
||||||
|
if(votes >= votesRequired()){
|
||||||
|
Call.sendMessage(Strings.format("[orange]Vote passed.[scarlet] @[orange] will be banned from the server for @ minutes.", target.name, (kickDuration / 60)));
|
||||||
|
Groups.player.each(p -> p.uuid().equals(target.uuid()), p -> p.kick(KickReason.vote, kickDuration * 1000));
|
||||||
|
currentlyKicking = null;
|
||||||
|
task.cancel();
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public interface TeamAssigner{
|
public interface TeamAssigner{
|
||||||
Team assign(Player player, Iterable<Player> players);
|
Team assign(Player player, Iterable<Player> players);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -18,6 +18,7 @@ import mindustry.game.EventType.*;
|
|||||||
import mindustry.gen.*;
|
import mindustry.gen.*;
|
||||||
import mindustry.graphics.*;
|
import mindustry.graphics.*;
|
||||||
import mindustry.graphics.g3d.*;
|
import mindustry.graphics.g3d.*;
|
||||||
|
import mindustry.maps.*;
|
||||||
import mindustry.type.*;
|
import mindustry.type.*;
|
||||||
import mindustry.world.blocks.storage.*;
|
import mindustry.world.blocks.storage.*;
|
||||||
import mindustry.world.blocks.storage.CoreBlock.*;
|
import mindustry.world.blocks.storage.CoreBlock.*;
|
||||||
@@ -45,7 +46,7 @@ public class Renderer implements ApplicationListener{
|
|||||||
public @Nullable Bloom bloom;
|
public @Nullable Bloom bloom;
|
||||||
public @Nullable FrameBuffer backgroundBuffer;
|
public @Nullable FrameBuffer backgroundBuffer;
|
||||||
public FrameBuffer effectBuffer = new FrameBuffer();
|
public FrameBuffer effectBuffer = new FrameBuffer();
|
||||||
public boolean animateShields, drawWeather = true, drawStatus, enableEffects, drawDisplays = true;
|
public boolean animateShields, drawWeather = true, drawStatus, enableEffects, drawDisplays = true, drawLight = true;
|
||||||
public float weatherAlpha;
|
public float weatherAlpha;
|
||||||
/** minZoom = zooming out, maxZoom = zooming in */
|
/** minZoom = zooming out, maxZoom = zooming in */
|
||||||
public float minZoom = 1.5f, maxZoom = 6f;
|
public float minZoom = 1.5f, maxZoom = 6f;
|
||||||
@@ -179,6 +180,7 @@ public class Renderer implements ApplicationListener{
|
|||||||
drawStatus = settings.getBool("blockstatus");
|
drawStatus = settings.getBool("blockstatus");
|
||||||
enableEffects = settings.getBool("effects");
|
enableEffects = settings.getBool("effects");
|
||||||
drawDisplays = !settings.getBool("hidedisplays");
|
drawDisplays = !settings.getBool("hidedisplays");
|
||||||
|
drawLight = settings.getBool("drawlight", true);
|
||||||
|
|
||||||
if(landTime > 0){
|
if(landTime > 0){
|
||||||
if(!state.isPaused()){
|
if(!state.isPaused()){
|
||||||
@@ -288,6 +290,7 @@ public class Renderer implements ApplicationListener{
|
|||||||
|
|
||||||
public void draw(){
|
public void draw(){
|
||||||
Events.fire(Trigger.preDraw);
|
Events.fire(Trigger.preDraw);
|
||||||
|
MapPreviewLoader.checkPreviews();
|
||||||
|
|
||||||
camera.update();
|
camera.update();
|
||||||
|
|
||||||
@@ -311,6 +314,7 @@ public class Renderer implements ApplicationListener{
|
|||||||
Draw.sort(true);
|
Draw.sort(true);
|
||||||
|
|
||||||
Events.fire(Trigger.draw);
|
Events.fire(Trigger.draw);
|
||||||
|
MapPreviewLoader.checkPreviews();
|
||||||
|
|
||||||
if(pixelator.enabled()){
|
if(pixelator.enabled()){
|
||||||
pixelator.register();
|
pixelator.register();
|
||||||
@@ -334,7 +338,7 @@ public class Renderer implements ApplicationListener{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if(state.rules.lighting){
|
if(state.rules.lighting && drawLight){
|
||||||
Draw.draw(Layer.light, lights::draw);
|
Draw.draw(Layer.light, lights::draw);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -71,6 +71,7 @@ public class UI implements ApplicationListener, Loadable{
|
|||||||
public SchematicsDialog schematics;
|
public SchematicsDialog schematics;
|
||||||
public ModsDialog mods;
|
public ModsDialog mods;
|
||||||
public ColorPicker picker;
|
public ColorPicker picker;
|
||||||
|
public EffectsDialog effects;
|
||||||
public LogicDialog logic;
|
public LogicDialog logic;
|
||||||
public FullTextDialog fullText;
|
public FullTextDialog fullText;
|
||||||
public CampaignCompleteDialog campaignComplete;
|
public CampaignCompleteDialog campaignComplete;
|
||||||
@@ -183,6 +184,7 @@ public class UI implements ApplicationListener, Loadable{
|
|||||||
consolefrag = new ConsoleFragment();
|
consolefrag = new ConsoleFragment();
|
||||||
|
|
||||||
picker = new ColorPicker();
|
picker = new ColorPicker();
|
||||||
|
effects = new EffectsDialog();
|
||||||
editor = new MapEditorDialog();
|
editor = new MapEditorDialog();
|
||||||
controls = new KeybindDialog();
|
controls = new KeybindDialog();
|
||||||
restart = new GameOverDialog();
|
restart = new GameOverDialog();
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ import arc.graphics.*;
|
|||||||
import arc.graphics.g2d.*;
|
import arc.graphics.g2d.*;
|
||||||
import arc.graphics.g2d.TextureAtlas.*;
|
import arc.graphics.g2d.TextureAtlas.*;
|
||||||
import arc.scene.ui.layout.*;
|
import arc.scene.ui.layout.*;
|
||||||
|
import arc.struct.*;
|
||||||
import arc.util.*;
|
import arc.util.*;
|
||||||
import mindustry.annotations.Annotations.*;
|
import mindustry.annotations.Annotations.*;
|
||||||
import mindustry.content.TechTree.*;
|
import mindustry.content.TechTree.*;
|
||||||
@@ -44,6 +45,8 @@ public abstract class UnlockableContent extends MappableContent{
|
|||||||
public TextureRegion fullIcon;
|
public TextureRegion fullIcon;
|
||||||
/** The tech tree node for this content, if applicable. Null if not part of a tech tree. */
|
/** The tech tree node for this content, if applicable. Null if not part of a tech tree. */
|
||||||
public @Nullable TechNode techNode;
|
public @Nullable TechNode techNode;
|
||||||
|
/** Tech nodes for all trees that this content is part of. */
|
||||||
|
public Seq<TechNode> techNodes = new Seq<>();
|
||||||
/** Unlock state. Loaded from settings. Do not modify outside of the constructor. */
|
/** Unlock state. Loaded from settings. Do not modify outside of the constructor. */
|
||||||
protected boolean unlocked;
|
protected boolean unlocked;
|
||||||
|
|
||||||
@@ -68,8 +71,12 @@ public abstract class UnlockableContent extends MappableContent{
|
|||||||
uiIcon = Core.atlas.find(getContentType().name() + "-" + name + "-ui", fullIcon);
|
uiIcon = Core.atlas.find(getContentType().name() + "-" + name + "-ui", fullIcon);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public int getLogicId(){
|
||||||
|
return logicVars.lookupLogicId(this);
|
||||||
|
}
|
||||||
|
|
||||||
public String displayDescription(){
|
public String displayDescription(){
|
||||||
return minfo.mod == null ? description : description + "\n" + Core.bundle.format("mod.display", minfo.mod.meta.displayName());
|
return minfo.mod == null ? description : description + "\n" + Core.bundle.format("mod.display", minfo.mod.meta.displayName);
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Checks stat initialization state. Call before displaying stats. */
|
/** Checks stat initialization state. Call before displaying stats. */
|
||||||
|
|||||||
@@ -98,6 +98,8 @@ public class MapObjectivesCanvas extends WidgetGroup{
|
|||||||
public void clearObjectives(){
|
public void clearObjectives(){
|
||||||
stopQuery();
|
stopQuery();
|
||||||
tilemap.clearTiles();
|
tilemap.clearTiles();
|
||||||
|
tilemap.x = 0f;
|
||||||
|
tilemap.y = 0f;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void stopQuery(){
|
protected void stopQuery(){
|
||||||
|
|||||||
@@ -100,6 +100,7 @@ public class MapRenderer implements Disposable{
|
|||||||
|
|
||||||
private void render(int wx, int wy){
|
private void render(int wx, int wy){
|
||||||
int x = wx / chunkSize, y = wy / chunkSize;
|
int x = wx / chunkSize, y = wy / chunkSize;
|
||||||
|
if(x >= chunks.length || y >= chunks[0].length) return;
|
||||||
IndexedRenderer mesh = chunks[x][y];
|
IndexedRenderer mesh = chunks[x][y];
|
||||||
Tile tile = editor.tiles().getn(wx, wy);
|
Tile tile = editor.tiles().getn(wx, wy);
|
||||||
|
|
||||||
|
|||||||
@@ -184,12 +184,12 @@ public class MapView extends Element implements GestureListener{
|
|||||||
offsety -= ay * 15 * Time.delta / zoom;
|
offsety -= ay * 15 * Time.delta / zoom;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(Core.input.keyTap(KeyCode.shiftLeft)){
|
if(Core.input.keyTap(KeyCode.shiftLeft) || Core.input.keyTap(KeyCode.altLeft)){
|
||||||
lastTool = tool;
|
lastTool = tool;
|
||||||
tool = EditorTool.pick;
|
tool = EditorTool.pick;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(Core.input.keyRelease(KeyCode.shiftLeft) && lastTool != null){
|
if((Core.input.keyRelease(KeyCode.shiftLeft) || Core.input.keyRelease(KeyCode.altLeft)) && lastTool != null){
|
||||||
tool = lastTool;
|
tool = lastTool;
|
||||||
lastTool = null;
|
lastTool = null;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -94,11 +94,12 @@ public class Damage{
|
|||||||
}
|
}
|
||||||
|
|
||||||
int waves = explosiveness <= 2 ? 0 : Mathf.clamp((int)(explosiveness / 11), 1, 25);
|
int waves = explosiveness <= 2 ? 0 : Mathf.clamp((int)(explosiveness / 11), 1, 25);
|
||||||
|
float damagePerWave = explosiveness / 2f;
|
||||||
|
|
||||||
for(int i = 0; i < waves; i++){
|
for(int i = 0; i < waves; i++){
|
||||||
int f = i;
|
int f = i;
|
||||||
Time.run(i * 2f, () -> {
|
Time.run(i * 2f, () -> {
|
||||||
damage(ignoreTeam, x, y, Mathf.clamp(radius + explosiveness, 0, 50f) * ((f + 1f) / waves), explosiveness / 2f, false);
|
damage(ignoreTeam, x, y, Mathf.clamp(radius + explosiveness, 0, 50f) * ((f + 1f) / waves), damagePerWave, false);
|
||||||
Fx.blockExplosionSmoke.at(x + Mathf.range(radius), y + Mathf.range(radius));
|
Fx.blockExplosionSmoke.at(x + Mathf.range(radius), y + Mathf.range(radius));
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -81,8 +81,8 @@ public class EntityCollisions{
|
|||||||
|
|
||||||
if(tmp.overlaps(r1)){
|
if(tmp.overlaps(r1)){
|
||||||
Vec2 v = Geometry.overlap(r1, tmp, x);
|
Vec2 v = Geometry.overlap(r1, tmp, x);
|
||||||
if(x) r1.x += v.x;
|
r1.x += v.x;
|
||||||
if(!x) r1.y += v.y;
|
r1.y += v.y;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -84,6 +84,10 @@ public class EntityGroup<T extends Entityc> implements Iterable<T>{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Seq<T> copy(){
|
||||||
|
return copy(new Seq<>());
|
||||||
|
}
|
||||||
|
|
||||||
public Seq<T> copy(Seq<T> arr){
|
public Seq<T> copy(Seq<T> arr){
|
||||||
arr.addAll(array);
|
arr.addAll(array);
|
||||||
return arr;
|
return arr;
|
||||||
@@ -225,6 +229,12 @@ public class EntityGroup<T extends Entityc> implements Iterable<T>{
|
|||||||
if(type == null) throw new RuntimeException("Cannot remove a null entity!");
|
if(type == null) throw new RuntimeException("Cannot remove a null entity!");
|
||||||
if(position != -1 && position < array.size){
|
if(position != -1 && position < array.size){
|
||||||
|
|
||||||
|
//rarely the entity index is wrong; fallback to slow implementation
|
||||||
|
if(array.items[position] != type){
|
||||||
|
remove(type);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
//swap head with current
|
//swap head with current
|
||||||
if(array.size > 1){
|
if(array.size > 1){
|
||||||
var head = array.items[array.size - 1];
|
var head = array.items[array.size - 1];
|
||||||
|
|||||||
@@ -70,6 +70,8 @@ public class Puddles{
|
|||||||
|
|
||||||
Puddle p = map.get(tile.pos());
|
Puddle p = map.get(tile.pos());
|
||||||
if(p == null || p.liquid == null){
|
if(p == null || p.liquid == null){
|
||||||
|
if(!Vars.net.client()){
|
||||||
|
//do not create puddles clientside as that destroys syncing
|
||||||
Puddle puddle = Puddle.create();
|
Puddle puddle = Puddle.create();
|
||||||
puddle.tile = tile;
|
puddle.tile = tile;
|
||||||
puddle.liquid = liquid;
|
puddle.liquid = liquid;
|
||||||
@@ -77,6 +79,7 @@ public class Puddles{
|
|||||||
puddle.set(ax, ay);
|
puddle.set(ax, ay);
|
||||||
map.put(tile.pos(), puddle);
|
map.put(tile.pos(), puddle);
|
||||||
puddle.add();
|
puddle.add();
|
||||||
|
}
|
||||||
}else if(p.liquid == liquid){
|
}else if(p.liquid == liquid){
|
||||||
p.accepting = Math.max(amount, p.accepting);
|
p.accepting = Math.max(amount, p.accepting);
|
||||||
|
|
||||||
|
|||||||
@@ -408,7 +408,7 @@ public class Units{
|
|||||||
if(team != null){
|
if(team != null){
|
||||||
team.data().tree().intersect(x, y, width, height, cons);
|
team.data().tree().intersect(x, y, width, height, cons);
|
||||||
}else{
|
}else{
|
||||||
for(var other : state.teams.getActive()){
|
for(var other : state.teams.present){
|
||||||
other.tree().intersect(x, y, width, height, cons);
|
other.tree().intersect(x, y, width, height, cons);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -15,6 +15,8 @@ public abstract class Ability implements Cloneable{
|
|||||||
public void draw(Unit unit){}
|
public void draw(Unit unit){}
|
||||||
public void death(Unit unit){}
|
public void death(Unit unit){}
|
||||||
public void init(UnitType type){}
|
public void init(UnitType type){}
|
||||||
|
public void displayBars(Unit unit, Table bars){}
|
||||||
|
public void addStats(Table t){}
|
||||||
|
|
||||||
public Ability copy(){
|
public Ability copy(){
|
||||||
try{
|
try{
|
||||||
@@ -25,10 +27,6 @@ public abstract class Ability implements Cloneable{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void displayBars(Unit unit, Table bars){
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/** @return localized ability name; mods should override this. */
|
/** @return localized ability name; mods should override this. */
|
||||||
public String localized(){
|
public String localized(){
|
||||||
var type = getClass();
|
var type = getClass();
|
||||||
|
|||||||
@@ -4,9 +4,11 @@ import arc.*;
|
|||||||
import arc.graphics.*;
|
import arc.graphics.*;
|
||||||
import arc.graphics.g2d.*;
|
import arc.graphics.g2d.*;
|
||||||
import arc.math.*;
|
import arc.math.*;
|
||||||
|
import arc.scene.ui.layout.Table;
|
||||||
import arc.util.*;
|
import arc.util.*;
|
||||||
import mindustry.gen.*;
|
import mindustry.gen.*;
|
||||||
import mindustry.graphics.*;
|
import mindustry.graphics.*;
|
||||||
|
import mindustry.world.meta.*;
|
||||||
|
|
||||||
public class ArmorPlateAbility extends Ability{
|
public class ArmorPlateAbility extends Ability{
|
||||||
public TextureRegion plateRegion;
|
public TextureRegion plateRegion;
|
||||||
@@ -25,6 +27,11 @@ public class ArmorPlateAbility extends Ability{
|
|||||||
unit.healthMultiplier += warmup * healthMultiplier;
|
unit.healthMultiplier += warmup * healthMultiplier;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void addStats(Table t){
|
||||||
|
t.add("[lightgray]" + Stat.healthMultiplier.localized() + ": [white]" + Math.round(healthMultiplier * 100f) + 100 + "%");
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void draw(Unit unit){
|
public void draw(Unit unit){
|
||||||
if(warmup > 0.001f){
|
if(warmup > 0.001f){
|
||||||
|
|||||||
@@ -5,15 +5,16 @@ import arc.audio.*;
|
|||||||
import arc.graphics.*;
|
import arc.graphics.*;
|
||||||
import arc.graphics.g2d.*;
|
import arc.graphics.g2d.*;
|
||||||
import arc.math.*;
|
import arc.math.*;
|
||||||
|
import arc.scene.ui.layout.*;
|
||||||
import arc.struct.*;
|
import arc.struct.*;
|
||||||
import arc.util.*;
|
import arc.util.*;
|
||||||
import mindustry.*;
|
|
||||||
import mindustry.content.*;
|
import mindustry.content.*;
|
||||||
import mindustry.entities.*;
|
import mindustry.entities.*;
|
||||||
import mindustry.game.*;
|
import mindustry.game.*;
|
||||||
import mindustry.gen.*;
|
import mindustry.gen.*;
|
||||||
import mindustry.graphics.*;
|
import mindustry.graphics.*;
|
||||||
import mindustry.type.*;
|
import mindustry.type.*;
|
||||||
|
import mindustry.world.meta.*;
|
||||||
|
|
||||||
import static mindustry.Vars.*;
|
import static mindustry.Vars.*;
|
||||||
|
|
||||||
@@ -29,6 +30,9 @@ public class EnergyFieldAbility extends Ability{
|
|||||||
public boolean targetGround = true, targetAir = true, hitBuildings = true, hitUnits = true;
|
public boolean targetGround = true, targetAir = true, hitBuildings = true, hitUnits = true;
|
||||||
public int maxTargets = 25;
|
public int maxTargets = 25;
|
||||||
public float healPercent = 3f;
|
public float healPercent = 3f;
|
||||||
|
/** Multiplies healing to units of the same type by this amount. */
|
||||||
|
public float sameTypeHealMult = 1f;
|
||||||
|
public boolean displayHeal = true;
|
||||||
|
|
||||||
public float layer = Layer.bullet - 0.001f, blinkScl = 20f, blinkSize = 0.1f;
|
public float layer = Layer.bullet - 0.001f, blinkScl = 20f, blinkSize = 0.1f;
|
||||||
public float effectRadius = 5f, sectorRad = 0.14f, rotateSpeed = 0.5f;
|
public float effectRadius = 5f, sectorRad = 0.14f, rotateSpeed = 0.5f;
|
||||||
@@ -48,8 +52,25 @@ public class EnergyFieldAbility extends Ability{
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String localized(){
|
public void addStats(Table t){
|
||||||
return Core.bundle.format("ability.energyfield", damage, range / Vars.tilesize, maxTargets);
|
t.add(Core.bundle.format("bullet.damage", damage));
|
||||||
|
t.row();
|
||||||
|
t.add("[lightgray]" + Stat.reload.localized() + ": [white]" + Strings.autoFixed(60f / reload, 2) + " " + StatUnit.perSecond.localized());
|
||||||
|
t.row();
|
||||||
|
t.add("[lightgray]" + Stat.shootRange.localized() + ": [white]" + Strings.autoFixed(range / tilesize, 2) + " " + StatUnit.blocks.localized());
|
||||||
|
t.row();
|
||||||
|
t.add(Core.bundle.format("ability.energyfield.maxtargets", maxTargets));
|
||||||
|
|
||||||
|
if(displayHeal){
|
||||||
|
t.row();
|
||||||
|
t.add(Core.bundle.format("bullet.healpercent", Strings.autoFixed(healPercent, 2)));
|
||||||
|
t.row();
|
||||||
|
t.add(Core.bundle.format("ability.energyfield.sametypehealmultiplier", Math.round(sameTypeHealMult * 100f)));
|
||||||
|
}
|
||||||
|
if(status != StatusEffects.none){
|
||||||
|
t.row();
|
||||||
|
t.add(status.emoji() + " " + status.localizedName);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -129,7 +150,8 @@ public class EnergyFieldAbility extends Ability{
|
|||||||
if(((Teamc)other).team() == unit.team){
|
if(((Teamc)other).team() == unit.team){
|
||||||
if(other.damaged()){
|
if(other.damaged()){
|
||||||
anyNearby = true;
|
anyNearby = true;
|
||||||
other.heal(healPercent / 100f * other.maxHealth());
|
float healMult = (other instanceof Unit u && u.type == unit.type) ? sameTypeHealMult : 1f;
|
||||||
|
other.heal(healPercent / 100f * other.maxHealth() * healMult);
|
||||||
healEffect.at(other);
|
healEffect.at(other);
|
||||||
damageEffect.at(rx, ry, 0f, color, other);
|
damageEffect.at(rx, ry, 0f, color, other);
|
||||||
hitEffect.at(rx, ry, unit.angleTo(other), color);
|
hitEffect.at(rx, ry, unit.angleTo(other), color);
|
||||||
|
|||||||
@@ -12,6 +12,9 @@ import mindustry.content.*;
|
|||||||
import mindustry.gen.*;
|
import mindustry.gen.*;
|
||||||
import mindustry.graphics.*;
|
import mindustry.graphics.*;
|
||||||
import mindustry.ui.*;
|
import mindustry.ui.*;
|
||||||
|
import mindustry.world.meta.*;
|
||||||
|
|
||||||
|
import static mindustry.Vars.*;
|
||||||
|
|
||||||
public class ForceFieldAbility extends Ability{
|
public class ForceFieldAbility extends Ability{
|
||||||
/** Shield radius. */
|
/** Shield radius. */
|
||||||
@@ -68,6 +71,18 @@ public class ForceFieldAbility extends Ability{
|
|||||||
|
|
||||||
ForceFieldAbility(){}
|
ForceFieldAbility(){}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void addStats(Table t){
|
||||||
|
t.add("[lightgray]" + Stat.health.localized() + ": [white]" + Math.round(max));
|
||||||
|
t.row();
|
||||||
|
t.add("[lightgray]" + Stat.shootRange.localized() + ": [white]" + Strings.autoFixed(radius / tilesize, 2) + " " + StatUnit.blocks.localized());
|
||||||
|
t.row();
|
||||||
|
t.add("[lightgray]" + Stat.repairSpeed.localized() + ": [white]" + Strings.autoFixed(regen * 60f, 2) + StatUnit.perSecond.localized());
|
||||||
|
t.row();
|
||||||
|
t.add("[lightgray]" + Stat.cooldownTime.localized() + ": [white]" + Strings.autoFixed(cooldown / 60f, 2) + " " + StatUnit.seconds.localized());
|
||||||
|
t.row();
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void update(Unit unit){
|
public void update(Unit unit){
|
||||||
if(unit.shield < max){
|
if(unit.shield < max){
|
||||||
|
|||||||
@@ -30,6 +30,7 @@ public class MoveEffectAbility extends Ability{
|
|||||||
}
|
}
|
||||||
|
|
||||||
public MoveEffectAbility(){
|
public MoveEffectAbility(){
|
||||||
|
display = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -1,7 +1,10 @@
|
|||||||
package mindustry.entities.abilities;
|
package mindustry.entities.abilities;
|
||||||
|
|
||||||
|
import arc.Core;
|
||||||
|
import arc.scene.ui.layout.*;
|
||||||
import arc.util.*;
|
import arc.util.*;
|
||||||
import mindustry.gen.*;
|
import mindustry.gen.*;
|
||||||
|
import mindustry.world.meta.*;
|
||||||
|
|
||||||
public class RegenAbility extends Ability{
|
public class RegenAbility extends Ability{
|
||||||
/** Amount healed as percent per tick. */
|
/** Amount healed as percent per tick. */
|
||||||
@@ -9,6 +12,18 @@ public class RegenAbility extends Ability{
|
|||||||
/** Amount healed as a flat amount per tick. */
|
/** Amount healed as a flat amount per tick. */
|
||||||
public float amount = 0f;
|
public float amount = 0f;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void addStats(Table t){
|
||||||
|
if(amount > 0.01f){
|
||||||
|
t.add("[lightgray]" + Stat.repairSpeed.localized() + ": [white]" + Strings.autoFixed(amount * 60f, 2) + StatUnit.perSecond.localized());
|
||||||
|
t.row();
|
||||||
|
}
|
||||||
|
|
||||||
|
if(percentAmount > 0.01f){
|
||||||
|
t.add(Core.bundle.format("bullet.healpercent", Strings.autoFixed(percentAmount * 60f, 2)) + StatUnit.perSecond.localized()); //stupid but works
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void update(Unit unit){
|
public void update(Unit unit){
|
||||||
unit.heal((unit.maxHealth * percentAmount / 100f + amount) * Time.delta);
|
unit.heal((unit.maxHealth * percentAmount / 100f + amount) * Time.delta);
|
||||||
|
|||||||
@@ -1,9 +1,13 @@
|
|||||||
package mindustry.entities.abilities;
|
package mindustry.entities.abilities;
|
||||||
|
|
||||||
|
import arc.scene.ui.layout.*;
|
||||||
import arc.util.*;
|
import arc.util.*;
|
||||||
import mindustry.content.*;
|
import mindustry.content.*;
|
||||||
import mindustry.entities.*;
|
import mindustry.entities.*;
|
||||||
import mindustry.gen.*;
|
import mindustry.gen.*;
|
||||||
|
import mindustry.world.meta.*;
|
||||||
|
|
||||||
|
import static mindustry.Vars.tilesize;
|
||||||
|
|
||||||
public class RepairFieldAbility extends Ability{
|
public class RepairFieldAbility extends Ability{
|
||||||
public float amount = 1, reload = 100, range = 60;
|
public float amount = 1, reload = 100, range = 60;
|
||||||
@@ -22,6 +26,13 @@ public class RepairFieldAbility extends Ability{
|
|||||||
this.range = range;
|
this.range = range;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void addStats(Table t){
|
||||||
|
t.add("[lightgray]" + Stat.repairSpeed.localized() + ": [white]" + Strings.autoFixed(amount * 60f / reload, 2) + StatUnit.perSecond.localized());
|
||||||
|
t.row();
|
||||||
|
t.add("[lightgray]" + Stat.shootRange.localized() + ": [white]" + Strings.autoFixed(range / tilesize, 2) + " " + StatUnit.blocks.localized());
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void update(Unit unit){
|
public void update(Unit unit){
|
||||||
timer += Time.delta;
|
timer += Time.delta;
|
||||||
|
|||||||
@@ -13,6 +13,7 @@ import mindustry.gen.*;
|
|||||||
import mindustry.graphics.*;
|
import mindustry.graphics.*;
|
||||||
import mindustry.type.*;
|
import mindustry.type.*;
|
||||||
import mindustry.ui.*;
|
import mindustry.ui.*;
|
||||||
|
import mindustry.world.meta.*;
|
||||||
|
|
||||||
public class ShieldArcAbility extends Ability{
|
public class ShieldArcAbility extends Ability{
|
||||||
private static Unit paramUnit;
|
private static Unit paramUnit;
|
||||||
@@ -66,6 +67,16 @@ public class ShieldArcAbility extends Ability{
|
|||||||
/** State. */
|
/** State. */
|
||||||
protected float widthScale, alpha;
|
protected float widthScale, alpha;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void addStats(Table t){
|
||||||
|
t.add("[lightgray]" + Stat.health.localized() + ": [white]" + Math.round(max));
|
||||||
|
t.row();
|
||||||
|
t.add("[lightgray]" + Stat.repairSpeed.localized() + ": [white]" + Strings.autoFixed(regen * 60f, 2) + StatUnit.perSecond.localized());
|
||||||
|
t.row();
|
||||||
|
t.add("[lightgray]" + Stat.cooldownTime.localized() + ": [white]" + Strings.autoFixed(cooldown / 60f, 2) + " " + StatUnit.seconds.localized());
|
||||||
|
t.row();
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void update(Unit unit){
|
public void update(Unit unit){
|
||||||
if(data < max){
|
if(data < max){
|
||||||
|
|||||||
@@ -1,9 +1,14 @@
|
|||||||
package mindustry.entities.abilities;
|
package mindustry.entities.abilities;
|
||||||
|
|
||||||
|
import arc.Core;
|
||||||
|
import arc.scene.ui.layout.*;
|
||||||
import arc.util.*;
|
import arc.util.*;
|
||||||
import mindustry.content.*;
|
import mindustry.content.*;
|
||||||
import mindustry.entities.*;
|
import mindustry.entities.*;
|
||||||
import mindustry.gen.*;
|
import mindustry.gen.*;
|
||||||
|
import mindustry.world.meta.*;
|
||||||
|
|
||||||
|
import static mindustry.Vars.tilesize;
|
||||||
|
|
||||||
public class ShieldRegenFieldAbility extends Ability{
|
public class ShieldRegenFieldAbility extends Ability{
|
||||||
public float amount = 1, max = 100f, reload = 100, range = 60;
|
public float amount = 1, max = 100f, reload = 100, range = 60;
|
||||||
@@ -23,6 +28,16 @@ public class ShieldRegenFieldAbility extends Ability{
|
|||||||
this.range = range;
|
this.range = range;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void addStats(Table t){
|
||||||
|
t.add("[lightgray]" + Core.bundle.get("waves.shields") + ": [white]" + Math.round(max)); //extremely stupid usage
|
||||||
|
t.row();
|
||||||
|
t.add("[lightgray]" + Stat.shootRange.localized() + ": [white]" + Strings.autoFixed(range / tilesize, 2) + " " + StatUnit.blocks.localized());
|
||||||
|
t.row();
|
||||||
|
t.add("[lightgray]" + Stat.reload.localized() + ": [white]" + Strings.autoFixed(60f / reload, 2) + " " + StatUnit.perSecond.localized());
|
||||||
|
t.row();
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void update(Unit unit){
|
public void update(Unit unit){
|
||||||
timer += Time.delta;
|
timer += Time.delta;
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
package mindustry.entities.abilities;
|
package mindustry.entities.abilities;
|
||||||
|
|
||||||
import arc.math.*;
|
import arc.math.*;
|
||||||
|
import arc.scene.ui.layout.*;
|
||||||
import arc.util.*;
|
import arc.util.*;
|
||||||
import mindustry.*;
|
import mindustry.*;
|
||||||
import mindustry.gen.*;
|
import mindustry.gen.*;
|
||||||
@@ -24,6 +25,11 @@ public class SpawnDeathAbility extends Ability{
|
|||||||
public SpawnDeathAbility(){
|
public SpawnDeathAbility(){
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void addStats(Table t){
|
||||||
|
t.add((randAmount > 0 ? amount + "-" + (amount + randAmount) : amount) + " " + unit.emoji() + " " + unit.localizedName);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void death(Unit unit){
|
public void death(Unit unit){
|
||||||
if(!Vars.net.client()){
|
if(!Vars.net.client()){
|
||||||
|
|||||||
@@ -1,16 +1,19 @@
|
|||||||
package mindustry.entities.abilities;
|
package mindustry.entities.abilities;
|
||||||
|
|
||||||
import arc.*;
|
|
||||||
import arc.math.*;
|
import arc.math.*;
|
||||||
|
import arc.scene.ui.layout.Table;
|
||||||
import arc.util.*;
|
import arc.util.*;
|
||||||
import mindustry.content.*;
|
import mindustry.content.*;
|
||||||
import mindustry.entities.*;
|
import mindustry.entities.*;
|
||||||
import mindustry.gen.*;
|
import mindustry.gen.*;
|
||||||
import mindustry.type.*;
|
import mindustry.type.*;
|
||||||
|
import mindustry.world.meta.*;
|
||||||
|
|
||||||
|
import static mindustry.Vars.tilesize;
|
||||||
|
|
||||||
public class StatusFieldAbility extends Ability{
|
public class StatusFieldAbility extends Ability{
|
||||||
public StatusEffect effect;
|
public StatusEffect effect;
|
||||||
public float duration = 60, reload = 100, range = 20;
|
public float duration = 60, reload = 100, range = 20; //
|
||||||
public boolean onShoot = false;
|
public boolean onShoot = false;
|
||||||
public Effect applyEffect = Fx.none;
|
public Effect applyEffect = Fx.none;
|
||||||
public Effect activeEffect = Fx.overdriveWave;
|
public Effect activeEffect = Fx.overdriveWave;
|
||||||
@@ -29,8 +32,12 @@ public class StatusFieldAbility extends Ability{
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String localized(){
|
public void addStats(Table t){
|
||||||
return Core.bundle.format("ability.statusfield", effect.emoji());
|
t.add("[lightgray]" + Stat.reload.localized() + ": [white]" + Strings.autoFixed(60f / reload, 2) + " " + StatUnit.perSecond.localized());
|
||||||
|
t.row();
|
||||||
|
t.add("[lightgray]" + Stat.shootRange.localized() + ": [white]" + Strings.autoFixed(range / tilesize, 2) + " " + StatUnit.blocks.localized());
|
||||||
|
t.row();
|
||||||
|
t.add(effect.emoji() + " " + effect.localizedName);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ package mindustry.entities.abilities;
|
|||||||
import arc.*;
|
import arc.*;
|
||||||
import arc.graphics.g2d.*;
|
import arc.graphics.g2d.*;
|
||||||
import arc.math.*;
|
import arc.math.*;
|
||||||
|
import arc.scene.ui.layout.*;
|
||||||
import arc.util.*;
|
import arc.util.*;
|
||||||
import mindustry.*;
|
import mindustry.*;
|
||||||
import mindustry.content.*;
|
import mindustry.content.*;
|
||||||
@@ -11,6 +12,7 @@ import mindustry.game.EventType.*;
|
|||||||
import mindustry.gen.*;
|
import mindustry.gen.*;
|
||||||
import mindustry.graphics.*;
|
import mindustry.graphics.*;
|
||||||
import mindustry.type.*;
|
import mindustry.type.*;
|
||||||
|
import mindustry.world.meta.*;
|
||||||
|
|
||||||
import static mindustry.Vars.*;
|
import static mindustry.Vars.*;
|
||||||
|
|
||||||
@@ -32,6 +34,13 @@ public class UnitSpawnAbility extends Ability{
|
|||||||
public UnitSpawnAbility(){
|
public UnitSpawnAbility(){
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void addStats(Table t){
|
||||||
|
t.add("[lightgray]" + Stat.buildTime.localized() + ": [white]" + Strings.autoFixed(spawnTime / 60f, 2) + " " + StatUnit.seconds.localized());
|
||||||
|
t.row();
|
||||||
|
t.add(unit.emoji() + " " + unit.localizedName);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void update(Unit unit){
|
public void update(Unit unit){
|
||||||
timer += Time.delta * state.rules.unitBuildSpeed(unit.team);
|
timer += Time.delta * state.rules.unitBuildSpeed(unit.team);
|
||||||
|
|||||||
@@ -125,6 +125,10 @@ public class BulletType extends Content implements Cloneable{
|
|||||||
/** Whether to move the bullet back depending on delta to fix some delta-time related issues.
|
/** Whether to move the bullet back depending on delta to fix some delta-time related issues.
|
||||||
* Do not change unless you know what you're doing. */
|
* Do not change unless you know what you're doing. */
|
||||||
public boolean backMove = true;
|
public boolean backMove = true;
|
||||||
|
/** If true, the angle param in create is ignored. */
|
||||||
|
public boolean ignoreSpawnAngle = false;
|
||||||
|
/** Chance for this bullet to be created. */
|
||||||
|
public float createChance = 1;
|
||||||
/** Bullet range positive override. */
|
/** Bullet range positive override. */
|
||||||
public float maxRange = -1f;
|
public float maxRange = -1f;
|
||||||
/** When > 0, overrides range even if smaller than base range. */
|
/** When > 0, overrides range even if smaller than base range. */
|
||||||
@@ -194,10 +198,14 @@ public class BulletType extends Content implements Cloneable{
|
|||||||
public @Nullable UnitType spawnUnit;
|
public @Nullable UnitType spawnUnit;
|
||||||
/** Unit spawned when this bullet hits something or despawns due to it hitting the end of its lifetime. */
|
/** Unit spawned when this bullet hits something or despawns due to it hitting the end of its lifetime. */
|
||||||
public @Nullable UnitType despawnUnit;
|
public @Nullable UnitType despawnUnit;
|
||||||
|
/** The chance for despawn units to spawn. */
|
||||||
|
public float despawnUnitChance = 1;
|
||||||
/** Amount of units spawned when this bullet despawns. */
|
/** Amount of units spawned when this bullet despawns. */
|
||||||
public int despawnUnitCount = 1;
|
public int despawnUnitCount = 1;
|
||||||
/** Random offset distance from the original bullet despawn/hit coordinate. */
|
/** Random offset distance from the original bullet despawn/hit coordinate. */
|
||||||
public float despawnUnitRadius = 0.1f;
|
public float despawnUnitRadius = 0.1f;
|
||||||
|
/** If true, units spawned when this bullet despawns face away from the bullet instead of the same direction as the bullet. */
|
||||||
|
public boolean faceOutwards = false;
|
||||||
/** Extra visual parts for this bullet. */
|
/** Extra visual parts for this bullet. */
|
||||||
public Seq<DrawPart> parts = new Seq<>();
|
public Seq<DrawPart> parts = new Seq<>();
|
||||||
|
|
||||||
@@ -489,9 +497,11 @@ public class BulletType extends Content implements Cloneable{
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void createUnits(Bullet b, float x, float y){
|
public void createUnits(Bullet b, float x, float y){
|
||||||
if(despawnUnit != null){
|
if(despawnUnit != null && Mathf.chance(despawnUnitChance)){
|
||||||
for(int i = 0; i < despawnUnitCount; i++){
|
for(int i = 0; i < despawnUnitCount; i++){
|
||||||
despawnUnit.spawn(b.team, x + Mathf.range(despawnUnitRadius), y + Mathf.range(despawnUnitRadius));
|
Tmp.v1.rnd(Mathf.random(despawnUnitRadius));
|
||||||
|
var u = despawnUnit.spawn(b.team, x + Tmp.v1.x, y + Tmp.v1.y);
|
||||||
|
u.rotation = faceOutwards ? Tmp.v1.angle() : b.rotation();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -730,6 +740,8 @@ public class BulletType extends Content implements Cloneable{
|
|||||||
}
|
}
|
||||||
|
|
||||||
public @Nullable Bullet create(@Nullable Entityc owner, @Nullable Entityc shooter, Team team, float x, float y, float angle, float damage, float velocityScl, float lifetimeScl, Object data, @Nullable Mover mover, float aimX, float aimY){
|
public @Nullable Bullet create(@Nullable Entityc owner, @Nullable Entityc shooter, Team team, float x, float y, float angle, float damage, float velocityScl, float lifetimeScl, Object data, @Nullable Mover mover, float aimX, float aimY){
|
||||||
|
if(!Mathf.chance(createChance)) return null;
|
||||||
|
if(ignoreSpawnAngle) angle = 0;
|
||||||
if(spawnUnit != null){
|
if(spawnUnit != null){
|
||||||
//don't spawn units clientside!
|
//don't spawn units clientside!
|
||||||
if(!net.client()){
|
if(!net.client()){
|
||||||
@@ -767,9 +779,12 @@ public class BulletType extends Content implements Cloneable{
|
|||||||
bullet.time = 0f;
|
bullet.time = 0f;
|
||||||
bullet.originX = x;
|
bullet.originX = x;
|
||||||
bullet.originY = y;
|
bullet.originY = y;
|
||||||
|
if(!(aimX == -1f && aimY == -1f)){
|
||||||
bullet.aimTile = world.tileWorld(aimX, aimY);
|
bullet.aimTile = world.tileWorld(aimX, aimY);
|
||||||
|
}
|
||||||
bullet.aimX = aimX;
|
bullet.aimX = aimX;
|
||||||
bullet.aimY = aimY;
|
bullet.aimY = aimY;
|
||||||
|
|
||||||
bullet.initVel(angle, speed * velocityScl);
|
bullet.initVel(angle, speed * velocityScl);
|
||||||
if(backMove){
|
if(backMove){
|
||||||
bullet.set(x - bullet.vel.x * Time.delta, y - bullet.vel.y * Time.delta);
|
bullet.set(x - bullet.vel.x * Time.delta, y - bullet.vel.y * Time.delta);
|
||||||
|
|||||||
@@ -39,6 +39,8 @@ public class LightningBulletType extends BulletType{
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void init(Bullet b){
|
public void init(Bullet b){
|
||||||
|
super.init(b);
|
||||||
|
|
||||||
Lightning.create(b, lightningColor, damage, b.x, b.y, b.rotation(), lightningLength + Mathf.random(lightningLengthRand));
|
Lightning.create(b, lightningColor, damage, b.x, b.y, b.rotation(), lightningLength + Mathf.random(lightningLengthRand));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1324,7 +1324,7 @@ abstract class BuildingComp implements Posc, Teamc, Healthc, Buildingc, Timerc,
|
|||||||
//I really do not like that the bullet will not destroy derelict
|
//I really do not like that the bullet will not destroy derelict
|
||||||
//but I can't do anything about it without using a random team
|
//but I can't do anything about it without using a random team
|
||||||
//which may or may not cause issues with servers and js
|
//which may or may not cause issues with servers and js
|
||||||
block.destroyBullet.create(this, Team.derelict, x, y, 0);
|
block.destroyBullet.create(this, block.destroyBulletSameTeam ? team : Team.derelict, x, y, Mathf.randomSeed(id(), 360f));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1373,6 +1373,7 @@ abstract class BuildingComp implements Posc, Teamc, Healthc, Buildingc, Timerc,
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//cap explosiveness so fluid tanks/vaults don't instakill units
|
||||||
Damage.dynamicExplosion(x, y, flammability, explosiveness * 3.5f, power, tilesize * block.size / 2f, state.rules.damageExplosions, block.destroyEffect);
|
Damage.dynamicExplosion(x, y, flammability, explosiveness * 3.5f, power, tilesize * block.size / 2f, state.rules.damageExplosions, block.destroyEffect);
|
||||||
|
|
||||||
if(block.createRubble && !floor().solid && !floor().isLiquid){
|
if(block.createRubble && !floor().solid && !floor().isLiquid){
|
||||||
@@ -1956,6 +1957,9 @@ abstract class BuildingComp implements Posc, Teamc, Healthc, Buildingc, Timerc,
|
|||||||
case health -> {
|
case health -> {
|
||||||
health = (float)Mathf.clamp(value, 0, maxHealth);
|
health = (float)Mathf.clamp(value, 0, maxHealth);
|
||||||
healthChanged();
|
healthChanged();
|
||||||
|
if(health <= 0f && !dead()){
|
||||||
|
Call.buildDestroyed(self());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
case team -> {
|
case team -> {
|
||||||
Team team = Team.get((int)value);
|
Team team = Team.get((int)value);
|
||||||
@@ -1996,7 +2000,7 @@ abstract class BuildingComp implements Posc, Teamc, Healthc, Buildingc, Timerc,
|
|||||||
}else if(content instanceof Liquid liquid && liquids != null){
|
}else if(content instanceof Liquid liquid && liquids != null){
|
||||||
float amount = Mathf.clamp((float)value, 0f, block.liquidCapacity);
|
float amount = Mathf.clamp((float)value, 0f, block.liquidCapacity);
|
||||||
//decreasing amount is always allowed
|
//decreasing amount is always allowed
|
||||||
if(amount < liquids.get(liquid) || (acceptLiquid(self(), liquid) && (liquids.current() == liquid || liquids.currentAmount() <= 0.1f))){
|
if(amount < liquids.get(liquid) || (acceptLiquid(self(), liquid) && (liquids.current() == liquid || liquids.currentAmount() <= 0.1f || block.consumesLiquid(liquid)))){
|
||||||
liquids.set(liquid, amount);
|
liquids.set(liquid, amount);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -195,7 +195,7 @@ abstract class BulletComp implements Timedc, Damagec, Hitboxc, Teamc, Posc, Draw
|
|||||||
}
|
}
|
||||||
|
|
||||||
if(build != null && isAdded()
|
if(build != null && isAdded()
|
||||||
&& checkUnderBuild(build, x, y)
|
&& checkUnderBuild(build, x * tilesize, y * tilesize)
|
||||||
&& build.collide(self()) && type.testCollision(self(), build)
|
&& build.collide(self()) && type.testCollision(self(), build)
|
||||||
&& !build.dead() && (type.collidesTeam || build.team != team) && !(type.pierceBuilding && hasCollided(build.id))){
|
&& !build.dead() && (type.collidesTeam || build.team != team) && !(type.pierceBuilding && hasCollided(build.id))){
|
||||||
|
|
||||||
|
|||||||
@@ -34,7 +34,7 @@ import static mindustry.logic.GlobalVars.*;
|
|||||||
abstract class UnitComp implements Healthc, Physicsc, Hitboxc, Statusc, Teamc, Itemsc, Rotc, Unitc, Weaponsc, Drawc, Boundedc, Syncc, Shieldc, Displayable, Ranged, Minerc, Builderc, Senseable, Settable{
|
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, shield, ammo, dragMultiplier;
|
||||||
@Import Team team;
|
@Import Team team;
|
||||||
@Import int id;
|
@Import int id;
|
||||||
@Import @Nullable Tile mineTile;
|
@Import @Nullable Tile mineTile;
|
||||||
@@ -208,6 +208,7 @@ abstract class UnitComp implements Healthc, Physicsc, Hitboxc, Statusc, Teamc, I
|
|||||||
case itemCapacity -> type.itemCapacity;
|
case itemCapacity -> type.itemCapacity;
|
||||||
case rotation -> rotation;
|
case rotation -> rotation;
|
||||||
case health -> health;
|
case health -> health;
|
||||||
|
case shield -> shield;
|
||||||
case maxHealth -> maxHealth;
|
case maxHealth -> maxHealth;
|
||||||
case ammo -> !state.rules.unitAmmo ? type.ammoCapacity : ammo;
|
case ammo -> !state.rules.unitAmmo ? type.ammoCapacity : ammo;
|
||||||
case ammoCapacity -> type.ammoCapacity;
|
case ammoCapacity -> type.ammoCapacity;
|
||||||
@@ -261,7 +262,12 @@ abstract class UnitComp implements Healthc, Physicsc, Hitboxc, Statusc, Teamc, I
|
|||||||
@Override
|
@Override
|
||||||
public void setProp(LAccess prop, double value){
|
public void setProp(LAccess prop, double value){
|
||||||
switch(prop){
|
switch(prop){
|
||||||
case health -> health = (float)Mathf.clamp(value, 0, maxHealth);
|
case health -> {
|
||||||
|
health = (float)Mathf.clamp(value, 0, maxHealth);
|
||||||
|
if(health <= 0f && !dead){
|
||||||
|
kill();
|
||||||
|
}
|
||||||
|
}
|
||||||
case x -> x = World.unconv((float)value);
|
case x -> x = World.unconv((float)value);
|
||||||
case y -> y = World.unconv((float)value);
|
case y -> y = World.unconv((float)value);
|
||||||
case rotation -> rotation = (float)value;
|
case rotation -> rotation = (float)value;
|
||||||
@@ -297,7 +303,7 @@ abstract class UnitComp implements Healthc, Physicsc, Hitboxc, Statusc, Teamc, I
|
|||||||
Unit unit = ut.create(team());
|
Unit unit = ut.create(team());
|
||||||
if(pay.canPickup(unit)) pay.addPayload(new UnitPayload(unit));
|
if(pay.canPickup(unit)) pay.addPayload(new UnitPayload(unit));
|
||||||
}else if(value == null && pay.payloads().size > 0){
|
}else if(value == null && pay.payloads().size > 0){
|
||||||
pay.dropLastPayload();
|
pay.payloads().pop();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ import arc.util.*;
|
|||||||
public class HoverPart extends DrawPart{
|
public class HoverPart extends DrawPart{
|
||||||
public float radius = 4f;
|
public float radius = 4f;
|
||||||
public float x, y, rotation, phase = 50f, stroke = 3f, minStroke = 0.12f;
|
public float x, y, rotation, phase = 50f, stroke = 3f, minStroke = 0.12f;
|
||||||
public int circles = 2;
|
public int circles = 2, sides = 4;
|
||||||
public Color color = Color.white;
|
public Color color = Color.white;
|
||||||
public boolean mirror = false;
|
public boolean mirror = false;
|
||||||
public float layer = -1f, layerOffset = 0f;
|
public float layer = -1f, layerOffset = 0f;
|
||||||
@@ -40,7 +40,7 @@ public class HoverPart extends DrawPart{
|
|||||||
rx = params.x + Tmp.v1.x,
|
rx = params.x + Tmp.v1.x,
|
||||||
ry = params.y + Tmp.v1.y;
|
ry = params.y + Tmp.v1.y;
|
||||||
|
|
||||||
Lines.square(rx, ry, radius * fin, params.rotation - 45f);
|
Lines.poly(rx, ry, sides, radius * fin, params.rotation);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -150,11 +150,6 @@ public class SectorInfo{
|
|||||||
state.rules.winWave = winWave;
|
state.rules.winWave = winWave;
|
||||||
state.rules.attackMode = attack;
|
state.rules.attackMode = attack;
|
||||||
|
|
||||||
//assign new wave patterns when the version changes
|
|
||||||
if(waveVersion != Waves.waveVersion && state.rules.sector.preset == null){
|
|
||||||
state.rules.spawns = Waves.generate(state.rules.sector.threat);
|
|
||||||
}
|
|
||||||
|
|
||||||
CoreBuild entity = state.rules.defaultTeam.core();
|
CoreBuild entity = state.rules.defaultTeam.core();
|
||||||
if(entity != null){
|
if(entity != null){
|
||||||
entity.items.clear();
|
entity.items.clear();
|
||||||
@@ -180,7 +175,6 @@ public class SectorInfo{
|
|||||||
spawnPosition = entity.pos();
|
spawnPosition = entity.pos();
|
||||||
}
|
}
|
||||||
|
|
||||||
waveVersion = Waves.waveVersion;
|
|
||||||
waveSpacing = state.rules.waveSpacing;
|
waveSpacing = state.rules.waveSpacing;
|
||||||
wave = state.wave;
|
wave = state.wave;
|
||||||
winWave = state.rules.winWave;
|
winWave = state.rules.winWave;
|
||||||
|
|||||||
@@ -40,6 +40,10 @@ public class Team implements Comparable<Team>{
|
|||||||
|
|
||||||
static{
|
static{
|
||||||
Mathf.rand.setSeed(8);
|
Mathf.rand.setSeed(8);
|
||||||
|
//fix random seed shift caused by new team
|
||||||
|
for(int i = 0; i < 3; i++){
|
||||||
|
Mathf.random();
|
||||||
|
}
|
||||||
//create the whole 256 placeholder teams
|
//create the whole 256 placeholder teams
|
||||||
for(int i = 7; i < all.length; i++){
|
for(int i = 7; i < all.length; i++){
|
||||||
new Team(i, "team#" + i, Color.HSVtoRGB(360f * Mathf.random(), 100f * Mathf.random(0.4f, 1f), 100f * Mathf.random(0.6f, 1f), 1f));
|
new Team(i, "team#" + i, Color.HSVtoRGB(360f * Mathf.random(), 100f * Mathf.random(0.4f, 1f), 100f * Mathf.random(0.6f, 1f), 1f));
|
||||||
|
|||||||
@@ -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 = 6;
|
public static final int waveVersion = 7;
|
||||||
|
|
||||||
private Seq<SpawnGroup> spawns;
|
private Seq<SpawnGroup> spawns;
|
||||||
|
|
||||||
@@ -303,7 +303,7 @@ public class Waves{
|
|||||||
|
|
||||||
Intc createProgression = start -> {
|
Intc createProgression = start -> {
|
||||||
//main sequence
|
//main sequence
|
||||||
UnitType[] curSpecies = Structs.random(fspec);
|
UnitType[] curSpecies = Structs.random(rand, fspec);
|
||||||
int curTier = 0;
|
int curTier = 0;
|
||||||
|
|
||||||
for(int i = start; i < cap;){
|
for(int i = start; i < cap;){
|
||||||
@@ -348,7 +348,7 @@ public class Waves{
|
|||||||
|
|
||||||
//small chance to switch species
|
//small chance to switch species
|
||||||
if(rand.chance(0.3)){
|
if(rand.chance(0.3)){
|
||||||
curSpecies = Structs.random(fspec);
|
curSpecies = Structs.random(rand, fspec);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@@ -368,7 +368,7 @@ public class Waves{
|
|||||||
int bossTier = difficulty < 0.6 ? 3 : 4;
|
int bossTier = difficulty < 0.6 ? 3 : 4;
|
||||||
|
|
||||||
//main boss progression
|
//main boss progression
|
||||||
out.add(new SpawnGroup(Structs.random(species)[bossTier]){{
|
out.add(new SpawnGroup(Structs.random(rand, species)[bossTier]){{
|
||||||
unitAmount = 1;
|
unitAmount = 1;
|
||||||
begin = bossWave;
|
begin = bossWave;
|
||||||
spacing = bossSpacing;
|
spacing = bossSpacing;
|
||||||
@@ -380,7 +380,7 @@ public class Waves{
|
|||||||
}});
|
}});
|
||||||
|
|
||||||
//alt boss progression
|
//alt boss progression
|
||||||
out.add(new SpawnGroup(Structs.random(species)[bossTier]){{
|
out.add(new SpawnGroup(Structs.random(rand, species)[bossTier]){{
|
||||||
unitAmount = 1;
|
unitAmount = 1;
|
||||||
begin = bossWave + rand.random(3, 5) * bossSpacing;
|
begin = bossWave + rand.random(3, 5) * bossSpacing;
|
||||||
spacing = bossSpacing;
|
spacing = bossSpacing;
|
||||||
@@ -394,7 +394,7 @@ public class Waves{
|
|||||||
int finalBossStart = 120 + rand.random(30);
|
int finalBossStart = 120 + rand.random(30);
|
||||||
|
|
||||||
//final boss waves
|
//final boss waves
|
||||||
out.add(new SpawnGroup(Structs.random(species)[bossTier]){{
|
out.add(new SpawnGroup(Structs.random(rand, species)[bossTier]){{
|
||||||
unitAmount = 1;
|
unitAmount = 1;
|
||||||
begin = finalBossStart;
|
begin = finalBossStart;
|
||||||
spacing = bossSpacing/2;
|
spacing = bossSpacing/2;
|
||||||
@@ -406,7 +406,7 @@ public class Waves{
|
|||||||
}});
|
}});
|
||||||
|
|
||||||
//final boss waves (alt)
|
//final boss waves (alt)
|
||||||
out.add(new SpawnGroup(Structs.random(species)[bossTier]){{
|
out.add(new SpawnGroup(Structs.random(rand, species)[bossTier]){{
|
||||||
unitAmount = 1;
|
unitAmount = 1;
|
||||||
begin = finalBossStart + 15;
|
begin = finalBossStart + 15;
|
||||||
spacing = bossSpacing/2;
|
spacing = bossSpacing/2;
|
||||||
@@ -419,10 +419,10 @@ public class Waves{
|
|||||||
|
|
||||||
//add megas to heal the base.
|
//add megas to heal the base.
|
||||||
if(attack && difficulty >= 0.5){
|
if(attack && difficulty >= 0.5){
|
||||||
int amount = Mathf.random(1, 3 + (int)(difficulty*2));
|
int amount = rand.random(1, 3 + (int)(difficulty*2));
|
||||||
|
|
||||||
for(int i = 0; i < amount; i++){
|
for(int i = 0; i < amount; i++){
|
||||||
int wave = Mathf.random(3, 20);
|
int wave = rand.random(3, 20);
|
||||||
out.add(new SpawnGroup(mega){{
|
out.add(new SpawnGroup(mega){{
|
||||||
unitAmount = 1;
|
unitAmount = 1;
|
||||||
begin = wave;
|
begin = wave;
|
||||||
|
|||||||
@@ -352,7 +352,7 @@ public class BlockRenderer{
|
|||||||
var bounds = camera.bounds(Tmp.r3).grow(tilesize * 2f);
|
var bounds = camera.bounds(Tmp.r3).grow(tilesize * 2f);
|
||||||
|
|
||||||
//draw floor lights
|
//draw floor lights
|
||||||
floorTree.intersect(bounds, tile -> lightview.add(tile));
|
floorTree.intersect(bounds, lightview::add);
|
||||||
|
|
||||||
blockTree.intersect(bounds, tile -> {
|
blockTree.intersect(bounds, tile -> {
|
||||||
if(tile.build == null || procLinks.add(tile.build.id)){
|
if(tile.build == null || procLinks.add(tile.build.id)){
|
||||||
|
|||||||
@@ -182,7 +182,7 @@ public class LightRenderer{
|
|||||||
}
|
}
|
||||||
|
|
||||||
public boolean enabled(){
|
public boolean enabled(){
|
||||||
return state.rules.lighting && state.rules.ambientLight.a > 0.0001f;
|
return state.rules.lighting && state.rules.ambientLight.a > 0.0001f && renderer.drawLight;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void draw(){
|
public void draw(){
|
||||||
|
|||||||
@@ -18,10 +18,11 @@ public class PlanetParams{
|
|||||||
public Vec3 camUp = new Vec3(0f, 1f, 0f);
|
public Vec3 camUp = new Vec3(0f, 1f, 0f);
|
||||||
/** the unit length direction vector of the camera **/
|
/** the unit length direction vector of the camera **/
|
||||||
public Vec3 camDir = new Vec3(0, 0, -1);
|
public Vec3 camDir = new Vec3(0, 0, -1);
|
||||||
/** The sun/main planet of the solar system from which everything is rendered. */
|
/** The sun/main planet of the solar system from which everything is rendered. Deprecated use planet.solarSystem instead */
|
||||||
public Planet solarSystem = Planets.sun;
|
public @Deprecated Planet solarSystem = Planets.sun;
|
||||||
/** Planet being looked at. */
|
/** Planet being looked at. */
|
||||||
public Planet planet = Planets.serpulo;
|
public Planet planet = Planets.serpulo;
|
||||||
|
|
||||||
/** Zoom relative to planet. */
|
/** Zoom relative to planet. */
|
||||||
public float zoom = 1f;
|
public float zoom = 1f;
|
||||||
/** Alpha of orbit rings and other UI elements. */
|
/** Alpha of orbit rings and other UI elements. */
|
||||||
|
|||||||
@@ -102,8 +102,9 @@ public class PlanetRenderer implements Disposable{
|
|||||||
|
|
||||||
Events.fire(Trigger.universeDraw);
|
Events.fire(Trigger.universeDraw);
|
||||||
|
|
||||||
renderPlanet(params.solarSystem, params);
|
Planet solarSystem = params.planet.solarSystem;
|
||||||
renderTransparent(params.solarSystem, params);
|
renderPlanet(solarSystem, params);
|
||||||
|
renderTransparent(solarSystem, params);
|
||||||
|
|
||||||
bloom.render();
|
bloom.render();
|
||||||
|
|
||||||
|
|||||||
@@ -477,7 +477,7 @@ public class DesktopInput extends InputHandler{
|
|||||||
schematicY += shiftY;
|
schematicY += shiftY;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(Core.input.keyTap(Binding.deselect) && !isPlacing() && !commandMode){
|
if(Core.input.keyTap(Binding.deselect) && !isPlacing() && player.unit().plans.isEmpty() && !commandMode){
|
||||||
player.unit().mineTile = null;
|
player.unit().mineTile = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -299,6 +299,8 @@ public abstract class InputHandler implements InputProcessor, GestureListener{
|
|||||||
if(build == null || build.team() != player.team() || !build.block.commandable) continue;
|
if(build == null || build.team() != player.team() || !build.block.commandable) continue;
|
||||||
|
|
||||||
build.onCommand(target);
|
build.onCommand(target);
|
||||||
|
build.lastAccessed = player.name;
|
||||||
|
|
||||||
if(!state.isPaused() && player == Vars.player){
|
if(!state.isPaused() && player == Vars.player){
|
||||||
Fx.moveCommand.at(target);
|
Fx.moveCommand.at(target);
|
||||||
}
|
}
|
||||||
@@ -364,13 +366,19 @@ public abstract class InputHandler implements InputProcessor, GestureListener{
|
|||||||
|
|
||||||
@Remote(targets = Loc.both, called = Loc.server)
|
@Remote(targets = Loc.both, called = Loc.server)
|
||||||
public static void requestBuildPayload(Player player, Building build){
|
public static void requestBuildPayload(Player player, Building build){
|
||||||
if(player == null || !(player.unit() instanceof Payloadc pay)) return;
|
if(player == null || !(player.unit() instanceof Payloadc pay) || build == null) return;
|
||||||
|
|
||||||
Unit unit = player.unit();
|
Unit unit = player.unit();
|
||||||
|
|
||||||
if(build != null && state.teams.canInteract(unit.team, build.team)
|
if(!unit.within(build, tilesize * build.block.size * 1.2f + tilesize * 5f)) return;
|
||||||
&& unit.within(build, tilesize * build.block.size * 1.2f + tilesize * 5f)){
|
|
||||||
|
|
||||||
|
if(net.server() && !netServer.admins.allowAction(player, ActionType.pickupBlock, build.tile, action -> {
|
||||||
|
action.unit = unit;
|
||||||
|
})){
|
||||||
|
throw new ValidateException(player, "Player cannot pick up a block.");
|
||||||
|
}
|
||||||
|
|
||||||
|
if(state.teams.canInteract(unit.team, build.team)){
|
||||||
//pick up block's payload
|
//pick up block's payload
|
||||||
Payload current = build.getPayload();
|
Payload current = build.getPayload();
|
||||||
if(current != null && pay.canPickupPayload(current)){
|
if(current != null && pay.canPickupPayload(current)){
|
||||||
@@ -424,6 +432,14 @@ public abstract class InputHandler implements InputProcessor, GestureListener{
|
|||||||
|
|
||||||
Payloadc pay = (Payloadc)player.unit();
|
Payloadc pay = (Payloadc)player.unit();
|
||||||
|
|
||||||
|
if(pay.payloads().isEmpty()) return;
|
||||||
|
|
||||||
|
if(net.server() && !netServer.admins.allowAction(player, ActionType.dropPayload, player.unit().tileOn(), action -> {
|
||||||
|
action.payload = pay.payloads().peek();
|
||||||
|
})){
|
||||||
|
throw new ValidateException(player, "Player cannot drop a payload.");
|
||||||
|
}
|
||||||
|
|
||||||
//apply margin of error
|
//apply margin of error
|
||||||
Tmp.v1.set(x, y).sub(pay).limit(tilesize * 4f).add(pay);
|
Tmp.v1.set(x, y).sub(pay).limit(tilesize * 4f).add(pay);
|
||||||
float cx = Tmp.v1.x, cy = Tmp.v1.y;
|
float cx = Tmp.v1.x, cy = Tmp.v1.y;
|
||||||
@@ -489,7 +505,7 @@ public abstract class InputHandler implements InputProcessor, GestureListener{
|
|||||||
throw new ValidateException(player, "Player cannot configure a tile.");
|
throw new ValidateException(player, "Player cannot configure a tile.");
|
||||||
}
|
}
|
||||||
build.configured(player == null || player.dead() ? null : player.unit(), value);
|
build.configured(player == null || player.dead() ? null : player.unit(), value);
|
||||||
Core.app.post(() -> Events.fire(new ConfigEvent(build, player, value)));
|
Events.fire(new ConfigEvent(build, player, value));
|
||||||
}
|
}
|
||||||
|
|
||||||
//only useful for servers or local mods, and is not replicated across clients
|
//only useful for servers or local mods, and is not replicated across clients
|
||||||
@@ -857,8 +873,17 @@ public abstract class InputHandler implements InputProcessor, GestureListener{
|
|||||||
Events.fire(Trigger.unitCommandAttack);
|
Events.fire(Trigger.unitCommandAttack);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int maxChunkSize = 200;
|
||||||
|
|
||||||
|
if(ids.length > maxChunkSize){
|
||||||
|
for(int i = 0; i < ids.length; i += maxChunkSize){
|
||||||
|
int[] data = Arrays.copyOfRange(ids, i, Math.min(i + maxChunkSize, ids.length));
|
||||||
|
Call.commandUnits(player, data, attack instanceof Building b ? b : null, attack instanceof Unit u ? u : null, target);
|
||||||
|
}
|
||||||
|
}else{
|
||||||
Call.commandUnits(player, ids, attack instanceof Building b ? b : null, attack instanceof Unit u ? u : null, target);
|
Call.commandUnits(player, ids, attack instanceof Building b ? b : null, attack instanceof Unit u ? u : null, target);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if(commandBuildings.size > 0){
|
if(commandBuildings.size > 0){
|
||||||
Call.commandBuilding(player, commandBuildings.mapInt(b -> b.pos()).toArray(), target);
|
Call.commandBuilding(player, commandBuildings.mapInt(b -> b.pos()).toArray(), target);
|
||||||
|
|||||||
@@ -201,7 +201,7 @@ public class MobileInput extends InputHandler implements GestureListener{
|
|||||||
|
|
||||||
//rotate button
|
//rotate button
|
||||||
table.button(Icon.right, Styles.clearNoneTogglei, () -> {
|
table.button(Icon.right, Styles.clearNoneTogglei, () -> {
|
||||||
if(block != null && block.rotate && block.quickRotate){
|
if(block != null && block.rotate){
|
||||||
rotation = Mathf.mod(rotation + 1, 4);
|
rotation = Mathf.mod(rotation + 1, 4);
|
||||||
}else{
|
}else{
|
||||||
schematicMode = !schematicMode;
|
schematicMode = !schematicMode;
|
||||||
@@ -415,7 +415,7 @@ public class MobileInput extends InputHandler implements GestureListener{
|
|||||||
|
|
||||||
//draw last placed plan
|
//draw last placed plan
|
||||||
if(!plan.breaking && plan == lastPlaced && plan.block != null){
|
if(!plan.breaking && plan == lastPlaced && plan.block != null){
|
||||||
int rot = plan.block.planRotation(rotation);
|
int rot = plan.block.planRotation(plan.rotation);
|
||||||
boolean valid = validPlace(tile.x, tile.y, plan.block, rot);
|
boolean valid = validPlace(tile.x, tile.y, plan.block, rot);
|
||||||
Draw.mixcol();
|
Draw.mixcol();
|
||||||
plan.block.drawPlace(tile.x, tile.y, rot, valid);
|
plan.block.drawPlace(tile.x, tile.y, rot, valid);
|
||||||
|
|||||||
@@ -16,6 +16,7 @@ import mindustry.game.Teams.*;
|
|||||||
import mindustry.gen.*;
|
import mindustry.gen.*;
|
||||||
import mindustry.maps.Map;
|
import mindustry.maps.Map;
|
||||||
import mindustry.world.*;
|
import mindustry.world.*;
|
||||||
|
import mindustry.world.meta.*;
|
||||||
|
|
||||||
import java.io.*;
|
import java.io.*;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
@@ -161,6 +162,11 @@ public abstract class SaveVersion extends SaveFileReader{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//replace the default serpulo env with erekir
|
||||||
|
if(state.rules.planet == Planets.serpulo && state.rules.hasEnv(Env.scorching)){
|
||||||
|
state.rules.planet = Planets.erekir;
|
||||||
|
}
|
||||||
|
|
||||||
if(!headless){
|
if(!headless){
|
||||||
Tmp.v1.tryFromString(map.get("viewpos"));
|
Tmp.v1.tryFromString(map.get("viewpos"));
|
||||||
Core.camera.position.set(Tmp.v1);
|
Core.camera.position.set(Tmp.v1);
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ package mindustry.logic;
|
|||||||
|
|
||||||
import arc.*;
|
import arc.*;
|
||||||
import arc.files.*;
|
import arc.files.*;
|
||||||
|
import arc.graphics.*;
|
||||||
import arc.math.*;
|
import arc.math.*;
|
||||||
import arc.struct.*;
|
import arc.struct.*;
|
||||||
import arc.util.*;
|
import arc.util.*;
|
||||||
@@ -12,6 +13,7 @@ import mindustry.game.*;
|
|||||||
import mindustry.logic.LExecutor.*;
|
import mindustry.logic.LExecutor.*;
|
||||||
import mindustry.type.*;
|
import mindustry.type.*;
|
||||||
import mindustry.world.*;
|
import mindustry.world.*;
|
||||||
|
import mindustry.world.blocks.legacy.*;
|
||||||
|
|
||||||
import java.io.*;
|
import java.io.*;
|
||||||
|
|
||||||
@@ -75,11 +77,18 @@ public class GlobalVars{
|
|||||||
|
|
||||||
for(Block block : Vars.content.blocks()){
|
for(Block block : Vars.content.blocks()){
|
||||||
//only register blocks that have no item equivalent (this skips sand)
|
//only register blocks that have no item equivalent (this skips sand)
|
||||||
if(content.item(block.name) == null){
|
if(content.item(block.name) == null & !(block instanceof LegacyBlock)){
|
||||||
put("@" + block.name, block);
|
put("@" + block.name, block);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
for(var entry : Colors.getColors().entries()){
|
||||||
|
//ignore uppercase variants, they are duplicates
|
||||||
|
if(Character.isUpperCase(entry.key.charAt(0))) continue;
|
||||||
|
|
||||||
|
put("@color" + Strings.capitalize(entry.key), entry.value.toDoubleBits());
|
||||||
|
}
|
||||||
|
|
||||||
//used as a special value for any environmental solid block
|
//used as a special value for any environmental solid block
|
||||||
put("@solid", Blocks.stoneWall);
|
put("@solid", Blocks.stoneWall);
|
||||||
|
|
||||||
|
|||||||
@@ -20,6 +20,7 @@ public enum LAccess{
|
|||||||
health,
|
health,
|
||||||
maxHealth,
|
maxHealth,
|
||||||
heat,
|
heat,
|
||||||
|
shield,
|
||||||
efficiency,
|
efficiency,
|
||||||
progress,
|
progress,
|
||||||
timescale,
|
timescale,
|
||||||
@@ -45,6 +46,7 @@ public enum LAccess{
|
|||||||
name,
|
name,
|
||||||
payloadCount,
|
payloadCount,
|
||||||
payloadType,
|
payloadType,
|
||||||
|
id,
|
||||||
|
|
||||||
//values with parameters are considered controllable
|
//values with parameters are considered controllable
|
||||||
enabled("to"), //"to" is standard for single parameter access
|
enabled("to"), //"to" is standard for single parameter access
|
||||||
|
|||||||
@@ -34,7 +34,7 @@ public class LAssembler{
|
|||||||
|
|
||||||
Seq<LStatement> st = read(data, privileged);
|
Seq<LStatement> st = read(data, privileged);
|
||||||
|
|
||||||
asm.instructions = st.map(l -> l.build(asm)).filter(l -> l != null).toArray(LInstruction.class);
|
asm.instructions = st.map(l -> l.build(asm)).retainAll(l -> l != null).toArray(LInstruction.class);
|
||||||
return asm;
|
return asm;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user