Compare commits

...

64 Commits
v60 ... v62

Author SHA1 Message Date
Anuken
75d2ea1519 Added build revision 2018-11-28 17:42:12 -05:00
Anuken
14e9a94061 Merge remote-tracking branch 'origin/master' 2018-11-28 17:24:26 -05:00
Anuken
d3284ab9f6 Chained block inventory scaling 2018-11-28 17:24:21 -05:00
Anuken
775df43470 Merge remote-tracking branch 'origin/master' 2018-11-28 14:00:57 -05:00
Anuken
e2e6024e8f Pan tweak 2018-11-28 14:00:51 -05:00
elmenda452
d89b51f17d Update bundle_es.properties (#359)
Just making another revision.
2018-11-28 13:22:36 -05:00
Anuken
aa626947ed HUD cleanup 2018-11-28 13:14:54 -05:00
Anuken
f2be23274e Crash fixes 2018-11-28 08:53:03 -05:00
Anuken
cc90e6d479 b a l a n c i n g 2018-11-27 21:07:29 -05:00
Anuken
76dd3c86f2 Removed redundant sector mission display 2018-11-27 20:36:23 -05:00
Anuken
91468fa2f9 Style changes 2018-11-27 20:12:49 -05:00
Anuken
8e4aec9c4d Merge remote-tracking branch 'origin/master' 2018-11-27 13:19:48 -05:00
Anuken
e6e29aaf1e Team button layout fix 2018-11-27 13:19:44 -05:00
Prosta4okua
1ac5f54e9e [СOMPLETE]Update Uk_ua bundle (#328)
* [WIP]Update Uk_ua bundle

* Update bundle_uk_UA.properties

* Update bundle_uk_UA.properties

* Update bundle_uk_UA.properties

* Update bundle_uk_UA.properties

* Update bundle_uk_UA.properties

* Update bundle_uk_UA.properties

* Update bundle_uk_UA.properties

* Update bundle_uk_UA.properties

* Update bundle_uk_UA.properties

* Update bundle_uk_UA.properties

* Update bundle_uk_UA.properties

* Update bundle_uk_UA.properties
2018-11-27 13:10:51 -05:00
Prosta4okua
bf983658c8 [COMPLETE]Close before 62 build (#345)
* [wip]Some changes from Xzimur

* Update bundle_ru.properties

Mine

* Update bundle_ru.properties

New UI / 8c437eb815

* Update bundle_ru.properties

* Update bundle_ru.properties

Разблокированные->разблоки\nрованные

* Update bundle_ru.properties

* Update bundle_ru.properties

Присоеди\nниться

* Update bundle_ru.properties

владелец

* Update bundle_ru.properties

* Update bundle_ru.properties

* Update bundle_ru.properties

* Update bundle_ru.properties

* Update bundle_ru.properties

* Update bundle_ru.properties

* Update bundle_ru.properties

* Update bundle_ru.properties

* Update bundle_ru.properties

* Update bundle_ru.properties

* Update bundle_ru.properties

* Update bundle_ru.properties

* Update bundle_ru.properties
2018-11-27 13:08:07 -05:00
Anuken
e17286eb9f Player list fixes with teams 2018-11-27 13:00:34 -05:00
Anuken
19c17e96de Mobile UI fixes 2018-11-27 12:31:45 -05:00
Anuken
b45368342d Block config UI fixes 2018-11-27 09:29:28 -05:00
Anuken
dcea8ae64f New UI 2018-11-26 22:47:54 -05:00
Anuken
ef85d1d83e Merge remote-tracking branch 'origin/master' 2018-11-26 12:40:28 -05:00
Anuken
d03ceb2a23 Bugfixes / Sorter item memory 2018-11-26 12:40:24 -05:00
VizardAlpha
90198be1cb Updates bundle_fr_BE.properties (#358)
* Updates bundle_fr_BE.properties

* Updates bundle_fr_BE.properties

* Update bundle_fr_BE.properties

* Update bundle_fr_BE.properties

* Update bundle_fr_BE.properties
2018-11-26 12:34:01 -05:00
Anuken
a241f63ddc Merge remote-tracking branch 'origin/master' 2018-11-25 22:55:18 -05:00
Anuken
70507258ae Cleanup 2018-11-25 22:55:13 -05:00
beito
51a8144f49 Update Japanese translations (#357)
* Add new japanese translation

It translated on commit 66810c8.
so it don't apply changes from commit 17e0489.

* Update Japanese translation

Applies commit 7a51693. and small changes.

* Upadte Japanese translations

* Update Japanese

* Update Japanese

* Update Japanese translations

Improve and update for new changes

* Update Japanese

* Update Japanese translations
2018-11-25 22:54:46 -05:00
Anuken
54ad9ba243 Added fullscreen map screenshot 2018-11-25 20:43:45 -05:00
Anuken
a7f7a09418 Drone repair cleanup / Percentage-based repair 2018-11-25 16:34:31 -05:00
Anuken
44897fb371 Mobile chat fix / Turret balance / UI disable variable 2018-11-25 13:58:19 -05:00
Anuken
bb6a748167 Various bugfixes 2018-11-25 10:29:38 -05:00
Anuken
c321402414 Various bugfixes 2018-11-24 20:04:20 -05:00
Anuken
ec80fc9f3f Android build update 2018-11-24 19:39:35 -05:00
Anuken
6bfd57097f Cleanup of TODOs 2018-11-24 08:21:22 -05:00
Anuken
6f5df6a671 Added list of contributors to credits 2018-11-23 14:30:58 -05:00
Anuken
1baf3190cd Host dialog name selection 2018-11-23 13:35:16 -05:00
Anuken
66c29c49e5 Wave spawner moved / Bundle tweaks / Blank name 2018-11-23 13:32:17 -05:00
Anuken
e5d6740555 Additional tests, inventory fixes 2018-11-23 12:40:36 -05:00
Anuken
30b5dd63e4 Build tag fix 2018-11-23 10:21:47 -05:00
Anuken
f0aa8d73ea Merge remote-tracking branch 'origin/master' 2018-11-23 09:23:48 -05:00
Anuken
8a0761cad8 Bugfixes 2018-11-23 09:23:42 -05:00
키에르
322d76b713 Update bundle_ko.properties (#354)
* Update bundle_ko.properties

* Update bundle_ko.properties
2018-11-23 08:41:55 -05:00
Anuken
4f56bf3c3e Consume icon fix / Liquid mixer fix 2018-11-23 08:32:56 -05:00
Anuken
942eed402a uCore update 2018-11-22 23:38:59 -05:00
Anuken
24c72650fb Bundles update 2018-11-22 19:10:31 -05:00
Anuken
f5959c8829 Optional display section 2018-11-22 19:09:51 -05:00
Anuken
7621ebed42 Merge remote-tracking branch 'origin/master' 2018-11-22 08:39:15 -05:00
Anuken
5447c71790 Removed junction item voiding 2018-11-22 08:39:05 -05:00
Anuken
c5241eaaf6 Encoding tests 2018-11-21 23:12:27 -05:00
Anuken
9266b55ddf Fixed charset issues 2018-11-21 23:05:33 -05:00
VizardAlpha
1bc1f66613 Updates bundle_fr_BE.properties (#351)
I had not seen the last line to translate.
2018-11-21 22:02:28 -05:00
Anuken
7795a690ed Fixed fillitems command 2018-11-21 21:17:45 -05:00
Anuken
d498ac89f2 Mining bugfix 2018-11-21 21:13:30 -05:00
Anuken
2842018c2f Ignored robovm.properties 2018-11-21 11:01:16 -05:00
Anuken
51641cc704 Merge remote-tracking branch 'origin/master' 2018-11-21 11:00:58 -05:00
Anuken
729f5ed5e4 New version format / Updated bundles / ConnectPacket encoding fix 2018-11-21 11:00:50 -05:00
VizardAlpha
03ff33acaf Updates bundle_fr_BE.properties (#350) 2018-11-21 10:00:19 -05:00
Anuken
46035e76cc Build increment 2018-11-21 09:59:56 -05:00
Anuken
7c073f76ae Added automatic build incrementing 2018-11-20 19:28:26 -05:00
Anuken
5ced5ce253 Fixed some bugs/crashes 2018-11-20 10:00:13 -05:00
Anuken
55781e911e Merge remote-tracking branch 'origin/master' 2018-11-20 00:26:18 -05:00
Anuken
ee3c4a4124 Mass driver buff 2018-11-20 00:26:14 -05:00
키에르
6815e56e57 Update bundle_ko.properties (#346) 2018-11-19 22:56:14 -05:00
Anuken
6c744443fb Item list value fix 2018-11-19 20:52:31 -05:00
Anuken
3c37047afb Misc bugfixes 2018-11-19 17:56:26 -05:00
Anuken
f31f09d77a Visual fix 2018-11-19 16:40:33 -05:00
183 changed files with 2462 additions and 2202 deletions

1
.gitignore vendored
View File

@@ -27,6 +27,7 @@ logs/
/core/assets/locales /core/assets/locales
/ios/src/io/anuke/mindustry/gen/ /ios/src/io/anuke/mindustry/gen/
/core/src/io/anuke/mindustry/gen/ /core/src/io/anuke/mindustry/gen/
ios/robovm.properties
*.gif *.gif
version.properties version.properties

View File

@@ -3,8 +3,8 @@ jdk:
- openjdk8 - openjdk8
script: script:
- "./gradlew test" - "./gradlew test"
- "./gradlew desktop:dist" - "./gradlew desktop:dist -Pbuildversion=${TRAVIS_TAG:1}"
- "./gradlew server:dist" - "./gradlew server:dist -Pbuildversion=${TRAVIS_TAG:1}"
deploy: deploy:
provider: releases provider: releases

View File

@@ -20,7 +20,7 @@
<activity <activity
android:name="io.anuke.mindustry.AndroidLauncher" android:name="io.anuke.mindustry.AndroidLauncher"
android:label="@string/app_name" android:label="@string/app_name"
android:screenOrientation="user" android:screenOrientation="sensor"
android:configChanges="keyboard|keyboardHidden|orientation|screenSize|screenLayout"> android:configChanges="keyboard|keyboardHidden|orientation|screenSize|screenLayout">
<intent-filter> <intent-filter>

View File

@@ -93,7 +93,7 @@ android {
applicationId "io.anuke.mindustry" applicationId "io.anuke.mindustry"
minSdkVersion 14 minSdkVersion 14
targetSdkVersion 27 targetSdkVersion 28
versionCode code versionCode code
versionName versionNameResult versionName versionNameResult
} }

View File

@@ -68,7 +68,6 @@ public class DonationsActivity extends FragmentActivity{
Fragment fragment = fragmentManager.findFragmentByTag("donationsFragment"); Fragment fragment = fragmentManager.findFragmentByTag("donationsFragment");
if(fragment != null){ if(fragment != null){
fragment.onActivityResult(requestCode, resultCode, data); fragment.onActivityResult(requestCode, resultCode, data);
//TODO donation event, set settings?
} }
} }
} }

View File

@@ -19,13 +19,13 @@ allprojects {
version = 'release' version = 'release'
ext { ext {
versionNumber = '4.0' versionNumber = '4'
versionModifier = 'alpha' versionModifier = 'alpha'
versionType = 'official' versionType = 'official'
appName = 'Mindustry' appName = 'Mindustry'
gdxVersion = '1.9.9' gdxVersion = '1.9.9'
roboVMVersion = '2.3.0' roboVMVersion = '2.3.0'
uCoreVersion = 'c9aadd4d0b5848dbc4dbbd0fcd701b11c30c02bb' uCoreVersion = '7eb80a9765557d025d589f28fa1910dffa3fc8ed'
getVersionString = { getVersionString = {
String buildVersion = getBuildVersion() String buildVersion = getBuildVersion()
@@ -110,17 +110,35 @@ project(":ios") {
include "**/*.java" include "**/*.java"
} }
into "ios/src/io/anuke/mindustry/gen" into "core/src/io/anuke/mindustry/gen"
} }
doFirst{ doFirst{
delete{ delete{
delete "ios/src/io/anuke/mindustry/gen/" delete "core/src/io/anuke/mindustry/gen/"
} }
} }
} }
//build.dependsOn(copyGen) task incrementConfig{
def vfile = file('robovm.properties')
def props = new Properties()
if(vfile.exists()){
props.load(new FileInputStream(vfile))
}
props['app.id'] = 'io.anuke.mindustry'
props['app.version'] = '4.0'
props['app.mainclass'] = 'io.anuke.mindustry.IOSLauncher'
props['app.executable'] = 'IOSLauncher'
props['app.name'] = 'Mindustry'
props['app.build'] = (!props.hasProperty("app.build") ? 40 : props['app.build'].toInteger() + 1)+""
props.store(vfile.newWriter(), null)
}
build.dependsOn(incrementConfig)
build.dependsOn(copyGen)
dependencies { dependencies {
compile project(":core") compile project(":core")

View File

@@ -1,5 +1,6 @@
{ {
duplicatePadding: true, duplicatePadding: true,
combineSubdirectories: true, combineSubdirectories: true,
flattenPaths: true flattenPaths: true,
fast: true
} }

Binary file not shown.

Before

Width:  |  Height:  |  Size: 132 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 133 B

After

Width:  |  Height:  |  Size: 256 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 261 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 253 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 271 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 247 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 266 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 281 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 277 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 133 B

After

Width:  |  Height:  |  Size: 284 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 241 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 265 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 284 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 131 B

After

Width:  |  Height:  |  Size: 282 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 110 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 98 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 238 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 117 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 211 B

After

Width:  |  Height:  |  Size: 248 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 115 B

After

Width:  |  Height:  |  Size: 178 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 186 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 127 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 117 B

After

Width:  |  Height:  |  Size: 187 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 126 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 116 B

After

Width:  |  Height:  |  Size: 181 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 123 B

After

Width:  |  Height:  |  Size: 238 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 123 B

After

Width:  |  Height:  |  Size: 234 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 121 B

After

Width:  |  Height:  |  Size: 238 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 73 B

After

Width:  |  Height:  |  Size: 135 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 130 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 116 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 116 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 238 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 237 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 172 B

View File

@@ -1,6 +1,7 @@
text.credits.text = Created by [ROYAL]Anuken[] - [SKY]anukendev@gmail.com[]\n\n[GRAY](In case you can't tell, this text is currently unfinished.\nTranslators, don't edit it yet\!) text.credits.text = Created by [ROYAL]Anuken[] - [SKY]anukendev@gmail.com[]
text.credits = Credits text.credits = Credits
text.discord = Join the mindustry discord\! text.contributors = Translators and Contributors
text.discord = Join the mindustry discord!
text.link.discord.description = The official Mindustry discord chatroom text.link.discord.description = The official Mindustry discord chatroom
text.link.github.description = Game source code text.link.github.description = Game source code
text.link.dev-builds.description = Unstable development builds text.link.dev-builds.description = Unstable development builds
@@ -8,25 +9,26 @@ text.link.trello.description = Official trello board for planned features
text.link.itch.io.description = itch.io page with PC downloads and web version text.link.itch.io.description = itch.io page with PC downloads and web version
text.link.google-play.description = Google Play store listing text.link.google-play.description = Google Play store listing
text.link.wiki.description = Official Mindustry wiki text.link.wiki.description = Official Mindustry wiki
text.linkfail = Failed to open link\!\nThe URL has been copied to your clipboard. text.linkfail = Failed to open link!\nThe URL has been copied to your clipboard.
text.screenshot = Screenshot saved to {0}
text.gameover = Game Over text.gameover = Game Over
text.gameover.pvp = The[accent] {0}[] team is victorious\! text.gameover.pvp = The[accent] {0}[] team is victorious!
text.sector.gameover = This sector has been lost. Re-deploy? text.sector.gameover = This sector has been lost. Re-deploy?
text.sector.retry = Retry text.sector.retry = Retry
text.highscore = [accent]New highscore\! text.highscore = [accent]New highscore!
text.wave.lasted = You lasted until wave [accent]{0}[]. text.wave.lasted = You lasted until wave [accent]{0}[].
text.level.highscore = High Score\: [accent]{0} text.level.highscore = High Score: [accent]{0}
text.level.delete.title = Confirm Delete text.level.delete.title = Confirm Delete
text.map.delete = Are you sure you want to delete the map "[accent]{0}[]"? text.map.delete = Are you sure you want to delete the map "[accent]{0}[]"?
text.level.select = Level Select text.level.select = Level Select
text.level.mode = Gamemode\: text.level.mode = Gamemode:
text.construction.desktop = To deselect a block or stop building, [accent]use space[]. text.construction.desktop = To deselect a block or stop building, [accent]use space[].
text.construction.title = Block Construction Guide text.construction.title = Block Construction Guide
text.construction = You've just selected [accent]block construction mode[].\n\nTo begin placing, simply tap a valid location near your ship.\nOnce you have selected some blocks, press the checkbox to confirm, and your ship will begin constructing them.\n\n- [accent]Remove blocks[] from your selection by tapping them.\n- [accent]Shift the selection[] by holding and dragging any block in the selection.\n- [accent]Place blocks in a line[] by tapping and holding an empty spot, then dragging in a direction.\n- [accent]Cancel construction or selection[] by pressing the X at the bottom left. text.construction = You've just selected [accent]block construction mode[].\n\nTo begin placing, simply tap a valid location near your ship.\nOnce you have selected some blocks, press the checkbox to confirm, and your ship will begin constructing them.\n\n- [accent]Remove blocks[] from your selection by tapping them.\n- [accent]Shift the selection[] by holding and dragging any block in the selection.\n- [accent]Place blocks in a line[] by tapping and holding an empty spot, then dragging in a direction.\n- [accent]Cancel construction or selection[] by pressing the X at the bottom left.
text.deconstruction.title = Block Deconstruction Guide text.deconstruction.title = Block Deconstruction Guide
text.deconstruction = You've just selected [accent]block deconstruction mode[].\n\nTo begin breaking, simply tap a block near your ship.\nOnce you have selected some blocks, press the checkbox to confirm, and your ship will begin de-constructing them.\n\n- [accent]Remove blocks[] from your selection by tapping them.\n- [accent]Remove blocks in an area[] by tapping and holding an empty spot, then dragging in a direction.\n- [accent]Cancel deconstruction or selection[] by pressing the X at the bottom left. text.deconstruction = You've just selected [accent]block deconstruction mode[].\n\nTo begin breaking, simply tap a block near your ship.\nOnce you have selected some blocks, press the checkbox to confirm, and your ship will begin de-constructing them.\n\n- [accent]Remove blocks[] from your selection by tapping them.\n- [accent]Remove blocks in an area[] by tapping and holding an empty spot, then dragging in a direction.\n- [accent]Cancel deconstruction or selection[] by pressing the X at the bottom left.
text.showagain = Don't show again next session text.showagain = Don't show again next session
text.coreattack = < Core is under attack\! > text.coreattack = < Core is under attack! >
text.unlocks = Unlocks text.unlocks = Unlocks
text.savegame = Save Game text.savegame = Save Game
text.loadgame = Load Game text.loadgame = Load Game
@@ -34,19 +36,19 @@ text.joingame = Join Game
text.addplayers = Add/Remove Players text.addplayers = Add/Remove Players
text.customgame = Custom Game text.customgame = Custom Game
text.sectors = Sectors text.sectors = Sectors
text.sector = Sector\: [LIGHT_GRAY]{0} text.sector = Sector: [LIGHT_GRAY]{0}
text.sector.time = Time\: [LIGHT_GRAY]{0} text.sector.time = Time: [LIGHT_GRAY]{0}
text.sector.deploy = Deploy text.sector.deploy = Deploy
text.sector.abandon = Abandon text.sector.abandon = Abandon
text.sector.abandon.confirm = Are you sure you want to abandon all progress at this sector?\nThis cannot be undone\! text.sector.abandon.confirm = Are you sure you want to abandon all progress at this sector?\nThis cannot be undone!
text.sector.resume = Resume text.sector.resume = Resume
text.sector.locked = [scarlet][[Incomplete] text.sector.locked = [scarlet][[Incomplete]
text.sector.unexplored = [accent][[Unexplored] text.sector.unexplored = [accent][[Unexplored]
text.missions = Missions\:[LIGHT_GRAY] {0} text.missions = Missions:[LIGHT_GRAY] {0}
text.mission = Mission\:[LIGHT_GRAY] {0} text.mission = Mission:[LIGHT_GRAY] {0}
text.mission.main = Main Mission\:[LIGHT_GRAY] {0} text.mission.main = Main Mission:[LIGHT_GRAY] {0}
text.mission.info = Mission Info text.mission.info = Mission Info
text.mission.complete = Mission complete\! text.mission.complete = Mission complete!
text.mission.complete.body = Sector {0},{1} has been conquered. text.mission.complete.body = Sector {0},{1} has been conquered.
text.mission.wave = Survive[accent] {0}/{1} []waves\nWave in {2} text.mission.wave = Survive[accent] {0}/{1} []waves\nWave in {2}
text.mission.wave.enemies = Survive[accent] {0}/{1} []waves\n{2} Enemies text.mission.wave.enemies = Survive[accent] {0}/{1} []waves\n{2} Enemies
@@ -54,12 +56,12 @@ text.mission.wave.enemy = Survive[accent] {0}/{1} []waves\n{2} Enemy
text.mission.wave.menu = Survive[accent] {0}[] waves text.mission.wave.menu = Survive[accent] {0}[] waves
text.mission.battle = Destroy enemy core text.mission.battle = Destroy enemy core
text.mission.resource.menu = Obtain {0} x{1} text.mission.resource.menu = Obtain {0} x{1}
text.mission.resource = Obtain {0}\:\n[accent]{1}/{2}[] text.mission.resource = Obtain {0}:\n[accent]{1}/{2}[]
text.mission.block = Create {0} text.mission.block = Create {0}
text.mission.unit = Create {0} Unit text.mission.unit = Create {0} Unit
text.mission.command = Send Command {0} To Units text.mission.command = Send Command {0} To Units
text.mission.linknode = Link Power Node text.mission.linknode = Link Power Node
text.mission.display = [accent]Mission\:\n[LIGHT_GRAY]{0} text.mission.display = [accent]Mission:\n[LIGHT_GRAY]{0}
text.mission.mech = Switch to mech[accent] {0}[] text.mission.mech = Switch to mech[accent] {0}[]
text.mission.create = Create[accent] {0}[] text.mission.create = Create[accent] {0}[]
text.none = <none> text.none = <none>
@@ -68,29 +70,30 @@ text.quit = Quit
text.maps = Maps text.maps = Maps
text.continue = Continue text.continue = Continue
text.nextmission = Next Mission text.nextmission = Next Mission
text.maps.none = [LIGHT_GRAY]No maps found\! text.maps.none = [LIGHT_GRAY]No maps found!
text.about.button = About text.about.button = About
text.name = Name\: text.name = Name:
text.filename = File Name\: text.noname = Pick a[accent] player name[] first.
text.unlocked = New Block Unlocked\! text.filename = File Name:
text.unlocked.plural = New Blocks Unlocked\! text.unlocked = New Block Unlocked!
text.unlocked.plural = New Blocks Unlocked!
text.players = {0} players online text.players = {0} players online
text.players.single = {0} player online text.players.single = {0} player online
text.server.closing = [accent]Closing server... text.server.closing = [accent]Closing server...
text.server.kicked.kick = You have been kicked from the server\! text.server.kicked.kick = You have been kicked from the server!
text.server.kicked.serverClose = Server closed. text.server.kicked.serverClose = Server closed.
text.server.kicked.sectorComplete = Sector completed. text.server.kicked.sectorComplete = Sector completed.
text.server.kicked.sectorComplete.text = Your mission is complete.\nThe server will now continue at the next sector. text.server.kicked.sectorComplete.text = Your mission is complete.\nThe server will now continue at the next sector.
text.server.kicked.clientOutdated = Outdated client\! Update your game\! text.server.kicked.clientOutdated = Outdated client! Update your game!
text.server.kicked.serverOutdated = Outdated server\! Ask the host to update\! text.server.kicked.serverOutdated = Outdated server! Ask the host to update!
text.server.kicked.banned = You are banned on this server. text.server.kicked.banned = You are banned on this server.
text.server.kicked.recentKick = You have been kicked recently.\nWait before connecting again. text.server.kicked.recentKick = You have been kicked recently.\nWait before connecting again.
text.server.kicked.nameInUse = There is someone with that name\nalready on this server. text.server.kicked.nameInUse = There is someone with that name\nalready on this server.
text.server.kicked.nameEmpty = Your chosen name is invalid. text.server.kicked.nameEmpty = Your chosen name is invalid.
text.server.kicked.idInUse = You are already on this server\! Connecting with two accounts is not permitted. text.server.kicked.idInUse = You are already on this server! Connecting with two accounts is not permitted.
text.server.kicked.customClient = This server does not support custom builds. Download an official version. text.server.kicked.customClient = This server does not support custom builds. Download an official version.
text.host.info = The [accent]host[] button hosts a server on port [scarlet]6567[]. \nAnybody on the same [LIGHT_GRAY]wifi or local network[] should be able to see your server in their server list.\n\nIf you want people to be able to connect from anywhere by IP, [accent]port forwarding[] is required.\n\n[LIGHT_GRAY]Note\: If someone is experiencing trouble connecting to your LAN game, make sure you have allowed Mindustry access to your local network in your firewall settings. text.host.info = The [accent]host[] button hosts a server on port [scarlet]6567[]. \nAnybody on the same [LIGHT_GRAY]wifi or local network[] should be able to see your server in their server list.\n\nIf you want people to be able to connect from anywhere by IP, [accent]port forwarding[] is required.\n\n[LIGHT_GRAY]Note: If someone is experiencing trouble connecting to your LAN game, make sure you have allowed Mindustry access to your local network in your firewall settings.
text.join.info = Here, you can enter a [accent]server IP[] to connect to, or discover [accent]local network[] servers to connect to.\nBoth LAN and WAN multiplayer is supported.\n\n[LIGHT_GRAY]Note\: There is no automatic global server list; if you want to connect to someone by IP, you would need to ask the host for their IP. text.join.info = Here, you can enter a [accent]server IP[] to connect to, or discover [accent]local network[] servers to connect to.\nBoth LAN and WAN multiplayer is supported.\n\n[LIGHT_GRAY]Note: There is no automatic global server list; if you want to connect to someone by IP, you would need to ask the host for their IP.
text.hostserver = Host Game text.hostserver = Host Game
text.hostserver.mobile = Host\nGame text.hostserver.mobile = Host\nGame
text.host = Host text.host = Host
@@ -98,31 +101,31 @@ text.hosting = [accent]Opening server...
text.hosts.refresh = Refresh text.hosts.refresh = Refresh
text.hosts.discovering = Discovering LAN games text.hosts.discovering = Discovering LAN games
text.server.refreshing = Refreshing server text.server.refreshing = Refreshing server
text.hosts.none = [lightgray]No local games found\! text.hosts.none = [lightgray]No local games found!
text.host.invalid = [scarlet]Can't connect to host. text.host.invalid = [scarlet]Can't connect to host.
text.trace = Trace Player text.trace = Trace Player
text.trace.playername = Player name\: [accent]{0} text.trace.playername = Player name: [accent]{0}
text.trace.ip = IP\: [accent]{0} text.trace.ip = IP: [accent]{0}
text.trace.id = Unique ID\: [accent]{0} text.trace.id = Unique ID: [accent]{0}
text.trace.android = Android Client\: [accent]{0} text.trace.android = Android Client: [accent]{0}
text.trace.modclient = Custom Client\: [accent]{0} text.trace.modclient = Custom Client: [accent]{0}
text.trace.totalblocksbroken = Total blocks broken\: [accent]{0} text.trace.totalblocksbroken = Total blocks broken: [accent]{0}
text.trace.structureblocksbroken = Structure blocks broken\: [accent]{0} text.trace.structureblocksbroken = Structure blocks broken: [accent]{0}
text.trace.lastblockbroken = Last block broken\: [accent]{0} text.trace.lastblockbroken = Last block broken: [accent]{0}
text.trace.totalblocksplaced = Total blocks placed\: [accent]{0} text.trace.totalblocksplaced = Total blocks placed: [accent]{0}
text.trace.lastblockplaced = Last block placed\: [accent]{0} text.trace.lastblockplaced = Last block placed: [accent]{0}
text.invalidid = Invalid client ID\! Submit a bug report. text.invalidid = Invalid client ID! Submit a bug report.
text.server.bans = Bans text.server.bans = Bans
text.server.bans.none = No banned players found\! text.server.bans.none = No banned players found!
text.server.admins = Admins text.server.admins = Admins
text.server.admins.none = No admins found\! text.server.admins.none = No admins found!
text.server.add = Add Server text.server.add = Add Server
text.server.delete = Are you sure you want to delete this server? text.server.delete = Are you sure you want to delete this server?
text.server.hostname = Host\: {0} text.server.hostname = Host: {0}
text.server.edit = Edit Server text.server.edit = Edit Server
text.server.outdated = [crimson]Outdated Server\![] text.server.outdated = [crimson]Outdated Server![]
text.server.outdated.client = [crimson]Outdated Client\![] text.server.outdated.client = [crimson]Outdated Client![]
text.server.version = [lightgray]Version\: {0} {1} text.server.version = [lightgray]Version: {0} {1}
text.server.custombuild = [yellow]Custom Build text.server.custombuild = [yellow]Custom Build
text.confirmban = Are you sure you want to ban this player? text.confirmban = Are you sure you want to ban this player?
text.confirmkick = Are you sure you want to kick this player? text.confirmkick = Are you sure you want to kick this player?
@@ -130,45 +133,45 @@ text.confirmunban = Are you sure you want to unban this player?
text.confirmadmin = Are you sure you want to make this player an admin? text.confirmadmin = Are you sure you want to make this player an admin?
text.confirmunadmin = Are you sure you want to remove admin status from this player? text.confirmunadmin = Are you sure you want to remove admin status from this player?
text.joingame.title = Join Game text.joingame.title = Join Game
text.joingame.ip = IP\: text.joingame.ip = IP:
text.disconnect = Disconnected. text.disconnect = Disconnected.
text.disconnect.data = Failed to load world data\! text.disconnect.data = Failed to load world data!
text.connecting = [accent]Connecting... text.connecting = [accent]Connecting...
text.connecting.data = [accent]Loading world data... text.connecting.data = [accent]Loading world data...
text.server.port = Port\: text.server.port = Port:
text.server.addressinuse = Address already in use\! text.server.addressinuse = Address already in use!
text.server.invalidport = Invalid port number\! text.server.invalidport = Invalid port number!
text.server.error = [crimson]Error hosting server\: [accent]{0} text.server.error = [crimson]Error hosting server: [accent]{0}
text.save.old = This save is for an older version of the game, and can no longer be used.\n\n[LIGHT_GRAY]Save backwards compatibility will be implemented in the full 4.0 release. text.save.old = This save is for an older version of the game, and can no longer be used.\n\n[LIGHT_GRAY]Save backwards compatibility will be implemented in the full 4.0 release.
text.save.new = New Save text.save.new = New Save
text.save.overwrite = Are you sure you want to overwrite\nthis save slot? text.save.overwrite = Are you sure you want to overwrite\nthis save slot?
text.overwrite = Overwrite text.overwrite = Overwrite
text.save.none = No saves found\! text.save.none = No saves found!
text.saveload = [accent]Saving... text.saveload = [accent]Saving...
text.savefail = Failed to save game\! text.savefail = Failed to save game!
text.save.delete.confirm = Are you sure you want to delete this save? text.save.delete.confirm = Are you sure you want to delete this save?
text.save.delete = Delete text.save.delete = Delete
text.save.export = Export Save text.save.export = Export Save
text.save.import.invalid = [accent]This save is invalid\! text.save.import.invalid = [accent]This save is invalid!
text.save.import.fail = [crimson]Failed to import save\: [accent]{0} text.save.import.fail = [crimson]Failed to import save: [accent]{0}
text.save.export.fail = [crimson]Failed to export save\: [accent]{0} text.save.export.fail = [crimson]Failed to export save: [accent]{0}
text.save.import = Import Save text.save.import = Import Save
text.save.newslot = Save name\: text.save.newslot = Save name:
text.save.rename = Rename text.save.rename = Rename
text.save.rename.text = New name\: text.save.rename.text = New name:
text.selectslot = Select a save. text.selectslot = Select a save.
text.slot = [accent]Slot {0} text.slot = [accent]Slot {0}
text.save.corrupted = [accent]Save file corrupted or invalid\!\nIf you have just updated your game, this is probably a change in the save format and [scarlet]not[] a bug. text.save.corrupted = [accent]Save file corrupted or invalid!\nIf you have just updated your game, this is probably a change in the save format and [scarlet]not[] a bug.
text.sector.corrupted = [accent]A save file for this sector was found, but loading failed.\nA new one has been created. text.sector.corrupted = [accent]A save file for this sector was found, but loading failed.\nA new one has been created.
text.empty = <empty> text.empty = <empty>
text.on = On text.on = On
text.off = Off text.off = Off
text.save.autosave = Autosave\: {0} text.save.autosave = Autosave: {0}
text.save.map = Map\: {0} text.save.map = Map: {0}
text.save.wave = Wave {0} text.save.wave = Wave {0}
text.save.difficulty = Difficulty\: {0} text.save.difficulty = Difficulty: {0}
text.save.date = Last Saved\: {0} text.save.date = Last Saved: {0}
text.save.playtime = Playtime\: {0} text.save.playtime = Playtime: {0}
text.confirm = Confirm text.confirm = Confirm
text.delete = Delete text.delete = Delete
text.ok = OK text.ok = OK
@@ -180,9 +183,9 @@ text.back = Back
text.quit.confirm = Are you sure you want to quit? text.quit.confirm = Are you sure you want to quit?
text.changelog.title = Changelog text.changelog.title = Changelog
text.changelog.loading = Getting changelog... text.changelog.loading = Getting changelog...
text.changelog.error.android = [accent]Note that the changelog sometimes does not work on Android 4.4 and below\!\nThis is due to an internal Android bug. text.changelog.error.android = [accent]Note that the changelog sometimes does not work on Android 4.4 and below!\nThis is due to an internal Android bug.
text.changelog.error.ios = [accent]The changelog is currently not supported in iOS. text.changelog.error.ios = [accent]The changelog is currently not supported in iOS.
text.changelog.error = [scarlet]Error getting changelog\!\nCheck your internet connection. text.changelog.error = [scarlet]Error getting changelog!\nCheck your internet connection.
text.changelog.current = [yellow][[Current version] text.changelog.current = [yellow][[Current version]
text.changelog.latest = [accent][[Latest version] text.changelog.latest = [accent][[Latest version]
text.loading = [accent]Loading... text.loading = [accent]Loading...
@@ -198,32 +201,32 @@ text.saveimage = Save Image
text.unknown = Unknown text.unknown = Unknown
text.custom = Custom text.custom = Custom
text.builtin = Built-In text.builtin = Built-In
text.map.delete.confirm = Are you sure you want to delete this map? This action cannot be undone\! text.map.delete.confirm = Are you sure you want to delete this map? This action cannot be undone!
text.map.random = [accent]Random Map text.map.random = [accent]Random Map
text.map.nospawn = This map does not have any cores for the player to spawn in\! Add a[ROYAL] blue[] core to this map in the editor. text.map.nospawn = This map does not have any cores for the player to spawn in! Add a[ROYAL] blue[] core to this map in the editor.
text.map.nospawn.pvp = This map does not have any enemy cores for player to spawn into\! Add[SCARLET] red[] cores to this map in the editor. text.map.nospawn.pvp = This map does not have any enemy cores for player to spawn into! Add[SCARLET] red[] cores to this map in the editor.
text.map.invalid = Error loading map\: corrupted or invalid map file. text.map.invalid = Error loading map: corrupted or invalid map file.
text.editor.brush = Brush text.editor.brush = Brush
text.editor.slope = \\ text.editor.slope = \\
text.editor.openin = Open In Editor text.editor.openin = Open In Editor
text.editor.oregen = Ore Generation text.editor.oregen = Ore Generation
text.editor.oregen.info = Ore Generation\: text.editor.oregen.info = Ore Generation:
text.editor.mapinfo = Map Info text.editor.mapinfo = Map Info
text.editor.author = Author\: text.editor.author = Author:
text.editor.description = Description\: text.editor.description = Description:
text.editor.name = Name\: text.editor.name = Name:
text.editor.teams = Teams text.editor.teams = Teams
text.editor.elevation = Elevation text.editor.elevation = Elevation
text.editor.errorimageload = Error loading file\:\n[accent]{0} text.editor.errorimageload = Error loading file:\n[accent]{0}
text.editor.errorimagesave = Error saving file\:\n[accent]{0} text.editor.errorimagesave = Error saving file:\n[accent]{0}
text.editor.generate = Generate text.editor.generate = Generate
text.editor.resize = Resize text.editor.resize = Resize
text.editor.loadmap = Load Map text.editor.loadmap = Load Map
text.editor.savemap = Save Map text.editor.savemap = Save Map
text.editor.saved = Saved\! text.editor.saved = Saved!
text.editor.save.noname = Your map does not have a name\! Set one in the 'map info' menu. text.editor.save.noname = Your map does not have a name! Set one in the 'map info' menu.
text.editor.save.overwrite = Your map overwrites a built-in map\! Pick a different name in the 'map info' menu. text.editor.save.overwrite = Your map overwrites a built-in map! Pick a different name in the 'map info' menu.
text.editor.import.exists = [scarlet]Unable to import\:[] a built-in map named '{0}' already exists\! text.editor.import.exists = [scarlet]Unable to import:[] a built-in map named '{0}' already exists!
text.editor.import = Import... text.editor.import = Import...
text.editor.importmap = Import Map text.editor.importmap = Import Map
text.editor.importmap.description = Import an already existing map text.editor.importmap.description = Import an already existing map
@@ -238,21 +241,21 @@ text.editor.exportimage = Export Terrain Image
text.editor.exportimage.description = Export a map image file text.editor.exportimage.description = Export a map image file
text.editor.loadimage = Import Terrain text.editor.loadimage = Import Terrain
text.editor.saveimage = Export Terrain text.editor.saveimage = Export Terrain
text.editor.unsaved = [scarlet]You have unsaved changes\![]\nAre you sure you want to exit? text.editor.unsaved = [scarlet]You have unsaved changes![]\nAre you sure you want to exit?
text.editor.resizemap = Resize Map text.editor.resizemap = Resize Map
text.editor.mapname = Map Name\: text.editor.mapname = Map Name:
text.editor.overwrite = [accent]Warning\!\nThis overwrites an existing map. text.editor.overwrite = [accent]Warning!\nThis overwrites an existing map.
text.editor.overwrite.confirm = [scarlet]Warning\![] A map with this name already exists. Are you sure you want to overwrite it? text.editor.overwrite.confirm = [scarlet]Warning![] A map with this name already exists. Are you sure you want to overwrite it?
text.editor.selectmap = Select a map to load\: text.editor.selectmap = Select a map to load:
text.width = Width\: text.width = Width:
text.height = Height\: text.height = Height:
text.menu = Menu text.menu = Menu
text.play = Play text.play = Play
text.load = Load text.load = Load
text.save = Save text.save = Save
text.fps = FPS\: {0} text.fps = FPS: {0}
text.tps = TPS\: {0} text.tps = TPS: {0}
text.ping = Ping\: {0}ms text.ping = Ping: {0}ms
text.language.restart = Please restart your game for the language settings to take effect. text.language.restart = Please restart your game for the language settings to take effect.
text.settings = Settings text.settings = Settings
text.tutorial = Tutorial text.tutorial = Tutorial
@@ -260,7 +263,7 @@ text.editor = Editor
text.mapeditor = Map Editor text.mapeditor = Map Editor
text.donate = Donate text.donate = Donate
text.connectfail = [crimson]Failed to connect to server\:\n\n[accent]{0} text.connectfail = [crimson]Failed to connect to server:\n\n[accent]{0}
text.error.unreachable = Server unreachable.\nIs the address spelled correctly? text.error.unreachable = Server unreachable.\nIs the address spelled correctly?
text.error.invalidaddress = Invalid address. text.error.invalidaddress = Invalid address.
text.error.timedout = Timed out!\nMake sure the host has port forwarding set up, and that the address is correct! text.error.timedout = Timed out!\nMake sure the host has port forwarding set up, and that the address is correct!
@@ -277,8 +280,8 @@ text.settings.game = Game
text.settings.sound = Sound text.settings.sound = Sound
text.settings.graphics = Graphics text.settings.graphics = Graphics
text.settings.cleardata = Clear Game Data... text.settings.cleardata = Clear Game Data...
text.settings.clear.confirm = Are you sure you want to clear this data?\nWhat is done cannot be undone\! text.settings.clear.confirm = Are you sure you want to clear this data?\nWhat is done cannot be undone!
text.settings.clearall.confirm = [scarlet]WARNING\![]\nThis will clear all data, including saves, maps, unlocks and keybinds.\nOnce you press 'ok' the game will wipe all data and automatically exit. text.settings.clearall.confirm = [scarlet]WARNING![]\nThis will clear all data, including saves, maps, unlocks and keybinds.\nOnce you press 'ok' the game will wipe all data and automatically exit.
text.settings.clearsectors = Clear Sectors text.settings.clearsectors = Clear Sectors
text.settings.clearunlocks = Clear Unlocks text.settings.clearunlocks = Clear Unlocks
text.settings.clearall = Clear All text.settings.clearall = Clear All
@@ -321,7 +324,8 @@ text.blocks.coolant = Coolant
text.blocks.coolantuse = Coolant Use text.blocks.coolantuse = Coolant Use
text.blocks.inputliquidfuel = Fuel Liquid text.blocks.inputliquidfuel = Fuel Liquid
text.blocks.liquidfueluse = Liquid Fuel Use text.blocks.liquidfueluse = Liquid Fuel Use
text.blocks.explosive = Highly explosive\! text.blocks.boostitem = Boost Item
text.blocks.boostliquid = Boost Liquid
text.blocks.health = Health text.blocks.health = Health
text.blocks.inaccuracy = Inaccuracy text.blocks.inaccuracy = Inaccuracy
text.blocks.shots = Shots text.blocks.shots = Shots
@@ -346,6 +350,8 @@ text.category.liquids = Liquids
text.category.items = Items text.category.items = Items
text.category.crafting = Crafting text.category.crafting = Crafting
text.category.shooting = Shooting text.category.shooting = Shooting
text.category.optional = Optional Enhancements
setting.indicators.name = Ally Indicators
setting.autotarget.name = Auto-Target setting.autotarget.name = Auto-Target
setting.fpscap.name = Max FPS setting.fpscap.name = Max FPS
setting.fpscap.none = None setting.fpscap.none = None
@@ -355,14 +361,13 @@ setting.difficulty.easy = easy
setting.difficulty.normal = normal setting.difficulty.normal = normal
setting.difficulty.hard = hard setting.difficulty.hard = hard
setting.difficulty.insane = insane setting.difficulty.insane = insane
setting.difficulty.name = Difficulty\: setting.difficulty.name = Difficulty:
setting.screenshake.name = Screen Shake setting.screenshake.name = Screen Shake
setting.effects.name = Display Effects setting.effects.name = Display Effects
setting.sensitivity.name = Controller Sensitivity setting.sensitivity.name = Controller Sensitivity
setting.saveinterval.name = Autosave Interval setting.saveinterval.name = Autosave Interval
setting.seconds = {0} Seconds setting.seconds = {0} Seconds
setting.fullscreen.name = Fullscreen setting.fullscreen.name = Fullscreen
setting.multithread.name = Multithreading
setting.fps.name = Show FPS setting.fps.name = Show FPS
setting.vsync.name = VSync setting.vsync.name = VSync
setting.lasers.name = Show Power Lasers setting.lasers.name = Show Power Lasers
@@ -381,6 +386,7 @@ command.retreat = Retreat
command.patrol = Patrol command.patrol = Patrol
keybind.press = Press a key... keybind.press = Press a key...
keybind.press.axis = Press an axis or key... keybind.press.axis = Press an axis or key...
keybind.screenshot.name = Map Screenshot
keybind.move_x.name = Move x keybind.move_x.name = Move x
keybind.move_y.name = Move y keybind.move_y.name = Move y
keybind.select.name = Select/Shoot keybind.select.name = Select/Shoot
@@ -461,7 +467,7 @@ mech.delta-mech.description = A fast, lightly-armored mech made for hit-and-run
mech.tau-mech.name = Tau mech.tau-mech.name = Tau
mech.tau-mech.weapon = Restruct Laser mech.tau-mech.weapon = Restruct Laser
mech.tau-mech.ability = Repair Burst mech.tau-mech.ability = Repair Burst
mech.tau-mech.description = The support mech. Heals allied blocks by shooting at them. Can extinguish fires and heal allies in a radius with its repair ability. mech.tau-mech.description = The support mech. Heals allied blocks by shooting at them. Can heal allies in a radius with its repair ability.
mech.omega-mech.name = Omega mech.omega-mech.name = Omega
mech.omega-mech.weapon = Swarm Missiles mech.omega-mech.weapon = Swarm Missiles
mech.omega-mech.ability = Armored Configuration mech.omega-mech.ability = Armored Configuration
@@ -479,21 +485,21 @@ mech.trident-ship.weapon = Bomb Bay
mech.glaive-ship.name = Glaive mech.glaive-ship.name = Glaive
mech.glaive-ship.description = A large, well-armored gunship. Equipped with an incendiary repeater. Good acceleration and maximum speed. mech.glaive-ship.description = A large, well-armored gunship. Equipped with an incendiary repeater. Good acceleration and maximum speed.
mech.glaive-ship.weapon = Flame Repeater mech.glaive-ship.weapon = Flame Repeater
text.item.explosiveness = [LIGHT_GRAY]Explosiveness\: {0}% text.item.explosiveness = [LIGHT_GRAY]Explosiveness: {0}%
text.item.flammability = [LIGHT_GRAY]Flammability\: {0}% text.item.flammability = [LIGHT_GRAY]Flammability: {0}%
text.item.radioactivity = [LIGHT_GRAY]Radioactivity\: {0}% text.item.radioactivity = [LIGHT_GRAY]Radioactivity: {0}%
text.item.fluxiness = [LIGHT_GRAY]Flux Power\: {0}% text.item.fluxiness = [LIGHT_GRAY]Flux Power: {0}%
text.unit.health = [LIGHT_GRAY]Health\: {0} text.unit.health = [LIGHT_GRAY]Health: {0}
text.unit.speed = [LIGHT_GRAY]Speed\: {0} text.unit.speed = [LIGHT_GRAY]Speed: {0}
text.mech.weapon = [LIGHT_GRAY]Weapon\: {0} text.mech.weapon = [LIGHT_GRAY]Weapon: {0}
text.mech.armor = [LIGHT_GRAY]Armor\: {0} text.mech.armor = [LIGHT_GRAY]Armor: {0}
text.mech.itemcapacity = [LIGHT_GRAY]Item Capacity\: {0} text.mech.itemcapacity = [LIGHT_GRAY]Item Capacity: {0}
text.mech.minespeed = [LIGHT_GRAY]Mining Speed\: {0} text.mech.minespeed = [LIGHT_GRAY]Mining Speed: {0}
text.mech.minepower = [LIGHT_GRAY]Mining Power\: {0} text.mech.minepower = [LIGHT_GRAY]Mining Power: {0}
text.mech.ability = [LIGHT_GRAY]Ability\: {0} text.mech.ability = [LIGHT_GRAY]Ability: {0}
text.liquid.heatcapacity = [LIGHT_GRAY]Heat Capacity\: {0} text.liquid.heatcapacity = [LIGHT_GRAY]Heat Capacity: {0}
text.liquid.viscosity = [LIGHT_GRAY]Viscosity\: {0} text.liquid.viscosity = [LIGHT_GRAY]Viscosity: {0}
text.liquid.temperature = [LIGHT_GRAY]Temperature\: {0} text.liquid.temperature = [LIGHT_GRAY]Temperature: {0}
block.constructing = {0} [LIGHT_GRAY](Constructing) block.constructing = {0} [LIGHT_GRAY](Constructing)
block.spawn.name = Enemy Spawn block.spawn.name = Enemy Spawn
block.core.name = Core block.core.name = Core

View File

@@ -286,6 +286,7 @@ text.no = Nein
text.info.title = [accent]Info text.info.title = [accent]Info
text.error.title = [crimson] Ein Fehler ist aufgetreten text.error.title = [crimson] Ein Fehler ist aufgetreten
text.error.crashtitle = Ein Fehler ist aufgetreten! text.error.crashtitle = Ein Fehler ist aufgetreten!
text.blocks.unknown = [LIGHT_GRAY]???
text.blocks.blockinfo = Blockinfo: text.blocks.blockinfo = Blockinfo:
text.blocks.powercapacity = Kapazität text.blocks.powercapacity = Kapazität
text.blocks.powershot = Stromverbrauch/Schuss text.blocks.powershot = Stromverbrauch/Schuss
@@ -318,7 +319,8 @@ text.blocks.coolant = Kühlmittel
text.blocks.coolantuse = Kühlmittelverbrauch text.blocks.coolantuse = Kühlmittelverbrauch
text.blocks.inputliquidfuel = Kraftstoff text.blocks.inputliquidfuel = Kraftstoff
text.blocks.liquidfueluse = Kraftstoffverbrauch text.blocks.liquidfueluse = Kraftstoffverbrauch
text.blocks.explosive = Hochexplosiv! text.blocks.boostitem = Boost Item
text.blocks.boostliquid = Boost Liquid
text.blocks.health = Lebenspunkte text.blocks.health = Lebenspunkte
text.blocks.inaccuracy = Ungenauigkeit text.blocks.inaccuracy = Ungenauigkeit
text.blocks.shots = Schüsse text.blocks.shots = Schüsse
@@ -343,6 +345,7 @@ text.category.liquids = Flüssigkeiten
text.category.items = Materialien text.category.items = Materialien
text.category.crafting = Erzeugung text.category.crafting = Erzeugung
text.category.shooting = Schießen text.category.shooting = Schießen
text.category.optional = Optional Enhancements
setting.autotarget.name = Auto-Zielauswahl setting.autotarget.name = Auto-Zielauswahl
setting.fpscap.name = Max FPS setting.fpscap.name = Max FPS
setting.fpscap.none = kein setting.fpscap.none = kein
@@ -359,7 +362,6 @@ setting.sensitivity.name = Controller-Empfindlichkeit
setting.saveinterval.name = Autosave Häufigkeit setting.saveinterval.name = Autosave Häufigkeit
setting.seconds = {0} Sekunden setting.seconds = {0} Sekunden
setting.fullscreen.name = Vollbild setting.fullscreen.name = Vollbild
setting.multithread.name = Multithreading
setting.fps.name = Zeige FPS setting.fps.name = Zeige FPS
setting.vsync.name = VSync setting.vsync.name = VSync
setting.lasers.name = Zeige Stromlaser setting.lasers.name = Zeige Stromlaser
@@ -404,8 +406,6 @@ mode.waves.name = Wellen
mode.waves.description = Der normale Modus. Begrenzte Ressourcen und automatische Wellen. mode.waves.description = Der normale Modus. Begrenzte Ressourcen und automatische Wellen.
mode.sandbox.name = Sandkasten mode.sandbox.name = Sandkasten
mode.sandbox.description = Unendliche Ressourcen und kein Timer für Wellen. mode.sandbox.description = Unendliche Ressourcen und kein Timer für Wellen.
mode.custom.warning = [scarlet]FREISCHALTUNGEN IN BENUTZERDEFINIERTEN SPIELEN ODER SERVERN WERDEN NICHT GESPEICHERT.[]\n\nSpiele in Sektoren, um Dinge freizuschalten.
mode.custom.warning.read = Nur um sicherzugehen, dass du es gelesen hast:\n[scarlet]FREISCHALTUNGEN IN BENUTZERDEFINIERTEN SPIELEN ODER SERVERN WERDEN NICHT GESPEICHERT.[]\n\nSpiele in Sektoren, um Dinge freizuschalten.(Ich wünschte, der Hinweis wäre nicht notwendig, aber anscheinend ist er das)[]
mode.freebuild.name = Freier Bau mode.freebuild.name = Freier Bau
mode.freebuild.description = Begrenzte Ressourcen und kein Timer für Wellen. mode.freebuild.description = Begrenzte Ressourcen und kein Timer für Wellen.
mode.pvp.name = PvP mode.pvp.name = PvP

View File

@@ -99,7 +99,7 @@ text.hosts.refresh = Actualizar
text.hosts.discovering = Descubrir partidas LAN text.hosts.discovering = Descubrir partidas LAN
text.server.refreshing = Actualizando servidor... text.server.refreshing = Actualizando servidor...
text.hosts.none = [lightgray]¡No se han encontrado partidas LAN! text.hosts.none = [lightgray]¡No se han encontrado partidas LAN!
text.host.invalid = [scarlet]No se ha podido conectar al anfitrión text.host.invalid = [scarlet]No se ha podido conectar al anfitrión.
text.trace = Rastrear Jugador text.trace = Rastrear Jugador
text.trace.playername = Nombre de jugador: [accent]{0} text.trace.playername = Nombre de jugador: [accent]{0}
text.trace.ip = IP: [accent]{0} text.trace.ip = IP: [accent]{0}
@@ -176,7 +176,7 @@ text.open = Abrir
text.cancel = Cancelar text.cancel = Cancelar
text.openlink = Abrir Enlace text.openlink = Abrir Enlace
text.copylink = Copiar Enlace text.copylink = Copiar Enlace
text.back = Atras text.back = Atrás
text.quit.confirm = ¿Estás seguro de querer salir de la partida? text.quit.confirm = ¿Estás seguro de querer salir de la partida?
text.changelog.title = Registro de Parches text.changelog.title = Registro de Parches
text.changelog.loading = Consiguiendo el registro de parches... text.changelog.loading = Consiguiendo el registro de parches...
@@ -252,7 +252,7 @@ text.load = Cargar
text.save = Guardar text.save = Guardar
text.fps = FPS: {0} text.fps = FPS: {0}
text.tps = TPS: {0} text.tps = TPS: {0}
text.ping = Ping: {0}ms text.ping = Ping: {0} ms
text.language.restart = Por favor reinicie el juego para que los cambios del lenguaje surjan efecto. text.language.restart = Por favor reinicie el juego para que los cambios del lenguaje surjan efecto.
text.settings = Ajustes text.settings = Ajustes
text.tutorial = Tutorial text.tutorial = Tutorial
@@ -277,15 +277,16 @@ text.settings.graphics = Gráficos
text.settings.cleardata = Limpiar Datos del Juego... text.settings.cleardata = Limpiar Datos del Juego...
text.settings.clear.confirm = ¿Estas seguro de querer limpiar estos datos?\n¡Esta acción no puede deshacerse! text.settings.clear.confirm = ¿Estas seguro de querer limpiar estos datos?\n¡Esta acción no puede deshacerse!
text.settings.clearall.confirm = [scarlet]ADVERTENCIA![]\nEsto va a eliminar todos tus datos, incluyendo guardados, mapas, desbloqueos y keybinds.\nUna vez presiones 'ok', el juego va a borrrar todos tus datos y saldrá del juego automáticamente. text.settings.clearall.confirm = [scarlet]ADVERTENCIA![]\nEsto va a eliminar todos tus datos, incluyendo guardados, mapas, desbloqueos y keybinds.\nUna vez presiones 'ok', el juego va a borrrar todos tus datos y saldrá del juego automáticamente.
text.settings.clearsectors = Limpiar Sectores text.settings.clearsectors = Eliminar Sectores
text.settings.clearunlocks = Limpiar Desbloqueos text.settings.clearunlocks = Eliminar Desbloqueos
text.settings.clearall = Limpiar Todo text.settings.clearall = Eliminar Todo
text.paused = Pausado text.paused = Pausado
text.yes = text.yes =
text.no = No text.no = No
text.info.title = [accent]Información text.info.title = [accent]Información
text.error.title = [crimson]Un error ha ocurrido. text.error.title = [crimson]Un error ha ocurrido.
text.error.crashtitle = Un error ha ocurrido. text.error.crashtitle = Un error ha ocurrido.
text.blocks.unknown = [LIGHT_GRAY]???
text.blocks.blockinfo = Información del Bloque text.blocks.blockinfo = Información del Bloque
text.blocks.powercapacity = Capacidad de Energía text.blocks.powercapacity = Capacidad de Energía
text.blocks.powershot = Energía/Disparo text.blocks.powershot = Energía/Disparo
@@ -310,15 +311,16 @@ text.blocks.inputitem = Objeto de Entrada
text.blocks.inputitems = Objetos de Entrada text.blocks.inputitems = Objetos de Entrada
text.blocks.outputitem = Objeto de Salida text.blocks.outputitem = Objeto de Salida
text.blocks.drilltier = Taladrables text.blocks.drilltier = Taladrables
text.blocks.drillspeed = Velocidad de Base del Taladro text.blocks.drillspeed = Velocidad Base del Taladro
text.blocks.liquidoutput = Líquido de Salida text.blocks.liquidoutput = Líquido de Salida
text.blocks.liquidoutputspeed = Velocidad de Salida del Líquido text.blocks.liquidoutputspeed = Velocidad de Salida del Líquido
text.blocks.liquiduse = Uso del Líquido text.blocks.liquiduse = Uso de Líquido
text.blocks.coolant = Refrigerante text.blocks.coolant = Refrigerante
text.blocks.coolantuse = Uso del Refrigerante text.blocks.coolantuse = Uso del Refrigerante
text.blocks.inputliquidfuel = Combustible Líquido text.blocks.inputliquidfuel = Combustible Líquido
text.blocks.liquidfueluse = Uso del Combustible Líquido text.blocks.liquidfueluse = Uso del Combustible Líquido
text.blocks.explosive = ¡Altamente Explosivo! text.blocks.boostitem = Boost Item
text.blocks.boostliquid = Boost Liquid
text.blocks.health = Vida text.blocks.health = Vida
text.blocks.inaccuracy = Imprecisión text.blocks.inaccuracy = Imprecisión
text.blocks.shots = Disparos text.blocks.shots = Disparos
@@ -343,6 +345,7 @@ text.category.liquids = Líquidos
text.category.items = Objetos text.category.items = Objetos
text.category.crafting = Fabricación text.category.crafting = Fabricación
text.category.shooting = Disparo text.category.shooting = Disparo
text.category.optional = Mejoras Opcionales
setting.autotarget.name = Auto apuntado setting.autotarget.name = Auto apuntado
setting.fpscap.name = Máx FPS setting.fpscap.name = Máx FPS
setting.fpscap.none = Nada setting.fpscap.none = Nada
@@ -359,7 +362,6 @@ setting.sensitivity.name = Sensibilidad del Control
setting.saveinterval.name = Intervalo del Auto-guardado setting.saveinterval.name = Intervalo del Auto-guardado
setting.seconds = {0} Segundos setting.seconds = {0} Segundos
setting.fullscreen.name = Pantalla Completa setting.fullscreen.name = Pantalla Completa
setting.multithread.name = Multiproceso
setting.fps.name = Mostrar FPS setting.fps.name = Mostrar FPS
setting.vsync.name = VSync setting.vsync.name = VSync
setting.lasers.name = Mostrar Energía de los Láseres setting.lasers.name = Mostrar Energía de los Láseres
@@ -368,7 +370,7 @@ setting.musicvol.name = Volumen de la Música
setting.mutemusic.name = Silenciar Musica setting.mutemusic.name = Silenciar Musica
setting.sfxvol.name = Volumen de los efectos de sonido setting.sfxvol.name = Volumen de los efectos de sonido
setting.mutesound.name = Silenciar Sonido setting.mutesound.name = Silenciar Sonido
setting.crashreport.name = Send Anonymous Crash Reports setting.crashreport.name = Enviar informes de fallos anónimos
text.keybind.title = Reasignar Teclas text.keybind.title = Reasignar Teclas
category.general.name = General category.general.name = General
category.view.name = Visión category.view.name = Visión
@@ -404,15 +406,13 @@ mode.waves.name = hordas
mode.waves.description = El modo normal. con recursos limitados y entrada de hordas automática. mode.waves.description = El modo normal. con recursos limitados y entrada de hordas automática.
mode.sandbox.name = sandbox mode.sandbox.name = sandbox
mode.sandbox.description = Recursos ilimitados y sin temporizador para las hordas. mode.sandbox.description = Recursos ilimitados y sin temporizador para las hordas.
mode.custom.warning = Ten en cuenta que los bloques no pueden usarse en partidas personalizadas hasta que se desbloqueen en sectores.\n\n[LIGHT_GRAY]Si no desbloqueaste ningún bloque, ningno aparecerá.
mode.custom.warning.read = Solo para asegurar que lo has leído:\n[scarlet]¡LOS DESBLOQUEOS EN PARTIDAS PERSONALIZADAS NO ESTÁN DISPONIBLES EN LOS SECTORES U OTROS MODOS DE JUEGO!\n\n[LIGHT_GRAY](Ojalá esto no fuera necesario, pero parece que lo es)
mode.freebuild.name = construcción libre mode.freebuild.name = construcción libre
mode.freebuild.description = recursos limitados y no hay temporizador para las hordas. mode.freebuild.description = recursos limitados y no hay temporizador para las hordas.
mode.pvp.name = PvP mode.pvp.name = PvP
mode.pvp.description = Pelea contra otros jugadores localmente. mode.pvp.description = Pelea contra otros jugadores localmente.
content.item.name = Objetos content.item.name = Objetos
content.liquid.name = Líquidos content.liquid.name = Líquidos
content.unit.name = Units content.unit.name = Unidades
content.recipe.name = Bloques content.recipe.name = Bloques
content.mech.name = Mecanoides content.mech.name = Mecanoides
item.stone.name = Piedra item.stone.name = Piedra
@@ -433,7 +433,7 @@ item.silicon.name = Silicona
item.silicon.description = Un semiconductor muy útil, se usa para paneles solares y muchos electrónicos complejos. item.silicon.description = Un semiconductor muy útil, se usa para paneles solares y muchos electrónicos complejos.
item.plastanium.name = Plastanio item.plastanium.name = Plastanio
item.plastanium.description = Un material dúctil, ligero usado en aeronaves y proyectiles de fragmentación. item.plastanium.description = Un material dúctil, ligero usado en aeronaves y proyectiles de fragmentación.
item.phase-fabric.name = Phase Fabric item.phase-fabric.name = Tejido de fase
item.phase-fabric.description = Una sustancia casi sin peso usada en electrónica avanzada y en tecnología autoreparadora. item.phase-fabric.description = Una sustancia casi sin peso usada en electrónica avanzada y en tecnología autoreparadora.
item.surge-alloy.name = Surge Alloy item.surge-alloy.name = Surge Alloy
item.surge-alloy.description = Una aleación avanzada con propiedades eléctricas únicas. item.surge-alloy.description = Una aleación avanzada con propiedades eléctricas únicas.
@@ -500,7 +500,7 @@ block.metalfloor.name = Suelo de Metal
block.deepwater.name = Aguas profundas block.deepwater.name = Aguas profundas
block.water.name = Agua block.water.name = Agua
block.lava.name = Lava block.lava.name = Lava
block.tar.name = Tar block.tar.name = Alquitrán
block.blackstone.name = Piedra negra block.blackstone.name = Piedra negra
block.stone.name = Piedra block.stone.name = Piedra
block.dirt.name = Tierra block.dirt.name = Tierra
@@ -516,8 +516,8 @@ block.copper-wall.name = Muro de cobre
block.copper-wall-large.name = Muro de cobre grande block.copper-wall-large.name = Muro de cobre grande
block.dense-alloy-wall.name = Muro de aleación densa block.dense-alloy-wall.name = Muro de aleación densa
block.dense-alloy-wall-large.name = Muro de aleación densa grande block.dense-alloy-wall-large.name = Muro de aleación densa grande
block.phase-wall.name = Phase Wall block.phase-wall.name = Muro de Fase grande
block.phase-wall-large.name = Large Phase Wall block.phase-wall-large.name = Muro de Fase grande
block.thorium-wall.name = Pared de Torio block.thorium-wall.name = Pared de Torio
block.thorium-wall-large.name = Pared de Torio grande block.thorium-wall-large.name = Pared de Torio grande
block.door.name = Puerta block.door.name = Puerta
@@ -532,7 +532,7 @@ block.junction.name = Cruce
block.router.name = Enrutador block.router.name = Enrutador
block.distributor.name = Distribuidor block.distributor.name = Distribuidor
block.sorter.name = Clasificador block.sorter.name = Clasificador
block.sorter.description = Clasifica objetos. Si un objeto es igual a uno seleccionado, va a pasar. O si no, el objeto saldrá en la izquierda y la derecha. block.sorter.description = Clasifica objetos. Si un objeto es igual al seleccionado, pasará al frente. Si no, el objeto saldrá por la izquierda y la derecha.
block.overflow-gate.name = Compuerta de Desborde block.overflow-gate.name = Compuerta de Desborde
block.overflow-gate.description = Un enrutador que solo saca por la izquierda y la derecha si la cinta del frente está llena. block.overflow-gate.description = Un enrutador que solo saca por la izquierda y la derecha si la cinta del frente está llena.
block.smelter.name = Horno de Fundición block.smelter.name = Horno de Fundición
@@ -562,7 +562,7 @@ block.dart-ship-pad.name = Pad de nave de dardos
block.delta-mech-pad.name = Pad de mecanoide Delta block.delta-mech-pad.name = Pad de mecanoide Delta
block.javelin-ship-pad.name = Pad de nave Jabalina block.javelin-ship-pad.name = Pad de nave Jabalina
block.trident-ship-pad.name = Pad de nave Tridente block.trident-ship-pad.name = Pad de nave Tridente
block.glaive-ship-pad.name = Glaive Ship Pad block.glaive-ship-pad.name = Pad de nave Glaive
block.omega-mech-pad.name = Pad de mecanoide Omega block.omega-mech-pad.name = Pad de mecanoide Omega
block.tau-mech-pad.name = Pad de mecanoide Tau block.tau-mech-pad.name = Pad de mecanoide Tau
block.conduit.name = Conducto block.conduit.name = Conducto
@@ -589,12 +589,12 @@ block.solar-panel-large.name = Panel Solar Grande
block.oil-extractor.name = Extractor de Petróleo block.oil-extractor.name = Extractor de Petróleo
block.spirit-factory.name = Fábrica de Drones Espíritu block.spirit-factory.name = Fábrica de Drones Espíritu
block.phantom-factory.name = Fábrica de Drones Fantasmales block.phantom-factory.name = Fábrica de Drones Fantasmales
block.wraith-factory.name = Wraith Fighter Factory block.wraith-factory.name = Fábrica de Wraith Fighter
block.ghoul-factory.name = Ghoul Bomber Factory block.ghoul-factory.name = Fábrica de Ghoul Bomber
block.dagger-factory.name = Fábrica de Dagas block.dagger-factory.name = Fábrica de Dagas
block.titan-factory.name = Fábrica de Titanes block.titan-factory.name = Fábrica de Titanes
block.fortress-factory.name = Fortress Mech Factory block.fortress-factory.name = Fábrica de mecanoide Fortress
block.revenant-factory.name = Revenant Fighter Factory block.revenant-factory.name = Fábrica de Revenant Fighter
block.repair-point.name = Punto de Reparación block.repair-point.name = Punto de Reparación
block.pulse-conduit.name = Conducto de Pulso block.pulse-conduit.name = Conducto de Pulso
block.phase-conduit.name = Conducto de Fase block.phase-conduit.name = Conducto de Fase
@@ -606,18 +606,18 @@ block.rotary-pump.name = Bomba Rotatoria
block.thorium-reactor.name = Reactor de Torio block.thorium-reactor.name = Reactor de Torio
block.command-center.name = Centro de Comando block.command-center.name = Centro de Comando
block.mass-driver.name = Teletransportador de Masa block.mass-driver.name = Teletransportador de Masa
block.blast-drill.name = Taladro Gigante block.blast-drill.name = Taladro de explosión
block.thermal-pump.name = Bomba Térmica block.thermal-pump.name = Bomba Térmica
block.thermal-generator.name = Generador Térmico block.thermal-generator.name = Generador Térmico
block.alloy-smelter.name = Alloy Smtler block.alloy-smelter.name = Alloy Smelter
block.mend-projector.name = Proyector de reparación block.mend-projector.name = Proyector de reparación
block.surge-wall.name = Surge Wall block.surge-wall.name = Surge Wall
block.surge-wall-large.name = Large Surge Wall block.surge-wall-large.name = Large Surge Wall
block.cyclone.name = Ciclón block.cyclone.name = Ciclón
block.fuse.name = Fuse block.fuse.name = Fuse
block.shock-mine.name = Shock Mine block.shock-mine.name = Shock Mine
block.overdrive-projector.name = Overdrive Projector block.overdrive-projector.name = Proyector de sobremarcha
block.force-projector.name = Force Projector block.force-projector.name = Proyector de fuerza
block.arc.name = Arc block.arc.name = Arc
block.rtg-generator.name = Generador RTG block.rtg-generator.name = Generador RTG
block.spectre.name = Espectro block.spectre.name = Espectro
@@ -703,7 +703,7 @@ block.junction.description = Actúa como puente para dos transportadores que se
block.mass-driver.description = El mejor bloque de transorte. Recoge varios objetos y los dispara a otro conductor de masa en un largo rango. block.mass-driver.description = El mejor bloque de transorte. Recoge varios objetos y los dispara a otro conductor de masa en un largo rango.
block.smelter.description = Quema carbón para fundir cobre y plomo, produciendo así aleación densa. block.smelter.description = Quema carbón para fundir cobre y plomo, produciendo así aleación densa.
block.arc-smelter.description = Funde cobre y plomo en aleación densa usando una fuented de energía externa. block.arc-smelter.description = Funde cobre y plomo en aleación densa usando una fuented de energía externa.
block.silicon-smelter.description = Reduces sand with highly pure coke in order to produce silicon. block.silicon-smelter.description = Reduce arena con coque de alta pureza para producir silicona.
block.plastanium-compressor.description = Produce plastanio con aceite y titanio. block.plastanium-compressor.description = Produce plastanio con aceite y titanio.
block.phase-weaver.description = Produces phase fabric from radioactive thorium and high amounts of sand. block.phase-weaver.description = Produces phase fabric from radioactive thorium and high amounts of sand.
block.alloy-smelter.description = Produce "surge alloy" con titanio, plomo, silicona y cobre. block.alloy-smelter.description = Produce "surge alloy" con titanio, plomo, silicona y cobre.
@@ -743,12 +743,12 @@ block.trident-ship-pad.description = Deja tu nave actual y transfórmate en una
block.javelin-ship-pad.description = Deja tu nave actual y transfórmate en una unidad aérea fuerte y rápida interceptora con arma eléctrica.\nUsa el pad tocándolo dos veces mientras estás en él. block.javelin-ship-pad.description = Deja tu nave actual y transfórmate en una unidad aérea fuerte y rápida interceptora con arma eléctrica.\nUsa el pad tocándolo dos veces mientras estás en él.
block.glaive-ship-pad.description = Deja tu nave actual y transfórmate en una unidad aérea grande y bien armada nave pistolera.\nUsa el pad tocándolo dos veces mientras estás en él. block.glaive-ship-pad.description = Deja tu nave actual y transfórmate en una unidad aérea grande y bien armada nave pistolera.\nUsa el pad tocándolo dos veces mientras estás en él.
block.tau-mech-pad.description = Deja tu nave actual y transfórmate en un mecanoide de soporte que puede reparar construcciones y tropas aliadas.\nUsa el pad tocándolo dos veces mientras estás en él. block.tau-mech-pad.description = Deja tu nave actual y transfórmate en un mecanoide de soporte que puede reparar construcciones y tropas aliadas.\nUsa el pad tocándolo dos veces mientras estás en él.
block.delta-mech-pad.description = Leave your current vessel and change into a fast, lightly-armored mech made for hit-and-run attacks.\nUse the pad by double tapping while standing on it. block.delta-mech-pad.description = Deja tu nave actual y transfórmate en un mecanoide rápido y ligero hecho para ataques de emboscada y retirada.\nUsa el pad tocándolo dos veces mientras estás en él.
block.omega-mech-pad.description = Deja tu nave actual y transfórmate en un mecanoide pesado y bien armado, hecho para asaltos en primera línea.\nUsa el pad tocándolo dos veces mientras estás en él. block.omega-mech-pad.description = Deja tu nave actual y transfórmate en un mecanoide pesado y bien armado, hecho para asaltos en primera línea.\nUsa el pad tocándolo dos veces mientras estás en él.
block.spirit-factory.description = Produce drones ligeros que obtienen minerales y reparan bloques. block.spirit-factory.description = Produce drones ligeros que obtienen minerales y reparan bloques.
block.phantom-factory.description = Produce drones avanzados que son significativamente más eficientes que un dron espíritu. block.phantom-factory.description = Produce drones avanzados que son significativamente más eficientes que un dron espíritu.
block.wraith-factory.description = Produce unidades aéreas rápidas e interceptoras. block.wraith-factory.description = Produce unidades aéreas rápidas e interceptoras.
block.ghoul-factory.description = Produce unidadess bombarderas pesadas. block.ghoul-factory.description = Produce unidades bombarderas pesadas.
block.dagger-factory.description = Produce unidades terrestres básicas. block.dagger-factory.description = Produce unidades terrestres básicas.
block.titan-factory.description = Produce unidades terrestres avanzadas. block.titan-factory.description = Produce unidades terrestres avanzadas.
block.fortress-factory.description = Produce unidades terrestres de artillería pesada. block.fortress-factory.description = Produce unidades terrestres de artillería pesada.

View File

@@ -286,6 +286,7 @@ text.no = Non
text.info.title = Info text.info.title = Info
text.error.title = [crimson]Une erreur s'est produite text.error.title = [crimson]Une erreur s'est produite
text.error.crashtitle = Une erreur s'est produite text.error.crashtitle = Une erreur s'est produite
text.blocks.unknown = [LIGHT_GRAY]???
text.blocks.blockinfo = Info sur le bloc text.blocks.blockinfo = Info sur le bloc
text.blocks.powercapacity = capacité d'énergie text.blocks.powercapacity = capacité d'énergie
text.blocks.powershot = Énergie/Tir text.blocks.powershot = Énergie/Tir
@@ -318,7 +319,8 @@ text.blocks.coolant = Liquide de refroidissement
text.blocks.coolantuse = Quantité de liquide de refroidissement utilisée text.blocks.coolantuse = Quantité de liquide de refroidissement utilisée
text.blocks.inputliquidfuel = Carburant liquide text.blocks.inputliquidfuel = Carburant liquide
text.blocks.liquidfueluse = Quantité de carburant liquide utilisé text.blocks.liquidfueluse = Quantité de carburant liquide utilisé
text.blocks.explosive = Hautement explosif! text.blocks.boostitem = Boost Item
text.blocks.boostliquid = Boost Liquid
text.blocks.health = Santé text.blocks.health = Santé
text.blocks.inaccuracy = Précision text.blocks.inaccuracy = Précision
text.blocks.shots = Tir text.blocks.shots = Tir
@@ -343,6 +345,7 @@ text.category.liquids = Liquides
text.category.items = Objets text.category.items = Objets
text.category.crafting = Fabrication text.category.crafting = Fabrication
text.category.shooting = Défense text.category.shooting = Défense
text.category.optional = Optional Enhancements
setting.autotarget.name = Visée automatique setting.autotarget.name = Visée automatique
setting.fpscap.name = Max FPS setting.fpscap.name = Max FPS
setting.fpscap.none = None setting.fpscap.none = None
@@ -359,7 +362,6 @@ setting.sensitivity.name = Sensibilité de la manette
setting.saveinterval.name = Intervalle des sauvegardes auto setting.saveinterval.name = Intervalle des sauvegardes auto
setting.seconds = {0} secondes setting.seconds = {0} secondes
setting.fullscreen.name = Plein écran setting.fullscreen.name = Plein écran
setting.multithread.name = Multithreading [scarlet] (instable!)
setting.fps.name = Afficher FPS setting.fps.name = Afficher FPS
setting.vsync.name = VSync setting.vsync.name = VSync
setting.lasers.name = Afficher les rayons des lasers setting.lasers.name = Afficher les rayons des lasers
@@ -404,8 +406,6 @@ mode.waves.name = Vagues
mode.waves.description = le mode de jeu normal. Ressource limitée et vagues d'ennemis. mode.waves.description = le mode de jeu normal. Ressource limitée et vagues d'ennemis.
mode.sandbox.name = bac à sable mode.sandbox.name = bac à sable
mode.sandbox.description = Ressources infinies et pas de timer pour les vagues. mode.sandbox.description = Ressources infinies et pas de timer pour les vagues.
mode.custom.warning = Notez que les blocs débloqués en partie personnalisées ne sont pas conservés pour les secteurs.\n\n[LIGHT_GRAY]En mode bac à sable, seul les blocs débloqués en mode secteur peuvent être utilisés.
mode.custom.warning.read = Simplement pour vérifier que vous l'avez lu :\n[scarlet]CE QUI EST DEBLOQUE LORS DES PARITES PERSONNALISEES NE L'EST POUR LES SECTEURS OU LES AUTRES MODES DE JEU!\n\n[LIGHT_GRAY](J'aurais souhaité que ce ne soit pas nécessaire, mais ça a l'air de l'être )
mode.freebuild.name = construction libre mode.freebuild.name = construction libre
mode.freebuild.description = Ressource limitée et pas de timer pour les vagues. mode.freebuild.description = Ressource limitée et pas de timer pour les vagues.
mode.pvp.name = JcJ mode.pvp.name = JcJ

View File

@@ -1,5 +1,6 @@
text.credits.text = Created by [ROYAL]Anuken[] - [SKY]anukendev@gmail.com[]\n\n[GRAY](In case you can't tell, this text is currently unfinished.\nTranslators, don't edit it yet!) text.credits.text = Créé par [ROYAL]Anuken[] - [SKY]anukendev@gmail.com[]
text.credits = Crédits text.credits = Crédits
text.contributors = Traducteurs et contributeurs
text.discord = Rejoignez le discord de Mindustry ! text.discord = Rejoignez le discord de Mindustry !
text.link.discord.description = Le discord officiel de Mindustry text.link.discord.description = Le discord officiel de Mindustry
text.link.github.description = Code source du jeu text.link.github.description = Code source du jeu
@@ -9,6 +10,7 @@ text.link.itch.io.description = Page web itch.io avec les versions ordinateurs t
text.link.google-play.description = Page Google Play Store du jeu text.link.google-play.description = Page Google Play Store du jeu
text.link.wiki.description = Wiki officiel de Mindustry text.link.wiki.description = Wiki officiel de Mindustry
text.linkfail = L'ouverture du lien a échoué!\nL'URL a été copiée dans votre presse-papier. text.linkfail = L'ouverture du lien a échoué!\nL'URL a été copiée dans votre presse-papier.
text.screenshot = Capture d'écran enregistrée sur {0}
text.gameover = Le base a été détruit. text.gameover = Le base a été détruit.
text.gameover.pvp = L'équipe[accent] {0}[] a gagnée ! text.gameover.pvp = L'équipe[accent] {0}[] a gagnée !
text.sector.gameover = Ce secteur a été perdu. Réessayer ? text.sector.gameover = Ce secteur a été perdu. Réessayer ?
@@ -54,7 +56,7 @@ text.mission.wave.enemy = Survivez[accent] {0}/{1} []vagues\n{2} Ennemi
text.mission.wave.menu = Survivez[accent] {0} []vagues text.mission.wave.menu = Survivez[accent] {0} []vagues
text.mission.battle = Détruire la base ennemie. text.mission.battle = Détruire la base ennemie.
text.mission.resource.menu = Obtenez {0} x{1} text.mission.resource.menu = Obtenez {0} x{1}
text.mission.resource = Obtain {0}:\n[accent]{1}/{2}[] text.mission.resource = Obtenez {0}:\n[accent]{1}/{2}[]
text.mission.block = Créez {0} text.mission.block = Créez {0}
text.mission.unit = Créez {0} unité text.mission.unit = Créez {0} unité
text.mission.command = Envoyer une commande à {0} unités text.mission.command = Envoyer une commande à {0} unités
@@ -62,7 +64,7 @@ text.mission.linknode = Reliez le transmetteur énergétique
text.mission.display = [accent]Mission:\n[LIGHT_GRAY]{0} text.mission.display = [accent]Mission:\n[LIGHT_GRAY]{0}
text.mission.mech = Changer de mécha[accent] {0}[] text.mission.mech = Changer de mécha[accent] {0}[]
text.mission.create = Créez[accent] {0}[] text.mission.create = Créez[accent] {0}[]
text.none = <none> text.none = <Vide>
text.close = Fermer text.close = Fermer
text.quit = Quitter text.quit = Quitter
text.maps = Cartes text.maps = Cartes
@@ -71,6 +73,7 @@ text.nextmission = Prochaine Mission
text.maps.none = [LIGHT_GRAY]Aucune carte trouvée! text.maps.none = [LIGHT_GRAY]Aucune carte trouvée!
text.about.button = À propos text.about.button = À propos
text.name = Nom: text.name = Nom:
text.noname = Choisissez d'abord [accent]un pseudo[].
text.filename = Nom du fichier: text.filename = Nom du fichier:
text.unlocked = Nouveau bloc debloqué! text.unlocked = Nouveau bloc debloqué!
text.unlocked.plural = Nouveaux blocs débloqués! text.unlocked.plural = Nouveaux blocs débloqués!
@@ -150,8 +153,8 @@ text.save.delete.confirm = Êtes-vous sûr de supprimer cette sauvegarde ?
text.save.delete = Supprimer text.save.delete = Supprimer
text.save.export = Exporter une\nSauvegarde text.save.export = Exporter une\nSauvegarde
text.save.import.invalid = [accent]Cette sauvegarde est invalide! text.save.import.invalid = [accent]Cette sauvegarde est invalide!
text.save.import.fail = [crimson]L'importation de la sauvegarde\na échoué: [accent]{0} text.save.import.fail = [crimson]L'importation de la sauvegarde\na échouée: [accent]{0}
text.save.export.fail = [crimson]L'exportation de la sauvegarde\na échoué: [accent]{0} text.save.export.fail = [crimson]L'exportation de la sauvegarde\na échouée: [accent]{0}
text.save.import = Importer une sauvegarde text.save.import = Importer une sauvegarde
text.save.newslot = Nom de la sauvegarde: text.save.newslot = Nom de la sauvegarde:
text.save.rename = Renommer text.save.rename = Renommer
@@ -286,6 +289,7 @@ text.no = Non
text.info.title = Info text.info.title = Info
text.error.title = [crimson]Une erreur s'est produite text.error.title = [crimson]Une erreur s'est produite
text.error.crashtitle = Une erreur s'est produite text.error.crashtitle = Une erreur s'est produite
text.blocks.unknown = [LIGHT_GRAY]???
text.blocks.blockinfo = Info sur le bloc text.blocks.blockinfo = Info sur le bloc
text.blocks.powercapacity = Capacité d'énergie text.blocks.powercapacity = Capacité d'énergie
text.blocks.powershot = Énergie/Tir text.blocks.powershot = Énergie/Tir
@@ -318,7 +322,8 @@ text.blocks.coolant = Liquide de refroidissement
text.blocks.coolantuse = Quantité de liquide de refroidissement utilisé text.blocks.coolantuse = Quantité de liquide de refroidissement utilisé
text.blocks.inputliquidfuel = Carburant liquide text.blocks.inputliquidfuel = Carburant liquide
text.blocks.liquidfueluse = Quantité de carburant liquide utilisé text.blocks.liquidfueluse = Quantité de carburant liquide utilisé
text.blocks.explosive = Hautement explosif ! text.blocks.boostitem = Objet boostant la production
text.blocks.boostliquid = Liquide boostant la production
text.blocks.health = Santé text.blocks.health = Santé
text.blocks.inaccuracy = Précision text.blocks.inaccuracy = Précision
text.blocks.shots = Tirs text.blocks.shots = Tirs
@@ -343,6 +348,7 @@ text.category.liquids = Liquides
text.category.items = Objets text.category.items = Objets
text.category.crafting = Fabrication text.category.crafting = Fabrication
text.category.shooting = Défense text.category.shooting = Défense
text.category.optional = Améliorations facultatives
setting.autotarget.name = Visée automatique setting.autotarget.name = Visée automatique
setting.fpscap.name = Max FPS setting.fpscap.name = Max FPS
setting.fpscap.none = Vide setting.fpscap.none = Vide
@@ -359,7 +365,6 @@ setting.sensitivity.name = Contôle de la sensibilité
setting.saveinterval.name = Intervalle des sauvegardes auto setting.saveinterval.name = Intervalle des sauvegardes auto
setting.seconds = {0} Secondes setting.seconds = {0} Secondes
setting.fullscreen.name = Plein écran setting.fullscreen.name = Plein écran
setting.multithread.name = Multithreading
setting.fps.name = Afficher FPS setting.fps.name = Afficher FPS
setting.vsync.name = VSync setting.vsync.name = VSync
setting.lasers.name = Afficher les rayons des lasers setting.lasers.name = Afficher les rayons des lasers
@@ -368,7 +373,7 @@ setting.musicvol.name = Volume de la musique
setting.mutemusic.name = Couper la musique setting.mutemusic.name = Couper la musique
setting.sfxvol.name = Volume des SFX setting.sfxvol.name = Volume des SFX
setting.mutesound.name = Couper les SFX setting.mutesound.name = Couper les SFX
setting.crashreport.name = Send Anonymous Crash Reports setting.crashreport.name = Envoyer des rapports d'incident anonymement.
text.keybind.title = Paramétrer les touches text.keybind.title = Paramétrer les touches
category.general.name = Général category.general.name = Général
category.view.name = Voir category.view.name = Voir
@@ -404,8 +409,6 @@ mode.waves.name = Vagues
mode.waves.description = Le mode normal. Ressources limitées et vagues déclenchées automatiquement. mode.waves.description = Le mode normal. Ressources limitées et vagues déclenchées automatiquement.
mode.sandbox.name = Bac à sable mode.sandbox.name = Bac à sable
mode.sandbox.description = Ressources infinies et pas de compte à rebours pour les vagues. mode.sandbox.description = Ressources infinies et pas de compte à rebours pour les vagues.
mode.custom.warning = Notez que les blocs débloqués en partie personnalisées ne sont pas conservés pour les secteurs.\n\n[LIGHT_GRAY]En mode bac à sable, seul les blocs débloqués en mode secteur peuvent être utilisés.
mode.custom.warning.read = Juste pour vous assurer que vous l'avez lu:\n[scarlet]Les déverrouillages dans les jeux personnalisés ne sont pas transférés aux secteurs ou à d'autres modes!\n\n[LIGHT_GRAY](J'aimerais que ce ne soit pas nécessaire, mais apparemment c'est le cas)
mode.freebuild.name = Construction libre mode.freebuild.name = Construction libre
mode.freebuild.description = Ressources limitées et pas de compte à rebours pour les vagues. mode.freebuild.description = Ressources limitées et pas de compte à rebours pour les vagues.
mode.pvp.name = PvP mode.pvp.name = PvP
@@ -493,7 +496,7 @@ text.mech.ability = [LIGHT_GRAY]Compétence: {0}
text.liquid.heatcapacity = [LIGHT_GRAY]Capacité Thermique {0} text.liquid.heatcapacity = [LIGHT_GRAY]Capacité Thermique {0}
text.liquid.viscosity = [LIGHT_GRAY]Viscosité: {0} text.liquid.viscosity = [LIGHT_GRAY]Viscosité: {0}
text.liquid.temperature = [LIGHT_GRAY]Température: {0} text.liquid.temperature = [LIGHT_GRAY]Température: {0}
block.constructing = {0}\n[LIGHT_GRAY](Constructing) block.constructing = {0}\n[LIGHT_GRAY](En construction)
block.spawn.name = Générateur d'ennemi block.spawn.name = Générateur d'ennemi
block.core.name = Base block.core.name = Base
block.metalfloor.name = Sol en métal block.metalfloor.name = Sol en métal

View File

@@ -286,6 +286,7 @@ text.no = No
text.info.title = [accent]Info text.info.title = [accent]Info
text.error.title = [crimson]Telah terjadi kesalahan text.error.title = [crimson]Telah terjadi kesalahan
text.error.crashtitle = Telah terjadi kesalahan text.error.crashtitle = Telah terjadi kesalahan
text.blocks.unknown = [LIGHT_GRAY]???
text.blocks.blockinfo = Info Blok text.blocks.blockinfo = Info Blok
text.blocks.powercapacity = Kapasitas Tenaga text.blocks.powercapacity = Kapasitas Tenaga
text.blocks.powershot = Tenaga/tembakan text.blocks.powershot = Tenaga/tembakan
@@ -318,7 +319,8 @@ text.blocks.coolant = Coolant
text.blocks.coolantuse = Coolant Use text.blocks.coolantuse = Coolant Use
text.blocks.inputliquidfuel = Fuel Liquid text.blocks.inputliquidfuel = Fuel Liquid
text.blocks.liquidfueluse = Liquid Fuel Use text.blocks.liquidfueluse = Liquid Fuel Use
text.blocks.explosive = Mudah meledak! text.blocks.boostitem = Boost Item
text.blocks.boostliquid = Boost Liquid
text.blocks.health = Darah text.blocks.health = Darah
text.blocks.inaccuracy = Ketidaktelitian text.blocks.inaccuracy = Ketidaktelitian
text.blocks.shots = Tembakan text.blocks.shots = Tembakan
@@ -343,6 +345,7 @@ text.category.liquids = Liquids
text.category.items = Items text.category.items = Items
text.category.crafting = Crafting text.category.crafting = Crafting
text.category.shooting = Shooting text.category.shooting = Shooting
text.category.optional = Optional Enhancements
setting.autotarget.name = Auto-Target setting.autotarget.name = Auto-Target
setting.fpscap.name = Max FPS setting.fpscap.name = Max FPS
setting.fpscap.none = None setting.fpscap.none = None
@@ -359,7 +362,6 @@ setting.sensitivity.name = Sensitivitas Pengendali
setting.saveinterval.name = Waktu Simpan Otomatis setting.saveinterval.name = Waktu Simpan Otomatis
setting.seconds = {0} Detik setting.seconds = {0} Detik
setting.fullscreen.name = Layar Penuh setting.fullscreen.name = Layar Penuh
setting.multithread.name = Multithreading
setting.fps.name = Tunjukkan FPS setting.fps.name = Tunjukkan FPS
setting.vsync.name = VSync setting.vsync.name = VSync
setting.lasers.name = Tampilkan Laser Tenaga setting.lasers.name = Tampilkan Laser Tenaga
@@ -404,8 +406,6 @@ mode.waves.name = gelombang
mode.waves.description = the normal mode. limited resources and automatic incoming waves. mode.waves.description = the normal mode. limited resources and automatic incoming waves.
mode.sandbox.name = sandbox mode.sandbox.name = sandbox
mode.sandbox.description = infinite resources and no timer for waves. mode.sandbox.description = infinite resources and no timer for waves.
mode.custom.warning = Note that blocks cannot be used in custom games until they are unlocked in sectors.\n\n[LIGHT_GRAY]If you have not unlocked any blocks, none will appear.
mode.custom.warning.read = Just to make sure you've read it:\n[scarlet]UNLOCKS IN CUSTOM GAMES DO NOT CARRY OVER TO SECTORS OR OTHER MODES!\n\n[LIGHT_GRAY](I wish this wasn't necessary, but apparently it is)
mode.freebuild.name = freebuild mode.freebuild.name = freebuild
mode.freebuild.description = limited resources and no timer for waves. mode.freebuild.description = limited resources and no timer for waves.
mode.pvp.name = PvP mode.pvp.name = PvP

View File

@@ -286,6 +286,7 @@ text.no = No
text.info.title = [accent] Info text.info.title = [accent] Info
text.error.title = [crimson]Si è verificato un errore text.error.title = [crimson]Si è verificato un errore
text.error.crashtitle = Si è verificato un errore text.error.crashtitle = Si è verificato un errore
text.blocks.unknown = [LIGHT_GRAY]???
text.blocks.blockinfo = info sul blocco text.blocks.blockinfo = info sul blocco
text.blocks.powercapacity = Capacità Energetica text.blocks.powercapacity = Capacità Energetica
text.blocks.powershot = Danno/Colpo text.blocks.powershot = Danno/Colpo
@@ -318,7 +319,8 @@ text.blocks.coolant = Refrigerante
text.blocks.coolantuse = uso refrigerante text.blocks.coolantuse = uso refrigerante
text.blocks.inputliquidfuel = carburante liquido text.blocks.inputliquidfuel = carburante liquido
text.blocks.liquidfueluse = Utilizzo carburante liquido text.blocks.liquidfueluse = Utilizzo carburante liquido
text.blocks.explosive = Altamente esplosivo! text.blocks.boostitem = Boost Item
text.blocks.boostliquid = Boost Liquid
text.blocks.health = Salute text.blocks.health = Salute
text.blocks.inaccuracy = Inaccuratezza text.blocks.inaccuracy = Inaccuratezza
text.blocks.shots = Colpi text.blocks.shots = Colpi
@@ -343,6 +345,7 @@ text.category.liquids = Liquidi
text.category.items = Oggetti text.category.items = Oggetti
text.category.crafting = Produzione text.category.crafting = Produzione
text.category.shooting = Potenza di fuoco text.category.shooting = Potenza di fuoco
text.category.optional = Optional Enhancements
setting.autotarget.name = Auto-Target setting.autotarget.name = Auto-Target
setting.fpscap.name = Limite FPS setting.fpscap.name = Limite FPS
setting.fpscap.none = Niente setting.fpscap.none = Niente
@@ -359,7 +362,6 @@ setting.sensitivity.name = Sensibilità del controller
setting.saveinterval.name = Intervallo di salvataggio automatico setting.saveinterval.name = Intervallo di salvataggio automatico
setting.seconds = {0} Secondi setting.seconds = {0} Secondi
setting.fullscreen.name = Schermo Intero setting.fullscreen.name = Schermo Intero
setting.multithread.name = multithreading
setting.fps.name = Mostra FPS setting.fps.name = Mostra FPS
setting.vsync.name = VSync setting.vsync.name = VSync
setting.lasers.name = Mostra Laser Energetici setting.lasers.name = Mostra Laser Energetici
@@ -404,8 +406,6 @@ mode.waves.name = ondate
mode.waves.description = modalità normale. risorse limitate e ondate automatiche. mode.waves.description = modalità normale. risorse limitate e ondate automatiche.
mode.sandbox.name = Sandbox mode.sandbox.name = Sandbox
mode.sandbox.description = risorse infinite e nessun timer per le ondate. mode.sandbox.description = risorse infinite e nessun timer per le ondate.
mode.custom.warning = Note that blocks cannot be used in custom games until they are unlocked in sectors.\n\n[LIGHT_GRAY]If you have not unlocked any blocks, none will appear.
mode.custom.warning.read = Just to make sure you've read it:\n[scarlet]UNLOCKS IN CUSTOM GAMES DO NOT CARRY OVER TO SECTORS OR OTHER MODES!\n\n[LIGHT_GRAY](I wish this wasn't necessary, but apparently it is)
mode.freebuild.name = freebuild mode.freebuild.name = freebuild
mode.freebuild.description = risorse limitate e nessun timer per le ondate. mode.freebuild.description = risorse limitate e nessun timer per le ondate.
mode.pvp.name = PvP mode.pvp.name = PvP

View File

@@ -1,5 +1,6 @@
text.credits.text = Created by [ROYAL]Anuken[] - [SKY]anukendev@gmail.com[]\n\n[GRAY](In case you can't tell, this text is currently unfinished.\nTranslators, don't edit it yet!) text.credits.text = Created by [ROYAL]Anuken[] - [SKY]anukendev@gmail.com[]\n\n[GRAY](In case you can't tell, this text is currently unfinished.\nTranslators, don't edit it yet!)
text.credits = クレジット text.credits = クレジット
text.contributors = 翻訳や協力してくださった方々
text.discord = DiscordのMindustryに参加! text.discord = DiscordのMindustryに参加!
text.link.discord.description = Mindustryの公式Discordグループ text.link.discord.description = Mindustryの公式Discordグループ
text.link.github.description = ゲームのソースコード text.link.github.description = ゲームのソースコード
@@ -22,7 +23,7 @@ text.level.select = レベル選択
text.level.mode = ゲームモード: text.level.mode = ゲームモード:
text.construction.desktop = ブロックの選択や建設を止めるには、[accent]スペースを使用してください[]。 text.construction.desktop = ブロックの選択や建設を止めるには、[accent]スペースを使用してください[]。
text.construction.title = ブロック建設ガイド text.construction.title = ブロック建設ガイド
text.construction = [accent]ブロック建設モード[]になりました。\n設置するには、機体の近くの設置可能な場所をタップしてください。\nブロックを選択した状態で、チェックボタンを押して確認すると、機体が建設を始めます。\n\n- [accent]ブロックの削除[]は、タップ範囲を選択してください。\n- [accent]範囲の選択[]は、長押しして、範囲のブロックをドラッグしてください。\n- [accent]一列にブロックを設置[]するには、 タップで空いている場所を長押しして、伸ばしたい方向にドラッグしてください\n- [accent]建設や範囲の選択をキャンセル[]するには、左下の X ボタンを押してください。 text.construction = [accent]ブロック建設モード[]になりました。\n設置するには、機体の近くの設置可能な場所をタップしてください。\nブロックを選択した状態で、チェックボタンを押して確認すると、機体が建設を始めます。\n\n- [accent]ブロックの撤去[]は、タップして範囲を選択してください。\n- [accent]範囲の選択[]は、長押しして、範囲のブロックをドラッグしてください。\n- [accent]一列にブロックを設置[]するには、 タップで空いている場所を長押しして、伸ばしたい方向にドラッグしてください\n- [accent]建設や範囲の選択をキャンセル[]するには、左下の X ボタンを押してください。
text.deconstruction.title = ブロック撤去ガイド text.deconstruction.title = ブロック撤去ガイド
text.deconstruction = [accent]ブロック撤去モード[]になりました。\n\nブロックを撤去するには、機体の近くのブロックをタップしてください。\nブロックを選択した状態で、チェックボタンを押して確認すると、機体がブロックの撤去を始めます。\n\n- [accent]ブロックの破壊[]は、タップで範囲を選択してください。\n- [accent]範囲を選択してブロックを撤去[]するには、 タップで空いている場所を長押しして、伸ばしたい方向にドラッグしてください\n- [accent]撤去や範囲選択をキャンセル[]するには、左下の X ボタンを押してください。 text.deconstruction = [accent]ブロック撤去モード[]になりました。\n\nブロックを撤去するには、機体の近くのブロックをタップしてください。\nブロックを選択した状態で、チェックボタンを押して確認すると、機体がブロックの撤去を始めます。\n\n- [accent]ブロックの破壊[]は、タップで範囲を選択してください。\n- [accent]範囲を選択してブロックを撤去[]するには、 タップで空いている場所を長押しして、伸ばしたい方向にドラッグしてください\n- [accent]撤去や範囲選択をキャンセル[]するには、左下の X ボタンを押してください。
text.showagain = 次回以降表示しない text.showagain = 次回以降表示しない
@@ -71,6 +72,7 @@ text.nextmission = 次のミッションへ
text.maps.none = [LIGHT_GRAY]マップが存在しません! text.maps.none = [LIGHT_GRAY]マップが存在しません!
text.about.button = About text.about.button = About
text.name = 名前: text.name = 名前:
text.noname = 先に[accent]プレイヤー名[]を決めてください。
text.filename = ファイル名: text.filename = ファイル名:
text.unlocked = 新しいブロックをアンロック! text.unlocked = 新しいブロックをアンロック!
text.unlocked.plural = 新しいブロックをアンロック! text.unlocked.plural = 新しいブロックをアンロック!
@@ -286,6 +288,7 @@ text.no = いいえ
text.info.title = 情報 text.info.title = 情報
text.error.title = [crimson]エラーが発生しました text.error.title = [crimson]エラーが発生しました
text.error.crashtitle = エラーが発生しました text.error.crashtitle = エラーが発生しました
text.blocks.unknown = [LIGHT_GRAY]???
text.blocks.blockinfo = ブロック情報 text.blocks.blockinfo = ブロック情報
text.blocks.powercapacity = 電力容量 text.blocks.powercapacity = 電力容量
text.blocks.powershot = 電力/ショット text.blocks.powershot = 電力/ショット
@@ -301,7 +304,7 @@ text.blocks.powerdamage = 電力/ダメージ
text.blocks.inputitemcapacity = 搬入アイテム容量 text.blocks.inputitemcapacity = 搬入アイテム容量
text.blocks.outputitemcapacity = 搬出アイテム容量 text.blocks.outputitemcapacity = 搬出アイテム容量
text.blocks.itemcapacity = アイテム容量 text.blocks.itemcapacity = アイテム容量
text.blocks.basepowergeneration = 電力発電量 text.blocks.basepowergeneration = 基本発電量
text.blocks.powertransferspeed = 電力伝送量 text.blocks.powertransferspeed = 電力伝送量
text.blocks.craftspeed = 生産速度 text.blocks.craftspeed = 生産速度
text.blocks.inputliquid = 必要な液体 text.blocks.inputliquid = 必要な液体
@@ -310,7 +313,7 @@ text.blocks.inputitem = 必要なアイテム
text.blocks.inputitems = 必要なアイテム text.blocks.inputitems = 必要なアイテム
text.blocks.outputitem = 搬出アイテム text.blocks.outputitem = 搬出アイテム
text.blocks.drilltier = ドリル text.blocks.drilltier = ドリル
text.blocks.drillspeed = 採掘速度 text.blocks.drillspeed = 基本採掘速度
text.blocks.liquidoutput = 搬出液体 text.blocks.liquidoutput = 搬出液体
text.blocks.liquidoutputspeed = 液体搬出速度 text.blocks.liquidoutputspeed = 液体搬出速度
text.blocks.liquiduse = 液体使用量 text.blocks.liquiduse = 液体使用量
@@ -318,7 +321,8 @@ text.blocks.coolant = 冷却
text.blocks.coolantuse = 冷却使用量 text.blocks.coolantuse = 冷却使用量
text.blocks.inputliquidfuel = 液体燃料 text.blocks.inputliquidfuel = 液体燃料
text.blocks.liquidfueluse = 液体燃料使用量 text.blocks.liquidfueluse = 液体燃料使用量
text.blocks.explosive = 高い爆発性! text.blocks.boostitem = 加速アイテム
text.blocks.boostliquid = 加速液体
text.blocks.health = 耐久値 text.blocks.health = 耐久値
text.blocks.inaccuracy = 不正確 text.blocks.inaccuracy = 不正確
text.blocks.shots = ショット text.blocks.shots = ショット
@@ -343,6 +347,7 @@ text.category.liquids = 液体
text.category.items = アイテム text.category.items = アイテム
text.category.crafting = 製作速度 text.category.crafting = 製作速度
text.category.shooting = 攻撃速度 text.category.shooting = 攻撃速度
text.category.optional = 機能強化オプション
setting.autotarget.name = 自動ターゲット setting.autotarget.name = 自動ターゲット
setting.fpscap.name = 最大FPS setting.fpscap.name = 最大FPS
setting.fpscap.none = なし setting.fpscap.none = なし
@@ -359,7 +364,6 @@ setting.sensitivity.name = 操作感度
setting.saveinterval.name = 自動保存間隔 setting.saveinterval.name = 自動保存間隔
setting.seconds = {0} 秒 setting.seconds = {0} 秒
setting.fullscreen.name = フルスクリーン setting.fullscreen.name = フルスクリーン
setting.multithread.name = マルチスレッド
setting.fps.name = FPSを表示 setting.fps.name = FPSを表示
setting.vsync.name = VSync setting.vsync.name = VSync
setting.lasers.name = 電力レーザーを表示 setting.lasers.name = 電力レーザーを表示
@@ -399,13 +403,11 @@ keybind.chat_history_next.name = 次のチャット履歴
keybind.chat_scroll.name = チャットスクロール keybind.chat_scroll.name = チャットスクロール
keybind.drop_unit.name = ドロップユニット keybind.drop_unit.name = ドロップユニット
keybind.zoom_minimap.name = ミニマップのズーム keybind.zoom_minimap.name = ミニマップのズーム
mode.text.help.title = モード説明 mode.text.help.title = モード説明
mode.waves.name = ウェーブ mode.waves.name = ウェーブ
mode.waves.description = ノーマルモードです。限られた資源でウェーブが自動的に始まります。 mode.waves.description = ノーマルモードです。限られた資源でウェーブが自動的に始まります。
mode.sandbox.name = サンドボックス mode.sandbox.name = サンドボックス
mode.sandbox.description = 無限の資源でウェーブを自由に始められます。 mode.sandbox.description = 無限の資源でウェーブを自由に始められます。
mode.custom.warning = [scarlet]カスタムゲームまたは、サーバ内でのアンロックは保存されません。[]\n\nアンロックするには区域でプレイしてください。
mode.custom.warning.read = 必ずお読みください:\n[scarlet]カスタムゲーム内でのアンロックは区域やほかのモードには影響しません!\n\n[LIGHT_GRAY](多分必要ないと思いますが)
mode.freebuild.name = フリービルド mode.freebuild.name = フリービルド
mode.freebuild.description = 限られた資源でウェーブを自由に始められます。 mode.freebuild.description = 限られた資源でウェーブを自由に始められます。
mode.pvp.name = PvP mode.pvp.name = PvP

View File

@@ -11,13 +11,13 @@ text.link.wiki.description = 공식 Mindustry 위키 (영어)
text.linkfail = 링크를 여는데 실패했습니다! URL이 기기의 클립보드에 복사되었습니다. text.linkfail = 링크를 여는데 실패했습니다! URL이 기기의 클립보드에 복사되었습니다.
text.gameover = 코어가 터졌습니다. 게임 오버! text.gameover = 코어가 터졌습니다. 게임 오버!
text.gameover.pvp = [accent]{0}[] 팀이 승리했습니다! text.gameover.pvp = [accent]{0}[] 팀이 승리했습니다!
text.sector.gameover = 역을 공략하는데 실패했습니다. 포기 하시겠습니까? text.sector.gameover = 역을 공략하는데 실패했습니다. 포기 하시겠습니까?
text.sector.retry = 아니오 text.sector.retry = 아니오
text.highscore = [YELLOW]최고점수 달성! text.highscore = [YELLOW]최고점수 달성!
text.wave.lasted = [accent]{0}[] 까지 버티셨습니다. text.wave.lasted = [accent]{0}[] 까지 버티셨습니다.
text.level.highscore = 최고 점수 : [accent]{0} text.level.highscore = 최고 점수 : [accent]{0}
text.level.delete.title = 삭제 확인 text.level.delete.title = 삭제 확인
text.map.delete = 정말로 "[orange]{0}[]" 맵을 삭제하시겠습니까? text.map.delete = 정말로 "[accent]{0}[]" 맵을 삭제하시겠습니까?
text.level.select = 맵 선택 text.level.select = 맵 선택
text.level.mode = 게임모드 : text.level.mode = 게임모드 :
text.construction.desktop = PC 에서의 조작 방법이 변경되었습니다.\n블록 선택을 해제하거나 건설을 중지하려면 [accent]스페이스 바[]를 누르세요. text.construction.desktop = PC 에서의 조작 방법이 변경되었습니다.\n블록 선택을 해제하거나 건설을 중지하려면 [accent]스페이스 바[]를 누르세요.
@@ -33,12 +33,12 @@ text.loadgame = 게임 불러오기
text.joingame = 멀티플레이 text.joingame = 멀티플레이
text.addplayers = 플레이어 추가/제거 text.addplayers = 플레이어 추가/제거
text.customgame = 커스텀 게임 text.customgame = 커스텀 게임
text.sectors = 싱글 플레이 text.sectors = 지역 플레이
text.sector = 역 : [LIGHT_GRAY]{0} text.sector = 역 : [LIGHT_GRAY]{0}
text.sector.time = 시간 : [LIGHT_GRAY]{0} text.sector.time = 시간 : [LIGHT_GRAY]{0}
text.sector.deploy = 시작 text.sector.deploy = 시작
text.sector.abandon = 초기화 text.sector.abandon = 초기화
text.sector.abandon.confirm = 정말로 이 역의 모든 진행상을 초기화 하겠습니까?\n이 작업은 되돌릴 수 없습니다! text.sector.abandon.confirm = 정말로 이 역의 모든 진행상을 초기화 하겠습니까?\n이 작업은 되돌릴 수 없습니다!
text.sector.resume = 계속하기 text.sector.resume = 계속하기
text.sector.locked = [scarlet][[완료안됨] text.sector.locked = [scarlet][[완료안됨]
text.sector.unexplored = [accent][[탐색안됨] text.sector.unexplored = [accent][[탐색안됨]
@@ -47,21 +47,21 @@ text.mission = 목표 : [LIGHT_GRAY] {0}
text.mission.main = 주요 목표 : [LIGHT_GRAY]{0} text.mission.main = 주요 목표 : [LIGHT_GRAY]{0}
text.mission.info = 미션 정보 text.mission.info = 미션 정보
text.mission.complete = 미션 성공! text.mission.complete = 미션 성공!
text.mission.complete.body = 역 {0},{1} 클리어. text.mission.complete.body = 역 {0},{1} 클리어.
text.mission.wave = [accent]{0}/{1}[] 단계동안 생존하세요.남은 시간 {2}\n text.mission.wave = [accent]{0}/{1}[] 단계 생존\n{2}초 남음
text.mission.wave.enemies = [accent] {0}/{1} []단계 생존하세요.\n{2}마리 남음 text.mission.wave.enemies = [accent]{0}/{1} []단계 생존\n{2}마리 남음
text.mission.wave.enemy = [accent] {0}/{1} []단계 생존하세요.\n{2}마리 남음 text.mission.wave.enemy = [accent]{0}/{1} []단계 생존\n{2}마리 남음
text.mission.wave.menu = [accent]{0}[] 단계 text.mission.wave.menu = [accent]{0}[] 단계
text.mission.battle = 적 코어를 파괴하세요. text.mission.battle = 적 코어를 파괴하세요
text.mission.resource.menu = {0} {1}개 수집 text.mission.resource.menu = {0} {1}개 수집
text.mission.resource = {0} 자원을 수집하세요 :\n[accent]{1}/{2}[] text.mission.resource = {0} 을(를) 수집하세요\n[accent]{1}/{2}
text.mission.block = {0} 를 만드세요 text.mission.block = {0} 를 만드세요
text.mission.unit = {0} 유닛을 만드세요 text.mission.unit = {0} 유닛을 만드세요
text.mission.command = 유닛에게 {0} 명령을 보내세요 text.mission.command = 유닛에게 {0} 명령을 보내세요
text.mission.linknode = 전력 노드를 연결하세요. text.mission.linknode = 전력 노드를 연결하세요
text.mission.display = [accent]미션 :\n[LIGHT_GRAY]{0} text.mission.display = [accent]목표 : [LIGHT_GRAY]{0}
text.mission.mech = [accent]{0}[] 기체로 바꾸세요 text.mission.mech = [accent]{0}[] 기체로 바꾸세요
text.mission.create = [accent]{0}[] 자원을 만드세요 text.mission.create = [accent]{0}[] 을(를)설치하세요.
text.none = <없음> text.none = <없음>
text.close = 닫기 text.close = 닫기
text.quit = 나가기 text.quit = 나가기
@@ -79,8 +79,8 @@ text.players.single = 현재 {0}명만 있음.
text.server.closing = [accent]서버 닫는중... text.server.closing = [accent]서버 닫는중...
text.server.kicked.kick = 서버에서 추방되었습니다! text.server.kicked.kick = 서버에서 추방되었습니다!
text.server.kicked.serverClose = 서버 종료됨. text.server.kicked.serverClose = 서버 종료됨.
text.server.kicked.sectorComplete = 역 클리어. text.server.kicked.sectorComplete = 역 클리어.
text.server.kicked.sectorComplete.text = 임무 성공.\n서버가 다음역 맵으로 이동되었습니다. text.server.kicked.sectorComplete.text = 임무 성공.\n서버가 다음역 맵으로 이동되었습니다.
text.server.kicked.clientOutdated = 오래된 버전의 클라이언트 입니다! 게임을 업데이트 하세요! text.server.kicked.clientOutdated = 오래된 버전의 클라이언트 입니다! 게임을 업데이트 하세요!
text.server.kicked.serverOutdated = 오래된 버전의 서버입니다! 서버 호스트 관리자에게 문의하세요! text.server.kicked.serverOutdated = 오래된 버전의 서버입니다! 서버 호스트 관리자에게 문의하세요!
text.server.kicked.banned = 뭘 하셨는지는 모르겠지만, 이제 영원히 서버에 접속할 수 없습니다. text.server.kicked.banned = 뭘 하셨는지는 모르겠지만, 이제 영원히 서버에 접속할 수 없습니다.
@@ -138,7 +138,7 @@ text.connecting.data = [accent]맵 데이터 다운로드중...
text.server.port = 포트 : text.server.port = 포트 :
text.server.addressinuse = 이 주소는 이미 사용중입니다! text.server.addressinuse = 이 주소는 이미 사용중입니다!
text.server.invalidport = 포트 번호가 잘못되었습니다. text.server.invalidport = 포트 번호가 잘못되었습니다.
text.server.error = [crimson]{0}[orange]서버를 여는데 오류가 발생했습니다.[] text.server.error = [crimson]{0}[accent]서버를 여는데 오류가 발생했습니다.[]
text.save.old = 이 저장파일은 이전 버전의 게임용이며, 지금은 사용할 수 없습니다. \n\n[LIGHT_GRAY]4.0 정식때 이전 게임버전에서 만든 저장파일과 호환됩니다. text.save.old = 이 저장파일은 이전 버전의 게임용이며, 지금은 사용할 수 없습니다. \n\n[LIGHT_GRAY]4.0 정식때 이전 게임버전에서 만든 저장파일과 호환됩니다.
text.save.new = 새로 저장 text.save.new = 새로 저장
text.save.overwrite = 이 저장 슬롯을 덮어씌우겠습니까? text.save.overwrite = 이 저장 슬롯을 덮어씌우겠습니까?
@@ -149,17 +149,17 @@ text.savefail = 게임을 저장하지 못했습니다!
text.save.delete.confirm = 이 저장파일을 삭제 하시겠습니까? text.save.delete.confirm = 이 저장파일을 삭제 하시겠습니까?
text.save.delete = 삭제 text.save.delete = 삭제
text.save.export = 저장파일 내보내기 text.save.export = 저장파일 내보내기
text.save.import.invalid = [orange]파일이 잘못되었습니다! text.save.import.invalid = [accent]파일이 잘못되었습니다!
text.save.import.fail = [crimson]저장파일을 불러오지 못함 : [orange]{0} text.save.import.fail = [crimson]저장파일을 불러오지 못함 : [accent]{0}
text.save.export.fail = [crimson]저장파일을 내보내지 못함 : [orange]{0} text.save.export.fail = [crimson]저장파일을 내보내지 못함 : [accent]{0}
text.save.import = 저장파일 불러오기 text.save.import = 저장파일 불러오기
text.save.newslot = 저장 파일이름 : text.save.newslot = 저장 파일이름 :
text.save.rename = 이름 변경 text.save.rename = 이름 변경
text.save.rename.text = 새 이름 : text.save.rename.text = 새 이름 :
text.selectslot = 저장슬롯을 선택하십시오. text.selectslot = 저장슬롯을 선택하십시오.
text.slot = [accent]{0}번째 슬롯 text.slot = [accent]{0}번째 슬롯
text.save.corrupted = [orange]세이브 파일이 손상되었거나 잘못된 파일입니다! 만약 게임을 업데이트 했다면 이것은 아마 저장 형식 변경일 것이고, 이것은 버그가 [scarlet]아닙니다[]. text.save.corrupted = [accent]세이브 파일이 손상되었거나 잘못된 파일입니다! 만약 게임을 업데이트 했다면 이것은 아마 저장 형식 변경일 것이고, 이것은 버그가 [scarlet]아닙니다[].
text.sector.corrupted = [orange]저장 파일에서 역을 발견했으나 불러오지 못했습니다.\n새로 생성되었습니다. text.sector.corrupted = [accent]저장 파일에서 역을 발견했으나 불러오지 못했습니다.\n새로 생성되었습니다.
text.empty = <비어있음> text.empty = <비어있음>
text.on = 켜기 text.on = 켜기
text.off = 끄기 text.off = 끄기
@@ -180,15 +180,15 @@ text.back = 뒤로가기
text.quit.confirm = 정말로 종료하시겠습니까? text.quit.confirm = 정말로 종료하시겠습니까?
text.changelog.title = 변경사항 text.changelog.title = 변경사항
text.changelog.loading = 변경사항 가져오는중... text.changelog.loading = 변경사항 가져오는중...
text.changelog.error.android = [orange]게임 변경사항은 가끔 Android 4.4 이하에서 작동하지 않습니다. 이것은 내부 Android 버그 때문입니다. text.changelog.error.android = [accent]게임 변경사항은 가끔 Android 4.4 이하에서 작동하지 않습니다. 이것은 내부 Android 버그 때문입니다.
text.changelog.error.ios = [orange]현재 iOS에서는 변경 사항을 지원하지 않습니다. text.changelog.error.ios = [accent]현재 iOS에서는 변경 사항을 지원하지 않습니다.
text.changelog.error = [scarlet]게임 변경사항을 가져오는 중 오류가 발생했습니다![]\n인터넷 연결을 확인하십시오. text.changelog.error = [scarlet]게임 변경사항을 가져오는 중 오류가 발생했습니다![]\n인터넷 연결을 확인하십시오.
text.changelog.current = [orange][[현재 버전] text.changelog.current = [accent][[현재 버전]
text.changelog.latest = [orange][[최신 버전] text.changelog.latest = [accent][[최신 버전]
text.loading = [accent]불러오는중... text.loading = [accent]불러오는중...
text.saving = [accent]저장중... text.saving = [accent]저장중...
text.wave = [orange]{0}단계 text.wave = [accent]{0}단계
text.wave.waiting = 다음 단계 시작까지 {0}초 text.wave.waiting = 남은 시간 : [green]{0}초[]
text.waiting = [LIGHT_GRAY]대기중... text.waiting = [LIGHT_GRAY]대기중...
text.waiting.players = 다른 플레이어를 기다리는 중.. text.waiting.players = 다른 플레이어를 기다리는 중..
text.wave.enemies = [LIGHT_GRAY]{0} 마리 남았음 text.wave.enemies = [LIGHT_GRAY]{0} 마리 남았음
@@ -214,8 +214,8 @@ text.editor.description = 설명 :
text.editor.name = 이름 : text.editor.name = 이름 :
text.editor.teams = text.editor.teams =
text.editor.elevation = 지형 높이 text.editor.elevation = 지형 높이
text.editor.errorimageload = [orange]{0}[] 파일을 불러오는데 오류가 발생했습니다. text.editor.errorimageload = [accent]{0}[] 파일을 불러오는데 오류가 발생했습니다.
text.editor.errorimagesave = [orange]{0}[] 파일 저장중 오류가 발생했습니다. text.editor.errorimagesave = [accent]{0}[] 파일 저장중 오류가 발생했습니다.
text.editor.generate = 생성 text.editor.generate = 생성
text.editor.resize = 맵 크기조정 text.editor.resize = 맵 크기조정
text.editor.loadmap = 맵 불러오기 text.editor.loadmap = 맵 불러오기
@@ -259,7 +259,7 @@ text.tutorial = 게임 방법
text.editor = 편집기 text.editor = 편집기
text.mapeditor = 맵 편집기 text.mapeditor = 맵 편집기
text.donate = 기부 text.donate = 기부
text.connectfail = [crimson]{0}[orange] 서버에 연결하지 못했습니다.[] text.connectfail = [crimson]{0}[accent] 서버에 연결하지 못했습니다.[]
text.error.unreachable = 서버에 연결하지 못했습니다. text.error.unreachable = 서버에 연결하지 못했습니다.
text.error.invalidaddress = 잘못된 주소입니다. text.error.invalidaddress = 잘못된 주소입니다.
text.error.timedout = 시간 초과!\n서버에 포트 포워딩이 설정되어 있고 주소가 올바른지 확인하십시오. text.error.timedout = 시간 초과!\n서버에 포트 포워딩이 설정되어 있고 주소가 올바른지 확인하십시오.
@@ -273,11 +273,11 @@ text.settings.rebind = 키 재설정
text.settings.controls = 컨트롤 text.settings.controls = 컨트롤
text.settings.game = 게임 text.settings.game = 게임
text.settings.sound = 소리 text.settings.sound = 소리
text.settings.graphics = 화면 text.settings.graphics = 그래픽
text.settings.cleardata = 게임 데이터 초기화... text.settings.cleardata = 게임 데이터 초기화...
text.settings.clear.confirm = 정말로 초기화 하겠습니까?\n이 작업을 되돌릴 수 없습니다! text.settings.clear.confirm = 정말로 초기화 하겠습니까?\n이 작업을 되돌릴 수 없습니다!
text.settings.clearall.confirm = [scarlet]경고![]\n이 작업은 저장된 맵, 맵파일, 잠금 해제된 목록과 키 매핑, 그리고 모든 데이터를 삭제합니다.\n확인 버튼을 다시 눌러 모든 데이터를 삭제하고 게임에서 나갑니다. text.settings.clearall.confirm = [scarlet]경고![]\n이 작업은 저장된 맵, 맵파일, 잠금 해제된 목록과 키 매핑, 그리고 모든 데이터를 삭제합니다.\n확인 버튼을 다시 눌러 모든 데이터를 삭제하고 게임에서 나갑니다.
text.settings.clearsectors = 역 초기화 text.settings.clearsectors = 역 초기화
text.settings.clearunlocks = 잠금 해제 초기화 text.settings.clearunlocks = 잠금 해제 초기화
text.settings.clearall = 모두 초기화 text.settings.clearall = 모두 초기화
text.paused = 일시 정지 text.paused = 일시 정지
@@ -286,6 +286,7 @@ text.no = 아니오
text.info.title = [accent]정보 text.info.title = [accent]정보
text.error.title = [crimson]오류가 발생했습니다. text.error.title = [crimson]오류가 발생했습니다.
text.error.crashtitle = 오류가 발생했습니다. text.error.crashtitle = 오류가 발생했습니다.
text.blocks.unknown = [LIGHT_GRAY]???
text.blocks.blockinfo = 블록 정보 text.blocks.blockinfo = 블록 정보
text.blocks.powercapacity = 최대 전력 용량 text.blocks.powercapacity = 최대 전력 용량
text.blocks.powershot = 1발당 전력 소모량 text.blocks.powershot = 1발당 전력 소모량
@@ -318,7 +319,8 @@ text.blocks.coolant = 냉각제
text.blocks.coolantuse = 냉각수 사용 text.blocks.coolantuse = 냉각수 사용
text.blocks.inputliquidfuel = 연료 액 text.blocks.inputliquidfuel = 연료 액
text.blocks.liquidfueluse = 액체 연료 사용 text.blocks.liquidfueluse = 액체 연료 사용
text.blocks.explosive = 이 블록이 터지면 주변 블록과 같이 자폭을 합니다!! text.blocks.boostitem = 가속 아이템
text.blocks.boostliquid = 가속 액체
text.blocks.health = 체력 text.blocks.health = 체력
text.blocks.inaccuracy = 오차각 text.blocks.inaccuracy = 오차각
text.blocks.shots = 발포 횟수 text.blocks.shots = 발포 횟수
@@ -343,6 +345,7 @@ text.category.liquids = 액체
text.category.items = 아이템 text.category.items = 아이템
text.category.crafting = 제작 text.category.crafting = 제작
text.category.shooting = 사격 text.category.shooting = 사격
text.category.optional = 선택적 향상
setting.autotarget.name = 자동 조준 setting.autotarget.name = 자동 조준
setting.fpscap.name = 최대 FPS setting.fpscap.name = 최대 FPS
setting.fpscap.none = 없음 setting.fpscap.none = 없음
@@ -351,25 +354,24 @@ setting.difficulty.training = 훈련
setting.difficulty.easy = 쉬움 setting.difficulty.easy = 쉬움
setting.difficulty.normal = 보통 setting.difficulty.normal = 보통
setting.difficulty.hard = 어려움 setting.difficulty.hard = 어려움
setting.difficulty.insane = 매우 어려움 setting.difficulty.insane = [#00ff00]멀[#2efe2e]티[#58fa58]플[#81f781]레[#a9f5a9]이 [#81f781]전[#58fa58]용[]
setting.difficulty.name = 난이도 : setting.difficulty.name = 난이도 :
setting.screenshake.name = 화면 흔들기 setting.screenshake.name = 화면 흔들기 강도
setting.effects.name = 화면 효과 setting.effects.name = 화면 효과
setting.sensitivity.name = 컨트롤러 감도 setting.sensitivity.name = 컨트롤러 감도
setting.saveinterval.name = 자동저장 간격 setting.saveinterval.name = 자동저장 간격
setting.seconds = {0}초 setting.seconds = {0}초
setting.fullscreen.name = 전체 화면 setting.fullscreen.name = 전체 화면
setting.multithread.name = 멀티 스레드
setting.fps.name = FPS 표시 setting.fps.name = FPS 표시
setting.vsync.name = VSync 활성화 setting.vsync.name = VSync 활성화
setting.lasers.name = 파워 레이 표시 setting.lasers.name = 전력 노드 레이 표시
setting.minimap.name = 미니맵 보기 setting.minimap.name = 미니맵 보기
setting.musicvol.name = 음악 크기 setting.musicvol.name = 음악 크기
setting.mutemusic.name = 음소거 setting.mutemusic.name = 음소거
setting.sfxvol.name = 효과음 크기 setting.sfxvol.name = 효과음 크기
setting.mutesound.name = 소리 끄기 setting.mutesound.name = 소리 끄기
setting.crashreport.name = 오류 보고서 보내기 setting.crashreport.name = 오류 보고서 보내기
text.keybind.title = 키 바인딩 text.keybind.title = 조작키 설정
category.general.name = 일반 category.general.name = 일반
category.view.name = 보기 category.view.name = 보기
category.multiplayer.name = 멀티플레이 category.multiplayer.name = 멀티플레이
@@ -404,8 +406,6 @@ mode.waves.name = 단계
mode.waves.description = 이것은 일반 모드입니다. 제한된 자원과 자동으로 다음 단계가 시작됩니다. mode.waves.description = 이것은 일반 모드입니다. 제한된 자원과 자동으로 다음 단계가 시작됩니다.
mode.sandbox.name = 샌드박스 mode.sandbox.name = 샌드박스
mode.sandbox.description = 무한한 자원과 다음단계 시작을 위한 타이머가 없습니다. mode.sandbox.description = 무한한 자원과 다음단계 시작을 위한 타이머가 없습니다.
mode.custom.warning = [scarlet]서버에서 잠금해제한 블록은 저장되지 않습니다.[]\n\n구역을 플레이 하여 잠금해제하세요.
mode.custom.warning.read = 꼭 읽어보시길 바랍니다 :\n[scarlet]커스텀 게임에서 잠금해제한 블록은 구역 플레이나 다른 모드에서 적용되지 않습니다!\n\n[LIGHT_GRAY](이게 필요하지 않았으면 좋겠는데)
mode.freebuild.name = 자유 건축 mode.freebuild.name = 자유 건축
mode.freebuild.description = 제한된 자원과 다음단계 시작을 위한 타이머가 없습니다. mode.freebuild.description = 제한된 자원과 다음단계 시작을 위한 타이머가 없습니다.
mode.pvp.name = PvP mode.pvp.name = PvP
@@ -423,8 +423,8 @@ item.lead.name = 납
item.lead.description = 쉽게 구할 수 있으며, 전자 및 액체 수송 블록에서 광범위하게 사용되는 자원입니다. item.lead.description = 쉽게 구할 수 있으며, 전자 및 액체 수송 블록에서 광범위하게 사용되는 자원입니다.
item.coal.name = 석탄 item.coal.name = 석탄
item.coal.description = 쉽게 구할 수 있으며, 주로 제련소 등에서 연료로 사용됩니다. item.coal.description = 쉽게 구할 수 있으며, 주로 제련소 등에서 연료로 사용됩니다.
item.dense-alloy.name = 합금 item.dense-alloy.name = 고밀도 합금
item.dense-alloy.description = 납과 구리로 만든 튼튼한 합금.\n고급 수송 블록이나 상위 티어 블록을 건설하는데 사용됩니다. item.dense-alloy.description = 납과 구리로 만든 튼튼한 고밀도 합금.\n고급 수송 블록이나 상위 티어 블록을 건설하는데 사용됩니다.
item.titanium.name = 티타늄 item.titanium.name = 티타늄
item.titanium.description = 파이프 재료나 고급 드릴, 비행기/기체 등에서 재료로 사용되는 자원입니다. item.titanium.description = 파이프 재료나 고급 드릴, 비행기/기체 등에서 재료로 사용되는 자원입니다.
item.thorium.name = 토륨 item.thorium.name = 토륨
@@ -440,9 +440,9 @@ item.surge-alloy.description = 주로 건물의 재료로 사용되는 자원입
item.biomatter.name = 바이오메터 item.biomatter.name = 바이오메터
item.biomatter.description = 이것은 유기농 덤불입니다!\n압축기에 넣어 석유로 바꿀 수 있습니다. item.biomatter.description = 이것은 유기농 덤불입니다!\n압축기에 넣어 석유로 바꿀 수 있습니다.
item.sand.name = 모래 item.sand.name = 모래
item.sand.description = 합금이나 플럭스 등에서 제련시 광범위하게 사용되는 일반적인 재료입니다. item.sand.description = 고밀도 합금이나 플럭스 등에서 제련시 광범위하게 사용되는 일반적인 재료입니다.
item.blast-compound.name = 화합 item.blast-compound.name = 폭발
item.blast-compound.description = 포탑 및 건설의 재료로 사용되는 휘발성 화합물.\n연료로도 사용할 수 있지만, 별로 추천하지는 않습니다. item.blast-compound.description = 포탑 및 건설의 재료로 사용되는 휘발성 폭발물.\n연료로도 사용할 수 있지만, 별로 추천하지는 않습니다.
item.pyratite.name = 피라테 item.pyratite.name = 피라테
item.pyratite.description = 폭발성을 가진 재료로, 주로 포탑의 탄약으로 사용됩니다. item.pyratite.description = 폭발성을 가진 재료로, 주로 포탑의 탄약으로 사용됩니다.
liquid.water.name = liquid.water.name =
@@ -493,7 +493,7 @@ text.mech.ability = [LIGHT_GRAY]능력 : {0}
text.liquid.heatcapacity = [LIGHT_GRAY]발열량 : {0} text.liquid.heatcapacity = [LIGHT_GRAY]발열량 : {0}
text.liquid.viscosity = [LIGHT_GRAY]점도 : {0} text.liquid.viscosity = [LIGHT_GRAY]점도 : {0}
text.liquid.temperature = [LIGHT_GRAY]온도 : {0} text.liquid.temperature = [LIGHT_GRAY]온도 : {0}
block.constructing = {0}\n[LIGHT_GRAY](Constructing) block.constructing = {0}[LIGHT_GRAY](만드는중)
block.spawn.name = 적 스폰지점 block.spawn.name = 적 스폰지점
block.core.name = 코어 block.core.name = 코어
block.metalfloor.name = 철판 block.metalfloor.name = 철판
@@ -568,7 +568,7 @@ block.tau-mech-pad.name = 타우 기체 패드
block.conduit.name = 파이프 block.conduit.name = 파이프
block.mechanical-pump.name = 기계식 펌프 block.mechanical-pump.name = 기계식 펌프
block.itemsource.name = 아이템 소스 block.itemsource.name = 아이템 소스
block.itemvoid.name = 히오스 block.itemvoid.name = 아이템 삭제 장치
block.liquidsource.name = 무한 액체공급 장치 block.liquidsource.name = 무한 액체공급 장치
block.powervoid.name = 방전장치 block.powervoid.name = 방전장치
block.powerinfinite.name = 무한 전력공급 장치 block.powerinfinite.name = 무한 전력공급 장치
@@ -582,7 +582,7 @@ block.phase-conveyor.name = 메타 컨베이어
block.bridge-conveyor.name = 터널 block.bridge-conveyor.name = 터널
block.plastanium-compressor.name = 플라스터늄 압축기 block.plastanium-compressor.name = 플라스터늄 압축기
block.pyratite-mixer.name = 피라테 제조기 block.pyratite-mixer.name = 피라테 제조기
block.blast-mixer.name = 화합물 제조기 block.blast-mixer.name = 폭발물 제조기
block.solidifer.name = 고체 block.solidifer.name = 고체
block.solar-panel.name = 태양 전지판 block.solar-panel.name = 태양 전지판
block.solar-panel-large.name = 대형 태양 전지판 block.solar-panel-large.name = 대형 태양 전지판
@@ -591,7 +591,7 @@ block.spirit-factory.name = 스피릿 드론 공장
block.phantom-factory.name = 팬텀 드론 공장 block.phantom-factory.name = 팬텀 드론 공장
block.wraith-factory.name = 유령 전투기 공장 block.wraith-factory.name = 유령 전투기 공장
block.ghoul-factory.name = 구울 폭격기 공장 block.ghoul-factory.name = 구울 폭격기 공장
block.dagger-factory.name = 귀여운 디거 기체 공장 block.dagger-factory.name = 디거 기체 공장
block.titan-factory.name = 타이탄 기체 공장 block.titan-factory.name = 타이탄 기체 공장
block.fortress-factory.name = 포트리스 기체 공장 block.fortress-factory.name = 포트리스 기체 공장
block.revenant-factory.name = 레비던트 전투기 공장 block.revenant-factory.name = 레비던트 전투기 공장
@@ -607,23 +607,22 @@ block.thorium-reactor.name = 토륨 원자로
block.command-center.name = 명령 본부 block.command-center.name = 명령 본부
block.mass-driver.name = 물질 이동기 block.mass-driver.name = 물질 이동기
block.blast-drill.name = 고속 발열 드릴 block.blast-drill.name = 고속 발열 드릴
block.thermal-pump.name = 지열 펌프 block.thermal-pump.name = 화력 펌프
block.thermal-generator.name = 지열 발전기 block.thermal-generator.name = 발전기
block.alloy-smelter.name = 설금 제련소 block.alloy-smelter.name = 설금 제련소
block.mend-projector.name = 치료 프로젝터 block.mend-projector.name = 수리 프로젝터
block.surge-wall.name = 설금벽 block.surge-wall.name = 설금벽
block.surge-wall-large.name = 큰 설금벽 block.surge-wall-large.name = 큰 설금벽
block.cyclone.name = 사이클론 block.cyclone.name = 사이클론
block.fuse.name = 퓨즈 block.fuse.name = 퓨즈
block.shock-mine.name = 전격 지뢰 block.shock-mine.name = 전격 지뢰
block.overdrive-projector.name = 가속 프로젝터 block.overdrive-projector.name = 오버드라이브 프로젝터
block.force-projector.name = 강제 프로젝터 block.force-projector.name = 보호막 프로젝터
block.arc.name = 아크 block.arc.name = Arc
block.rtg-generator.name = 토륨 발전소 block.rtg-generator.name = 토륨 발전소
block.spectre.name = 스펙터 block.spectre.name = 스펙터
block.meltdown.name = 멜트다운 block.meltdown.name = 멜트다운
block.container.name = 컨테이너 block.container.name = 컨테이너
block.core.description = 게임에서 가장 중요한 건물.\n파괴되면 게임이 끝납니다.
team.blue.name = 블루팀 team.blue.name = 블루팀
team.red.name = 레드팀 team.red.name = 레드팀
team.orange.name = 오렌지팀 team.orange.name = 오렌지팀
@@ -635,43 +634,44 @@ unit.spirit.name = 스피릿 드론
unit.spirit.description = 기본 드론 유닛. 기본적으로 코어에서 1개가 스폰됩니다. 자동으로 채광하며 아이템을 수집하고, 블록을 수리합니다. unit.spirit.description = 기본 드론 유닛. 기본적으로 코어에서 1개가 스폰됩니다. 자동으로 채광하며 아이템을 수집하고, 블록을 수리합니다.
unit.phantom.name = 팬텀 드론 unit.phantom.name = 팬텀 드론
unit.phantom.description = 첨단 드론 유닛. 광석을 자동으로 채광하며, 아이템을 수집하고 블록을 수리합니다. 일반 드론보다 훨씬 효과적입니다. unit.phantom.description = 첨단 드론 유닛. 광석을 자동으로 채광하며, 아이템을 수집하고 블록을 수리합니다. 일반 드론보다 훨씬 효과적입니다.
unit.dagger.name = 귀여운 디거 unit.dagger.name = 디거
unit.dagger.description = 밈의 대상으로 지정되어 이름이 바뀐 기본 지상 유닛입니다. unit.dagger.description = 기본 지상 유닛입니다. 스웜과 같이 쓰면 유용합니다.
unit.titan.name = 타이탄 unit.titan.name = 타이탄
unit.titan.description = 고급 지상 유닛입니다. 합금을 탄약으로 사용하며 지상과 공중 둘다 공격할 수 있습니다. unit.titan.description = 고급 지상 유닛입니다. 고밀도 합금을 탄약으로 사용하며 지상과 공중 둘다 공격할 수 있습니다.
unit.ghoul.name = 구울 폭격기 unit.ghoul.name = 구울 폭격기
unit.ghoul.description = 무거운 지상 폭격기 입니다. 화합물 또는 피라테를 탄약으로 사용합니다. unit.ghoul.description = 무거운 지상 폭격기 입니다. 폭발물 또는 피라테를 탄약으로 사용합니다.
unit.wraith.name = 유령 전투기 unit.wraith.name = 유령 전투기
unit.wraith.description = 코어를 집중적으로 공격하는 방식을 사용하는 전투기 입니다. unit.wraith.description = 코어를 집중적으로 공격하는 방식을 사용하는 전투기 입니다.
unit.fortress.name = 포트리스 unit.fortress.name = 포트리스
unit.fortress.description = 중포 지상 유닛. 높은 공격력과 체력을 가지고 있습니다. unit.fortress.description = 중포 지상 유닛. 높은 공격력과 체력을 가지고 있습니다.
unit.revenant.name = 레비던트 unit.revenant.name = 레비던트
unit.revenant.description = 대형 레이저를 발사하는 공중 유닛입니다. unit.revenant.description = 대형 레이저를 발사하는 공중 유닛입니다.
tutorial.begin = 플레이어의 임무는 [LIGHT_GRAY]적군[]을 제거하는 것입니다.\n\n[accent]구리를 채광[]하는 것으로 시작합니다. 이것을 하기 위해 플레이어의 중심부 근처에 있는 구리 광맥을 누르세요. tutorial.begin = 플레이어의 주요 목표는 [LIGHT_GRAY]적군[]을 제거하는 것입니다.\n\n이 게임은 [accent]구리를 채광[]하는 것으로 시작합니다.\n이것을 하기 위해 플레이어의 중심부 근처에 있는 구리 광맥을 누르세요.
tutorial.drill = 수동으로 채광하는 것은 효율 적입니다.\n[accent]드릴[]은 자동으로 채광 작업을 합니다.\n구리 광맥에 표시된 영역에 드릴을 하나를 놓으세요. tutorial.drill = 수동으로 채광하는 것은 효율이 낮습니다.\n[accent]드릴[]은 자동으로 채광 작업을 합니다.\n구리 광맥에 표시된 영역에 드릴을 하나를 놓으세요.
tutorial.conveyor = [accent]컨베이어[]를 사용하여 아이템을 코어로 운반합니다.\n드릴에서 코어까지 컨베이어 라인을 만드세요. tutorial.conveyor = [accent]컨베이어[]를 사용하여 아이템을 코어로 운반합니다.\n드릴에서 코어까지 컨베이어 라인을 만드세요.
tutorial.morecopper = 더 많은 구리가 필요합니다.\n\n수동으로 채광하거나, 드릴을 더 설치하세요. tutorial.morecopper = 더 많은 구리가 필요합니다.\n\n수동으로 채광하거나, 드릴을 더 설치하세요.
tutorial.turret = 방어 구조물은 [LIGHT_GRAY]적[]을 물리치기 위해 반드시 필요합니다.\n기지 근처에 듀오 터렛을 설치하세요. tutorial.turret = 방어 구조물은 [LIGHT_GRAY]적[]을 물리치기 위해 반드시 필요합니다.\n기지 근처에 듀오 터렛을 설치하세요.
tutorial.drillturret = 듀오 터렛이 작동하기 위해서는[accent] 구리 탄약 []을 필요로 합니다.\n터렛 옆에 드릴을 설치하여 구리를 공급하세요. tutorial.drillturret = 듀오 터렛이 작동하기 위해서는[accent] 구리 탄약 []을 필요로 합니다.\n터렛 옆에 드릴을 설치하여 구리를 공급하세요.
tutorial.waves = [LIGHT_GRAY]적[]이 접근합니다.\n\n2단계 동안 코어를 보호하고 더 많은 터렛을 만드세요. tutorial.waves = [LIGHT_GRAY]적[]이 접근합니다.\n\n2단계 동안 코어를 보호하고 더 많은 터렛을 만드세요.
tutorial.lead = 더 많은 광석을 이용할 수 있습니다. [accent]납[]을 찾아 탐색하세요.\n\n아이템을 코어로 전송할려면 플레이어 기체 또는 비행기에서 코어로 드래그 하세요. tutorial.lead = 더 많은 광석을 이용할 수 있습니다. [accent]납[]을 찾아 탐색하세요.\n\n아이템을 코어로 전송할려면 플레이어 기체 또는 비행기에서 코어로 드래그 하세요.
tutorial.smelter = 구리와 납은 약한 금속입니다.\n[accent]합금[]은 제련소에서 만들 수 있습니다.\n\n하나 만드세요. tutorial.smelter = 구리와 납은 약한 금속입니다.\n[accent]고밀도 합금[]은 제련소에서 만들 수 있습니다.\n\n하나 만드세요.
tutorial.densealloy = 이 제련소는 이제 합금을 생산할 것입니다.\n몇개 더 생산하세요.\n필요한 경우 더 만드세요. tutorial.densealloy = 이 제련소는 이제 고밀도 합금을 생산할 것입니다.\n몇개 더 생산하세요.\n필요한 경우 더 만드세요.
tutorial.siliconsmelter = 이제 이코어는 채굴과 수리하기 위한[accent] 스피릿 드론[]을 생성 할 것 입니다.\n\n[accent]실리콘[]을 사용해 다른 유닛을 생성하기 위한 공장을 만들 수 있습니다.\n실리콘 제련기를 제작하세요! tutorial.siliconsmelter = 이제 이코어는 채굴과 수리하기 위한[accent] 스피릿 드론[]을 생성 할 것 입니다.\n\n[accent]실리콘[]을 사용해 다른 유닛을 생성하기 위한 공장을 만들 수 있습니다.\n실리콘 제련기를 제작하세요!
tutorial.silicondrill = 실리콘을 제작하려면[accent] 석탄[] 과[accent] 모래[]가 필요합니다.\n드릴을 먼저 건설해보는건 어떤가요? tutorial.silicondrill = 실리콘을 제작하려면[accent] 석탄[] 과[accent] 모래[]가 필요합니다.\n드릴을 먼저 건설해보는건 어떤가요?
tutorial.generator = 기술은[LIGHT_YELLOW] 애너지[] 필요합니다.\n[accent] 석탄 발전기[]를 건설하세요. tutorial.generator = 건물은 [LIGHT_YELLOW]전력[] 필요합니다.\n[accent] 석탄 발전기[]를 건설하세요.
tutorial.generatordrill = [accent] 석탄 발전기[]는 연료가 필요합니다.\n[accent] 석탄[]을 드릴로 채굴해서 연료를 체워주세요. tutorial.generatordrill = [accent] 석탄 발전기[]는 연료가 필요합니다.\n[accent] 석탄[]을 드릴로 채굴해서 연료를 체워주세요.
tutorial.node = 전력은 송신해줄 송신기가 필요합니다.\n[accent] 전력 송신기[]를 석탄 등등 발전기 옆에 설치해서 생산된 전기를 다른곳으로 송신합시다. tutorial.node = 전력은 송신해줄 송신기가 필요합니다.\n[accent] 전력 송신기[]를 석탄 등등 발전기 옆에 설치해서 생산된 전기를 다른곳으로 송신합시다.
tutorial.nodelink = 전력은 전력 블록과 발전기에 연결하거나, 연결된 전력 송신기를 통해 전송이 가능합니다. \n\n전력 송신기를 누르고 발전기와 실리콘 제련기를 선택하여 전원을 연결합시다. tutorial.nodelink = 전력은 전력 블록과 발전기에 연결하거나, 연결된 전력 송신기를 통해 전송이 가능합니다. \n\n전력 송신기를 누르고 발전기와 실리콘 제련기를 선택하여 전원을 연결합시다.
tutorial.silicon = 실리콘이 생산되고 있습니다.\n\n생산 시스템의 개선을 권고 드립니다. tutorial.silicon = 실리콘이 생산되고 있습니다.\n\n생산 시스템의 개선을 권고 드립니다.
tutorial.daggerfactory = 이[accent] 귀여운 디거 기체 공장[]은\n\n공격하는 기체를 생산하기 위해 사용됩니다. tutorial.daggerfactory = 이[accent] 디거 기체 공장[]은\n\n공격하는 기체를 생산하기 위해 사용됩니다.
tutorial.router = 공장을 작동시키기 위해 자원이 필요합니다.\n컨베이어에 운반되고 있는 자원을 분할할 분배기를 만드세요. tutorial.router = 공장을 작동시키기 위해 자원이 필요합니다.\n컨베이어에 운반되고 있는 자원을 분할할 분배기를 만드세요.
tutorial.dagger = 전력 노드를 공장에 연결하세요.\n일단 요구 사항이 충족되면 기체 생산을 시작합니다.\n\n필요에 따라 드릴 및 발전기, 컨베이어를 더 많이 만들 수 있습니다. tutorial.dagger = 전력 노드를 공장에 연결하세요.\n일단 요구 사항이 충족되면 기체 생산을 시작합니다.\n\n필요에 따라 드릴 및 발전기, 컨베이어를 더 많이 만들 수 있습니다.
tutorial.battle = [LIGHT_GRAY]적[]의 코어가 드러났습니다.\n당신의 부대와 귀여운 디거를 사용하여 파괴하세요. tutorial.battle = [LIGHT_GRAY]적[]의 코어가 드러났습니다.\n당신의 부대와 디거를 사용하여 파괴하세요.
block.core.description = 게임에서 가장 중요한 건물.\n파괴되면 게임이 끝납니다.
block.copper-wall.description = 구리로 만든 벽. block.copper-wall.description = 구리로 만든 벽.
block.copper-wall-large.description = 구리로 만든 큰 벽. block.copper-wall-large.description = 구리로 만든 큰 벽.
block.dense-alloy-wall.description = 합금으로 만든 벽. 구리벽보다 체력이 높습니다. block.dense-alloy-wall.description = 고밀도 합금으로 만든 벽. 구리벽보다 체력이 높습니다.
block.dense-alloy-wall-large.description = 합금으로 만든 큰 벽. block.dense-alloy-wall-large.description = 고밀도 합금으로 만든 큰 벽.
block.thorium-wall.description = 토륨으로 만든 벽. block.thorium-wall.description = 토륨으로 만든 벽.
block.thorium-wall-large.description = 토륨으로 만든 큰 벽. block.thorium-wall-large.description = 토륨으로 만든 큰 벽.
block.phase-wall.description = 날라오는 모든 총알을 튕겨내고 데미지를 입는 특수한 벽입니다. block.phase-wall.description = 날라오는 모든 총알을 튕겨내고 데미지를 입는 특수한 벽입니다.
@@ -681,8 +681,8 @@ block.surge-wall-large.description = 설금을 재료로 한 큰 벽.\n데미지
block.door.description = 유닛이 지나갈 수 있도록 만든 문. 클릭하면 열고 닫습니다. block.door.description = 유닛이 지나갈 수 있도록 만든 문. 클릭하면 열고 닫습니다.
block.door-large.description = 유닛이 자나갈 수 있도록 만든 큰 문. 클릭하면 열고 닫습니다. block.door-large.description = 유닛이 자나갈 수 있도록 만든 큰 문. 클릭하면 열고 닫습니다.
block.mend-projector.description = 주위 건물을 치료하는 건물입니다. block.mend-projector.description = 주위 건물을 치료하는 건물입니다.
block.overdrive-projector.description = 범위 내 모든 행동의 속도를 높여주는 보조형 방어 건물입니다. block.overdrive-projector.description = 범위 내 모든 행동의 속도를 높여주는 보조형 건물입니다.
block.force-projector.description = 보호막을 생성하는 건물.\n기본적으로 전만 있으면 작동하지만, 메타를 넣어 보호막의 범위를 크게 확장시킬 수 있습니다. block.force-projector.description = 보호막을 생성하는 건물.\n기본적으로 전만 있으면 작동하지만, 메타를 넣어 보호막의 범위를 크게 확장시킬 수 있습니다.
block.shock-mine.description = 적이 이 블록을 지나가면 전격 공격을 하는 함정형 방어 건물입니다. block.shock-mine.description = 적이 이 블록을 지나가면 전격 공격을 하는 함정형 방어 건물입니다.
block.duo.description = 범용성을 가진 터렛.\n지상 및 공중공격을 하며, 초중반에 유용합니다. block.duo.description = 범용성을 가진 터렛.\n지상 및 공중공격을 하며, 초중반에 유용합니다.
block.arc.description = 목표 방향으로 전격 공격을 하는 포탑입니다. block.arc.description = 목표 방향으로 전격 공격을 하는 포탑입니다.
@@ -701,15 +701,15 @@ block.titanium-conveyor.description = 빠른 속도로 자원을 수송할 수
block.phase-conveyor.description = 자원을 순간이동 시켜 주는 컨베이어 입니다. block.phase-conveyor.description = 자원을 순간이동 시켜 주는 컨베이어 입니다.
block.junction.description = 컨베이어를 교차시켜 자원을 수송할 때 사용할 수 있는 블록입니다. block.junction.description = 컨베이어를 교차시켜 자원을 수송할 때 사용할 수 있는 블록입니다.
block.mass-driver.description = 자원을 받아서 다른 물질 이동기로 전달할 수 있는 블록입니다.\n엄청난 사거리를 가지고 있으며, 주로 컨베이어가 접근할 수 없는 곳에 유용하게 사용됩니다. block.mass-driver.description = 자원을 받아서 다른 물질 이동기로 전달할 수 있는 블록입니다.\n엄청난 사거리를 가지고 있으며, 주로 컨베이어가 접근할 수 없는 곳에 유용하게 사용됩니다.
block.smelter.description = 합금을 제작할 수 있는 건물입니다. block.smelter.description = 고밀도 합금을 제작할 수 있는 건물입니다.
block.arc-smelter.description = 합금을 제작할 수 있는 건물이지만, 이 건물은 석탄이 필요 없고 좀더 빠른 속도로 합금을 생산해낼 수 있습니다. block.arc-smelter.description = 고밀도 합금을 제작할 수 있는 건물이지만, 이 건물은 석탄이 필요 없고 좀더 빠른 속도로 합금을 생산해낼 수 있습니다.
block.silicon-smelter.description = 실리콘을 제작할 수 있는 건물입니다. block.silicon-smelter.description = 실리콘을 제작할 수 있는 건물입니다.
block.plastanium-compressor.description = 플라스터늄을 제조할 수 있는 건물입니다. block.plastanium-compressor.description = 플라스터늄을 제조할 수 있는 건물입니다.
block.phase-weaver.description = 메타를 제작할 수 있는 건물입니다. block.phase-weaver.description = 메타를 제작할 수 있는 건물입니다.
block.alloy-smelter.description = 설금을 제작할 수 있는 건물입니다. block.alloy-smelter.description = 설금을 제작할 수 있는 건물입니다.
block.pulverizer.description = 돌을 갈아서 모래로 만들 수 있는 건물입니다. block.pulverizer.description = 돌을 갈아서 모래로 만들 수 있는 건물입니다.
block.pyratite-mixer.description = 피라테를 제조할 수 있는 건물입니다. block.pyratite-mixer.description = 피라테를 제조할 수 있는 건물입니다.
block.blast-mixer.description = 화합물을 제조할 수 있는 건물입니다. block.blast-mixer.description = 폭발물을 제조할 수 있는 건물입니다.
block.cryofluidmixer.description = 냉각수를 제작할 수 있는 건물입니다. block.cryofluidmixer.description = 냉각수를 제작할 수 있는 건물입니다.
block.solidifer.description = 용암을 돌로 만들 수 있는 건물입니다. block.solidifer.description = 용암을 돌로 만들 수 있는 건물입니다.
block.melter.description = 돌로 용암을 만들 수 있는 건물입니다. block.melter.description = 돌로 용암을 만들 수 있는 건물입니다.
@@ -717,14 +717,14 @@ block.incinerator.description = 불필요한 아이템을 소각시켜 줄 수
block.biomattercompressor.description = 잔디밭에서 바이오메터를 추출할 수 있는 건물입니다. block.biomattercompressor.description = 잔디밭에서 바이오메터를 추출할 수 있는 건물입니다.
block.separator.description = 돌을 분해하여 각종 자원으로 재활용 할 수 있게 해 주는 건물입니다. block.separator.description = 돌을 분해하여 각종 자원으로 재활용 할 수 있게 해 주는 건물입니다.
block.centrifuge.description = 돌을 분해하여 각종 자원으로 재활용 할 수 있게 해 주는 건물이지만, 이 건물은 좀 더 다양한 자원을 얻을 수 있게 해 줍니다. block.centrifuge.description = 돌을 분해하여 각종 자원으로 재활용 할 수 있게 해 주는 건물이지만, 이 건물은 좀 더 다양한 자원을 얻을 수 있게 해 줍니다.
block.power-node.description = 생성된 전를 다른 건물로 전달하기 위한 전력 노드입니다. block.power-node.description = 생성된 전를 다른 건물로 전달하기 위한 전력 노드입니다.
block.power-node-large.description = 생성된 전를 다른 건물로 전달하기 위한 건물이며, 일반 노드보다 더 많은 전력을 이동시킬 수 있습니다. block.power-node-large.description = 생성된 전를 다른 건물로 전달하기 위한 건물이며, 일반 노드보다 더 많은 전력을 이동시킬 수 있습니다.
block.battery.description = 흔히 아는 충전식 배터리입니다.\n전력 생산건물에 전력이 떨어질경우, 이 배터리를 전력 노드에 연결하면 이 배터리에 에 있는 전력을 사용하여 전기를 소모하는 건물에 전력을 지속적으로 공급할 수 있습니다. block.battery.description = 흔히 아는 충전식 배터리입니다.\n전력을 사용하는 건물에 전력이 떨어질경우, 이 배터리를 전력 노드에 연결하면 이 배터리에 저장된 전력을 소모하여 지속적으로 공급할 수 있습니다.
block.battery-large.description = 일반 배터리보다 용량이 매우 커진 커진 배터리. block.battery-large.description = 일반 배터리보다 용량이 매우 커진 커진 배터리.
block.combustion-generator.description = 석탄을 연료로 전를 생산해내는 발전소 입니다. block.combustion-generator.description = 석탄을 연료로 전를 생산해내는 발전소 입니다.
block.turbine-generator.description = 석탄 발전기보다 더 많은량의 전를 생산하는 발전기입니다. block.turbine-generator.description = 석탄 발전기보다 더 많은량의 전를 생산하는 발전기입니다.
block.thermal-generator.description = 용암을 원료로 전력을 생산할 수 있는 발전소입니다. block.thermal-generator.description = 용암을 원료로 전력을 생산할 수 있는 발전소입니다.
block.solar-panel.description = 태양열을 받아 자기 스스로 전력을 생산하는 블록입니다. block.solar-panel.description = 태양열을 받아 자기 스스로 전력을 생산하는 건물입니다.
block.solar-panel-large.description = 태양열을 받아 자기 스스로 전력을 생산하지만, 이 블록은 더 빨리 전력을 생산할 수 있습니다. block.solar-panel-large.description = 태양열을 받아 자기 스스로 전력을 생산하지만, 이 블록은 더 빨리 전력을 생산할 수 있습니다.
block.thorium-reactor.description = 토륨을 원료로 하는 토륨 원자로 입니다.\n많은 전력을 생산하지만 엄청난 열을 발생시키기 때문에, 많은 량의 물 또는 냉각수가 있어야 터지지 않고 작동합니다. block.thorium-reactor.description = 토륨을 원료로 하는 토륨 원자로 입니다.\n많은 전력을 생산하지만 엄청난 열을 발생시키기 때문에, 많은 량의 물 또는 냉각수가 있어야 터지지 않고 작동합니다.
block.rtg-generator.description = 냉각은 필요 없지만 토륨 원자로보다 적은량의 전력을 생산하는 방사선 동위원소 열전자 발전기. block.rtg-generator.description = 냉각은 필요 없지만 토륨 원자로보다 적은량의 전력을 생산하는 방사선 동위원소 열전자 발전기.
@@ -737,7 +737,7 @@ block.laser-drill.description = 토륨을 채광할 수 있는 최고급 드릴
block.blast-drill.description = 최상위 드릴입니다. 엄청난 양의 전력과 물을 소모하는 대신, 매우 빠른 속도로 채광합니다. block.blast-drill.description = 최상위 드릴입니다. 엄청난 양의 전력과 물을 소모하는 대신, 매우 빠른 속도로 채광합니다.
block.water-extractor.description = 바닥에서 물을 추출하여 건물에 공급할 수 있는 건물입니다. block.water-extractor.description = 바닥에서 물을 추출하여 건물에 공급할 수 있는 건물입니다.
block.cultivator.description = 잔디에서 바이오메터를 추출할 수 있는 건물입니다. block.cultivator.description = 잔디에서 바이오메터를 추출할 수 있는 건물입니다.
block.oil-extractor.description = 기름(타르)을 추출 해 주는 건물입니다. block.oil-extractor.description = 석유를 추출 해 주는 건물입니다.
block.dart-ship-pad.description = 다트 비행선으로 바꿀 수 있는 패드입니다. block.dart-ship-pad.description = 다트 비행선으로 바꿀 수 있는 패드입니다.
block.trident-ship-pad.description = 삼지창 비행선으로 바꿀 수 있는 패드입니다. block.trident-ship-pad.description = 삼지창 비행선으로 바꿀 수 있는 패드입니다.
block.javelin-ship-pad.description = 자비린 비행선으로 바꿀 수 있는 패드입니다. block.javelin-ship-pad.description = 자비린 비행선으로 바꿀 수 있는 패드입니다.
@@ -749,7 +749,7 @@ block.spirit-factory.description = 스피릿 유닛을 생산하는 공장입니
block.phantom-factory.description = 유닛 팬텀을 생산하는 공장입니다. block.phantom-factory.description = 유닛 팬텀을 생산하는 공장입니다.
block.wraith-factory.description = 유닛 유령 전투기를 소환하는 공장입니다. block.wraith-factory.description = 유닛 유령 전투기를 소환하는 공장입니다.
block.ghoul-factory.description = 구울 유닛을 생산하는 공장입니다. block.ghoul-factory.description = 구울 유닛을 생산하는 공장입니다.
block.dagger-factory.description = 귀여운 디거를 생산하는 공장입니다. block.dagger-factory.description = 디거를 생산하는 공장입니다.
block.titan-factory.description = 타이탄 유닛을 생산할 수 있는 공장입니다. block.titan-factory.description = 타이탄 유닛을 생산할 수 있는 공장입니다.
block.fortress-factory.description = 포트리스를 생산하는 공장입니다. block.fortress-factory.description = 포트리스를 생산하는 공장입니다.
block.revenant-factory.description = 레비던트 유닛을 생산할 수 있는 공장입니다. block.revenant-factory.description = 레비던트 유닛을 생산할 수 있는 공장입니다.
@@ -764,17 +764,17 @@ block.liquid-junction.description = 물펌프와 다른 물펌프를 서로 교
block.bridge-conduit.description = 다리와 다리 사이를 연결하여 액체가 지나갈 수 있게 해 줍니다.\n주로 다리 사이에 지나갈 수 없는 장애물이 있을 때 사용합니다. block.bridge-conduit.description = 다리와 다리 사이를 연결하여 액체가 지나갈 수 있게 해 줍니다.\n주로 다리 사이에 지나갈 수 없는 장애물이 있을 때 사용합니다.
block.mechanical-pump.description = 구리로 제작할 수 있는 기계식 물펌프입니다. block.mechanical-pump.description = 구리로 제작할 수 있는 기계식 물펌프입니다.
block.rotary-pump.description = 일반 물 펌프보다 더 빠른 속도로 물을 끌어올릴 수 있는 펌프입니다. block.rotary-pump.description = 일반 물 펌프보다 더 빠른 속도로 물을 끌어올릴 수 있는 펌프입니다.
block.thermal-pump.description = 용암 위에서 사용할 수 있는 펌프입니다. block.thermal-pump.description = 기계식 펌프보다 3배 빠른 속도로 액체를 퍼올릴 수 있는 펌프이며, 용암도 퍼올릴 수 있는 유일한 펌프입니다.
block.router.description = 한 방향에서 아이템을 받은 후 최대 3개의 다른 방향으로 동일하게 출력합니다.\n재료를 한곳에서 여러 대상으로 분할하여 운반하는데 유용합니다. block.router.description = 한 방향에서 아이템을 받은 후 최대 3개의 다른 방향으로 동일하게 출력합니다.\n재료를 한곳에서 여러 대상으로 분할하여 운반하는데 유용합니다.
block.distributor.description = 아이템을 최대 7개의 다른 방향으로 똑같이 분할하는 고급 분배기. block.distributor.description = 아이템을 최대 7개의 다른 방향으로 똑같이 분할하는 고급 분배기.
block.bridge-conveyor.description = 고급 자원 수송 블록.\n지형이나 건물을 넘어 최대 3개 타일을 건너뛰고 자원을 운송할 수 있습니다. block.bridge-conveyor.description = 고급 자원 수송 블록.\n지형이나 건물을 넘어 최대 3개 타일을 건너뛰고 자원을 운송할 수 있습니다.
block.alpha-mech-pad.description = 알파 기체로 바꿀 수 있는 패드입니다. block.alpha-mech-pad.description = 알파 기체로 바꿀 수 있는 패드입니다.
block.itemsource.description = 자원을 선택하면 그 자원이 무한하게 생성되는 블록입니다. block.itemsource.description = 자원을 선택하면 그 자원이 무한하게 생성되는 블록입니다.
block.liquidsource.description = 무한한 액체를 출력해냅니다. block.liquidsource.description = 무한한 액체를 출력해냅니다.
block.itemvoid.description = 아이템을 시공으로 빠트려 사라지게 만듭니다. block.itemvoid.description = 아이템을 사라지게 만듭니다.
block.powerinfinite.description = 무한한 전력을 공급해주는 블록입니다. block.powerinfinite.description = 무한한 전력을 공급해주는 블록입니다.
block.powervoid.description = 설정된 아이템을 계속해서 출력하는 블록입니다. block.powervoid.description = 설정된 아이템을 계속해서 출력하는 블록입니다.
liquid.water.description = 지상 유닛이 이 위를 지나가면 이동속도가 느려지고, 깊은 물에 빠지면 죽습니다. liquid.water.description = 지상 유닛이 이 위를 지나가면 이동속도가 느려지고, 깊은 물에 빠지면 죽습니다.
liquid.lava.description = 지상 유닛이 이 위를 지나가면 이동속도가 매우 느려지고, 지속적으로 데미지를 입습니다. liquid.lava.description = 지상 유닛이 이 위를 지나가면 이동속도가 매우 느려지고, 지속적으로 데미지를 입습니다.
liquid.oil.description = 일부 조합 블록에서 사용되는 자원입니다. liquid.oil.description = 일부 조합 블록에서 사용되는 자원입니다.
liquid.cryofluid.description = 포탑 및 토륨 원자로에서 사용되는 자원입니다. 누출시 폭발 및 방화의 위험성이 있습니다. liquid.cryofluid.description = 포탑 및 토륨 원자로에서 사용되는 자원입니다.

View File

@@ -286,6 +286,7 @@ text.no = Nie ma mowy!
text.info.title = [accent]Informacje text.info.title = [accent]Informacje
text.error.title = [crimson]Wystąpił błąd text.error.title = [crimson]Wystąpił błąd
text.error.crashtitle = Wystąpił błąd text.error.crashtitle = Wystąpił błąd
text.blocks.unknown = [LIGHT_GRAY]???
text.blocks.blockinfo = Informacje o bloku text.blocks.blockinfo = Informacje o bloku
text.blocks.powercapacity = Pojemność mocy text.blocks.powercapacity = Pojemność mocy
text.blocks.powershot = moc / strzał text.blocks.powershot = moc / strzał
@@ -318,7 +319,8 @@ text.blocks.coolant = Płyn chłodzący
text.blocks.coolantuse = Zużycie płynu chłodzącego text.blocks.coolantuse = Zużycie płynu chłodzącego
text.blocks.inputliquidfuel = Paliwo text.blocks.inputliquidfuel = Paliwo
text.blocks.liquidfueluse = Zużycie paliwa text.blocks.liquidfueluse = Zużycie paliwa
text.blocks.explosive = Wysoce wybuchowy! text.blocks.boostitem = Boost Item
text.blocks.boostliquid = Boost Liquid
text.blocks.health = Zdrowie text.blocks.health = Zdrowie
text.blocks.inaccuracy = Niedokładność text.blocks.inaccuracy = Niedokładność
text.blocks.shots = Strzały text.blocks.shots = Strzały
@@ -343,6 +345,7 @@ text.category.liquids = Płyny
text.category.items = Przedmioty text.category.items = Przedmioty
text.category.crafting = Przetwórstwo text.category.crafting = Przetwórstwo
text.category.shooting = Strzelanie text.category.shooting = Strzelanie
text.category.optional = Optional Enhancements
setting.autotarget.name = Auto-Target setting.autotarget.name = Auto-Target
setting.fpscap.name = Max FPS setting.fpscap.name = Max FPS
setting.fpscap.none = None setting.fpscap.none = None
@@ -359,7 +362,6 @@ setting.sensitivity.name = Czułość kontrolera
setting.saveinterval.name = Interwał automatycznego zapisywania setting.saveinterval.name = Interwał automatycznego zapisywania
setting.seconds = Sekundy setting.seconds = Sekundy
setting.fullscreen.name = Pełny ekran setting.fullscreen.name = Pełny ekran
setting.multithread.name = Wielowątkowość
setting.fps.name = Widoczny licznik FPS setting.fps.name = Widoczny licznik FPS
setting.vsync.name = Synchronizacja pionowa setting.vsync.name = Synchronizacja pionowa
setting.lasers.name = Pokaż lasery zasilające setting.lasers.name = Pokaż lasery zasilające
@@ -404,8 +406,6 @@ mode.waves.name = Fale
mode.waves.description = Normalny tryb. Normalne surowce i fale. mode.waves.description = Normalny tryb. Normalne surowce i fale.
mode.sandbox.name = sandbox mode.sandbox.name = sandbox
mode.sandbox.description = Nieskończone surowce i fale bez odliczania. Dla przedszkolaków! mode.sandbox.description = Nieskończone surowce i fale bez odliczania. Dla przedszkolaków!
mode.custom.warning = Note that blocks cannot be used in custom games until they are unlocked in sectors.\n\n[LIGHT_GRAY]If you have not unlocked any blocks, none will appear.
mode.custom.warning.read = Just to make sure you've read it:\n[scarlet]UNLOCKS IN CUSTOM GAMES DO NOT CARRY OVER TO SECTORS OR OTHER MODES!\n\n[LIGHT_GRAY](I wish this wasn't necessary, but apparently it is)
mode.freebuild.name = budowanie mode.freebuild.name = budowanie
mode.freebuild.description = Normalne surowce i fale bez odliczania. mode.freebuild.description = Normalne surowce i fale bez odliczania.
mode.pvp.name = PvP mode.pvp.name = PvP

View File

@@ -286,6 +286,7 @@ text.no = Não
text.info.title = [accent]Informação text.info.title = [accent]Informação
text.error.title = [crimson]Ocorreu um Erro. text.error.title = [crimson]Ocorreu um Erro.
text.error.crashtitle = Ocorreu um Erro text.error.crashtitle = Ocorreu um Erro
text.blocks.unknown = [LIGHT_GRAY]???
text.blocks.blockinfo = Informação do Bloco text.blocks.blockinfo = Informação do Bloco
text.blocks.powercapacity = Capacidade de Energia text.blocks.powercapacity = Capacidade de Energia
text.blocks.powershot = Energia/tiro text.blocks.powershot = Energia/tiro
@@ -318,7 +319,8 @@ text.blocks.coolant = Esfriador
text.blocks.coolantuse = Uso do esfriador text.blocks.coolantuse = Uso do esfriador
text.blocks.inputliquidfuel = Liquido de combustivel text.blocks.inputliquidfuel = Liquido de combustivel
text.blocks.liquidfueluse = Uso do liquido de combustivel text.blocks.liquidfueluse = Uso do liquido de combustivel
text.blocks.explosive = Altamente Explosivo! text.blocks.boostitem = Boost Item
text.blocks.boostliquid = Boost Liquid
text.blocks.health = Saúde text.blocks.health = Saúde
text.blocks.inaccuracy = Imprecisão text.blocks.inaccuracy = Imprecisão
text.blocks.shots = Tiros text.blocks.shots = Tiros
@@ -343,6 +345,7 @@ text.category.liquids = Liquidos
text.category.items = Itens text.category.items = Itens
text.category.crafting = Construindo text.category.crafting = Construindo
text.category.shooting = Atirando text.category.shooting = Atirando
text.category.optional = Optional Enhancements
setting.autotarget.name = Auto-Target setting.autotarget.name = Auto-Target
setting.fpscap.name = FPS Maximo setting.fpscap.name = FPS Maximo
setting.fpscap.none = Nenhum setting.fpscap.none = Nenhum
@@ -359,7 +362,6 @@ setting.sensitivity.name = Sensibilidade do Controle
setting.saveinterval.name = Intervalo de autosalvamento setting.saveinterval.name = Intervalo de autosalvamento
setting.seconds = {0} Segundos setting.seconds = {0} Segundos
setting.fullscreen.name = Tela Cheia setting.fullscreen.name = Tela Cheia
setting.multithread.name = Multithreading
setting.fps.name = Mostrar FPS setting.fps.name = Mostrar FPS
setting.vsync.name = VSync setting.vsync.name = VSync
setting.lasers.name = Mostrar lasers setting.lasers.name = Mostrar lasers
@@ -404,8 +406,6 @@ mode.waves.name = hordas
mode.waves.description = O modo normal. Recursos limitados E os ataques vem automaticamente. mode.waves.description = O modo normal. Recursos limitados E os ataques vem automaticamente.
mode.sandbox.name = sandbox mode.sandbox.name = sandbox
mode.sandbox.description = Recursos infinitos E sem tempo para Ataques. mode.sandbox.description = Recursos infinitos E sem tempo para Ataques.
mode.custom.warning = Note that blocks cannot be used in custom games until they are unlocked in sectors.\n\n[LIGHT_GRAY]If you have not unlocked any blocks, none will appear.
mode.custom.warning.read = Just to make sure you've read it:\n[scarlet]UNLOCKS IN CUSTOM GAMES DO NOT CARRY OVER TO SECTORS OR OTHER MODES!\n\n[LIGHT_GRAY](I wish this wasn't necessary, but apparently it is)
mode.freebuild.name = construção \nlivre mode.freebuild.name = construção \nlivre
mode.freebuild.description = recursos limitados e Sem tempo para Ataques. mode.freebuild.description = recursos limitados e Sem tempo para Ataques.
mode.pvp.name = PvP mode.pvp.name = PvP

View File

@@ -1,5 +1,6 @@
text.credits.text = Создатель [ROYAL] Anuken. - [SKY]anukendev@gmail.com[][]\n\nЕсть недороботки в переводе?\nПишите в офф. discord-сервер mindustry в канал #русский. \n\n Активные переводчики:\n[GREEN]Prosta4ok_ua[]\n[GREEN]xga[]\n[BLACK]XZimur[]\n Неактивные переводчики:\n[MAGENTA]Krocotavus[]\nReazy\n[RED]Lexa1549[] text.credits.text = Создатель [ROYAL] Anuken. - [SKY]anukendev@gmail.com[][]\n\nЕсть недороботки в переводе?\nПишите в офф. discord-сервер mindustry в канал #русский.\n\nПереводчики на русский язык:\n[YELLOW]Prosta4ok_ua\n[GREEN]xga\n[BLACK]XZimur
text.credits = Авторы text.credits = Авторы
text.contributors = Переводчики и контрибьюторы
text.discord = Присоединяйтесь к нашему Discord! text.discord = Присоединяйтесь к нашему Discord!
text.link.discord.description = Официальный discord-сервер Mindustry text.link.discord.description = Официальный discord-сервер Mindustry
text.link.github.description = Исходный код игры text.link.github.description = Исходный код игры
@@ -14,7 +15,7 @@ text.gameover.pvp = [accent] {0}[] команда победила!
text.sector.gameover = Этот сектор потерян. Высадится повторно? text.sector.gameover = Этот сектор потерян. Высадится повторно?
text.sector.retry = Повторить попытку text.sector.retry = Повторить попытку
text.highscore = [YELLOW]Новый рекорд! text.highscore = [YELLOW]Новый рекорд!
text.wave.lasted = Вы продержались до волны [accent]{0}[]. text.wave.lasted = Вы продержались до [accent]{0}[]-ой волны.
text.level.highscore = Рекорд: [accent]{0} text.level.highscore = Рекорд: [accent]{0}
text.level.delete.title = Подтвердите удаление text.level.delete.title = Подтвердите удаление
text.map.delete = Вы действительно хотите удалить карту "[accent]{0}[]"? text.map.delete = Вы действительно хотите удалить карту "[accent]{0}[]"?
@@ -30,7 +31,7 @@ text.coreattack = < Ядро находится под атакой! >
text.unlocks = Разблокированные text.unlocks = Разблокированные
text.savegame = Сохранить игру text.savegame = Сохранить игру
text.loadgame = Загрузить игру text.loadgame = Загрузить игру
text.joingame = Присоединиться text.joingame = Присоеди\nниться
text.addplayers = Доб/удалить игроков text.addplayers = Доб/удалить игроков
text.customgame = Пользовательская игра text.customgame = Пользовательская игра
text.sectors = Секторы text.sectors = Секторы
@@ -238,7 +239,7 @@ text.editor.exportimage = Экспортировать изображение л
text.editor.exportimage.description = Экспортировать файл с изображением карты text.editor.exportimage.description = Экспортировать файл с изображением карты
text.editor.loadimage = Загрузить \nизображение text.editor.loadimage = Загрузить \nизображение
text.editor.saveimage = Сохранить \nизображение text.editor.saveimage = Сохранить \nизображение
text.editor.unsaved = [scarlet]У вас есть несохранённые изменения![] \nВы уверены, что хотите выйти? text.editor.unsaved = [scarlet]У вас есть несохранённые изменения![]\nВы уверены, что хотите выйти?
text.editor.resizemap = Изменить размер карты text.editor.resizemap = Изменить размер карты
text.editor.mapname = Название карты: text.editor.mapname = Название карты:
text.editor.overwrite = [accent]Внимание! \nЭто перезапишет уже существующую карту. text.editor.overwrite = [accent]Внимание! \nЭто перезапишет уже существующую карту.
@@ -258,12 +259,12 @@ text.settings = Настройки
text.tutorial = Обучение text.tutorial = Обучение
text.editor = Редактор text.editor = Редактор
text.mapeditor = Редактор карт text.mapeditor = Редактор карт
text.donate = Донат text.donate = Пожертво\nвать
text.connectfail = [crimson]Не удалось подключиться к серверу: [accent] {0} text.connectfail = [crimson]Не удалось подключиться к серверу: [accent] {0}
text.error.unreachable = Сервер недоступен. text.error.unreachable = Сервер недоступен.
text.error.invalidaddress = Некорректный адрес. text.error.invalidaddress = Некорректный адрес.
text.error.timedout = Время ожидания истекло!\nУбедитесь, что хост настроен для перенаправления портов и адрес корректный! text.error.timedout = Время ожидания истекло!\nУбедитесь, что хост настроен для перенаправления портов и адрес корректный!
text.error.mismatch = Ошибка пакета:\nвозможное несоответствие версии клиента/сервера. \nУбедитесь, что у вас и у создателя сервера установлена последняя версия Mindustry\\! text.error.mismatch = Ошибка пакета:\nвозможное несоответствие версии клиента/сервера. \nУбедитесь, что у Вас и у владельца сервера установлена последняя версия Mindustry!
text.error.alreadyconnected = Вы уже подключены. text.error.alreadyconnected = Вы уже подключены.
text.error.mapnotfound = Map file not found! text.error.mapnotfound = Map file not found!
text.error.any = Неизвестная сетевая ошибка. text.error.any = Неизвестная сетевая ошибка.
@@ -286,6 +287,7 @@ text.no = Нет
text.info.title = Информация text.info.title = Информация
text.error.title = [crimson]Произошла ошибка text.error.title = [crimson]Произошла ошибка
text.error.crashtitle = Произошла ошибка text.error.crashtitle = Произошла ошибка
text.blocks.unknown = [LIGHT_GRAY]???
text.blocks.blockinfo = Информация о блоке text.blocks.blockinfo = Информация о блоке
text.blocks.powercapacity = Вместимость энергии text.blocks.powercapacity = Вместимость энергии
text.blocks.powershot = Энергия/выстрел text.blocks.powershot = Энергия/выстрел
@@ -318,7 +320,8 @@ text.blocks.coolant = Охлаждающая жидкость
text.blocks.coolantuse = Охлажд. жидкости используется text.blocks.coolantuse = Охлажд. жидкости используется
text.blocks.inputliquidfuel = Жидкое топливо text.blocks.inputliquidfuel = Жидкое топливо
text.blocks.liquidfueluse = Жидкого топлива используется text.blocks.liquidfueluse = Жидкого топлива используется
text.blocks.explosive = Взрывоопасно! text.blocks.boostitem = Ускоряющий предмет
text.blocks.boostliquid = Ускоряющая жидкость
text.blocks.health = Здоровье text.blocks.health = Здоровье
text.blocks.inaccuracy = Разброс text.blocks.inaccuracy = Разброс
text.blocks.shots = Выстрелы text.blocks.shots = Выстрелы
@@ -343,6 +346,7 @@ text.category.liquids = Жидкости
text.category.items = Предметы text.category.items = Предметы
text.category.crafting = Создание text.category.crafting = Создание
text.category.shooting = рельба text.category.shooting = рельба
text.category.optional = Дополнительные улучшения
setting.autotarget.name = Авто-цель setting.autotarget.name = Авто-цель
setting.fpscap.name = Макс. FPS setting.fpscap.name = Макс. FPS
setting.fpscap.none = Неограниченный setting.fpscap.none = Неограниченный
@@ -359,16 +363,15 @@ setting.sensitivity.name = Чувствительность контроллер
setting.saveinterval.name = Интервал автосохранения setting.saveinterval.name = Интервал автосохранения
setting.seconds = {0} Секунд setting.seconds = {0} Секунд
setting.fullscreen.name = Полноэкранный режим setting.fullscreen.name = Полноэкранный режим
setting.multithread.name = Многопоточность (TPS)
setting.fps.name = Показывать FPS setting.fps.name = Показывать FPS
setting.vsync.name = Верт. синхронизация setting.vsync.name = Верт. синхронизация
setting.lasers.name = Показывать энергетические лазеры setting.lasers.name = Показывать энергию лазеров
setting.minimap.name = Показать миникарту setting.minimap.name = Показать миникарту
setting.musicvol.name = Громкость музыки setting.musicvol.name = Громкость музыки
setting.mutemusic.name = Заглушить музыку setting.mutemusic.name = Заглушить музыку
setting.sfxvol.name = Громкость звуковых эффектов setting.sfxvol.name = Громкость звуковых эффектов
setting.mutesound.name = Заглушить звук setting.mutesound.name = Заглушить звук
setting.crashreport.name = Отправлять анонимные отчёты о сбоях setting.crashreport.name = Отправлять анонимные отчёты о вылетах
text.keybind.title = Настройка управления text.keybind.title = Настройка управления
category.general.name = Основное category.general.name = Основное
category.view.name = Просмотр category.view.name = Просмотр
@@ -378,14 +381,14 @@ command.retreat = Отступить
command.patrol = Патрулирование command.patrol = Патрулирование
keybind.press = Нажмите клавишу... keybind.press = Нажмите клавишу...
keybind.press.axis = Нажмите клавишу... keybind.press.axis = Нажмите клавишу...
keybind.move_x.name = Движение по x keybind.move_x.name = Движение по оси x
keybind.move_y.name = Движение по y keybind.move_y.name = Движение по оси y
keybind.select.name = Выбор/Выстрел keybind.select.name = Выбор/Выстрел
keybind.break.name = Разрушение keybind.break.name = Разрушение
keybind.deselect.name = Отмена keybind.deselect.name = Отмена
keybind.shoot.name = Выстрел keybind.shoot.name = Выстрел
keybind.zoom_hold.name = Удержание зума keybind.zoom_hold.name = Управление масштабом
keybind.zoom.name = Приблизить keybind.zoom.name = Приблизить/Отдалить
keybind.menu.name = Меню keybind.menu.name = Меню
keybind.pause.name = Пауза keybind.pause.name = Пауза
keybind.dash.name = Мчаться keybind.dash.name = Мчаться
@@ -401,12 +404,10 @@ keybind.drop_unit.name = Сбросить юнита
keybind.zoom_minimap.name = Увеличить миникарту. keybind.zoom_minimap.name = Увеличить миникарту.
mode.text.help.title = Описание режимов mode.text.help.title = Описание режимов
mode.waves.name = Волны mode.waves.name = Волны
mode.waves.description = В режиме "волны" ограниченные ресурсы и автоматические наступающие волны. mode.waves.description = Обычный режим. В режиме "Волны" надо самим добывать ресурсы и сами волны идут безостановочно.
mode.sandbox.name = Песочница mode.sandbox.name = Песочница
mode.sandbox.description = Бесконечные ресурсы и нет таймера для волн, но можно самим вызвать волну. mode.sandbox.description = Бесконечные ресурсы и нет таймера для волн, но можно самим вызвать волну.
mode.custom.warning = [scarlet]РАЗБЛОКИРОВАННОЕ В ПОЛЬЗОВАТЕЛЬСКИХ ИГРАХ ИЛИ НА СЕРВЕРАХ НЕ СОХРАНЯЕТСЯ[]\n\nИграйте в секторах для разблокировки чего-либо mode.freebuild.name = ободная\nстрой
mode.custom.warning.read = Внимательно прочитайте это!:\n[scarlet]РАЗБЛОКИРОВАННОЕ В ПОЛЬЗОВАТЕЛЬСКИХ ИГРАХ ИЛИ ДРУГИХ РЕЖИМАХ ИГРЫ НЕ РАСПРОСТРАНЯЕТСЯ НА СЕКТОРА ИЛИ ДРУГИЕ РЕЖИМЫ ИГРЫ!\n\n[LIGHT_GRAY](Я бы хотел, чтобы это не было необходимо, но, по-видимому, это так)
mode.freebuild.name = Свободная\nстройка
mode.freebuild.description = ограниченные ресурсы и нет таймера для волн. mode.freebuild.description = ограниченные ресурсы и нет таймера для волн.
mode.pvp.name = Противо-\nстояние mode.pvp.name = Противо-\nстояние
mode.pvp.description = боритесь против других игроков. mode.pvp.description = боритесь против других игроков.
@@ -460,7 +461,7 @@ mech.delta-mech.description = Быстрый, легкобронированны
mech.tau-mech.name = Тау mech.tau-mech.name = Тау
mech.tau-mech.weapon = Восстановительный лазер mech.tau-mech.weapon = Восстановительный лазер
mech.tau-mech.ability = Регенирирующая вспышка mech.tau-mech.ability = Регенирирующая вспышка
mech.tau-mech.description = Мех поддержки. Исцеляет союзные блоки, стреляя в них. Может потушить пожары и исцелить союзников радиусом с его способностью восстанавления. mech.tau-mech.description = Мех поддержки. Исцеляет союзные блоки, стреляя в них. Может исцелить союзников радиусом с его способностью восстанавления.
mech.omega-mech.name = Омега mech.omega-mech.name = Омега
mech.omega-mech.weapon = Ракетомётный пулемётконфигурация mech.omega-mech.weapon = Ракетомётный пулемётконфигурация
mech.omega-mech.ability = Защитная mech.omega-mech.ability = Защитная
@@ -493,9 +494,10 @@ text.mech.ability = [LIGHT_GRAY]Способность: {0}
text.liquid.heatcapacity = [LIGHT_GRAY]Теплоёмкость: {0} text.liquid.heatcapacity = [LIGHT_GRAY]Теплоёмкость: {0}
text.liquid.viscosity = [LIGHT_GRAY]Вязкость: {0} text.liquid.viscosity = [LIGHT_GRAY]Вязкость: {0}
text.liquid.temperature = [LIGHT_GRAY]Температура: {0} text.liquid.temperature = [LIGHT_GRAY]Температура: {0}
block.constructing = {0}\n[LIGHT_GRAY](В процессе) block.constructing = {0}[LIGHT_GRAY](В процессе)
block.spawn.name = Спаун врагов block.spawn.name = Точка появления врагов
block.core.name = Ядро block.core.name = Ядро
block.space.name = Пустота
block.metalfloor.name = Маличeский пoл block.metalfloor.name = Маличeский пoл
block.deepwater.name = Глубоководье block.deepwater.name = Глубоководье
block.water.name = Вода block.water.name = Вода
@@ -590,7 +592,7 @@ block.oil-extractor.name = Нефтяной экстрактор
block.spirit-factory.name = Завод дронов "Призрак" block.spirit-factory.name = Завод дронов "Призрак"
block.phantom-factory.name = Завод дронов "Фантом" block.phantom-factory.name = Завод дронов "Фантом"
block.wraith-factory.name = Завод призрачных истребителей block.wraith-factory.name = Завод призрачных истребителей
block.ghoul-factory.name = Завод гулевых бомбардировщиков block.ghoul-factory.name = Завод бомбардировщиков "Гуль"
block.dagger-factory.name = Завод мехов "Разведчик" block.dagger-factory.name = Завод мехов "Разведчик"
block.titan-factory.name = Завод мехов "Титан" block.titan-factory.name = Завод мехов "Титан"
block.fortress-factory.name = Завод мехов "Крепость" block.fortress-factory.name = Завод мехов "Крепость"
@@ -775,6 +777,6 @@ block.itemvoid.description = Уничтожает любые предметы,
block.powerinfinite.description = Бесконечность — не предел. Бесконечно выводит энергию. Доступен только в песочнице. block.powerinfinite.description = Бесконечность — не предел. Бесконечно выводит энергию. Доступен только в песочнице.
block.powervoid.description = Энергия просто уходит в пустоту. Присутствует только в песочнице. block.powervoid.description = Энергия просто уходит в пустоту. Присутствует только в песочнице.
liquid.water.description = Намного лучше чем [BLUE]монооксид дигидрогена[].\n\n Для получения воды используйте помпу(насос) на источнике(блоке) или экстрактор воды.\n\n Эту жидкость можно подвести к бурам для ускорения скорости добычи или к турелям для ускорения стрельбы. liquid.water.description = Намного лучше чем [BLUE]монооксид дигидрогена[].\n\n Для получения воды используйте помпу(насос) на источнике(блоке) или экстрактор воды.\n\n Эту жидкость можно подвести к бурам для ускорения скорости добычи или к турелям для ускорения стрельбы.
liquid.lava.description = [accent]Горячо...\nВещество расплавленное из горно-каменных пород.\nСлужит как топливо для термального генератора. liquid.lava.description = [accent]Горячо...\nВещество расплавленное из горно-каменных пород.
liquid.oil.description = Кто-то писал о добавлении золота в игру. Его добавили, правда оно какое-то чёрное...\nСмесь жидких углеводородов, выделяющаяся из природного газа в результате снижения температуры и пластового давления.\nСлужит для пластиниевого компрессора и т.д.. liquid.oil.description = Кто-то писал о добавлении золота в игру. Его добавили, правда оно какое-то чёрное...\nСмесь жидких углеводородов, выделяющаяся из природного газа в результате снижения температуры и пластового давления.
liquid.cryofluid.description = Жидкость с температурой ниже чем -273 градусов по цельсию. Может быть использована для ускорения стрельбы турелей или для охлаждения чего-то. liquid.cryofluid.description = Жидкость с температурой ниже чем -273 градусов по цельсию. Может быть использована для ускорения стрельбы турелей или для охлаждения чего-то.

View File

@@ -286,6 +286,7 @@ text.no = Hayir
text.info.title = [accent]Bilgi text.info.title = [accent]Bilgi
text.error.title = [crimson]Bir hata olustu text.error.title = [crimson]Bir hata olustu
text.error.crashtitle = Bir hata olustu text.error.crashtitle = Bir hata olustu
text.blocks.unknown = [LIGHT_GRAY]???
text.blocks.blockinfo = Yapi bilgisi text.blocks.blockinfo = Yapi bilgisi
text.blocks.powercapacity = Guc kapasitesi text.blocks.powercapacity = Guc kapasitesi
text.blocks.powershot = Guc/Saldiri hizi text.blocks.powershot = Guc/Saldiri hizi
@@ -318,7 +319,8 @@ text.blocks.coolant = Sogutma sivisi
text.blocks.coolantuse = Sogutma sivi kullanimi text.blocks.coolantuse = Sogutma sivi kullanimi
text.blocks.inputliquidfuel = Yakit sivisi text.blocks.inputliquidfuel = Yakit sivisi
text.blocks.liquidfueluse = Sivi yakit kullanimi text.blocks.liquidfueluse = Sivi yakit kullanimi
text.blocks.explosive = Patlayici! text.blocks.boostitem = Boost Item
text.blocks.boostliquid = Boost Liquid
text.blocks.health = Can text.blocks.health = Can
text.blocks.inaccuracy = sekme text.blocks.inaccuracy = sekme
text.blocks.shots = vuruslar text.blocks.shots = vuruslar
@@ -343,6 +345,7 @@ text.category.liquids = sivilar
text.category.items = esyalar text.category.items = esyalar
text.category.crafting = uretim text.category.crafting = uretim
text.category.shooting = sikma text.category.shooting = sikma
text.category.optional = Optional Enhancements
setting.autotarget.name = Auto-Target setting.autotarget.name = Auto-Target
setting.fpscap.name = Max FPS setting.fpscap.name = Max FPS
setting.fpscap.none = Yok setting.fpscap.none = Yok
@@ -359,7 +362,6 @@ setting.sensitivity.name = Kumanda hassasligi
setting.saveinterval.name = Otomatik kaydetme suresi setting.saveinterval.name = Otomatik kaydetme suresi
setting.seconds = {0} Saniye setting.seconds = {0} Saniye
setting.fullscreen.name = Tam ekran setting.fullscreen.name = Tam ekran
setting.multithread.name = Parcaciklar
setting.fps.name = FPS'i goster setting.fps.name = FPS'i goster
setting.vsync.name = VSync setting.vsync.name = VSync
setting.lasers.name = Guc lazerlerini goster setting.lasers.name = Guc lazerlerini goster
@@ -404,8 +406,6 @@ mode.waves.name = Dalgali
mode.waves.description = Klasik mod. Dalgalara karsi cekirdegi koru. mode.waves.description = Klasik mod. Dalgalara karsi cekirdegi koru.
mode.sandbox.name = Serbest mode.sandbox.name = Serbest
mode.sandbox.description = Sonsuz esyalar ve Dalga suresi yok mode.sandbox.description = Sonsuz esyalar ve Dalga suresi yok
mode.custom.warning = Note that blocks cannot be used in custom games until they are unlocked in sectors.\n\n[LIGHT_GRAY]If you have not unlocked any blocks, none will appear.
mode.custom.warning.read = Just to make sure you've read it:\n[scarlet]UNLOCKS IN CUSTOM GAMES DO NOT CARRY OVER TO SECTORS OR OTHER MODES!\n\n[LIGHT_GRAY](I wish this wasn't necessary, but apparently it is)
mode.freebuild.name = Yapi Yapma mode.freebuild.name = Yapi Yapma
mode.freebuild.description = Sinirli esyalar ama dalga suresi yok. mode.freebuild.description = Sinirli esyalar ama dalga suresi yok.
mode.pvp.name = PvP mode.pvp.name = PvP

View File

@@ -286,6 +286,7 @@ text.no = No
text.info.title = [Vurgu] Bilgi text.info.title = [Vurgu] Bilgi
text.error.title = [crimson] Bir hata oluştu text.error.title = [crimson] Bir hata oluştu
text.error.crashtitle = Bir hata oluştu text.error.crashtitle = Bir hata oluştu
text.blocks.unknown = [LIGHT_GRAY]???
text.blocks.blockinfo = Blok Bilgisi text.blocks.blockinfo = Blok Bilgisi
text.blocks.powercapacity = Güç kapasitesi text.blocks.powercapacity = Güç kapasitesi
text.blocks.powershot = Güç / atış text.blocks.powershot = Güç / atış
@@ -318,7 +319,8 @@ text.blocks.coolant = Coolant
text.blocks.coolantuse = Coolant Use text.blocks.coolantuse = Coolant Use
text.blocks.inputliquidfuel = Fuel Liquid text.blocks.inputliquidfuel = Fuel Liquid
text.blocks.liquidfueluse = Liquid Fuel Use text.blocks.liquidfueluse = Liquid Fuel Use
text.blocks.explosive = Çok patlayıcı! text.blocks.boostitem = Boost Item
text.blocks.boostliquid = Boost Liquid
text.blocks.health = Can text.blocks.health = Can
text.blocks.inaccuracy = yanlışlık text.blocks.inaccuracy = yanlışlık
text.blocks.shots = atışlar text.blocks.shots = atışlar
@@ -343,6 +345,7 @@ text.category.liquids = Liquids
text.category.items = Items text.category.items = Items
text.category.crafting = Crafting text.category.crafting = Crafting
text.category.shooting = Shooting text.category.shooting = Shooting
text.category.optional = Optional Enhancements
setting.autotarget.name = Auto-Target setting.autotarget.name = Auto-Target
setting.fpscap.name = Max FPS setting.fpscap.name = Max FPS
setting.fpscap.none = None setting.fpscap.none = None
@@ -359,7 +362,6 @@ setting.sensitivity.name = Denetleyici hassasiyeti
setting.saveinterval.name = Otomatik Kaydetme Aralığı setting.saveinterval.name = Otomatik Kaydetme Aralığı
setting.seconds = saniye setting.seconds = saniye
setting.fullscreen.name = Tam ekran setting.fullscreen.name = Tam ekran
setting.multithread.name = Çok iş parçacığı
setting.fps.name = Saniyede ... Kare göstermek setting.fps.name = Saniyede ... Kare göstermek
setting.vsync.name = VSync setting.vsync.name = VSync
setting.lasers.name = Güç Lazerleri Göster setting.lasers.name = Güç Lazerleri Göster
@@ -404,8 +406,6 @@ mode.waves.name = dalgalar
mode.waves.description = normal mod. sınırlı kaynaklar ve otomatik gelen dalgalar. mode.waves.description = normal mod. sınırlı kaynaklar ve otomatik gelen dalgalar.
mode.sandbox.name = Limitsiz Oynama mode.sandbox.name = Limitsiz Oynama
mode.sandbox.description = sonsuz kaynaklar ve dalgalar için zamanlayıcı yok. mode.sandbox.description = sonsuz kaynaklar ve dalgalar için zamanlayıcı yok.
mode.custom.warning = Note that blocks cannot be used in custom games until they are unlocked in sectors.\n\n[LIGHT_GRAY]If you have not unlocked any blocks, none will appear.
mode.custom.warning.read = Just to make sure you've read it:\n[scarlet]UNLOCKS IN CUSTOM GAMES DO NOT CARRY OVER TO SECTORS OR OTHER MODES!\n\n[LIGHT_GRAY](I wish this wasn't necessary, but apparently it is)
mode.freebuild.name = Özgür Oynama mode.freebuild.name = Özgür Oynama
mode.freebuild.description = sınırlı kaynaklar ve dalgalar için zamanlayıcı yok. mode.freebuild.description = sınırlı kaynaklar ve dalgalar için zamanlayıcı yok.
mode.pvp.name = PvP mode.pvp.name = PvP

View File

@@ -1,10 +1,11 @@
text.credits.text = Створив [ROYAL]Anuken[] - [SKY]anukendev@gmail.com[]\n\nПерекладачі:\n[YELLOW]Prosta4ok_ua[]\n[GREEN]xga\n\n[] Є питання по грі або проблеми с перекладом? Іди в офіційний сервер discord Mindustry в канал #український. text.credits.text = Створив [ROYAL]Anuken[] - [SKY]anukendev@gmail.com[]\n\nЄ питання по грі або проблеми с перекладом? Іди в офіційний сервер discord Mindustry в канал #український.
text.credits = Автори text.credits = Автори
text.contributors = Перекладачі та Контриб'ютори
text.discord = Приєднуйтесь до нашого Discord! text.discord = Приєднуйтесь до нашого Discord!
text.link.discord.description = Офіційний сервер discord Mindustry text.link.discord.description = Офіційний discord-сервер Mindustry
text.link.github.description = Вихідний код гри text.link.github.description = Код гри
text.link.dev-builds.description = Нестабільні версії text.link.dev-builds.description = Нестабільні версії
text.link.trello.description = Офіційна дошка trello для запланованих функцій text.link.trello.description = Офіційна дошка trello(на англ.) для запланованих функцій
text.link.itch.io.description = Itch.io сторінка з веб-версією та завантаженням для ПК text.link.itch.io.description = Itch.io сторінка з веб-версією та завантаженням для ПК
text.link.google-play.description = Скачати з Google Play для Android text.link.google-play.description = Скачати з Google Play для Android
text.link.wiki.description = Офіційна Mindustry вікі (англ.) text.link.wiki.description = Офіційна Mindustry вікі (англ.)
@@ -14,15 +15,15 @@ text.gameover.pvp = [accent] {0}[] команда перемогла!
text.sector.gameover = Цей сектор було втрачено. Повторно висадитися? text.sector.gameover = Цей сектор було втрачено. Повторно висадитися?
text.sector.retry = Повторити спробу text.sector.retry = Повторити спробу
text.highscore = [YELLOW]Новий рекорд! text.highscore = [YELLOW]Новий рекорд!
text.wave.lasted = Ви проіснували до [accent]{0}[]-ої хвилі. text.wave.lasted = Вы продержались до [accent]{0}[]-ой волны.
text.level.highscore = Рекорд: [accent]{0} text.level.highscore = Рекорд: [accent]{0}
text.level.delete.title = Підтвердьте видалення text.level.delete.title = Підтвердьте видалення
text.map.delete = Ви впевнені, що хочете видалити карту "[accent]{0}[]"? text.map.delete = Ви впевнені, що хочете видалити карту "[accent]{0}[]"?
text.level.select = Вибір мапи text.level.select = Вибір мапи
text.level.mode = Ігровий режим: text.level.mode = Режим гри:
text.construction.desktop = Щоб скасувати вибір блоку або припинити будівництво, [accent] скористайтеся пробілом[]. text.construction.desktop = Щоб скасувати вибір блоку або припинити будівництво, [accent] скористайтеся пробілом[].
text.construction.title = Інструкція з будівництва блоків text.construction.title = Інструкція з будівництва блоків
text.construction = Ви тільки що перешли в [accent]режим будівництва блоків[].\n\nЩоб розпочати розміщення, просто торкніться відповідного розташування поруч із вашим кораблем.\nПісля вибору деяких блоків натисніть прапорець, щоб підтвердити, і ваш корабель почне будувати їх.\n\n- [accent]Вилучіть блоки[] з вашого вибору, торкнувшись їх.\n- [accent]Перемістіть виділення[] утримуючи та перетягнувши будь-який блок у виділенні.\n- [accent]Розташуйте блоки у лінію[], торкнувшись і утримуючи порожнє місце, а потім перетягуючи в потрібному напрямку.\n- [accent]Скасуйте конструкцію або виділення[] натиснувши X внизу ліворуч. text.construction = Ви тільки що перейшли в режим будівництва[accent] блоків[].\n\nЩоб розпочати розміщення, просто торкніться підходящого місця поруч із вашим кораблем.\nПісля вибору деяких блоків натисніть прапорець, щоб підтвердити, і ваш корабель почне будувати їх.\n\n- [accent]Вилучіть блоки[] з вашого вибору, торкнувшись їх.\n- [accent]Перемістіть виділення[] утримуючи та перетягнувши будь-який блок у виділенні.\n- [accent]Розташуйте блоки у лінію[], торкнувшись і утримуючи порожнє місце, а потім перетягуючи в потрібному напрямку.\n- [accent]Скасуйте розміщення блоків[] натиснувши X внизу ліворуч.
text.deconstruction.title = Інструкція з деконструкції блоків text.deconstruction.title = Інструкція з деконструкції блоків
text.deconstruction = Ви тільки що перешли в [accent] режим деконструкції блоків[].\n\nЩоб почати руйнувати, просто торкніться блоку поруч із вашим кораблем.\nПісля вибору деяких блоків натисніть прапорець, щоб підтвердити, і ваш корабель почне їх деконструювати.\n\n- [accent]Вилучіть блоки[] з вашого вибору, торкнувшись їх.\n- [accent]Вилучіть блоки в зоні[] , торкнувшись і утримуючи порожнє місце, потім перетягніть у потрібному напрямку.\n- [accent]Скасуйте деконструкцію або виділення[] натиснувши X внизу ліворуч. text.deconstruction = Ви тільки що перешли в [accent] режим деконструкції блоків[].\n\nЩоб почати руйнувати, просто торкніться блоку поруч із вашим кораблем.\nПісля вибору деяких блоків натисніть прапорець, щоб підтвердити, і ваш корабель почне їх деконструювати.\n\n- [accent]Вилучіть блоки[] з вашого вибору, торкнувшись їх.\n- [accent]Вилучіть блоки в зоні[] , торкнувшись і утримуючи порожнє місце, потім перетягніть у потрібному напрямку.\n- [accent]Скасуйте деконструкцію або виділення[] натиснувши X внизу ліворуч.
text.showagain = Не показувати знову до наступного сеансу text.showagain = Не показувати знову до наступного сеансу
@@ -30,11 +31,11 @@ text.coreattack = < Ядро під атакою! >
text.unlocks = Розблоковане text.unlocks = Розблоковане
text.savegame = Зберегти гру text.savegame = Зберегти гру
text.loadgame = Завантажити гру text.loadgame = Завантажити гру
text.joingame = Приєднатися\nдо гри text.joingame = Приєднатися
text.addplayers = Дод/Видалити гравців text.addplayers = Дод/Видалити гравців
text.customgame = Індивідуальна гра text.customgame = Користувальницька гра
text.sectors = Сектори text.sectors = Сектори
text.sector = Сектор: [LIGHT_GRAY]{0} text.sector = Обраний сектор: [LIGHT_GRAY]{0}
text.sector.time = Час: [LIGHT_GRAY]{0} text.sector.time = Час: [LIGHT_GRAY]{0}
text.sector.deploy = Висадитися text.sector.deploy = Висадитися
text.sector.abandon = Відступити text.sector.abandon = Відступити
@@ -45,27 +46,27 @@ text.sector.unexplored = [accent][[Недосліджений]
text.missions = Місії:[LIGHT_GRAY] {0} text.missions = Місії:[LIGHT_GRAY] {0}
text.mission = Місія:[LIGHT_GRAY] {0} text.mission = Місія:[LIGHT_GRAY] {0}
text.mission.main = Головна місія:[LIGHT_GRAY] {0} text.mission.main = Головна місія:[LIGHT_GRAY] {0}
text.mission.info = Інформація про місії text.mission.info = Інформація про місію
text.mission.complete = Місія завершена! text.mission.complete = Місія виконана!
text.mission.complete.body = Сектор {0},{1} був завойований. text.mission.complete.body = Сектор {0},{1} був завойований.
text.mission.wave = Пережити наступну кількість хвиль:[accent]{0}/{1}[]\nХвиля в {2} text.mission.wave = Пережити [accent]{0}/{1}[]\nХвиля через {2}
text.mission.wave.enemies = Пережити [accent] {0}/{1} []хвиль\n{2} Ворог. text.mission.wave.enemies = Пережити [accent] {0}/{1} []хвиль\n{2} ворог.
text.mission.wave.enemy = Пережити[accent] {0}/{1} []хвиль\n{2} Ворог text.mission.wave.enemy = Пережити[accent] {0}/{1} []хвил.\n{2} Ворог
text.mission.wave.menu = Пережити[accent] {0} []хвиль text.mission.wave.menu = Пережити[accent] {0} [] хвиль
text.mission.battle = Знищити базу супротивника. text.mission.battle = Знищте ядро супротивника.
text.mission.resource.menu = Добути {0} x{1} text.mission.resource.menu = Добути {0} x{1}
text.mission.resource = Отримано {0} x{1} text.mission.resource = Добути {0}:\n[accent]{1}/{2}[]
text.mission.block = Створити {0} text.mission.block = Створити {0}
text.mission.unit = Створити {0} бой.од. text.mission.unit = Створити {0} бой.од.
text.mission.command = Надіслати команду {0} до боїв. одиниць text.mission.command = Надіслати команду {0} боїв. одиницям
text.mission.linknode = З'єднати силові вузли text.mission.linknode = З'єднати силові вузли
text.mission.display = [accent]Місія:\n[LIGHT_GRAY]{0} text.mission.display = [accent]Місія:\n[LIGHT_GRAY]{0}
text.mission.mech = Переключитися на мех[accent] {0}[] text.mission.mech = Переключитися на мех[accent] {0}[]
text.mission.create = Створити[accent] {0} [] text.mission.create = Створити[accent] {0}[]
text.none = <нічого> text.none = <нічого>
text.close = Закрити text.close = Закрити
text.quit = Вийти text.quit = Вийти
text.maps = Карти text.maps = Мапи
text.continue = Продовжити text.continue = Продовжити
text.nextmission = Наступна місія text.nextmission = Наступна місія
text.maps.none = [LIGHT_GRAY]Карт не знайдено! text.maps.none = [LIGHT_GRAY]Карт не знайдено!
@@ -74,27 +75,27 @@ text.name = Нік:
text.filename = Ім'я файлу: text.filename = Ім'я файлу:
text.unlocked = Новий блок розблоковано! text.unlocked = Новий блок розблоковано!
text.unlocked.plural = Нові блоки розблоковано! text.unlocked.plural = Нові блоки розблоковано!
text.players = {0} гравців онлайн text.players = Гравців на сервері: {0}
text.players.single = {0} гравець онлайн text.players.single = {0} гравець на сервері
text.server.closing = [accent]Закриття серверу... text.server.closing = [accent]Закриття серверу...
text.server.kicked.kick = Ви були вигнані(кікнуті) з сервера! text.server.kicked.kick = Ви були вигнані(кікнуті) з сервера!
text.server.kicked.serverClose = Сервер закритий. text.server.kicked.serverClose = Сервер закрито.
text.server.kicked.sectorComplete = Сектор завойован. text.server.kicked.sectorComplete = Сектор завойовано.
text.server.kicked.sectorComplete.text = Ваша місія завершена. \nСервер продовжить роботу в наступному секторі. text.server.kicked.sectorComplete.text = Ваша місія завершена. \nСервер продовжить роботу і висадить Вас в наступному секторі.
text.server.kicked.clientOutdated = Застарілий клієнт! Оновіть свою гру! text.server.kicked.clientOutdated = Застарілий клієнт! Оновіть свою гру!
text.server.kicked.serverOutdated = Застарілий сервер! Попросіть хост оновити сервер/гру! text.server.kicked.serverOutdated = Застарілий сервер! Попросіть адміністратора серверу оновити сервер/гру!
text.server.kicked.banned = Ви були заблоковані на цьому сервері. text.server.kicked.banned = Ви були заблоковані на цьому сервері.
text.server.kicked.recentKick = Нещодавно вас вигнали(кікнули). \nПочекайте, перш ніж підключитися знову. text.server.kicked.recentKick = Нещодавно Вас вигнали(кікнули). \nПочекайте трохи перед наступним підключенням.
text.server.kicked.nameInUse = На цьому сервері є хтось \nз таким ніком. text.server.kicked.nameInUse = На цьому сервері є хтось \nз таким ніком.
text.server.kicked.nameEmpty = Ваш нікнейм має містити принаймні один символ або цифру. text.server.kicked.nameEmpty = Ваш нікнейм має містити принаймні один символ або цифру.
text.server.kicked.idInUse = Ви вже на цьому сервері! Підключення двох облікових записів не допускається. text.server.kicked.idInUse = Ви вже на цьому сервері! Підключення двох облікових записів не допускається.
text.server.kicked.customClient = Цей сервер не підтримує користувальницькі збірки. Завантажте офіційну версію. text.server.kicked.customClient = Цей сервер не підтримує користувальницькі збірки. Завантажте офіційну версію.
text.host.info = Кнопка [accent]Сервер[] розміщує сервер на порті [scarlet]6567[]. \nКористувачі, які знаходяться у тій же [LIGHT_GRAY] WiFi або локальній мережі [] повинні бачити ваш сервер у своєму списку серверів.\n\nЯкщо ви хочете, щоб люди могли приєднуватися з будь-якої точки через IP, то [accent] переадресація портів [] обов'язкова.\n\n[LIGHT_GRAY] Примітка. Якщо у вас виникли проблеми з підключенням до вашої локальної гри, переконайтеся, що ви дозволили Mindustry доступ до вашої локальної мережі в налаштуваннях брандмауера. text.host.info = Кнопка [accent]Сервер[] розміщує сервер на порті [scarlet]6567[]. \nКористувачі, які знаходяться у тій же [LIGHT_GRAY] WiFi або локальній мережі[] повинні бачити ваш сервер у своєму списку серверів.\n\nЯкщо ви хочете, щоб люди могли приєднуватися з будь-якої точки через IP, то [accent] переадресація порту [] обов'язкова.\n\n[LIGHT_GRAY] Примітка. Якщо у вас виникли проблеми з підключенням до вашої локальної гри, переконайтеся, що ви дозволили Mindustry доступ до вашої локальної мережі в налаштуваннях брандмауера.
text.join.info = Тут ви можете ввести [accent]IP серверу[] для підключення або знайти сервери у [accent]локальній мережі[] для підключення до них.\nПідтримується локальна мережа(LAN) і широкосмугова мережа(WAN).\n\n[LIGHT_GRAY] Примітка. Там немає автоматичного глобального списку серверів; якщо ви хочете підключитися до когось через IP, вам доведеться попросити хазяїна серверу дати свій ip. text.join.info = Тут ви можете ввести [accent]IP серверу[] для підключення або знайти сервери у [accent]локальній мережі[] для підключення до них.\nПідтримується локальна мережа(LAN) і широкосмугова мережа(WAN).\n\n[LIGHT_GRAY] Примітка. Тут немає автоматичного глобального списку серверів; якщо ви хочете підключитися до когось через IP, вам доведеться попросити створювача серверу дати свій ip.
text.hostserver = Запустити сервер text.hostserver = Запустити сервер
text.hostserver.mobile = Запустити\nСервер text.hostserver.mobile = Запустити\nсерверу
text.host = Сервер text.host = Сервер
text.hosting = [accent]Открытие сервера ... text.hosting = [accent]Відкриття серверу...
text.hosts.refresh = Оновити text.hosts.refresh = Оновити
text.hosts.discovering = Пошук локальних ігор text.hosts.discovering = Пошук локальних ігор
text.server.refreshing = Оновлення серверу text.server.refreshing = Оновлення серверу
@@ -113,9 +114,9 @@ text.trace.totalblocksplaced = Всього встановлено блоків:
text.trace.lastblockplaced = Останній встановлений блок: [accent]{0} text.trace.lastblockplaced = Останній встановлений блок: [accent]{0}
text.invalidid = Невірний ідентифікатор клієнта! Надішліть звіт про помилку. text.invalidid = Невірний ідентифікатор клієнта! Надішліть звіт про помилку.
text.server.bans = Блокування text.server.bans = Блокування
text.server.bans.none = Нема заблокованих гравців! text.server.bans.none = Заблокованих гравців нема!
text.server.admins = Адміністратори text.server.admins = Адміністратори
text.server.admins.none = Адміністраторів нема! text.server.admins.none = Адміністраторів нема
text.server.add = Додати сервер text.server.add = Додати сервер
text.server.delete = Ви впевнені, що хочете видалити цей сервер? text.server.delete = Ви впевнені, що хочете видалити цей сервер?
text.server.hostname = Хост: {0} text.server.hostname = Хост: {0}
@@ -123,10 +124,10 @@ text.server.edit = Редагувати сервер
text.server.outdated = [crimson]Застарілий сервер![] text.server.outdated = [crimson]Застарілий сервер![]
text.server.outdated.client = [crimson]Застарілий клієнт![] text.server.outdated.client = [crimson]Застарілий клієнт![]
text.server.version = [lightgray]Версія: {0} text.server.version = [lightgray]Версія: {0}
text.server.custombuild = [yellow]Користувацький білд text.server.custombuild = [yellow]Користувацький збірка
text.confirmban = Ви впевнені, що хочете заблокувати(забанити) цього гравця? text.confirmban = Ви впевнені, що хочете заблокувати цього гравця?
text.confirmkick = Ви впевнені, що хочете викинути(кікнути) цього гравця? text.confirmkick = Ви впевнені, що хочете викинути(кікнути) цього гравця?
text.confirmunban = Ви впевнені, що хочете розблокувати) цього гравця? text.confirmunban = Ви впевнені, що хочете розблокувати цього гравця?
text.confirmadmin = Ви впевнені, що хочете зробити цього гравця адміністратором? text.confirmadmin = Ви впевнені, що хочете зробити цього гравця адміністратором?
text.confirmunadmin = Ви впевнені, що хочете видалити статус адміністратора з цього гравця? text.confirmunadmin = Ви впевнені, що хочете видалити статус адміністратора з цього гравця?
text.joingame.title = Приєднатися до гри text.joingame.title = Приєднатися до гри
@@ -136,10 +137,10 @@ text.disconnect.data = Не вдалося завантажити світові
text.connecting = [accent]Підключення... text.connecting = [accent]Підключення...
text.connecting.data = [accent]Завантаження даних світу... text.connecting.data = [accent]Завантаження даних світу...
text.server.port = Порт: text.server.port = Порт:
text.server.addressinuse = Адреса вже використовується! text.server.addressinuse = Ця адреса вже використовується!
text.server.invalidport = Недійсний номер порту! text.server.invalidport = Недійсний номер порту!
text.server.error = [crimson]Помилка хостингу сервера: [accent]{0} text.server.error = [crimson]Помилка запуску сервера: [accent]{0}
text.save.old = Це збереження для старої версії гри, і його більше не можна використовувати.\n\n [LIGHT_GRAY]Зберігати зворотну сумісність буде реалізовано у повній версії 4.0. text.save.old = Це збереження для старої версії гри, і його більше не можна використовувати.\n\n [LIGHT_GRAY]Зворотна сумісність буде реалізовано у повній версії 4.0.
text.save.new = Нове збереження text.save.new = Нове збереження
text.save.overwrite = Ви впевнені, що хочете перезаписати цей слот для збереження? text.save.overwrite = Ви впевнені, що хочете перезаписати цей слот для збереження?
text.overwrite = Перезаписати text.overwrite = Перезаписати
@@ -152,24 +153,24 @@ text.save.export = Экспортувати збереження
text.save.import.invalid = [accent]Це збереження недійсне! text.save.import.invalid = [accent]Це збереження недійсне!
text.save.import.fail = [crimson]Не вдалося імпортувати збереження: [accent]{0} text.save.import.fail = [crimson]Не вдалося імпортувати збереження: [accent]{0}
text.save.export.fail = [crimson]Не вдалося экспортувати збереження: [accent]{0} text.save.export.fail = [crimson]Не вдалося экспортувати збереження: [accent]{0}
text.save.import = Імпорт збереження text.save.import = Імпортувати збереження
text.save.newslot = Зберегти ім'я: text.save.newslot = Назва збереження:
text.save.rename = Перейменувати text.save.rename = Перейменувати
text.save.rename.text = Нова назва: text.save.rename.text = Нова назва:
text.selectslot = Виберіть збереження. text.selectslot = Виберіть збереження.
text.slot = [accent]Слот {0} text.slot = [accent]Слот {0}
text.save.corrupted = [accent]Збережений файл пошкоджений або недійсний! \nЯкщо ви щойно оновили свою гру, це, мабуть, є зміною формату збереження та [scarlet] не []є помилкою. text.save.corrupted = [accent]Збережений файл пошкоджено або э недійсним! \nЯкщо ви щойно оновили свою гру, це, мабуть, є зміною формату збереження та [scarlet] не[] є помилкою.
text.sector.corrupted = [accent]Знайдено файл збереження для цього сектора, але завантаження не вдалося. \n Буде створено новий. text.sector.corrupted = [accent]Файл збереження для цього сектора знайдено, але завантаження не вдалося. \n Буде створено новий файл.
text.empty = <порожній> text.empty = <порожній>
text.on = Вкл text.on = Включено
text.off = Викл text.off = Вимкнено
text.save.autosave = Автозбереження: {0} text.save.autosave = Автозбереження: {0}
text.save.map = Карта: {0} text.save.map = Мапа: {0}
text.save.wave = Хвиля {0} text.save.wave = Хвиля {0}
text.save.difficulty = Рівень складності: {0} text.save.difficulty = Складність: {0}
text.save.date = Останне збереження: {0} text.save.date = Останнє збереження
text.save.playtime = Час гри: {0} text.save.playtime = Час гри: {0}
text.confirm = Підтвердити text.confirm = Підтвердження
text.delete = Видалити text.delete = Видалити
text.ok = ОК text.ok = ОК
text.open = Відкрити text.open = Відкрити
@@ -177,11 +178,11 @@ text.cancel = Скасувати
text.openlink = Відкрити посилання text.openlink = Відкрити посилання
text.copylink = Скопіювати посилання text.copylink = Скопіювати посилання
text.back = Назад text.back = Назад
text.quit.confirm = Ти впевнений що хочеш вийти? text.quit.confirm = Ви впевнені що хочете вийти?
text.changelog.title = Журнал змін text.changelog.title = Журнал змін
text.changelog.loading = Отримання журналу змін... text.changelog.loading = Отримання журналу змін...
text.changelog.error.android = [accent]Зверніть увагу, що іноді журнал змін не працює на ОС Android 4.4 або на нижчій версії!\nЦе пов'язано з внутрішньою помилкою Android. text.changelog.error.android = [accent]Зверніть увагу, що іноді журнал змін не працює на ОС Android 4.4 або на нижчій версії!\nЦе пов'язано з внутрішньою помилкою Android.
text.changelog.error.ios = [accent]Журнал змін наразі не підтримується в iOS. text.changelog.error.ios = [accent]В настоящее время журнал изменений не поддерживается iOS.
text.changelog.error = [scarlet]Помилка отримання журналу змін!\nПеревірте підключення до Інтернету. text.changelog.error = [scarlet]Помилка отримання журналу змін!\nПеревірте підключення до Інтернету.
text.changelog.current = [yellow][[Поточна версія] text.changelog.current = [yellow][[Поточна версія]
text.changelog.latest = [accent][[Остання версія] text.changelog.latest = [accent][[Остання версія]
@@ -190,7 +191,7 @@ text.saving = [accent]Збереження...
text.wave = [accent]Хвиля {0} text.wave = [accent]Хвиля {0}
text.wave.waiting = Хвиля через {0} text.wave.waiting = Хвиля через {0}
text.waiting = Очікування... text.waiting = Очікування...
text.waiting.players = Очікування гравців ... text.waiting.players = Очікування гравців
text.wave.enemies = [LIGHT_GRAY]{0} ворог. залишилося text.wave.enemies = [LIGHT_GRAY]{0} ворог. залишилося
text.wave.enemy = [LIGHT_GRAY]{0} ворог залишився text.wave.enemy = [LIGHT_GRAY]{0} ворог залишився
text.loadimage = Завантажити зображення text.loadimage = Завантажити зображення
@@ -199,105 +200,105 @@ text.unknown = Невідомо
text.custom = Користувальницька text.custom = Користувальницька
text.builtin = Bбудована text.builtin = Bбудована
text.map.delete.confirm = Ви впевнені, що хочете видалити цю карту? Цю дію не можна скасувати! text.map.delete.confirm = Ви впевнені, що хочете видалити цю карту? Цю дію не можна скасувати!
text.map.random = [accent]Випадкова карта text.map.random = [accent]Випадкова мапа
text.map.nospawn = Ця карта не має жодного ядра для спавну гравця! Додайте[ROYAL] сине[] ядро в цю карту в редакторі. text.map.nospawn = Ця мапа не має жодного ядра для спавну гравця! Додайте[ROYAL] сине[] ядро в цю мапу редакторі.
text.map.nospawn.pvp = У цій карти немає ворожих ядер, в яких гравець може з'явитися! Додайте[SCARLET] червоні[] ядра до цієї карті в редакторі. text.map.nospawn.pvp = У цій карти немає ворожих ядер, в яких гравець може з'явитися! Додайте[SCARLET] червоні[] ядра до цієї карті в редакторі.
text.map.invalid = Помилка завантаження карти: пошкоджений або невірний файл карти. text.map.invalid = Помилка завантаження карти: пошкоджений або невірний файл карти.
text.editor.brush = Пензлик text.editor.brush = Пензлик
text.editor.slope = \\ text.editor.slope =
text.editor.openin = Відкрити в редакторі text.editor.openin = Відкрити в редакторі
text.editor.oregen = Генерація руд text.editor.oregen = Генерація руд
text.editor.oregen.info = Генерація руд: text.editor.oregen.info = Генерація руд:
text.editor.mapinfo = Інформація про карту text.editor.mapinfo = Інформація про мапу
text.editor.author = Автор: text.editor.author = Автор:
text.editor.description = Опис: text.editor.description = Опис:
text.editor.name = Назва: text.editor.name = Назва:
text.editor.teams = Команди text.editor.teams = Команди
text.editor.elevation = Высота височини text.editor.elevation = Висота
text.editor.errorimageload = Помилка завантаження файлу:\n[accent]{0} text.editor.errorimageload = Помилка завантаження зображення:[accent] {0}
text.editor.errorimagesave = Помилка збереження файлу:\n[accent]{0} text.editor.errorimagesave = Помилка збереження зображення:\n[accent]{0}
text.editor.generate = Генерувати text.editor.generate = Створити
text.editor.resize = Змінити розмір text.editor.resize = Змінити \nрозмір
text.editor.loadmap = Завантажити карту text.editor.loadmap = Завантажити мапу
text.editor.savemap = Зберегти карту text.editor.savemap = Зберегти карту
text.editor.saved = Збережено! text.editor.saved = Збережено!
text.editor.save.noname = Ваша карта не має назви! Встановіть його в меню "інформація про карту". text.editor.save.noname = Ваша карта не має назви! Встановіть його в меню «Інформація про карту».
text.editor.save.overwrite = Ваша карта перезаписує вбудовану карту! Виберіть інше ім'я в меню "інформація про карту". text.editor.save.overwrite = Ваша карта перезаписує вбудовану карту! Виберіть інше ім'я в меню «Інформація про карту».
text.editor.import.exists = [scarlet]Неможливо імпортувати: [] вбудована карта з назвою "{0}" вже існує! text.editor.import.exists = [scarlet]Неможливо імпортувати: [] вбудована карта з назвою "{0}" вже існує!
text.editor.import = Імпорт... text.editor.import = Імпорт...
text.editor.importmap = Імпортувати карту text.editor.importmap = Імпортувати карту
text.editor.importmap.description = Імпортуйте вже існуючої карти text.editor.importmap.description = Імпортувати вже існуючу карту
text.editor.importfile = Імпортувати файл text.editor.importfile = Імпортувати файл
text.editor.importfile.description = Імпортуйте зовнішній файл карти text.editor.importfile.description = Імпортувати зовнішній файл карти
text.editor.importimage = Імпорт зображення місцевості text.editor.importimage = Імпорт зовнішнього файла зображення карти
text.editor.importimage.description = Імпорт зовнішнього файла зображення карти text.editor.importimage.description = Імпорт зображення місцевості
text.editor.export = Експорт... text.editor.export = Експорт...
text.editor.exportfile = Експорт файлу text.editor.exportfile = Експорт файлу
text.editor.exportfile.description = Експортувати файл карти text.editor.exportfile.description = Експортувати файл карти
text.editor.exportimage = Експорт зображення місцевості text.editor.exportimage = Експорт зображення місцевості
text.editor.exportimage.description = Експорт файла з зображенням карти text.editor.exportimage.description = Експорт файла з зображенням карти
text.editor.loadimage = Імпорт місцевості text.editor.loadimage = Завантажити\nзображення
text.editor.saveimage = Екпорт місцевості text.editor.saveimage = Зберегти\nзображення
text.editor.unsaved = [scarlet]У вас є незбережені зміни![]\nВи впевнені, що хочете вийти? text.editor.unsaved = [scarlet]У вас є незбережені зміни![]\nВи впевнені, що хочете вийти?
text.editor.resizemap = Змінити розмір карти text.editor.resizemap = Змінити розмір карти
text.editor.mapname = Назва карти: text.editor.mapname = Название карты:
text.editor.overwrite = [accent]Попередження!\nЦе перезаписує існуючу карту. text.editor.overwrite = [accent]Попередження!\nЦе перезаписує існуючу карту.
text.editor.overwrite.confirm = [scarlet]Попередження![] Карта з такою назвою вже існує. Ви впевнені, що хочете переписати її? text.editor.overwrite.confirm = [scarlet]Попередження![] Карта з такою назвою вже існує. Ви впевнені, що хочете переписати її?
text.editor.selectmap = Виберіть карту для завантаження: text.editor.selectmap = Виберіть мапу для завантаження:
text.width = Ширина: text.width = Ширина:
text.height = Висота: text.height = Висота:
text.menu = Меню text.menu = Меню
text.play = Грати text.play = Грати
text.load = Завантаження text.load = Завантажити
text.save = Зберегти text.save = Зберегти
text.fps = FPS: {0} text.fps = FPS: {0}
text.tps = TPS: {0} text.tps = TPS: {0}
text.ping = Пінг: {0} мс text.ping = Пінг: {0} мс
text.language.restart = Будь ласка, перезапустіть свою гру, щоб налаштування мови набули чинності. text.language.restart = Будь ласка, перезапустіть свою гру, щоб налаштування мови набули чинності.\nPlease restart your game for the language settings to take effect.
text.settings = Налаштування text.settings = Налаштування
text.tutorial = Навчання text.tutorial = Навчання
text.editor = Редактор text.editor = Редактор
text.mapeditor = Редактор карт text.mapeditor = Редактор мап
text.donate = Пожертвувати text.donate = Пожертву\nвання
text.connectfail = [crimson]Не вдалося підключитися до сервера: [accent]{0} text.connectfail = [crimson]Не вдалося підключитися до сервера: [accent]{0}
text.error.unreachable = Server unreachable. text.error.unreachable = Сервер не доступний.
text.error.invalidaddress = Invalid address. text.error.invalidaddress = Некоректна адреса.
text.error.timedout = Timed out!\nMake sure the host has port forwarding set up, and that the address is correct! text.error.timedout = Час очікувування вийшов.\nПереконайтеся, що адреса коректна і що власник сервера налаштував переадресацію порту!
text.error.mismatch = Packet error:\npossible client/server version mismatch.\nMake sure you and the host have the latest version of Mindustry! text.error.mismatch = Ошибка пакету:\nможливе невідповідність версії клієнта / сервера.\nПереконайтеся, що у Вас та у володара сервера встановлена остання версія Mindustry!
text.error.alreadyconnected = Already connected. text.error.alreadyconnected = Ви вже підключилися.
text.error.mapnotfound = Map file not found! text.error.any = Невідома мережева помилка
text.error.any = Unkown network error.
text.settings.language = Мова text.settings.language = Мова
text.settings.reset = Скинути до стандартних text.settings.reset = Скинути за замовчуванням
text.settings.rebind = Змінити text.settings.rebind = Зміна
text.settings.controls = Елементи управління text.settings.controls = Управління
text.settings.game = Гра text.settings.game = Гра
text.settings.sound = Звук text.settings.sound = Звук
text.settings.graphics = Графіка text.settings.graphics = Графіка
text.settings.cleardata = Очистити ігрові дані... text.settings.cleardata = Очистити дані...
text.settings.clear.confirm = Ви впевнені, що хочете очистити ці дані?\nЩо робиться, не може бути скасовано! text.settings.clear.confirm = Ви впевнені, що хочете очистити ці дані?\nЦя дія не може бути скасовано!
text.settings.clearall.confirm = [scarlet]УВАГА![]\nЦе очистить всі дані, включаючи збереження, карти, розблокування та призначенні клавіші.\nПісля того, як ви натиснете "ОК", гра видалить усі дані та автоматично вийде. text.settings.clearall.confirm = [scarlet]УВАГА![]\nЦе очистить всі дані, включаючи збереження, карти, розблокуване та призначенні клавіші.\nПісля того, як ви натиснете ОК, гра видалить усі дані та автоматично вийде.
text.settings.clearsectors = Очистити сектори text.settings.clearsectors = Очистити сектори
text.settings.clearunlocks = Очистити розблоковане text.settings.clearunlocks = Очистити розблоковане
text.settings.clearall = Очистити все text.settings.clearall = Очистити все
text.paused = Пауза text.paused = Пауза
text.yes = Так text.yes = Так
text.no = Ні text.no = Ні
text.info.title = [accent]Інформація text.info.title = Інформація
text.error.title = [crimson]Виникла помилка text.error.title = [crimson]Виникла помилка
text.error.crashtitle = Виникла помилка text.error.crashtitle = Виникла помилка
text.blocks.unknown = [LIGHT_GRAY]???
text.blocks.blockinfo = Інформація про блок text.blocks.blockinfo = Інформація про блок
text.blocks.powercapacity = Місткість енергії text.blocks.powercapacity = Місткість енергії
text.blocks.powershot = Енергія/постріл text.blocks.powershot = Енергія/постріл
text.blocks.targetsair = Атакуе повітряних ворогів? text.blocks.targetsair = Атакуе повітряних ворогів?
text.blocks.itemspeed = Переміщення одиниць text.blocks.itemspeed = Швидкість переміщення ресурсів
text.blocks.shootrange = Діапазон text.blocks.shootrange = Діапазон дії
text.blocks.size = Розмір text.blocks.size = Розмір
text.blocks.liquidcapacity = Місткість рідини text.blocks.liquidcapacity = Місткість рідини
text.blocks.maxitemssecond = Макс. кількість предметів/секунду text.blocks.maxitemssecond = Макс. кількість предметів/секунду
text.blocks.powerrange = Діапазон передачі енергії text.blocks.powerrange = Діапазон передачі енергії
text.blocks.poweruse = Енергії використовується text.blocks.poweruse = Енергії використовує
text.blocks.powerdamage = Енергія/Урон text.blocks.powerdamage = Енергія/урон
text.blocks.inputitemcapacity = Ємність вхідних елементів text.blocks.inputitemcapacity = Ємність вхідних елементів
text.blocks.outputitemcapacity = Ємність вихідних елементів text.blocks.outputitemcapacity = Ємність вихідних елементів
text.blocks.itemcapacity = Місткість предметів text.blocks.itemcapacity = Місткість предметів
@@ -313,103 +314,102 @@ text.blocks.drilltier = Видобуває
text.blocks.drillspeed = Базова швидкість свердління text.blocks.drillspeed = Базова швидкість свердління
text.blocks.liquidoutput = Вихідна рідина text.blocks.liquidoutput = Вихідна рідина
text.blocks.liquidoutputspeed = Швидкість вихідної рідини text.blocks.liquidoutputspeed = Швидкість вихідної рідини
text.blocks.liquiduse = Використовуеться рідина text.blocks.liquiduse = Використовуеться рідин
text.blocks.coolant = Охолоджуюча рідина text.blocks.coolant = Охолоджуюча рідина
text.blocks.coolantuse = Охолодж. рідини використовуеться text.blocks.coolantuse = Охолодж. рідини використовуеться
text.blocks.inputliquidfuel = Рідке паливо text.blocks.inputliquidfuel = Рідке паливо
text.blocks.liquidfueluse = Рідкого палива використовуеться text.blocks.liquidfueluse = Рідкого палива використовуеться
text.blocks.explosive = Вибухонебезпечний! text.blocks.boostitem = Прискорюючий предмет
text.blocks.boostliquid = Прискорююча рідина
text.blocks.health = Здоров'я text.blocks.health = Здоров'я
text.blocks.inaccuracy = Розкид text.blocks.inaccuracy = Розкид
text.blocks.shots = Постріли text.blocks.shots = Постріли
text.blocks.reload = Перезарядка text.blocks.reload = Постріли/секунду
text.blocks.inputfuel = Паливо text.blocks.inputfuel = Паливо
text.blocks.fuelburntime = Час горіння топлива text.blocks.fuelburntime = Час горіння топлива
text.blocks.inputcapacity = Вміщення вводу text.blocks.inputcapacity = Макс. місткість вхідних предметів
text.blocks.outputcapacity = Вміщення виводу text.blocks.outputcapacity = Макс. місткість вихідних предметів
text.unit.blocks = блоки text.unit.blocks = блоки
text.unit.powersecond = одиниць енергії/секунду text.unit.powersecond = одиниць енергії/секунду
text.unit.liquidsecond = рідких одиниць/секунду text.unit.liquidsecond = рідких одиниць/секунду
text.unit.itemssecond = предметів/секунду text.unit.itemssecond = предметів/секунду
text.unit.pixelssecond = пікселів/секунду text.unit.pixelssecond = пікселів/секунду
text.unit.liquidunits = рідин. одиниць text.unit.liquidunits = рідинних одиниць
text.unit.powerunits = енерг. одиниць text.unit.powerunits = енергетичних одиниць
text.unit.degrees = град. text.unit.degrees = град.
text.unit.seconds = сек. text.unit.seconds = сек.
text.unit.items = предм. text.unit.items = предм.
text.category.general = Загальне text.category.general = Загальні
text.category.power = Енергетичне text.category.power = Енергетичні
text.category.liquids = Рідинне text.category.liquids = Рідини
text.category.items = Елементи text.category.items = Предмети
text.category.crafting = Створення text.category.crafting = Створення
text.category.shooting = Стрільба text.category.shooting = Стрільба
text.category.optional = Додаткові поліпшення
setting.autotarget.name = Авто-ціль setting.autotarget.name = Авто-ціль
setting.fpscap.name = Макс. FPS setting.fpscap.name = Макс. FPS
setting.fpscap.none = Необмежений setting.fpscap.none = Необмежений
setting.fpscap.text = {0} FPS setting.fpscap.text = {0} FPS
setting.difficulty.training = навчання setting.difficulty.training = навчання
setting.difficulty.easy = легкий setting.difficulty.easy = легка
setting.difficulty.normal = нормальний setting.difficulty.normal = нормальна
setting.difficulty.hard = важкий setting.difficulty.hard = важка
setting.difficulty.insane = божевільний setting.difficulty.insane = божевільна
setting.difficulty.name = Рівень складності: setting.difficulty.name = Складність:
setting.screenshake.name = Тряска екрану setting.screenshake.name = Тряска екрану
setting.effects.name = Ефекти setting.effects.name = Ефекти
setting.sensitivity.name = Чутливість контролера setting.sensitivity.name = Чутливість контролера
setting.saveinterval.name = Інтервал автозбереження setting.saveinterval.name = Інтервал автозбереження
setting.seconds = {0} сек. setting.seconds = {0} сек.
setting.fullscreen.name = Повноекранний режим setting.fullscreen.name = Повноекранний режим
setting.multithread.name = Багатопотоковість (TPS) setting.fps.name = Показувати FPS
setting.fps.name = Показати FPS
setting.vsync.name = Вертикальна синхронізація setting.vsync.name = Вертикальна синхронізація
setting.lasers.name = Показати енергетичні лазери setting.lasers.name = Показувати енергію лазерів
setting.minimap.name = Показати мінікарту setting.minimap.name = Показати мінікарту
setting.musicvol.name = Гучність музики setting.musicvol.name = Гучність музики
setting.mutemusic.name = Заглушити музику setting.mutemusic.name = Заглушити музику
setting.sfxvol.name = Гучність звукових ефектів setting.sfxvol.name = Гучність звукових ефектів
setting.mutesound.name = Заглушити звук setting.mutesound.name = Заглушити звук
setting.crashreport.name = Send Anonymous Crash Reports setting.crashreport.name = Надіслати анонімні звіти про аварійне завершення гри
text.keybind.title = Налаштування управління text.keybind.title = Налаштування управління
category.general.name = Основне category.general.name = Основне
category.view.name = Перегляд category.view.name = Перегляд
category.multiplayer.name = Мультиплеєр category.multiplayer.name = Мультиплеєр
command.attack = Атакувати command.attack = Атакувати
command.retreat = Відступити command.retreat = Відступити
command.patrol = Патрулювання command.patrol = Патрулювати
keybind.press = Натисніть клавішу... keybind.press = Натисніть клавішу...
keybind.press.axis = Натисніть клавішу... keybind.press.axis = Натисніть клавішу...
keybind.move_x.name = Переміщення по осі x keybind.move_x.name = Рух по осі x
keybind.move_y.name = Переміщення по осі y keybind.move_y.name = Рух по осі x
keybind.select.name = Виберіть keybind.select.name = ВибратиПостріл
keybind.break.name = Зламати keybind.break.name = Руйнування
keybind.deselect.name = Скасувати keybind.deselect.name = Скасувати
keybind.shoot.name = Постріл keybind.shoot.name = Постріл
keybind.zoom_hold.name = Утримувати масштаб keybind.zoom_hold.name = Удержание зума
keybind.zoom.name = Збільшити keybind.zoom.name = Приблизить
keybind.menu.name = Меню keybind.menu.name = Меню
keybind.pause.name = Пауза keybind.pause.name = Пауза
keybind.dash.name = Тире keybind.dash.name = Мчати
keybind.chat.name = Чат keybind.chat.name = Чат
keybind.player_list.name = Список гравців keybind.player_list.name = Список гравців
keybind.console.name = Консоль keybind.console.name = Консоль
keybind.rotate.name = Повертати keybind.rotate.name = Обертати
keybind.toggle_menus.name = Меню перемикання keybind.toggle_menus.name = Меню перемикання
keybind.chat_history_prev.name = Попередня історія чату keybind.chat_history_prev.name = Попередня історія чату
keybind.chat_history_next.name = Наступна історія чату keybind.chat_history_next.name = Наступна історія чату
keybind.chat_scroll.name = Прокрутка чату keybind.chat_scroll.name = Прокрутка чату
keybind.drop_unit.name = Скинути юніта keybind.drop_unit.name = Скинути бой. од.
keybind.zoom_minimap.name = Збільшити мінікарту keybind.zoom_minimap.name = Збільшити мінікарту
mode.text.help.title = Опис режимів mode.text.help.title = Опис режимів
mode.waves.name = Хвилі mode.waves.name = Хвилі
mode.waves.description = Нормальний режим. Обмежені ресурси та автоматичні хвилі. mode.waves.description = Звичайний режим. В режимі "Хвилі" треба самим добувати ресурси та хвилі йдуть беззупинно.
mode.sandbox.name = Пісочниця mode.sandbox.name = Пісочниця
mode.sandbox.description = Нескінченні ресурси і нема таймера для хвиль. mode.sandbox.description = В режимі "Пісочниця" бескінечні ресурси(але їх все одно можно добувати) та хвилі йдуть за вашим бажанням.
mode.custom.warning = [scarlet]РОЗБЛОКОВАНЕ В КОРИСТУВАЛЬНИЦЬКИХ ІГРАХ АБО НА СЕРВЕРАХ НЕ ЗБЕРІГАЄТЬСЯ.\n\nГрайте у секторах для розблокування. mode.freebuild.name = Вільне\nбудівництво
mode.custom.warning.read = Уважно прочитайте це!:\n[scarlet]РОЗБЛОКОВАНЕ В КОРИСТУВАЛЬНИЦЬКИХ ІГРАХ АБО В ІНШИХ РЕЖИМАХ ГРИ НЕ ПОШИРЮЄТЬСЯ НА СЕКТОРИ ТА ІНШІ РЕЖИМИ ГРИ!\n\n[LIGHT_GRAY](Я б хотів, щоб це не було необхідно, але, мабуть, це так) mode.freebuild.description = В режимі "Пісочниця" треба самим добувати ресурси та хвилі йдуть за вашим бажанням.
mode.freebuild.name = Вільний режим mode.pvp.name = PVP
mode.freebuild.description = обмежені ресурси і немає таймера для хвиль. mode.pvp.description = боріться проти інших гравців.
mode.pvp.name = PvP
mode.pvp.description = борітесь проти інших гравців тут.
content.item.name = Предмети content.item.name = Предмети
content.liquid.name = Рідини content.liquid.name = Рідини
content.unit.name = Бойові одиниці content.unit.name = Бойові одиниці
@@ -420,29 +420,29 @@ item.stone.description = Загальна сировина. Використов
item.copper.name = Мідь item.copper.name = Мідь
item.copper.description = Корисний структурний матеріал. Широко використовується у всіх типах блоків. item.copper.description = Корисний структурний матеріал. Широко використовується у всіх типах блоків.
item.lead.name = Свинець item.lead.name = Свинець
item.lead.description = Базовий стартовий матеріал. Широко використовується в електроніки та транспорту рідини. item.lead.description = Базовий стартовий матеріал. Широко використовується в електроніки та транспорту рідин.
item.coal.name = Вугілля item.coal.name = Вугілля
item.coal.description = Загальне та легкодоступне паливо. item.coal.description = Загальне та легкодоступне паливо.
item.dense-alloy.name = Щільний сплав item.dense-alloy.name = Щільний сплав
item.dense-alloy.description = Жорсткий сплав з свинцем та міддю. Використовується в передових транспортних блоках та високорівневих свердлах. item.dense-alloy.description = Жорсткий сплав вироблений зі свинця та міді. Використовується в передових транспортних блоках та високорівневих свердлах.
item.titanium.name = Титан item.titanium.name = Титан
item.titanium.description = Рідкий суперлегкий метал широко використовується в рідкому транспорті, свердлах та літальних апаратах. item.titanium.description = Рідкий суперлегкий метал широко використовується в рідкому транспорті, свердлах та літальних апаратах.
item.thorium.name = Торій item.thorium.name = Торій
item.thorium.description = Густий, радіоактивний метал, що використовується як структурна підтримка та ядерне паливо. item.thorium.description = Густий, радіоактивний метал, що використовується як структурна підтримка та ядерне паливо.
item.silicon.name = Кремній item.silicon.name = Кремень
item.silicon.description = Надзвичайно корисний напівпровідник з застосуванням в сонячних батареях та багатьох складних електроніках. item.silicon.description = Надзвичайно корисний напівпровідник з застосуванням в сонячних батареях та складній електроніці.
item.plastanium.name = Пластиній item.plastanium.name = Пластиній
item.plastanium.description = Легкий, пластичний матеріал, що використовується в сучасних літальних апаратах, та боєприпаси для фрагментації. item.plastanium.description = Легкий, пластичний матеріал, що використовується в сучасних літальних апаратах та у боєприпасах для фрагментації.
item.phase-fabric.name = Phase Fabric item.phase-fabric.name = Фазова тканина
item.phase-fabric.description = A near-weightless substance used in advanced electronics and self-repairing technology. item.phase-fabric.description = Невагоме речовина, що використовується в сучасній електроніці і технології самовідновлення.
item.surge-alloy.name = Хвилястий сплав item.surge-alloy.name = Високоміцний сплав
item.surge-alloy.description = An advanced alloy with unique electrical properties. item.surge-alloy.description = Передовий сплав з унікальними електричними властивостями.
item.biomatter.name = Біоматерія item.biomatter.name = Біоматерія
item.biomatter.description = Скупчення органічної муси; використовується для перетворення в нафту або як основне паливо. item.biomatter.description = Скупчення органічної муси; використовується для перетворення в нафту або як паливо.
item.sand.name = Пісок item.sand.name = Пісок
item.sand.description = Загальний матеріал, який широко використовується при плавленні, як у процесі плавки, так і в відходах. item.sand.description = Загальний матеріал, який широко використовується при плавленні, як у процесі плавки, так і у вигляді шлака.
item.blast-compound.name = Вибухонебезпечне з'єднання item.blast-compound.name = Вибухонебезпечне з'єднання
item.blast-compound.description = Нестійкий склад, що використовується в бомбах та вибухових речовинах. Хоча воно може спалюватися як паливо, та це не рекомендується. item.blast-compound.description = Нестійке з'єднання, що використовується в бомбах та вибухових речовинах. Хоча воно може спалюватися як паливо, та це не рекомендується.
item.pyratite.name = Піротит item.pyratite.name = Піротит
item.pyratite.description = Вкрай легкозаймиста речовина, що використовується у запальній зброї. item.pyratite.description = Вкрай легкозаймиста речовина, що використовується у запальній зброї.
liquid.water.name = Вода liquid.water.name = Вода
@@ -450,9 +450,9 @@ liquid.lava.name = Лава
liquid.oil.name = Нафта liquid.oil.name = Нафта
liquid.cryofluid.name = Кріогенна рідина liquid.cryofluid.name = Кріогенна рідина
mech.alpha-mech.name = Альфа mech.alpha-mech.name = Альфа
mech.alpha-mech.weapon = Кулемет mech.alpha-mech.weapon = Звичайний кулемет
mech.alpha-mech.ability = Виклик дронів mech.alpha-mech.ability = Виклик дронів
mech.alpha-mech.description = Стандартний мех. Має пристойну швидкість і урон; може створити до 3-х дронів для збільшення можливості перемоги. mech.alpha-mech.description = Стандартний мех для настільних пристроїв. Має пристойну швидкість і урон; може створити до 3-х дронів для збільшення можливості перемоги.
mech.delta-mech.name = Дельта mech.delta-mech.name = Дельта
mech.delta-mech.weapon = Генератор дуг mech.delta-mech.weapon = Генератор дуг
mech.delta-mech.ability = Розряд mech.delta-mech.ability = Розряд
@@ -460,18 +460,18 @@ mech.delta-mech.description = Швидкий, легкоброньований
mech.tau-mech.name = Тау mech.tau-mech.name = Тау
mech.tau-mech.weapon = Відновлювальний лазер mech.tau-mech.weapon = Відновлювальний лазер
mech.tau-mech.ability = Відновлювальний спалах mech.tau-mech.ability = Відновлювальний спалах
mech.tau-mech.description = Мех підтримки. Зцілює союзницькі блоки, стріляючи в них. Можна гасити пожежі і зцілити союзників у радіусі зі своєю можливостю для ремонту. mech.tau-mech.description = Мех підтримки. Зцілює союзницькі блоки, стріляючи в них. Може зцілити союзників у радіусі зі своєю здатністю для ремонту.
mech.omega-mech.name = Омега mech.omega-mech.name = Омега
mech.omega-mech.weapon = Купа ракет mech.omega-mech.weapon = Купа ракет
mech.omega-mech.ability = Захисна конфігурація mech.omega-mech.ability = Захисна конфігурація
mech.omega-mech.description = Громіздкий і добре броньований хутро, зроблений для фронтових нападів. Його здатність може блокувати до 90% вхідного шкоди. mech.omega-mech.description = Громіздкий і добре броньований мех, зроблений для фронтових нападів. Його здатність може блокувати до 90% вхідного урона.
mech.dart-ship.name = Дротик mech.dart-ship.name = Дротик
mech.dart-ship.weapon = Ретранслятор mech.dart-ship.weapon = Ретранслятор
mech.dart-ship.description = Стандартний корабель для мобільних пристріях. Досить швидкий і легкий, але має невеликі наступальні можливості і низьку швидкість видобутку. mech.dart-ship.description = Стандартний корабель на мобільних пристріях. Досить швидкий і легкий, але має невеликі наступальні можливості і низьку швидкість видобутку.
mech.javelin-ship.name = Джавелін mech.javelin-ship.name = Джавелін
mech.javelin-ship.description = Ударний корабель, який використовує набіг з відскоком. Спочатку повільний, але пізніше він може прискоритися до великих швидкостей і літати над ворожими заставами, завдаючи великої шкоди своєю. блискавичною здатністю і ракетами. mech.javelin-ship.description = Ударний корабель, який використовує набіг з відскоком. Спочатку повільний, але пізніше він може прискоритися до великих швидкостей і літати над ворожими заставами, завдаючи великої шкоди своєю. блискавичною здатністю і ракетами.
mech.javelin-ship.weapon = Вибухові ракети mech.javelin-ship.weapon = Вибухові ракети
mech.javelin-ship.ability = Дуговий генератор mech.javelin-ship.ability = Генератор дуг
mech.trident-ship.name = Тризубець mech.trident-ship.name = Тризубець
mech.trident-ship.description = Важкий бомбардувальник. Досить добре броньований. mech.trident-ship.description = Важкий бомбардувальник. Досить добре броньований.
mech.trident-ship.weapon = Вантажний відсік з бомбами mech.trident-ship.weapon = Вантажний відсік з бомбами
@@ -493,9 +493,10 @@ text.mech.ability = [LIGHT_GRAY]Здібність: {0}
text.liquid.heatcapacity = [LIGHT_GRAY]Теплоємність: {0} text.liquid.heatcapacity = [LIGHT_GRAY]Теплоємність: {0}
text.liquid.viscosity = [LIGHT_GRAY]В'язкість: {0} text.liquid.viscosity = [LIGHT_GRAY]В'язкість: {0}
text.liquid.temperature = [LIGHT_GRAY]Температура: {0} text.liquid.temperature = [LIGHT_GRAY]Температура: {0}
block.constructing = {0}\n[LIGHT_GRAY](Constructing) block.constructing = {0}[LIGHT_GRAY](В процесі)
block.spawn.name = Спавн ворога block.spawn.name = Місце появи ворога
block.core.name = Ядро block.core.name = Ядро
block.space.name = Пустота
block.metalfloor.name = Металічна підлога block.metalfloor.name = Металічна підлога
block.deepwater.name = Глибоководдя block.deepwater.name = Глибоководдя
block.water.name = Вода block.water.name = Вода
@@ -510,7 +511,7 @@ block.snow.name = Сніг
block.grass.name = Трава block.grass.name = Трава
block.shrub.name = Кущ block.shrub.name = Кущ
block.rock.name = Кругляк block.rock.name = Кругляк
block.blackrock.name = Чорнийкругляк block.blackrock.name = Чорний кругляк
block.icerock.name = Льодяний кругляк block.icerock.name = Льодяний кругляк
block.copper-wall.name = Мідна стіна block.copper-wall.name = Мідна стіна
block.copper-wall-large.name = Велика мідна стіна block.copper-wall-large.name = Велика мідна стіна
@@ -557,9 +558,9 @@ block.pneumatic-drill.name = Пневматичний дриль
block.laser-drill.name = Лазерний дриль block.laser-drill.name = Лазерний дриль
block.water-extractor.name = Екстрактор води block.water-extractor.name = Екстрактор води
block.cultivator.name = Культиватор block.cultivator.name = Культиватор
block.alpha-mech-pad.name = Завод мехів "Альфа" block.alpha-mech-pad.name = Реконстуктор "Альфа"
block.dart-ship-pad.name = Завод дротікових літаків block.dart-ship-pad.name = Завод дротікових літаків
block.delta-mech-pad.name = Завод мехів "Дельта" block.delta-mech-pad.name = Реконструктор "Дельта"
block.javelin-ship-pad.name = Реконструктор "Джавелін" block.javelin-ship-pad.name = Реконструктор "Джавелін"
block.trident-ship-pad.name = Реконструктор "Тризуб" block.trident-ship-pad.name = Реконструктор "Тризуб"
block.glaive-ship-pad.name = Реконструктор "Спис" block.glaive-ship-pad.name = Реконструктор "Спис"
@@ -577,7 +578,7 @@ block.vault.name = Сховище
block.wave.name = Хвиля block.wave.name = Хвиля
block.swarmer.name = Ройевик block.swarmer.name = Ройевик
block.salvo.name = Залп block.salvo.name = Залп
block.ripple.name = Хвилястість block.ripple.name = Рябь
block.phase-conveyor.name = Фазовий конвеєр block.phase-conveyor.name = Фазовий конвеєр
block.bridge-conveyor.name = Мостовий конвеєр block.bridge-conveyor.name = Мостовий конвеєр
block.plastanium-compressor.name = Пластиновий компресор block.plastanium-compressor.name = Пластиновий компресор
@@ -587,14 +588,14 @@ block.solidifer.name = Затверджувач
block.solar-panel.name = Сонячна панель block.solar-panel.name = Сонячна панель
block.solar-panel-large.name = Велика сонячна панель block.solar-panel-large.name = Велика сонячна панель
block.oil-extractor.name = Екстрактор нафти block.oil-extractor.name = Екстрактор нафти
block.spirit-factory.name = Завод дронів "Привид" block.spirit-factory.name = Завод дронов "Призрак"
block.phantom-factory.name = Завод дронів "Фантом" block.phantom-factory.name = Завод дронов "Фантом"
block.wraith-factory.name = Завод примарних винищувачів block.wraith-factory.name = Завод винищувачів "Примара"
block.ghoul-factory.name = Завод гулевих бомбардувальників block.ghoul-factory.name = Завод бомбардувальників "Ґуль"
block.dagger-factory.name = Завод мехів "Розвідник" block.dagger-factory.name = Завод мехов "Разведчик"
block.titan-factory.name = Завод мехів "Титан" block.titan-factory.name = Завод мехов "Титан"
block.fortress-factory.name = Завод мехів "Фортеця" block.fortress-factory.name = Завод мехов "Крепость"
block.revenant-factory.name = Завод бомбардувальників "Потойбічний вбивця" block.revenant-factory.name = Завод бомбардировщиков "Потусторонний убийца"
block.repair-point.name = Ремонтний пункт block.repair-point.name = Ремонтний пункт
block.pulse-conduit.name = Імпульсний водовід block.pulse-conduit.name = Імпульсний водовід
block.phase-conduit.name = Фазовий водопровід block.phase-conduit.name = Фазовий водопровід
@@ -620,161 +621,161 @@ block.overdrive-projector.name = Сверхприводний проектор
block.force-projector.name = Силовий проектор block.force-projector.name = Силовий проектор
block.arc.name = Дуга block.arc.name = Дуга
block.rtg-generator.name = Радіоізотопний термоелектричний генератор block.rtg-generator.name = Радіоізотопний термоелектричний генератор
block.spectre.name = Spectre block.spectre.name = Мара
block.meltdown.name = Meltdown block.meltdown.name = Розтоплення
block.container.name = Склад block.container.name = Склад
block.core.description = Найголовніша будівля в грі.
team.blue.name = Синя team.blue.name = Синя
team.red.name = Червона team.red.name = Червона
team.orange.name = Помаренчева team.orange.name = Помаренчева
team.none.name = Сіра team.none.name = Сіра
team.green.name = Зелена team.green.name = Зелена
team.purple.name = Фіолетова team.purple.name = Фіолетова
unit.alpha-drone.name = Альфа дрон unit.alpha-drone.name = Альфа
unit.spirit.name = Дрон-привид unit.spirit.name = Дрон-привид
unit.spirit.description = Початковий дрон. З'являється в ядрі за замовчуванням. Автоматично добуває руди та ремонтує блоки. unit.spirit.description = Початковий дрон. З'являється в ядрі за замовчуванням. Автоматично добуває руди та ремонтує блоки.
unit.phantom.name = Фантом unit.phantom.name = Фантом
unit.phantom.description = Покращений дрон. Автоматично добуває руди та ремонтує блоки.\nЗначно краще дрона-привида. unit.phantom.description = Покращений дрон. Автоматично добуває руди та ремонтує блоки.
unit.dagger.name = Кинджал unit.dagger.name = Розвідник
unit.dagger.description = Базова наземна бойова одиниця. Корисен у купі. unit.dagger.description = Базова наземна бойова одиниця. Корисен у купі.
unit.titan.name = Титан unit.titan.name = Титан
unit.titan.description = Просунута броньована наземна одиниця. Атакуе наземні та повітряні цілі. unit.titan.description = Улучшенная бронированная наземная боевая единица. Атакует наземные и воздушные цели.
unit.ghoul.name = Гулевий бомбардувальник unit.ghoul.name = Бомбардувальний "Ґуль"
unit.ghoul.description = Тяжкий ковровий бомбардувальник unit.ghoul.description = Тяжкий ковровий бомбардувальник.
unit.wraith.name = Примарний винищувач unit.wraith.name = Примарний винищувач
unit.wraith.description = Швидка бойова одиниця. unit.wraith.description = Швидка бойова одиниця, котрий використовує набіг з відскоком.
unit.fortress.name = Фортеця unit.fortress.name = Фортеця
unit.fortress.description = Тяжка артилерійна наземна бойова одиниця. unit.fortress.description = Тяжка артилерійна наземна бойова одиниця.
unit.revenant.name = Потойбічний вбивця unit.revenant.name = Потойбічний вбивця
unit.revenant.description = Важка лазерна платформа. unit.revenant.description = Бойова одиниця з важкою лазерною зброєю.
tutorial.begin = Ваша місія тут полягає в ліквідації[LIGHT_GRAY] противника[].\\n\\nПочнімо з[accent] видобутку міді[]. Щоб зробити це, торкніться мідної рудної жили біля вашого ядра. tutorial.begin = Ваша місія тут полягає в ліквідації[LIGHT_GRAY] противника[].\n\nПочнімо з[accent] видобутку міді[]. Щоб зробити це, торкніться мідної рудної жили біля вашого ядра.
tutorial.drill = Ручна робота не ефективна\\n[accent]Бури []можуть копати автоматично.\\оставте один на мідній жилі. tutorial.drill = Ручна робота не ефективна\n[accent]Бури []можуть копати автоматично.\nПоставте один на мідній жилі.
tutorial.conveyor = [accent]Конвейери[] використовуються для транспортування предметів в ядра.\\nЗробіть лінію конвейерів від бурів до ядра. tutorial.conveyor = [accent]Конвейери[] використовуються для транспортування предметів в ядра.\nЗробіть лінію конвейерів від бурів до ядра.
tutorial.morecopper = Треба більше міді\\n\\nДобудьте вручну або поставте більше бурів tutorial.morecopper = Треба більше міді\n\nДобудьте вручну або поставте більше бурів
tutorial.turret = Захистні споруди повинні бути побудованими для захисту від [LIGHT_GRAY] ворога[].\\обудуйте подвійну турель біля бази. tutorial.turret = Захистні споруди повинні бути побудованими для захисту від [LIGHT_GRAY] ворога[].\nПобудуйте подвійну турель біля бази.
tutorial.drillturret = Подвійні турелі потребують[accent] мідні патрони []для стрільби.\\оставте бури поруч з турелею, щоб знаюдити її видобутою міддю. tutorial.drillturret = Подвійні турелі потребують[accent] мідні патрони []для стрільби.\nПоставте бури поруч з турелею, щоб знаюдити її видобутою міддю.
tutorial.waves = [LIGHT_GRAY] Супротивник[] прижується.\\n\\nЗахистіть своє ядро від двух хвиль противника. Побудуйте більше турелей. tutorial.waves = [LIGHT_GRAY] Супротивник[] прижується.\n\nЗахистіть своє ядро від двух хвиль противника. Побудуйте більше турелей.
tutorial.lead = Стало доступно більше руд. Знайдіть і добудьте[accent] свинець[].\\n\\nПеретягніть з вашого меху в ядро для передачі ресурсів. tutorial.lead = Стало доступно більше руд. Знайдіть і добудьте[accent] свинець[].\n\nПеретягніть з вашого меху в ядро для передачі ресурсів.
tutorial.smelter = Свинець і мідь тяжкі метали.\\nНайліпший[accent] щільний сплав[] може бути створеним у плавильному заводі.\\n\\nПобудуйте один завод. tutorial.smelter = Свинець і мідь тяжкі метали.\nНайліпший[accent] щільний сплав[] може бути створеним у плавильному заводі.\n\nПобудуйте один завод.
tutorial.densealloy = Плавильний завод тепер буде створювати сплав. tutorial.densealloy = Плавильний завод тепер буде створювати сплав.
tutorial.siliconsmelter = Ядро зараз створить[accent] дрона привида[] для добування і ремонтування блоків.\\n\\nЗаводи для других одиниць(юнітов) може бути створено за допомогою [accent] кремнія.\\nЗробіть кремнієвий завод. tutorial.siliconsmelter = Ядро зараз створить[accent] дрона привида[] для добування і ремонтування блоків.\n\nЗаводи для других одиниць(юнітов) може бути створено за допомогою [accent] кремнія.\nЗробіть кремнієвий завод.
tutorial.silicondrill = Кремній потребує[accent] вугілляl[] та[accent] пісок[].\\очніть зі створення бурів. tutorial.silicondrill = Кремній потребує[accent] вугілляl[] та[accent] пісок[].\nПочніть зі створення бурів.
tutorial.generator = Ця технологія потребує енергії.\\nЗробіть[accent] генератор внутрішнього згорання[] для цього. tutorial.generator = Ця технологія потребує енергії.\nЗробіть[accent] генератор внутрішнього згорання[] для цього.
tutorial.generatordrill = Генератор потребує вугілля.\\обудуйте бур на вугільній жилі. tutorial.generatordrill = Генератор потребує вугілля.\nПобудуйте бур на вугільній жилі.
tutorial.node = Енергії потребує транспортування\\nСоздайте[accent] силовий вузол[] поруч з вашим генератором згорання, щоб передавати його енергію. tutorial.node = Енергії потребує транспортування\nСоздайте[accent] силовий вузол[] поруч з вашим генератором згорання, щоб передавати його енергію.
tutorial.nodelink = Енергія може бути передана через контактні енергетичні блоки та генератори, або з'єднані силові вузли.\\n\\nЗ'єднайте живлення, торкнувшись вузла та вибравши генератор і кремнієвий завод. tutorial.nodelink = Енергія може бути передана через контактні енергетичні блоки та генератори, або з'єднані силові вузли.\n\nЗ'єднайте живлення, торкнувшись вузла та вибравши генератор і кремнієвий завод.
tutorial.silicon = Кремній почався створюватися. Отримайте трохи.\\n\\nРекомендується вдосконалити виробничу систему. tutorial.silicon = Кремній почався створюватися. Отримайте трохи.\n\nРекомендується вдосконалити виробничу систему.
tutorial.daggerfactory = Побудуйте[accent] завод "Розвідник".[]\\n\\nЦе буде використано для створення мехів атаки. tutorial.daggerfactory = Побудуйте[accent] завод "Розвідник".[]\n\nЦе буде використано для створення мехів атаки.
tutorial.router = Фабрики потребують ресурсів для функціонування.\\nСтворіть маршрутизатор для розподілення ресурсів з конвейера. tutorial.router = Фабрики потребують ресурсів для функціонування.\nСтворіть маршрутизатор для розподілення ресурсів з конвейера.
tutorial.dagger = Зв'яжіть силовий вузол з заводом.\nЯк тільки вимоги будуть виконані, буде створено мех.\n\nЯкщо необхідно, то створіть ще бурів, генераторів та конвейерів tutorial.dagger = Зв'яжіть силовий вузол з заводом.\nЯк тільки вимоги будуть виконані, буде створено мех.\n\nЯкщо необхідно, то створіть ще бурів, генераторів та конвейерів
tutorial.battle = [LIGHT_GRAY] Супротивник[] показав своє ядро.\\nЗнищьте його з вашим мехом та бойовою одиницею. tutorial.battle = [LIGHT_GRAY] Супротивник[] показав своє ядро.\nЗнищьте його з вашим мехом та бойовою одиницею.
block.copper-wall.description = Стіна з найменшим запасом міцності.\nДуж на початку гри для захисту. block.core.description = Найголовніше будівля в грі.
block.copper-wall-large.description = Велика стіна найменшим запасом міцності.\nХороша на початку гри. block.copper-wall.description = Дешевий оборонний блок.\nКорисен для захисту ядра і турелей під час перших хвиль.
block.copper-wall-large.description = Велика стіна найменшим запасом міцності.\nКорисна на початку гри.
block.dense-alloy-wall.description = Стіна з показником міцності "нижче середнього". block.dense-alloy-wall.description = Стіна з показником міцності "нижче середнього".
block.dense-alloy-wall-large.description = Велика стіна з показником міцності "нижче середнього". block.dense-alloy-wall-large.description = Велика стіна з показником міцності "нижче середнього".
block.thorium-wall.description = Стіна з показником міцності "вище середнього". block.thorium-wall.description = Стіна з показником міцності "вище середнього".
block.thorium-wall-large.description = Велика стіна з показником міцності "вище середнього". block.thorium-wall-large.description = Велика стіна з показником міцності "вище середнього".
block.phase-wall.description = Стіна з середнім показником міцності. block.phase-wall.description = Стіна з середнім показником міцності.
block.phase-wall-large.description = Велика стіна з середнім показником міцності. block.phase-wall-large.description = Велика стіна з середнім показником міцності.
block.surge-wall.description = Стіна з найбільшим запасом міцності. block.surge-wall.description = Стіна з найбільшим показником міцності.
block.surge-wall-large.description = Велика стіна з найбільшим запасом міцності. block.surge-wall-large.description = Велика стіна з найбільшим запасом міцності.
block.door.description = Через ці двері не пройдуть вороги, якщо вона закрита. Щоб відкрити / закрити просто натисніть на неї. block.door.description = Двері в прямому сенсі цього слова. Просто натисніть на неї.
block.door-large.description = Для великих стін потрібні великі двері. Щоб відкрити / закрити просто натисніть на неї. block.door-large.description = Для великих стін потрібні великі двері.\nДля відкриття або закриття просто натисніть на неї.
block.mend-projector.description = Ремонтує будівлі в невеликому радіусі. Споживає енергію. block.mend-projector.description = Ремонтує будівлі в невеликому радіусі. Споживає енергію.
block.overdrive-projector.description = Прискорює в невеликому радіусі всі ваші дії. block.overdrive-projector.description = Прискорює в невеликому радіусі роботу механізмів.
block.force-projector.description = Створює в невеликому радіусі силове поле, яке захищає від противника. block.force-projector.description = Створює в невеликому радіусі силове поле, яке захищає від атак супротивника.
block.shock-mine.description = Поставте її. Вона б електрикою О_О block.shock-mine.description = Поставте її на землю. Вона бться ЕЛЕКТРИКОЮ О_О
block.duo.description = Хороша турель початкова турель. Використовуйте стіни для її захисту.\n\n Використовує як снаряди мідь, щільний сплав, кремній і піротит.\n\nМожно підвести воду і криогенну рідина для прискорення стрільби. block.duo.description = Маленька і дешева турель.\nДля прискорення стрільби можна підвести воду або кріогенну рідина.
block.arc.description = Турель з малим радіусом атаки. Для патронів треба воду або кріогенну рідина. Також потрібна енергія. block.arc.description = Турель с малым радиусом атаки.\nДля прискорення стрільби можна підвести воду або кріогенну рідину.
block.hail.description = Далекобійна початкова турель.\nВикористовує як снаряди щільний сплав, кремній і піротит.\nДля прискорення стрільби можна підвести воду і криогенну рідину. block.hail.description = Далекобійна початкова турель.\nДля прискорення стрільби можна підвести воду або кріогенну рідину.
block.lancer.description = Турель, яка стріляє лазером на середню відстань.\nВикористовує як снаряди енергію.\nДля прискорення стрільби можна підвести воду, нафту і криогенну рідину. block.lancer.description = Турель, яка стріляє лазером на середню відстань.\nДля прискорення стрільби можна підвести воду або кріогенну рідину.
block.wave.description = Турель з середнім радіусом атаки, яка відштовхує супротивників в сторони. Використовує в якості снарядів воду, нафту, лаву або кріогенну рідину. block.wave.description = Турель з середнім радіусом атаки, яка відштовхує супротивників в сторони.
block.salvo.description = Турель з середнім радіусом атаки. Використовує в якості снарядів мідь, щільний сплав, торій, кремній і піротит.\nТакож потрібна якась рідина: вода, нафта або кріогенна. block.salvo.description = Турель з середнім радіусом атаки.\nДля прискорення стрільби можна підвести воду або кріогенну рідину.
block.swarmer.description = Навіть Керріган в захваті від такого.\nВикористовує в якості снарядів високоміцний сплав, піротит і вибухонебезпечне з'єднання.\nТакож потрібна якась рідина: вода, нафта або кріогенна. block.swarmer.description = Середній розмір турелі з великим радіусом атаки, яка стріляє ракетами.\nДля прискорення стрільби можна підвести воду або кріогенну рідину.
block.ripple.description = Перша турель 3х3.\nВикористовує в якості снарядів щільний сплав, кремній, піротит, вибухонебезпечне з'єднання.\nТакож потрібна якась рідина: вода, нафта або кріогенна. block.ripple.description = Велика артилерійська турель, яка одночасно стріляє декільками пострілами.
block.cyclone.description = Турель з великою дальністю. Використовує в якості снарядів пластиній, вибухонебезпечне з'єднання і високоміцний сплав.\nТакож потрібна якась рідина: вода, нафта або кріогенна. block.cyclone.description = Велика швидка вогняна турель. \nДля прискорення стрільби можна підвести воду або кріогенну рідину.
block.fuse.description = Турель з малою дальністю атаки. Використовує в якості снарядів щільний сплав.\nТакож потрібна якась рідина: вода, нафта або кріогенна. block.fuse.description = Велика турель, яка стріляє потужними ближніми променями.\nДля прискорення стрільби можна підвести воду або кріогенну рідину.
block.spectre.description = Перша турель 4х4 з середнім радіусом атаки. Використовує в якості снарядів щільний сплав, торій і піротит. block.spectre.description = Велика вежа, яка стріляє зразу двома потужніми кулями.\nДля прискорення стрільби можна підвести воду або кріогенну рідину.
block.meltdown.description = Турель з середнім радіусом атаки. Для патронів треба воду або кріогенну рідину. Також потрібна енергія. block.meltdown.description = Велика турель, яка стріляє могутніми далекобійними променями.
block.conveyor.description = Переміщує ресурси з малою швидкістю. block.conveyor.description = Переміщує ресурси з малою швидкістю.
block.titanium-conveyor.description = Конвеєр другого покоління. Збільшена швидкість переміщення предметів і міцність. block.titanium-conveyor.description = Конвеєр другого покоління. Збільшена швидкість переміщення предметів і міцність конвеєра.
block.phase-conveyor.description = Поки гра знаходиться в 2D, цей конвеєр вже в чотиривимірному просторі. Вимагає енергії. block.phase-conveyor.description = Поки гра знаходиться в 2D, цей конвеєр вже в чотиривимірному просторі (можливо, це брехня).\nПотрібує енергії і підключається як мостовий конвеєр.
block.junction.description = Назва говорить сама за себе. За допомогою нього можна зробити дві конвеєрні стрічки, які проходять через один одного і не змішуються. block.junction.description = Назва говорить сама за себе. За допомогою нього можна зробити дві конвеєрні стрічки, які проходять через один одного і не змішуються.
block.mass-driver.description = При наявності енергії передають ресурси на відстань 100 блоків, стріляючи в один-одного. block.mass-driver.description = При наявності енергії передають ресурси на відстань 100 блоків, стріляючи в один-одного.
block.smelter.description = Виробляє щільний сплав з міді і свинцю. Можна підвести пісок для прискорення виробництва. block.smelter.description = Виробляє щільний сплав з міді і свинцю. Можна підвести пісок для прискорення виробництва.
block.arc-smelter.description = Покращена версія плавильного заводу. Вимагає енергію. Виробляє щільний сплав з вугілля, міді і свинцю.\nМожно підвести пісок для прискорення виробництва. block.arc-smelter.description = Покращена версія плавильного заводу. Вимагає енергію. Виробляє щільний сплав зміді і свинця.\nМожно підвести пісок для прискорення виробництва.
block.silicon-smelter.description = За допомогою піску, вугілля і енергії виробляє кремній.\n[RED]НЕ СИЛІКОН[] block.silicon-smelter.description = За допомогою піску, вугілля і енергії виробляє кремній.
block.plastanium-compressor.description = Створює пластини з титану і нафти. Вимагає енергії. Для прискорення виробництва можна додати в компресор пісок. block.plastanium-compressor.description = Створює пластинійи з титану і нафти. Вимагає енергії. Для прискорення виробництва можна додати в компресор пісок.
block.phase-weaver.description = Виробляє фазову матерію з торію і піску. Вимагає багато енергії. block.phase-weaver.description = Виробляє фазову тканину торію і піску. Вимагає багато енергії.
block.alloy-smelter.description = Створює високоміцний сплав з титану, кремнію, міді і свинцю. Вимагає енергію. block.alloy-smelter.description = Створює високоміцний сплав з титану, кременя, міді і свинця. Вимагає енергію.
block.pulverizer.description = Подрібнює камінь в пісок. Вимагає енергії. block.pulverizer.description = Подрібнює камінь в пісок. Вимагає енергії.
block.pyratite-mixer.description = Створює піротит з вугілля, свинцю і піску. Вимагає енергії. block.pyratite-mixer.description = Створює піротит з вугілля, свинцю і піску. Вимагає енергії.
block.blast-mixer.description = Створює вибухонебезпечне з'єднання з нафти і піротіта. Для прискорення виробництва можна додати в мішалку пісок. block.blast-mixer.description = Створює вибухонебезпечне з'єднання з нафти і піротіта. Для прискорення виробництва можна додати в мішалку пісок.
block.cryofluidmixer.description = Виробляє криогенну рідина з води і титану. Вимагає енергії. block.cryofluidmixer.description = Виробляє криогенну рідину з води і титану. Вимагає енергії.
block.solidifer.description = Остуджує лаву до каменя. Вимагає енергію. block.solidifer.description = Остуджує лаву до каменя. Вимагає енергію.
block.melter.description = Переплавляє камінь в лаву. Вимагає енергію. block.melter.description = Переплавляє камінь в лаву. Вимагає енергію.
block.incinerator.description = Спалює сміття за допомогою енергії. block.incinerator.description = Якщо є непотрібні ресурси, можна просто їх спалити.\nВимагає енергії.
block.biomattercompressor.description = Робить біоматерію з біосміття і енергії. block.biomattercompressor.description = Виробляє нафту з біоматеріі, біосміття і енергії.
block.separator.description = Шукає в камені різні ресурси. Чим цінніше ресурс, тим з меншою ймовірністю він "знайдеться". block.separator.description = Шукає в камені різні ресурси. Чим цінніше ресурс, тим з меншою ймовірністю він "знайдеться".
block.centrifuge.description = Покращена версія отделителя.\nШукає в камені різні ресурси. Чим цінніше ресурс, тим з меншою ймовірністю він "знайдеться".\nВимагає енергію. block.centrifuge.description = Шукає в камені різні ресурси. Чим цінніше ресурс, тим з меншою ймовірністю він "знайдеться".\nТребует енергію.
block.power-node.description = Максимум допустимо 4 підключення. Щоб з'єднати з якимось блоком потрібно наступне:\n1. Щоб він знаходився в радіусі дії\n2.Нажать на потрібний блок. block.power-node.description = Максимум допустимо 4 підключення.\nЩоб з'єднати з якимось блоком потрібно наступне\:\n1. Щоб він знаходився в радіусі дії \n2. Натиснити на потрібний силовий вузол, а потім на інший силовий вузол або блок.
block.power-node-large.description = Силовий вузол другого покоління. Збільшено розмір вузла, кількість максимально допустимих підключень і інше. block.power-node-large.description = Силовий вузол другого покоління. Збільшено радіус дії і кількість максимально допустимих підключень.
block.battery.description = Зберігає енергію, але батарейки DURACELL зберігають в 10 разів більше.(прихована реклама) block.battery.description = Хранит энергию всякий раз, когда есть изобилие, и обеспечивает мощность всякий раз, когда есть недостаток, если есть мощность, але БАТАРЕЙКИ DURACELL ЗБЕРІГАЮТЬ БІЛЬШЕ! (прихована реклама)
block.battery-large.description = Зберігає енергію, але батарейки DURACELL все одно зберігають більше!(прихована реклама) block.battery-large.description = Зберігає значно більше енергії, ніж звичайна батарейка...
block.combustion-generator.description = Початкове і дешевийе джерело енергії. Для виробництва енергії використовує нафту, вугілля, піротит, біоматерію і вибухонебезпечне з'єднання. block.combustion-generator.description = Генерує енергію, спалюючи нафту або легкозаймисті матеріали.
block.turbine-generator.description = Для виробництва енергії використовує нафту, вугілля, Піроте, біоматерію і вибухонебезпечне з'єднання.\nТакже обов'язково потрібна вода. block.turbine-generator.description = Більш ефективний, ніж генератор горіння, але вимагає додаткової води.
block.thermal-generator.description = Гаряче сприймає на ура. block.thermal-generator.description = Генерує велику кількість енергії з лави.
block.solar-panel.description = Зелена енергія block.solar-panel.description = Забезпечує невелику кількість енергії від сонця.
block.solar-panel-large.description = Зелена енергія. Велике і нескінченне джерело енергії. block.solar-panel-large.description = Забезпечує набагато краще джерело живлення, ніж стандартна панель, але в той же час набагато дорожче її побудувати.
block.thorium-reactor.description = Найбільше виробляє енергію. Може вибухнути. Потрібно рідина (вода, нафта або кріогенна) і торій. block.thorium-reactor.description = Генерує величезну кількість енергії з високоактивного торію. Потребує постійного охолодження. Вибухне сильно, якщо постачається недостатня кількість рідини.
block.rtg-generator.description = A radioisotope thermoelectric generator which does not require cooling but provides less power than a thorium reactor. block.rtg-generator.description = Радіоізотопний термоелектричний генератор, який не потребує охолодження, але забезпечує меншу потужність, ніж торієвий реактор.
block.unloader.description = Вивантажує з ядра або сховища верхній лівий предмет. block.unloader.description = Вивантажує предмети з контейнера, сховища або ядра на конвеєр або безпосередньо в сусідній блок. Тип вивантажуваного елемента можна змінити, торкнувшись розвантажувача.
block.container.description = Зберігає ресурси. Спробуй звідти їх дістати :) block.container.description = Зберігає невелику кількість предметів кожного типу. Сусідні контейнери, склепіння та ядра будуть розглядатися як одиничне сховище. [LIGHT_GRAY]Розвантажувач [] можна використовувати для вилучення елементів з контейнера.
block.vault.description = Зберігає предмети як ядро до 2 000. block.vault.description = Зберігає велику кількість предметів кожного типу. Сусідні контейнери, сховища та ядра будуть розглядатися як одиничне сховище. [LIGHT_GRAY]Розвантажувач[] можна використовуватися для отримання елементів із сховища.
block.mechanical-drill.description = Найперший доступний бур. Видобуває мідь, свинець, вугілля, пісок.Можна підвести до нього воду для збільшення швидкості свердління. block.mechanical-drill.description = Найперший доступний бур.\nВидобуває мідь, свинець, вугілля, пісок. \nМожно підвести до нього[BLUE] воду []для збільшення швидкості свердління.
block.pneumatic-drill.description = Покращена версія механічного бура.\n\nВидобуває теж саме, що і механічний бур. Також може добувати титан і камінь.\n\nМожно підвести до нього[BLUE] воду [] для збільшення швидкості свердління. block.pneumatic-drill.description = Покращена версія механічного бура.\nВидобуває теж саме, що і механічний бур. Також може добувати титан і камінь.\nМожно підвести до нього[BLUE] воду []для збільшення швидкості свердління.
block.laser-drill.description = Покращена версія пневматичного бура.\n\nВидобуває теж саме, що і пневматичний бур. Також може добувати торій.\n\nМожно підвести до нього[BLUE] воду[] для збільшення швидкості свердління. block.laser-drill.description = Покращена версія пневматичного бура.\nДобивает теж саме, що і пневматичний бур. Також може добувати торій.\nМожно підвести до нього[BLUE] воду []для збільшення швидкості свердління.
block.blast-drill.description = Найкрутіший бур.\n\nШукає вона теж саме, що і лазерний бур. Свердлить швидше всіх бурів, але вимагає ще більше енергії. N n Можна підвести до нього [BLUE] воду [] для збільшення швидкості свердління. block.blast-drill.description = Найпотужніший бур.\n\nВидобуває теж саме, що і лазерний бур. Свердлить швидше всіх бурів, але вимагає ще більше енергії.\nМожно підвести до нього[BLUE] воду [] для збільшення швидкості свердління.
block.water-extractor.description = Видобуває воду з землі. Вимагає енергію. block.water-extractor.description = Витягує воду з землі. Використовуйте його, коли поблизу немає озера.
block.cultivator.description = Виробляє біоматерію з трави і води. Вимагає енергії. block.cultivator.description = Культивує грунт водою для отримання біоматеріі.
block.oil-extractor.description = Виробляє нафту з динозаврів (закреслено), грунту (закреслено), води і піску. Вимагає енергії. block.oil-extractor.description = Використовує велику кількість енергії для видобутку нафти з піску, динозаврів (закреслено). Використовуйте його, коли поблизу немає прямого джерела нафти.
block.dart-ship-pad.description = Перетворює вас в дротіковий літак. Реконструктор вимагає енергію.\nПодробиці про дротікових літаків в "розблоковане". block.dart-ship-pad.description = Залиште свій поточний судно і перейдіть на основний винищувач.\nВикористовуйте подвійне натискання, стоячи на реконструкторів, щоб перетворитися в цей мех.
block.trident-ship-pad.description = Перетворює вас в Тризуб. Вимагає енергію. Подробиці про Тризуб в "розблоковане" block.trident-ship-pad.description = Залиште свій поточний корабель і перейдіть в досить добре броньований важкий бомбардувальник.\nВикористовуйте подвійне натискання, стоячи на реконструкторів, щоб перетворитися в цей мех.
block.javelin-ship-pad.description = Перетворює вас в Джавелін. Вимагає енергію. Подробиці про Джавелін в "розблоковане" block.javelin-ship-pad.description = Залиште свій поточний корабель і перейдіть в сильний і швидкий перехоплювач з блискавичним зброєю.\nВикористовуйте подвійне натискання, стоячи на реконструкторів, щоб перетворитися в цей мех.
block.glaive-ship-pad.description = Перетворює вас в Спис. Вимагає енергію. Подробиці про Спис в "розблоковане" block.glaive-ship-pad.description = Залиште своє існуюче судно і перетворитесь на великий, добре броньований мех.\nВикористовуйте подвійне натискання, стоячи на реконструкторів, щоб перетворитися в цей мех.
block.tau-mech-pad.description = Перетворює вас в Тау. Вимагає енергію. N Подробиці про Тау в "розблоковане" block.tau-mech-pad.description = Покиньте свій поточний корабель і перетворитеся на мех підтримки, який може зцілювати дружні будівлі і юніти.\nВикористовуйте подвійне натискання, стоячи на реконструкторів, щоб перетворитися в цей мех.
block.delta-mech-pad.description = Перетворює вас в "Дельта". Реконструктор вимагає енергію.\nПодробиці про "Дельта" в "розблоковане". block.delta-mech-pad.description = Залиште свій поточний корабель і перейдіть в великий, добре броньований бойовий корабель.\nВикористовуйте подвійне натискання, стоячи на реконструкторів, щоб перетворитися в цей мех.
block.omega-mech-pad.description = Перетворює вас в Омега. Вимагає енергію.Подробиці про Омега в "розблоковане" block.omega-mech-pad.description = Залиште свій поточний корабель і перетворіть його в громіздкий і добре броньований мех, зроблений для фронтових нападів.\nВикористовуйте подвійне натискання, стоячи на реконструкторів, щоб перетворитися в цей мех.
block.spirit-factory.description = Виробляє дронів типу "привид" block.spirit-factory.description = Виробляє легкі дрони, які видобувають руду (мідну і свинцеву) і ремонтує блоки. Один за замовчуванням з'являється з ядра.
block.phantom-factory.description = Виробляє дронів типу "фантом" \nПодробиці в "розблоковане" block.phantom-factory.description = Виробляє вдосконалені одиниці, які значно ефективніше, ніж дрон-привид.
block.wraith-factory.description = Виробляє примарних винищувачів\nПодробиці в "розблоковане" block.wraith-factory.description = Виробляє швидких і літаючих бойових одиниць.
block.ghoul-factory.description = Виробляє Гулев бомбардувальників\nПодробиці в "розблоковане" block.ghoul-factory.description = Виробляє важких килимових бомбардувальників.
block.dagger-factory.description = Виробляє "Розвідник\nПодробиці в "розблоковане" block.dagger-factory.description = Виробляє основні наземні бойові одиниці.
block.titan-factory.description = Виробляє меха типу "Титан".\nПодробиці в "розблоковане". block.titan-factory.description = Виробляє просунуті захищені бойові одиниці.
block.fortress-factory.description = Величезний повільний мех володіє такою-ж величезною гарматою. block.fortress-factory.description = Виробляє важкі артилерійські бойові одиниці.
block.revenant-factory.description = Виробляє бомбардувальників типу "Потойбічний вбивця"\nПодробиці в "розблоковане" block.revenant-factory.description = Виробляє важкі наземні бойові одиниці.
block.repair-point.description = За допомогою енергії лікує тебе. block.repair-point.description = Постійно лікує найближчий пошкоджений апарат в його зоні дії.
block.command-center.description = Дозволяє управляти бойовими одиницями. Або атакувати, або стояти на місці, або застрявати в блоках ... block.command-center.description = Дозволяє змінювати дружню поведінку AI. В даний час, атаки, відступ і патрулювання команди підтримуються.
block.conduit.description = Конвеєр для рідин першого покоління. block.conduit.description = Основний транспортний блок. Працює як конвеєр, але з рідинами. Найкраще використовується з екстракторами, насосами або іншими трубопроводами.
block.pulse-conduit.description = "Конвеєр" для рідин другого покоління. block.pulse-conduit.description = Розширений блок перевезення рідин. Транспортує рідини швидше і зберігає більше, аніж стандартні.
block.phase-conduit.description = Кращий трубопровід, вимагає енергію. Схоже, він з майбутнього. block.phase-conduit.description = Покращений блок перевезення рідин. Використовує енергію для телепорту рідин до підключеного фазового каналу по декілька блоків.
block.liquid-router.description = Розподіляє рідину на 4 сторони. block.liquid-router.description = Приймає рідини з одного напрямку і виведить їх до 3 інших напрямків однаково. Можна також зберігати певну кількість рідини. Корисно для розщеплення рідин від одного джерела на кілька.
block.liquid-tank.description = Зберігає рідину. block.liquid-tank.description = Зберігає велику кількість рідини. Використовуйте його для створення буферів, коли існує нестійкий попит на матеріали або як захист для охолодження життєво важливих блоків.
block.liquid-junction.description = Назва говорить сама за себе. За допомогою нього можна зробити дві труби, які проходять через один-одного і не змішуються. block.liquid-junction.description = Діє як міст для двох перехресних трубопроводів. Корисно в ситуаціях з двома різними трубами, що несуть різні рідини в різні місця.
block.bridge-conduit.description = Дозволяє проходити над височинами (блоками). Найкраще підключати послідовно і в лінію. block.bridge-conduit.description = Покращений блок перевезення рідин. Дозволяє транспортувати рідини понад 3 блоки будь-якої місцевості або будівлі.
block.mechanical-pump.description = Качає тільки воду. block.mechanical-pump.description = Дешевий насос з повільною швидкістю, але без споживання енергії.
block.rotary-pump.description = Качає воду і нафту. Вимагає енергії. block.rotary-pump.description = Розширений насос, який подвоює швидкість, використовуючи енергію.
block.thermal-pump.description = Дозволяє качати лаву, воду і нафту. block.thermal-pump.description = Остаточний насос. Тричі швидше, ніж механічний насос і єдиний насос, який здатний отримати лаву.
block.router.description = Accepts items from one direction and outputs them to up to 3 other directions equally. Useful for splitting the materials from one source to multiple targets. block.router.description = Приймає елементи з одного напрямку і рівномірно виводить їх до 3 інших напрямків. Корисно для розділення матеріалів від одного джерела на кілька.
block.distributor.description = An advanced router which splits items to up to 7 other directions equally. block.distributor.description = Розширений маршрутизатор, який рівномірно розбиває елементи на 7 різних напрямків.
block.bridge-conveyor.description = Advanced item transport block. Allows transporting items over up to 3 tiles of any terrain or building. block.bridge-conveyor.description = Покращений блок транспортування предметів. Дозволяє транспортувати предмети понад 3 блоки над будь-якої місцевостю або будівлеє.
block.alpha-mech-pad.description = Перетворює вас в Альфа. Вимагає енергію.Подробиці про Джавелін в "розблоковане" block.alpha-mech-pad.description = Коли ви отримаєте достатньо енергії, перебудовує ваш корабель у [accent] Альфа[] мех.
block.itemsource.description = З цього блоку можна отримати будь-який предмет. block.itemsource.description = Безліченно виводить предмети. Лише пісочниця.
block.liquidsource.description = З цього блоку можна отримати будь-яку рідину. block.liquidsource.description = Безліченно виводить рідини. Лише пісочниця.
block.itemvoid.description = Предмети просто йдуть в порожнечу block.itemvoid.description = Знищує будь-які предмети, які входять, без використання енергії. Працює тільки в пісочниці.
block.powerinfinite.description = Ти не повинен це бачити!\n[RED]WARNING[] block.powerinfinite.description = Нескінченність не межа. Безмежно виводить енергію. Лише пісочниця.
block.powervoid.description = Рідини просто йдуть в порожнечу block.powervoid.description = Енергія просто йде в порожнечу. Лише пісочниця.
liquid.water.description = Набагато краще ніж[BLUE] монооксид дігідрогена[].\n\nДля отримання води використовуйте помпу(насос) на джерел(блоці) або екстрактор води.\n\nЦю рідину можна підвести до бурів для прискорення швидкості видобутку або до турелям для прискорення стрільби. liquid.water.description = Зазвичай використовується для охолодження машин та переробки відходів.
liquid.lava.description = [accent]Гаряче...\nРечовина розплавлене з гірничо-кам'яних пород.\nСлужить як паливо для термального генератора. liquid.lava.description = Можна перетворити в[LIGHT_GRAY] камінь[], який використовується для генерації енергії або використовуати як боєприпаси для певних турелей.
liquid.oil.description = Хтось писав про додавання золота в гру. Його додали, правда воно якесь чорне ...\nСуміш рідких вуглеводнів, що виділяється з природного газу в результаті зниження температури і пластового тиску.\nСлугує для пластіенівого компресора і т.д .. liquid.oil.description = Можна спалити, взірвати або використовувати як теплоносій.
liquid.cryofluid.description = Рідина з температурою нижче ніж -273 градусів за Цельсієм. Може бути використана для прискорення стрільби турелей або для охолодження чогось. liquid.cryofluid.description = Найефективніша рідина для охолодження. Рідина з температурою нижче ніж -273 градусів за Цельсієм. Може бути використана для прискорення стрільби турелей або для охолодження чогось.

View File

@@ -286,6 +286,7 @@ text.no = 不
text.info.title = [accent]详情 text.info.title = [accent]详情
text.error.title = [crimson]发生了一个错误 text.error.title = [crimson]发生了一个错误
text.error.crashtitle = 发生了一个错误 text.error.crashtitle = 发生了一个错误
text.blocks.unknown = [LIGHT_GRAY]???
text.blocks.blockinfo = 方块详情 text.blocks.blockinfo = 方块详情
text.blocks.powercapacity = 能量容量 text.blocks.powercapacity = 能量容量
text.blocks.powershot = 能量/发射 text.blocks.powershot = 能量/发射
@@ -318,7 +319,8 @@ text.blocks.coolant = 冷却剂
text.blocks.coolantuse = 冷却剂使用速度 text.blocks.coolantuse = 冷却剂使用速度
text.blocks.inputliquidfuel = 液体燃料输入 text.blocks.inputliquidfuel = 液体燃料输入
text.blocks.liquidfueluse = 液体燃料使用速度 text.blocks.liquidfueluse = 液体燃料使用速度
text.blocks.explosive = 易爆炸! text.blocks.boostitem = Boost Item
text.blocks.boostliquid = Boost Liquid
text.blocks.health = 生命值 text.blocks.health = 生命值
text.blocks.inaccuracy = 误差 text.blocks.inaccuracy = 误差
text.blocks.shots = 发射数 text.blocks.shots = 发射数
@@ -343,6 +345,7 @@ text.category.liquids = 液体
text.category.items = 物品 text.category.items = 物品
text.category.crafting = 制造 text.category.crafting = 制造
text.category.shooting = 发射 text.category.shooting = 发射
text.category.optional = Optional Enhancements
setting.autotarget.name = 自动发射 setting.autotarget.name = 自动发射
setting.fpscap.name = 最高 FPS setting.fpscap.name = 最高 FPS
setting.fpscap.none = setting.fpscap.none =
@@ -359,7 +362,6 @@ setting.sensitivity.name = 控制器灵敏度
setting.saveinterval.name = 自动保存间隔 setting.saveinterval.name = 自动保存间隔
setting.seconds = {0} 秒 setting.seconds = {0} 秒
setting.fullscreen.name = 全屏 setting.fullscreen.name = 全屏
setting.multithread.name = 多线程
setting.fps.name = 显示 FPS setting.fps.name = 显示 FPS
setting.vsync.name = 帧同步 setting.vsync.name = 帧同步
setting.lasers.name = 显示能量射线 setting.lasers.name = 显示能量射线
@@ -404,8 +406,6 @@ mode.waves.name = 普通
mode.waves.description = 普通模式,有限的资源和自动生成敌人。 mode.waves.description = 普通模式,有限的资源和自动生成敌人。
mode.sandbox.name = 沙盒 mode.sandbox.name = 沙盒
mode.sandbox.description = 无限的资源,不会自动生成敌人。 mode.sandbox.description = 无限的资源,不会自动生成敌人。
mode.custom.warning = 请注意,方块在区域内解锁之前,不能用于自定义游戏。\n\n[LIGHT_GRAY]如果您没有解锁任何方块,则不会出现任何方块。
mode.custom.warning.read = 确保你已经阅读过它:\n[scarlet]自定义游戏的解锁不带至区域或其他模式!\n\n[LIGHT_GRAY](我希望这不是必要的,但显然是必要的)
mode.freebuild.name = 自由建造 mode.freebuild.name = 自由建造
mode.freebuild.description = 有限的资源,不会自动生成敌人。 mode.freebuild.description = 有限的资源,不会自动生成敌人。
mode.pvp.name = PvP mode.pvp.name = PvP

View File

@@ -286,6 +286,7 @@ text.no = 否
text.info.title = [accent]資訊 text.info.title = [accent]資訊
text.error.title = [crimson]發生錯誤 text.error.title = [crimson]發生錯誤
text.error.crashtitle = 發生錯誤 text.error.crashtitle = 發生錯誤
text.blocks.unknown = [LIGHT_GRAY]???
text.blocks.blockinfo = 方塊資訊 text.blocks.blockinfo = 方塊資訊
text.blocks.powercapacity = 蓄電量 text.blocks.powercapacity = 蓄電量
text.blocks.powershot = 能源/射擊 text.blocks.powershot = 能源/射擊
@@ -318,7 +319,8 @@ text.blocks.coolant = 冷卻劑
text.blocks.coolantuse = 使用冷卻劑 text.blocks.coolantuse = 使用冷卻劑
text.blocks.inputliquidfuel = 輸入液體燃料 text.blocks.inputliquidfuel = 輸入液體燃料
text.blocks.liquidfueluse = 使用液體燃料速度 text.blocks.liquidfueluse = 使用液體燃料速度
text.blocks.explosive = 容易爆炸! text.blocks.boostitem = Boost Item
text.blocks.boostliquid = Boost Liquid
text.blocks.health = 耐久度 text.blocks.health = 耐久度
text.blocks.inaccuracy = 誤差 text.blocks.inaccuracy = 誤差
text.blocks.shots = 射擊數 text.blocks.shots = 射擊數
@@ -343,6 +345,7 @@ text.category.liquids = 液體
text.category.items = 物品 text.category.items = 物品
text.category.crafting = 合成 text.category.crafting = 合成
text.category.shooting = 射擊 text.category.shooting = 射擊
text.category.optional = Optional Enhancements
setting.autotarget.name = 自動射擊 setting.autotarget.name = 自動射擊
setting.fpscap.name = 最大螢幕刷新率 setting.fpscap.name = 最大螢幕刷新率
setting.fpscap.none = 没有 setting.fpscap.none = 没有
@@ -359,7 +362,6 @@ setting.sensitivity.name = 控制器靈敏度
setting.saveinterval.name = 自動存檔間隔 setting.saveinterval.name = 自動存檔間隔
setting.seconds = {0}秒 setting.seconds = {0}秒
setting.fullscreen.name = 全螢幕 setting.fullscreen.name = 全螢幕
setting.multithread.name = 多執行緒
setting.fps.name = 顯示螢幕刷新率 setting.fps.name = 顯示螢幕刷新率
setting.vsync.name = 垂直同步 setting.vsync.name = 垂直同步
setting.lasers.name = 顯示雷射光束 setting.lasers.name = 顯示雷射光束
@@ -404,8 +406,6 @@ mode.waves.name = 一般
mode.waves.description = 一般模式,有限的資源與自動來襲的波次。 mode.waves.description = 一般模式,有限的資源與自動來襲的波次。
mode.sandbox.name = 沙盒 mode.sandbox.name = 沙盒
mode.sandbox.description = 無限的資源,與不倒數計時的波次。 mode.sandbox.description = 無限的資源,與不倒數計時的波次。
mode.custom.warning = 請注意,方塊在區域內解鎖之前,不能用於自訂遊戲。\n\n[LIGHT_GRAY]如果您沒有解鎖任何方塊,則不會出現任何方塊。
mode.custom.warning.read = 確保你已閱讀過它:\n[scarlet]自訂遊戲的解鎖不帶至區域或其他模式!\n\n[LIGHT_GRAY](我希望這不是必要的,但顯然是必要的)
mode.freebuild.name = 自由建造 mode.freebuild.name = 自由建造
mode.freebuild.description = 有限的資源,與不倒數計時的波次。 mode.freebuild.description = 有限的資源,與不倒數計時的波次。
mode.pvp.name = 對戰 mode.pvp.name = 對戰

View File

@@ -38,7 +38,7 @@ void main() {
else if(m > 0.35) gl_FragColor.rgb = p4; else if(m > 0.35) gl_FragColor.rgb = p4;
else gl_FragColor.rgb = vec3(0.0); else gl_FragColor.rgb = vec3(0.0);
gl_FragColor.rgb *= 0.75; gl_FragColor.rgb *= 0.5;
gl_FragColor.a = mod(abs(float(coords.x)) + abs(float(coords.y)), 110.0) < 35.0 ? 1.0 : 0.0; gl_FragColor.a = mod(abs(float(coords.x)) + abs(float(coords.y)), 110.0) < 35.0 ? 1.0 : 0.0;
} }

View File

@@ -12,7 +12,6 @@ precision highp int;
uniform sampler2D u_texture; uniform sampler2D u_texture;
uniform vec2 u_texsize; uniform vec2 u_texsize;
uniform float u_time; uniform float u_time;
uniform float u_scaling;
uniform float u_dp; uniform float u_dp;
uniform vec2 u_offset; uniform vec2 u_offset;
@@ -28,7 +27,7 @@ void main() {
vec2 T = v_texCoord.xy; vec2 T = v_texCoord.xy;
vec2 coords = (T * u_texsize) + u_offset; vec2 coords = (T * u_texsize) + u_offset;
T += vec2(sin(coords.y / 3.0 + u_time / 20.0) / 240.0, sin(coords.x / 3.0 + u_time / 20.0) / 240.0) * u_scaling; T += vec2(sin(coords.y / 3.0 + u_time / 20.0), sin(coords.x / 3.0 + u_time / 20.0)) / u_texsize;
float si = sin(u_time / 20.0) / 8.0; float si = sin(u_time / 20.0) / 8.0;
vec4 color = texture2D(u_texture, T); vec4 color = texture2D(u_texture, T);

File diff suppressed because it is too large Load Diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 98 KiB

After

Width:  |  Height:  |  Size: 101 KiB

View File

@@ -12,51 +12,54 @@ TintedDrawable: {
invis: {name: white, color: {r: 0, g: 0, b: 0, a: 0} } invis: {name: white, color: {r: 0, g: 0, b: 0, a: 0} }
loadDim: {name: white, color: {r: 0, g: 0, b: 0, a: 0.8} }, loadDim: {name: white, color: {r: 0, g: 0, b: 0, a: 0.8} },
chatfield: {name: white, color: {r: 0, g: 0, b: 0, a: 0.2}}, chatfield: {name: white, color: {r: 0, g: 0, b: 0, a: 0.2}},
clear: {name: white, color: {r: 0.1, g: 0.1, b: 0.1, a: 0.75}}, dark: {name: white, color: {hex: "#000000ff"}},
none: {name: white, color: {r: 0, g: 0, b: 0, a: 0}}, none: {name: white, color: {r: 0, g: 0, b: 0, a: 0}},
clear-over: {name: white, color: { hex: "#ffffff82" }}, flat: {name: white, color: {r: 0.0, g: 0.0, b: 0.0, a: 0.6}},
clear-alpha: {name: white, color: { hex: "#ffd37fff" }}, flat-over: {name: white, color: { hex: "#ffffff82" }},
clear-down: {name: white, color: { hex: "#ffd37fff" }} flat-down: {name: white, color: { hex: "#ffd37fff" }}
}, },
ButtonStyle: { ButtonStyle: {
default: {down: button-down, up: button }, default: {down: button-down, up: button },
toggle: {checked: button-down, down: button-down, up: button } toggle: {checked: button-down, down: button-down, up: button }
}, },
TextButtonStyle: { TextButtonStyle: {
default: {over: button-over, disabled: button, font: default-font, fontColor: white, disabledFontColor: gray, down: button-down, up: button, transition: 0 }, default: {over: button-over, disabled: button, font: default-font, fontColor: white, disabledFontColor: gray, down: button-down, up: button},
left: {over: button-left-over, font: default-font, fontColor: white, disabledFontColor: gray, down: button-left-down, up: button-left},
right: {over: button-right-over, font: default-font, fontColor: white, disabledFontColor: gray, down: button-right-down, up: button-right},
wave: {font: default-font, fontColor: white, disabledFontColor: gray, up: button-edge-4},
clear: {over: flat-over, font: default-font, fontColor: white, disabledFontColor: gray, down: pane, up: flat},
discord: {font: default-font, fontColor: white, up: discord-banner}, discord: {font: default-font, fontColor: white, up: discord-banner},
info: {font: default-font, fontColor: white, up: info-banner}, info: {font: default-font, fontColor: white, up: info-banner},
clear: {down: clear-down, up: clear, over: clear-over, font: default-font, fontColor: white, disabledFontColor: gray }, clear-partial: {down: white, up: button-select, over: flat-down, font: default-font, fontColor: white, disabledFontColor: gray },
clear-partial: {down: white, up: button-select, over: clear-down, font: default-font, fontColor: white, disabledFontColor: gray }, clear-partial-2: {down: flat-over, up: none, over: flat-over, font: default-font, fontColor: white, disabledFontColor: gray },
empty: {font: default-font}, empty: {font: default-font},
toggle: {font: default-font, fontColor: white, checked: button-down, down: button-down, up: button, over: button-over, disabled: button, disabledFontColor: gray } toggle: {font: default-font, fontColor: white, checked: button-down, down: button-down, up: button, over: button-over, disabled: button, disabledFontColor: gray }
}, },
ImageButtonStyle: { ImageButtonStyle: {
default: {down: button-down, up: button, over: button-over, imageDisabledColor: gray, imageUpColor: white }, default: {down: button-down, up: button, over: button-over, imageDisabledColor: gray, imageUpColor: white },
right: {over: button-right-over, down: button-right-down, up: button-right},
empty: { imageDownColor: accent, imageUpColor: white}, empty: { imageDownColor: accent, imageUpColor: white},
emptytoggle: {imageCheckedColor: white, imageDownColor: white, imageUpColor: gray}, emptytoggle: {imageCheckedColor: white, imageDownColor: white, imageUpColor: gray},
static: {up: button }, static: {up: button },
static-down: {up: button-down }, static-down: {up: button-down },
toggle: {checked: button-down, down: button-down, up: button, imageDisabledColor: gray, imageUpColor: white }, toggle: {checked: button-down, down: button-down, up: button, imageDisabledColor: gray, imageUpColor: white },
select: {checked: button-select, up: none }, select: {checked: button-select, up: none },
clear: {down: clear-down, up: clear, over: clear-over}, clear: {down: flat-over, up: flat, over: flat-over},
clear-partial: {down: clear-down, up: none, over: clear-over}, clear-full: {down: white, up: button-select, over: flat-down},
clear-toggle: {down: clear-down, checked: clear-down, up: clear, over: clear-over}, clear-partial: {down: flat-down, up: none, over: flat-over},
clear-toggle-partial: {down: clear-down, checked: clear-down, up: none, over: clear-over}, clear-toggle: {down: flat-down, checked: flat-down, up: flat, over: flat-over},
clear-toggle-partial: {down: flat-down, checked: flat-down, up: none, over: flat-over},
}, },
ScrollPaneStyle: { ScrollPaneStyle: {
default: {background: border, vScroll: scroll, vScrollKnob: scroll-knob-vertical-black}, default: {vScroll: scroll, vScrollKnob: scroll-knob-vertical-black},
horizontal: {background: border, vScroll: scroll, vScrollKnob: scroll-knob-vertical, hScroll: scroll-horizontal, hScrollKnob: scroll-knob-horizontal}, horizontal: {vScroll: scroll, vScrollKnob: scroll-knob-vertical-black, hScroll: scroll-horizontal, hScrollKnob: scroll-knob-horizontal-black},
volume: {background: button, vScroll: scroll, vScrollKnob: scroll-knob-vertical-black},
clear: {vScroll: scroll, vScrollKnob: scroll-knob-vertical-black},
clear-black: {vScroll: scroll, vScrollKnob: scroll-knob-vertical-black}
}, },
WindowStyle: { WindowStyle: {
default: {titleFont: default-font, titleFontColor: accent }, default: {titleFont: default-font, titleFontColor: accent },
dialog: {stageBackground: dialogDim, titleFont: default-font, background: window-empty, titleFontColor: accent } dialog: {stageBackground: dialogDim, titleFont: default-font, background: window-empty, titleFontColor: accent }
}, },
KeybindDialogStyle: { KeybindDialogStyle: {
default: {keyColor: accent, keyNameColor: white, controllerColor: lightgray, paneStyle: clear}, default: {keyColor: accent, keyNameColor: white, controllerColor: lightgray},
}, },
SliderStyle: { SliderStyle: {
default-horizontal: {background: slider, knob: slider-knob, knobOver: slider-knob-over, knobDown: slider-knob-down}, default-horizontal: {background: slider, knob: slider-knob, knobOver: slider-knob-over, knobDown: slider-knob-down},
@@ -67,8 +70,8 @@ LabelStyle: {
small: {font: default-font, fontColor: white } small: {font: default-font, fontColor: white }
}, },
TextFieldStyle: { TextFieldStyle: {
default: {font: default-font-chat, fontColor: white, disabledFontColor: gray, selection: selection, background: button, cursor: cursor, messageFont: default-font, messageFontColor: gray } default: {font: default-font-chat, fontColor: white, disabledFontColor: gray, selection: selection, background: underline, cursor: cursor, messageFont: default-font, messageFontColor: gray }
textarea: {font: default-font-chat, fontColor: white, disabledFontColor: gray, selection: selection, background: textarea, cursor: cursor, messageFont: default-font, messageFontColor: gray } textarea: {font: default-font-chat, fontColor: white, disabledFontColor: gray, selection: selection, background: underline, cursor: cursor, messageFont: default-font, messageFontColor: gray }
}, },
CheckBoxStyle: { CheckBoxStyle: {
default: {checkboxOn: check-on, checkboxOff: check-off, checkboxOnOver: check-on-over, checkboxOver: check-over, font: default-font, fontColor: white, disabledFontColor: gray } default: {checkboxOn: check-on, checkboxOff: check-off, checkboxOnOver: check-on-over, checkboxOver: check-over, font: default-font, fontColor: white, disabledFontColor: gray }

View File

@@ -33,6 +33,7 @@ public class Vars{
public static final String appName = "Mindustry"; public static final String appName = "Mindustry";
public static final String discordURL = "https://discord.gg/mindustry"; public static final String discordURL = "https://discord.gg/mindustry";
public static final String releasesURL = "https://api.github.com/repos/Anuken/Mindustry/releases"; public static final String releasesURL = "https://api.github.com/repos/Anuken/Mindustry/releases";
public static final String contributorsURL = "https://api.github.com/repos/Anuken/Mindustry/contributors";
public static final String crashReportURL = "http://mindustry.us.to/report"; public static final String crashReportURL = "http://mindustry.us.to/report";
//time between waves in frames (on normal mode) //time between waves in frames (on normal mode)
public static final float wavespace = 60 * 60 * 1.5f; public static final float wavespace = 60 * 60 * 1.5f;
@@ -49,8 +50,7 @@ public class Vars{
public static final int maxNameLength = 40; public static final int maxNameLength = 40;
public static final float itemSize = 5f; public static final float itemSize = 5f;
public static final int tilesize = 8; public static final int tilesize = 8;
public static final int sectorSize = 250; public static final int sectorSize = 256;
public static final int mapPadding = 3;
public static final int invalidSector = Integer.MAX_VALUE; public static final int invalidSector = Integer.MAX_VALUE;
public static Locale[] locales; public static Locale[] locales;
public static final Color[] playerColors = { public static final Color[] playerColors = {
@@ -73,6 +73,7 @@ public class Vars{
}; };
//server port //server port
public static final int port = 6567; public static final int port = 6567;
public static boolean disableUI;
public static boolean testMobile; public static boolean testMobile;
//shorthand for whether or not this is running on android or ios //shorthand for whether or not this is running on android or ios
public static boolean mobile; public static boolean mobile;
@@ -80,6 +81,8 @@ public class Vars{
public static boolean android; public static boolean android;
//main data directory //main data directory
public static FileHandle dataDirectory; public static FileHandle dataDirectory;
//subdirectory for screenshots
public static FileHandle screenshotDirectory;
//directory for user-created map data //directory for user-created map data
public static FileHandle customMapDirectory; public static FileHandle customMapDirectory;
//save file directory //save file directory
@@ -171,6 +174,7 @@ public class Vars{
android = Gdx.app.getType() == ApplicationType.Android; android = Gdx.app.getType() == ApplicationType.Android;
dataDirectory = Settings.getDataDirectory(appName); dataDirectory = Settings.getDataDirectory(appName);
screenshotDirectory = dataDirectory.child("screenshots/");
customMapDirectory = dataDirectory.child("maps/"); customMapDirectory = dataDirectory.child("maps/");
saveDirectory = dataDirectory.child("saves/"); saveDirectory = dataDirectory.child("saves/");
baseCameraScale = Math.round(Unit.dp.scl(4)); baseCameraScale = Math.round(Unit.dp.scl(4));

View File

@@ -21,7 +21,6 @@ import io.anuke.ucore.util.ThreadArray;
import static io.anuke.mindustry.Vars.*; import static io.anuke.mindustry.Vars.*;
//TODO consider using quadtrees for finding specific types of blocks within an area //TODO consider using quadtrees for finding specific types of blocks within an area
//TODO maybe use Arrays instead of ObjectSets?
/**Class used for indexing special target blocks for AI.*/ /**Class used for indexing special target blocks for AI.*/
@SuppressWarnings("unchecked") @SuppressWarnings("unchecked")

View File

@@ -45,7 +45,7 @@ public class Pathfinder{
} }
public void update(){ public void update(){
if(Net.client()) return; if(Net.client() || paths == null) return;
for(Team team : Team.all){ for(Team team : Team.all){
if(state.teams.isActive(team)){ if(state.teams.isActive(team)){
@@ -182,7 +182,7 @@ public class Pathfinder{
} }
} }
state.spawner.checkAllQuadrants(); world.spawner.checkAllQuadrants();
} }
class PathData{ class PathData{

View File

@@ -14,7 +14,7 @@ public class AmmoTypes implements ContentList{
bulletDenseBig, bulletPyratiteBig, bulletThoriumBig, bulletDenseBig, bulletPyratiteBig, bulletThoriumBig,
shock, bombExplosive, bombIncendiary, bombOil, shellCarbide, flamerThermite, weaponMissile, weaponMissileSwarm, bulletMech, shock, bombExplosive, bombIncendiary, bombOil, shellCarbide, flamerThermite, weaponMissile, weaponMissileSwarm, bulletMech,
healBlaster, bulletGlaive, healBlaster, bulletGlaive,
/*flakCopper, */flakExplosive, flakPlastic, flakSurge, flakExplosive, flakPlastic, flakSurge,
missileExplosive, missileIncindiary, missileSurge, missileExplosive, missileIncindiary, missileSurge,
artilleryDense, artilleryPlastic, artilleryHoming, artilleryIncindiary, artilleryExplosive, unitArtillery, artilleryDense, artilleryPlastic, artilleryHoming, artilleryIncindiary, artilleryExplosive, unitArtillery,
basicFlame, lancerLaser, lightning, meltdownLaser, burstLaser, basicFlame, lancerLaser, lightning, meltdownLaser, burstLaser,

View File

@@ -82,7 +82,7 @@ public class Recipes implements ContentList{
new Recipe(distribution, DistributionBlocks.sorter, new ItemStack(Items.densealloy, 4), new ItemStack(Items.copper, 4)); new Recipe(distribution, DistributionBlocks.sorter, new ItemStack(Items.densealloy, 4), new ItemStack(Items.copper, 4));
new Recipe(distribution, DistributionBlocks.overflowGate, new ItemStack(Items.densealloy, 4), new ItemStack(Items.copper, 8)); new Recipe(distribution, DistributionBlocks.overflowGate, new ItemStack(Items.densealloy, 4), new ItemStack(Items.copper, 8));
new Recipe(distribution, DistributionBlocks.itemBridge, new ItemStack(Items.densealloy, 8), new ItemStack(Items.copper, 8)); new Recipe(distribution, DistributionBlocks.itemBridge, new ItemStack(Items.densealloy, 8), new ItemStack(Items.copper, 8));
new Recipe(distribution, DistributionBlocks.massDriver, new ItemStack(Items.densealloy, 400), new ItemStack(Items.silicon, 300), new ItemStack(Items.lead, 400), new ItemStack(Items.thorium, 250)); new Recipe(distribution, DistributionBlocks.massDriver, new ItemStack(Items.densealloy, 250), new ItemStack(Items.silicon, 150), new ItemStack(Items.lead, 250), new ItemStack(Items.thorium, 100));
//CRAFTING //CRAFTING

View File

@@ -37,12 +37,12 @@ public class UnitTypes implements ContentList{
}; };
spirit = new UnitType("spirit", Spirit.class, Spirit::new){{ spirit = new UnitType("spirit", Spirit.class, Spirit::new){{
weapon = Weapons.healBlasterDrone;
isFlying = true; isFlying = true;
drag = 0.01f; drag = 0.01f;
speed = 0.2f; speed = 0.2f;
maxVelocity = 0.8f; maxVelocity = 0.8f;
range = 50f; range = 50f;
healSpeed = 0.22f;
health = 60; health = 60;
}}; }};
@@ -114,6 +114,7 @@ public class UnitTypes implements ContentList{
}}; }};
phantom = new UnitType("phantom", Phantom.class, Phantom::new){{ phantom = new UnitType("phantom", Phantom.class, Phantom::new){{
weapon = Weapons.healBlasterDrone2;
isFlying = true; isFlying = true;
drag = 0.01f; drag = 0.01f;
mass = 2f; mass = 2f;
@@ -124,7 +125,6 @@ public class UnitTypes implements ContentList{
health = 220; health = 220;
buildPower = 0.9f; buildPower = 0.9f;
minePower = 1.1f; minePower = 1.1f;
healSpeed = 0.5f;
toMine = ObjectSet.with(Items.lead, Items.copper, Items.titanium); toMine = ObjectSet.with(Items.lead, Items.copper, Items.titanium);
}}; }};
} }

View File

@@ -7,8 +7,8 @@ import io.anuke.mindustry.type.ContentType;
import io.anuke.mindustry.type.Weapon; import io.anuke.mindustry.type.Weapon;
public class Weapons implements ContentList{ public class Weapons implements ContentList{
public static Weapon blaster, blasterSmall, glaiveBlaster, droneBlaster, healBlaster, chainBlaster, shockgun, public static Weapon blaster, blasterSmall, glaiveBlaster, droneBlaster, healBlaster, healBlasterDrone, chainBlaster, shockgun,
sapper, swarmer, bomber, bomberTrident, flakgun, flamethrower, missiles, artillery, laserBurster; sapper, swarmer, bomber, bomberTrident, flakgun, flamethrower, missiles, artillery, laserBurster, healBlasterDrone2;
@Override @Override
public void load(){ public void load(){
@@ -169,6 +169,26 @@ public class Weapons implements ContentList{
ejectEffect = Fx.none; ejectEffect = Fx.none;
ammo = AmmoTypes.lancerLaser; ammo = AmmoTypes.lancerLaser;
}}; }};
healBlasterDrone = new Weapon("heal-blaster"){{
length = 1.5f;
reload = 40f;
width = 0.5f;
roundrobin = true;
ejectEffect = Fx.none;
recoil = 2f;
ammo = AmmoTypes.healBlaster;
}};
healBlasterDrone2 = new Weapon("heal-blaster"){{
length = 1.5f;
reload = 20f;
width = 0.5f;
roundrobin = true;
ejectEffect = Fx.none;
recoil = 2f;
ammo = AmmoTypes.healBlaster;
}};
} }
@Override @Override

View File

@@ -139,13 +139,13 @@ public class CraftingBlocks extends BlockList implements ContentList{
melter = new PowerCrafter("melter"){{ melter = new PowerCrafter("melter"){{
health = 200; health = 200;
outputLiquid = Liquids.lava; outputLiquid = Liquids.lava;
outputLiquidAmount = 0.75f; outputLiquidAmount = 1f;
itemCapacity = 50; itemCapacity = 20;
craftTime = 10f; craftTime = 10f;
hasLiquids = hasPower = true; hasLiquids = hasPower = true;
consumes.power(0.1f); consumes.power(0.1f);
consumes.item(Items.stone, 2); consumes.item(Items.stone, 1);
}}; }};
separator = new Separator("separator"){{ separator = new Separator("separator"){{

View File

@@ -144,8 +144,8 @@ public class DebugBlocks extends BlockList implements ContentList{
if(!control.unlocks.isUnlocked(items.get(i))) continue; if(!control.unlocks.isUnlocked(items.get(i))) continue;
final int f = i; final int f = i;
ImageButton button = cont.addImageButton("liquid-icon-" + items.get(i).name, "toggle", 24, ImageButton button = cont.addImageButton("liquid-icon-" + items.get(i).name, "clear-toggle", 24,
() -> Call.setLiquidSourceLiquid(null, tile, items.get(f))).size(38, 42).padBottom(-5.1f).group(group).get(); () -> Call.setLiquidSourceLiquid(null, tile, items.get(f))).size(38).group(group).get();
button.setChecked(entity.source.id == f); button.setChecked(entity.source.id == f);
if(i % 4 == 3){ if(i % 4 == 3){

View File

@@ -33,9 +33,9 @@ public class DistributionBlocks extends BlockList implements ContentList{
}}; }};
phaseConveyor = new ItemBridge("phase-conveyor"){{ phaseConveyor = new ItemBridge("phase-conveyor"){{
range = 11; range = 12;
hasPower = true; hasPower = true;
consumes.power(0.05f); consumes.power(0.03f);
}}; }};
sorter = new Sorter("sorter"); sorter = new Sorter("sorter");
@@ -50,8 +50,8 @@ public class DistributionBlocks extends BlockList implements ContentList{
massDriver = new MassDriver("mass-driver"){{ massDriver = new MassDriver("mass-driver"){{
size = 3; size = 3;
itemCapacity = 80; itemCapacity = 60;
range = 340f; range = 440f;
}}; }};
} }
} }

View File

@@ -67,9 +67,9 @@ public class LiquidBlocks extends BlockList implements ContentList{
}}; }};
phaseConduit = new LiquidBridge("phase-conduit"){{ phaseConduit = new LiquidBridge("phase-conduit"){{
range = 11; range = 12;
hasPower = true; hasPower = true;
consumes.power(0.05f); consumes.power(0.03f);
}}; }};
} }
} }

View File

@@ -19,9 +19,9 @@ public class PowerBlocks extends BlockList implements ContentList{
}}; }};
thermalGenerator = new LiquidHeatGenerator("thermal-generator"){{ thermalGenerator = new LiquidHeatGenerator("thermal-generator"){{
maxLiquidGenerate = 4f; maxLiquidGenerate = 2f;
powerCapacity = 40f; powerCapacity = 40f;
powerPerLiquid = 0.1f; powerPerLiquid = 0.3f;
generateEffect = BlockFx.redgeneratespark; generateEffect = BlockFx.redgeneratespark;
size = 2; size = 2;
}}; }};

View File

@@ -32,24 +32,13 @@ public class TurretBlocks extends BlockList implements ContentList{
hail = new ArtilleryTurret("hail"){{ hail = new ArtilleryTurret("hail"){{
ammoTypes = new AmmoType[]{AmmoTypes.artilleryDense, AmmoTypes.artilleryHoming, AmmoTypes.artilleryIncindiary}; ammoTypes = new AmmoType[]{AmmoTypes.artilleryDense, AmmoTypes.artilleryHoming, AmmoTypes.artilleryIncindiary};
reload = 70f; reload = 60f;
recoil = 2f; recoil = 2f;
range = 230f; range = 230f;
inaccuracy = 1f; inaccuracy = 1f;
shootCone = 10f; shootCone = 10f;
health = 120; health = 120;
}}; }};
/*
scatter = new BurstTurret("scatter"){{
ammoTypes = new AmmoType[]{AmmoTypes.flakCopper};
reload = 70f;
recoil = 2f;
shots = 3;
range = 220f;
inaccuracy = 2f;
shootCone = 40f;
health = 120;
}};*/
scorch = new LiquidTurret("scorch"){ scorch = new LiquidTurret("scorch"){
protected TextureRegion shootRegion; protected TextureRegion shootRegion;
@@ -117,11 +106,11 @@ public class TurretBlocks extends BlockList implements ContentList{
arc = new PowerTurret("arc"){{ arc = new PowerTurret("arc"){{
shootType = AmmoTypes.arc; shootType = AmmoTypes.arc;
reload = 55f; reload = 85f;
shootShake = 1f; shootShake = 1f;
shootCone = 40f; shootCone = 40f;
rotatespeed = 8f; rotatespeed = 8f;
powerUsed = 7f; powerUsed = 10f;
powerCapacity = 30f; powerCapacity = 30f;
range = 150f; range = 150f;
shootEffect = ShootFx.lightningShoot; shootEffect = ShootFx.lightningShoot;
@@ -132,7 +121,7 @@ public class TurretBlocks extends BlockList implements ContentList{
swarmer = new BurstTurret("swarmer"){{ swarmer = new BurstTurret("swarmer"){{
ammoTypes = new AmmoType[]{AmmoTypes.missileExplosive, AmmoTypes.missileIncindiary, AmmoTypes.missileSurge}; ammoTypes = new AmmoType[]{AmmoTypes.missileExplosive, AmmoTypes.missileIncindiary, AmmoTypes.missileSurge};
reload = 60f; reload = 50f;
shots = 4; shots = 4;
burstSpacing = 5; burstSpacing = 5;
inaccuracy = 10f; inaccuracy = 10f;
@@ -156,7 +145,7 @@ public class TurretBlocks extends BlockList implements ContentList{
size = 2; size = 2;
range = 120f; range = 120f;
ammoTypes = new AmmoType[]{AmmoTypes.bulletCopper, AmmoTypes.bulletDense, AmmoTypes.bulletPyratite, AmmoTypes.bulletThorium, AmmoTypes.bulletSilicon}; ammoTypes = new AmmoType[]{AmmoTypes.bulletCopper, AmmoTypes.bulletDense, AmmoTypes.bulletPyratite, AmmoTypes.bulletThorium, AmmoTypes.bulletSilicon};
reload = 40f; reload = 35f;
restitution = 0.03f; restitution = 0.03f;
ammoEjectBack = 3f; ammoEjectBack = 3f;
cooldown = 0.03f; cooldown = 0.03f;
@@ -216,7 +205,6 @@ public class TurretBlocks extends BlockList implements ContentList{
}}; }};
fuse = new ItemTurret("fuse"){{ fuse = new ItemTurret("fuse"){{
//TODO make it use power
ammoTypes = new AmmoType[]{AmmoTypes.fuseShotgun}; ammoTypes = new AmmoType[]{AmmoTypes.fuseShotgun};
reload = 50f; reload = 50f;
shootShake = 4f; shootShake = 4f;

View File

@@ -21,7 +21,7 @@ public class UnitBlocks extends BlockList implements ContentList{
produceTime = 5700; produceTime = 5700;
size = 2; size = 2;
consumes.power(0.08f); consumes.power(0.08f);
consumes.items(new ItemStack[]{new ItemStack(Items.silicon, 30), new ItemStack(Items.lead, 30)}); consumes.items(new ItemStack(Items.silicon, 30), new ItemStack(Items.lead, 30));
}}; }};
phantomFactory = new UnitFactory("phantom-factory"){{ phantomFactory = new UnitFactory("phantom-factory"){{
@@ -29,7 +29,7 @@ public class UnitBlocks extends BlockList implements ContentList{
produceTime = 7300; produceTime = 7300;
size = 2; size = 2;
consumes.power(0.2f); consumes.power(0.2f);
consumes.items(new ItemStack[]{new ItemStack(Items.silicon, 70), new ItemStack(Items.lead, 80), new ItemStack(Items.titanium, 80)}); consumes.items(new ItemStack(Items.silicon, 70), new ItemStack(Items.lead, 80), new ItemStack(Items.titanium, 80));
}}; }};
wraithFactory = new UnitFactory("wraith-factory"){{ wraithFactory = new UnitFactory("wraith-factory"){{
@@ -37,7 +37,7 @@ public class UnitBlocks extends BlockList implements ContentList{
produceTime = 1800; produceTime = 1800;
size = 2; size = 2;
consumes.power(0.1f); consumes.power(0.1f);
consumes.items(new ItemStack[]{new ItemStack(Items.silicon, 10), new ItemStack(Items.titanium, 10)}); consumes.items(new ItemStack(Items.silicon, 10), new ItemStack(Items.titanium, 10));
}}; }};
ghoulFactory = new UnitFactory("ghoul-factory"){{ ghoulFactory = new UnitFactory("ghoul-factory"){{
@@ -46,7 +46,7 @@ public class UnitBlocks extends BlockList implements ContentList{
size = 3; size = 3;
consumes.power(0.2f); consumes.power(0.2f);
shadow = "shadow-round-3"; shadow = "shadow-round-3";
consumes.items(new ItemStack[]{new ItemStack(Items.silicon, 30), new ItemStack(Items.titanium, 30), new ItemStack(Items.plastanium, 20)}); consumes.items(new ItemStack(Items.silicon, 30), new ItemStack(Items.titanium, 30), new ItemStack(Items.plastanium, 20));
}}; }};
revenantFactory = new UnitFactory("revenant-factory"){{ revenantFactory = new UnitFactory("revenant-factory"){{
@@ -55,7 +55,7 @@ public class UnitBlocks extends BlockList implements ContentList{
size = 4; size = 4;
consumes.power(0.3f); consumes.power(0.3f);
shadow = "shadow-round-4"; shadow = "shadow-round-4";
consumes.items(new ItemStack[]{new ItemStack(Items.silicon, 80), new ItemStack(Items.titanium, 80), new ItemStack(Items.plastanium, 50)}); consumes.items(new ItemStack(Items.silicon, 80), new ItemStack(Items.titanium, 80), new ItemStack(Items.plastanium, 50));
}}; }};
daggerFactory = new UnitFactory("dagger-factory"){{ daggerFactory = new UnitFactory("dagger-factory"){{
@@ -63,7 +63,7 @@ public class UnitBlocks extends BlockList implements ContentList{
produceTime = 1700; produceTime = 1700;
size = 2; size = 2;
consumes.power(0.05f); consumes.power(0.05f);
consumes.items(new ItemStack[]{new ItemStack(Items.silicon, 10)}); consumes.items(new ItemStack(Items.silicon, 10));
}}; }};
titanFactory = new UnitFactory("titan-factory"){{ titanFactory = new UnitFactory("titan-factory"){{
@@ -72,7 +72,7 @@ public class UnitBlocks extends BlockList implements ContentList{
size = 3; size = 3;
consumes.power(0.15f); consumes.power(0.15f);
shadow = "shadow-round-3"; shadow = "shadow-round-3";
consumes.items(new ItemStack[]{new ItemStack(Items.silicon, 20), new ItemStack(Items.thorium, 30)}); consumes.items(new ItemStack(Items.silicon, 20), new ItemStack(Items.thorium, 30));
}}; }};
fortressFactory = new UnitFactory("fortress-factory"){{ fortressFactory = new UnitFactory("fortress-factory"){{
@@ -81,7 +81,7 @@ public class UnitBlocks extends BlockList implements ContentList{
size = 3; size = 3;
consumes.power(0.2f); consumes.power(0.2f);
shadow = "shadow-round-3"; shadow = "shadow-round-3";
consumes.items(new ItemStack[]{new ItemStack(Items.silicon, 40), new ItemStack(Items.thorium, 50)}); consumes.items(new ItemStack(Items.silicon, 40), new ItemStack(Items.thorium, 50));
}}; }};
repairPoint = new RepairPoint("repair-point"){{ repairPoint = new RepairPoint("repair-point"){{

View File

@@ -43,7 +43,7 @@ public class TurretBullets extends BulletList implements ContentList{
}; };
healBullet = new BulletType(5.2f, 13){ healBullet = new BulletType(5.2f, 13){
float healAmount = 21f; float healPercent = 3f;
{ {
hiteffect = BulletFx.hitLaser; hiteffect = BulletFx.hitLaser;
@@ -51,6 +51,11 @@ public class TurretBullets extends BulletList implements ContentList{
collidesTeam = true; collidesTeam = true;
} }
@Override
public boolean collides(Bullet b, Tile tile){
return tile.getTeam() != b.getTeam() || tile.entity.healthf() < 1f;
}
@Override @Override
public void draw(Bullet b){ public void draw(Bullet b){
Draw.color(Palette.heal); Draw.color(Palette.heal);
@@ -67,8 +72,8 @@ public class TurretBullets extends BulletList implements ContentList{
tile = tile.target(); tile = tile.target();
if(tile.getTeam() == b.getTeam() && !(tile.block() instanceof BuildBlock)){ if(tile.getTeam() == b.getTeam() && !(tile.block() instanceof BuildBlock)){
Effects.effect(BlockFx.healBlock, tile.drawx(), tile.drawy(), tile.block().size); Effects.effect(BlockFx.healBlockFull, Palette.heal, tile.drawx(), tile.drawy(), tile.block().size);
tile.entity.healBy(healAmount); tile.entity.healBy(healPercent / 100f * tile.entity.maxHealth());
} }
} }
}; };
@@ -304,7 +309,7 @@ public class TurretBullets extends BulletList implements ContentList{
} }
}; };
arc = new BulletType(0.001f, 30){ arc = new BulletType(0.001f, 26){
{ {
lifetime = 1; lifetime = 1;
despawneffect = Fx.none; despawneffect = Fx.none;

View File

@@ -53,7 +53,6 @@ public class Control extends Module{
private Throwable error; private Throwable error;
public Control(){ public Control(){
saves = new Saves(); saves = new Saves();
unlocks = new Unlocks(); unlocks = new Unlocks();
@@ -89,7 +88,7 @@ public class Control extends Module{
"color-1", Color.rgba8888(playerColors[11]), "color-1", Color.rgba8888(playerColors[11]),
"color-2", Color.rgba8888(playerColors[13]), "color-2", Color.rgba8888(playerColors[13]),
"color-3", Color.rgba8888(playerColors[9]), "color-3", Color.rgba8888(playerColors[9]),
"name", "player", "name", "",
"lastBuild", 0 "lastBuild", 0
); );
@@ -373,6 +372,10 @@ public class Control extends Module{
} }
} }
if(Inputs.keyTap("screenshot")){
renderer.takeMapScreenshot();
}
}else{ }else{
if(!state.isPaused()){ if(!state.isPaused()){
Timers.update(); Timers.update();

View File

@@ -1,6 +1,5 @@
package io.anuke.mindustry.core; package io.anuke.mindustry.core;
import io.anuke.mindustry.ai.WaveSpawner;
import io.anuke.mindustry.game.Difficulty; import io.anuke.mindustry.game.Difficulty;
import io.anuke.mindustry.game.EventType.StateChangeEvent; import io.anuke.mindustry.game.EventType.StateChangeEvent;
import io.anuke.mindustry.game.GameMode; import io.anuke.mindustry.game.GameMode;
@@ -12,14 +11,21 @@ import static io.anuke.mindustry.Vars.unitGroups;
import static io.anuke.mindustry.Vars.waveTeam; import static io.anuke.mindustry.Vars.waveTeam;
public class GameState{ public class GameState{
/**Current wave number, can be anything in non-wave modes.*/
public int wave = 1; public int wave = 1;
/**Wave countdown in ticks.*/
public float wavetime; public float wavetime;
/**Whether the game is in game over state.*/
public boolean gameOver = false; public boolean gameOver = false;
/**The current game mode.*/
public GameMode mode = GameMode.waves; public GameMode mode = GameMode.waves;
/**The current difficulty for wave modes.*/
public Difficulty difficulty = Difficulty.normal; public Difficulty difficulty = Difficulty.normal;
public WaveSpawner spawner = new WaveSpawner(); /**Team data. Gets reset every new game.*/
public Teams teams = new Teams(); public Teams teams = new Teams();
/**Number of enemies in the game; only used clientside in servers.*/
public int enemies; public int enemies;
/**Current game state.*/
private State state = State.menu; private State state = State.menu;
public int enemies(){ public int enemies(){

View File

@@ -93,7 +93,7 @@ public class Logic extends Module{
} }
public void runWave(){ public void runWave(){
state.spawner.spawnEnemies(); world.spawner.spawnEnemies();
state.wave++; state.wave++;
state.wavetime = wavespace * state.difficulty.timeScaling; state.wavetime = wavespace * state.difficulty.timeScaling;

View File

@@ -15,6 +15,7 @@ import io.anuke.mindustry.entities.Player;
import io.anuke.mindustry.entities.traits.BuilderTrait.BuildRequest; import io.anuke.mindustry.entities.traits.BuilderTrait.BuildRequest;
import io.anuke.mindustry.entities.traits.SyncTrait; import io.anuke.mindustry.entities.traits.SyncTrait;
import io.anuke.mindustry.entities.traits.TypeTrait; import io.anuke.mindustry.entities.traits.TypeTrait;
import io.anuke.mindustry.game.Version;
import io.anuke.mindustry.gen.Call; import io.anuke.mindustry.gen.Call;
import io.anuke.mindustry.gen.RemoteReadClient; import io.anuke.mindustry.gen.RemoteReadClient;
import io.anuke.mindustry.net.Net; import io.anuke.mindustry.net.Net;
@@ -95,6 +96,7 @@ public class NetClient extends Module{
ConnectPacket c = new ConnectPacket(); ConnectPacket c = new ConnectPacket();
c.name = player.name; c.name = player.name;
c.mobile = mobile; c.mobile = mobile;
c.versionType = Version.type;
c.color = Color.rgba8888(player.color); c.color = Color.rgba8888(player.color);
c.usid = getUsid(packet.addressTCP); c.usid = getUsid(packet.addressTCP);
c.uuid = Platform.instance.getUUID(); c.uuid = Platform.instance.getUUID();

View File

@@ -16,6 +16,7 @@ import io.anuke.mindustry.core.GameState.State;
import io.anuke.mindustry.entities.Player; import io.anuke.mindustry.entities.Player;
import io.anuke.mindustry.entities.traits.BuilderTrait.BuildRequest; import io.anuke.mindustry.entities.traits.BuilderTrait.BuildRequest;
import io.anuke.mindustry.entities.traits.SyncTrait; import io.anuke.mindustry.entities.traits.SyncTrait;
import io.anuke.mindustry.game.EventType.WorldLoadEvent;
import io.anuke.mindustry.game.Team; import io.anuke.mindustry.game.Team;
import io.anuke.mindustry.game.Version; import io.anuke.mindustry.game.Version;
import io.anuke.mindustry.gen.Call; import io.anuke.mindustry.gen.Call;
@@ -24,6 +25,7 @@ import io.anuke.mindustry.net.*;
import io.anuke.mindustry.net.Administration.PlayerInfo; import io.anuke.mindustry.net.Administration.PlayerInfo;
import io.anuke.mindustry.net.Packets.*; import io.anuke.mindustry.net.Packets.*;
import io.anuke.mindustry.world.Tile; import io.anuke.mindustry.world.Tile;
import io.anuke.ucore.core.Events;
import io.anuke.ucore.core.Timers; import io.anuke.ucore.core.Timers;
import io.anuke.ucore.entities.Entities; import io.anuke.ucore.entities.Entities;
import io.anuke.ucore.entities.EntityGroup; import io.anuke.ucore.entities.EntityGroup;
@@ -76,6 +78,9 @@ public class NetServer extends Module{
private DataOutputStream dataStream = new DataOutputStream(syncStream); private DataOutputStream dataStream = new DataOutputStream(syncStream);
public NetServer(){ public NetServer(){
Events.on(WorldLoadEvent.class, event -> {
connections.clear();
});
Net.handleServer(Connect.class, (id, connect) -> { Net.handleServer(Connect.class, (id, connect) -> {
if(admins.isIPBanned(connect.addressTCP)){ if(admins.isIPBanned(connect.addressTCP)){
@@ -120,7 +125,7 @@ public class NetServer extends Module{
return; return;
} }
if(packet.version == -1 && Version.build != -1 && !admins.allowsCustomClients()){ if(packet.versionType == null || ((packet.version == -1 || !packet.versionType.equals("official")) && Version.build != -1 && !admins.allowsCustomClients())){
kick(id, KickReason.customClient); kick(id, KickReason.customClient);
return; return;
} }

View File

@@ -10,7 +10,6 @@ import io.anuke.ucore.core.Timers;
import io.anuke.ucore.function.Consumer; import io.anuke.ucore.function.Consumer;
import io.anuke.ucore.scene.ui.Dialog; import io.anuke.ucore.scene.ui.Dialog;
import io.anuke.ucore.scene.ui.TextField; import io.anuke.ucore.scene.ui.TextField;
import io.anuke.ucore.util.Log;
import java.util.Random; import java.util.Random;
@@ -29,7 +28,6 @@ public abstract class Platform {
if(!mobile) return; //this is mobile only, desktop doesn't need dialogs if(!mobile) return; //this is mobile only, desktop doesn't need dialogs
field.tapped(() -> { field.tapped(() -> {
Log.info("yappd");
Dialog dialog = new Dialog("", "dialog"); Dialog dialog = new Dialog("", "dialog");
dialog.setFillParent(true); dialog.setFillParent(true);
dialog.content().top(); dialog.content().top();

View File

@@ -1,10 +1,16 @@
package io.anuke.mindustry.core; package io.anuke.mindustry.core;
import com.badlogic.gdx.Gdx; import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.files.FileHandle;
import com.badlogic.gdx.graphics.Color; import com.badlogic.gdx.graphics.Color;
import com.badlogic.gdx.graphics.Pixmap;
import com.badlogic.gdx.graphics.PixmapIO;
import com.badlogic.gdx.graphics.g2d.SpriteBatch; import com.badlogic.gdx.graphics.g2d.SpriteBatch;
import com.badlogic.gdx.math.Rectangle; import com.badlogic.gdx.math.Rectangle;
import com.badlogic.gdx.math.Vector2; import com.badlogic.gdx.math.Vector2;
import com.badlogic.gdx.utils.BufferUtils;
import com.badlogic.gdx.utils.ScreenUtils;
import com.badlogic.gdx.utils.TimeUtils;
import io.anuke.mindustry.content.fx.Fx; import io.anuke.mindustry.content.fx.Fx;
import io.anuke.mindustry.core.GameState.State; import io.anuke.mindustry.core.GameState.State;
import io.anuke.mindustry.entities.Player; import io.anuke.mindustry.entities.Player;
@@ -33,6 +39,7 @@ import io.anuke.ucore.graphics.Lines;
import io.anuke.ucore.graphics.Surface; import io.anuke.ucore.graphics.Surface;
import io.anuke.ucore.modules.RendererModule; import io.anuke.ucore.modules.RendererModule;
import io.anuke.ucore.scene.utils.Cursors; import io.anuke.ucore.scene.utils.Cursors;
import io.anuke.ucore.util.Bundles;
import io.anuke.ucore.util.Mathf; import io.anuke.ucore.util.Mathf;
import io.anuke.ucore.util.Pooling; import io.anuke.ucore.util.Pooling;
import io.anuke.ucore.util.Translator; import io.anuke.ucore.util.Translator;
@@ -378,4 +385,44 @@ public class Renderer extends RendererModule{
targetscale = Mathf.clamp(targetscale, Math.round(s * 2), Math.round(s * 5)); targetscale = Mathf.clamp(targetscale, Math.round(s * 2), Math.round(s * 5));
} }
public void takeMapScreenshot(){
float vpW = Core.camera.viewportWidth, vpH = Core.camera.viewportHeight;
int w = world.width()*tilesize, h = world.height()*tilesize;
int pw = pixelSurface.width(), ph = pixelSurface.height();
showFog = false;
disableUI = true;
pixelSurface.setSize(w, h, true);
Graphics.getEffectSurface().setSize(w, h, true);
Core.camera.viewportWidth = w;
Core.camera.viewportHeight = h;
Core.camera.position.x = w/2f;
Core.camera.position.y = h/2f;
draw();
showFog = true;
disableUI = false;
Core.camera.viewportWidth = vpW;
Core.camera.viewportHeight = vpH;
pixelSurface.getBuffer().begin();
byte[] lines = ScreenUtils.getFrameBufferPixels(0, 0, w, h, true);
for(int i = 0; i < lines.length; i+= 4){
lines[i + 3] = (byte)255;
}
pixelSurface.getBuffer().end();
Pixmap fullPixmap = new Pixmap(w, h, Pixmap.Format.RGBA8888);
BufferUtils.copy(lines, 0, fullPixmap.getPixels(), lines.length);
FileHandle file = screenshotDirectory.child("screenshot-" + TimeUtils.millis() + ".png");
PixmapIO.writePNG(file, fullPixmap);
fullPixmap.dispose();
pixelSurface.setSize(pw, ph, false);
Graphics.getEffectSurface().setSize(pw, ph, false);
ui.showInfoFade(Bundles.format("text.screenshot", file.toString()));
}
} }

View File

@@ -123,6 +123,8 @@ public class UI extends SceneModule{
@Override @Override
public void update(){ public void update(){
if(disableUI) return;
if(Graphics.drawing()) Graphics.end(); if(Graphics.drawing()) Graphics.end();
act(); act();

View File

@@ -5,6 +5,7 @@ import com.badlogic.gdx.utils.Array;
import com.badlogic.gdx.utils.ObjectMap; import com.badlogic.gdx.utils.ObjectMap;
import io.anuke.mindustry.ai.BlockIndexer; import io.anuke.mindustry.ai.BlockIndexer;
import io.anuke.mindustry.ai.Pathfinder; import io.anuke.mindustry.ai.Pathfinder;
import io.anuke.mindustry.ai.WaveSpawner;
import io.anuke.mindustry.content.blocks.Blocks; import io.anuke.mindustry.content.blocks.Blocks;
import io.anuke.mindustry.core.GameState.State; import io.anuke.mindustry.core.GameState.State;
import io.anuke.mindustry.game.EventType.TileChangeEvent; import io.anuke.mindustry.game.EventType.TileChangeEvent;
@@ -30,6 +31,7 @@ public class World extends Module{
public final WorldGenerator generator = new WorldGenerator(); public final WorldGenerator generator = new WorldGenerator();
public final BlockIndexer indexer = new BlockIndexer(); public final BlockIndexer indexer = new BlockIndexer();
public final Pathfinder pathfinder = new Pathfinder(); public final Pathfinder pathfinder = new Pathfinder();
public final WaveSpawner spawner = new WaveSpawner();
private Map currentMap; private Map currentMap;
private Sector currentSector; private Sector currentSector;

View File

@@ -17,6 +17,8 @@ import static io.anuke.mindustry.Vars.ui;
public enum EditorTool{ public enum EditorTool{
pick{ pick{
public void touched(MapEditor editor, int x, int y){ public void touched(MapEditor editor, int x, int y){
if(!Structs.inBounds(x, y, editor.getMap().width(), editor.getMap().height())) return;
byte bf = editor.getMap().read(x, y, DataPosition.floor); byte bf = editor.getMap().read(x, y, DataPosition.floor);
byte bw = editor.getMap().read(x, y, DataPosition.wall); byte bw = editor.getMap().read(x, y, DataPosition.wall);
byte link = editor.getMap().read(x, y, DataPosition.link); byte link = editor.getMap().read(x, y, DataPosition.link);

View File

@@ -4,6 +4,7 @@ import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.files.FileHandle; import com.badlogic.gdx.files.FileHandle;
import com.badlogic.gdx.graphics.Color; import com.badlogic.gdx.graphics.Color;
import com.badlogic.gdx.graphics.Pixmap; import com.badlogic.gdx.graphics.Pixmap;
import com.badlogic.gdx.graphics.g2d.Batch;
import com.badlogic.gdx.graphics.g2d.TextureRegion; import com.badlogic.gdx.graphics.g2d.TextureRegion;
import com.badlogic.gdx.math.Vector2; import com.badlogic.gdx.math.Vector2;
import com.badlogic.gdx.utils.Align; import com.badlogic.gdx.utils.Align;
@@ -58,7 +59,9 @@ public class MapEditorDialog extends Dialog implements Disposable{
private ButtonGroup<ImageButton> blockgroup; private ButtonGroup<ImageButton> blockgroup;
public MapEditorDialog(){ public MapEditorDialog(){
super("$text.mapeditor", "dialog"); super("", "dialog");
background("dark");
editor = new MapEditor(); editor = new MapEditor();
view = new MapView(editor); view = new MapView(editor);
@@ -227,6 +230,11 @@ public class MapEditorDialog extends Dialog implements Disposable{
}); });
} }
@Override
protected void drawBackground(Batch batch, float parentAlpha, float x, float y){
drawDefaultBackground(batch, parentAlpha, x, y);
}
private void save(){ private void save(){
String name = editor.getTags().get("name", ""); String name = editor.getTags().get("name", "");
@@ -352,7 +360,7 @@ public class MapEditorDialog extends Dialog implements Disposable{
table(cont -> { table(cont -> {
cont.left(); cont.left();
cont.table("button", mid -> { cont.table(mid -> {
mid.top(); mid.top();
Table tools = new Table().top(); Table tools = new Table().top();
@@ -360,7 +368,7 @@ public class MapEditorDialog extends Dialog implements Disposable{
ButtonGroup<ImageButton> group = new ButtonGroup<>(); ButtonGroup<ImageButton> group = new ButtonGroup<>();
Consumer<EditorTool> addTool = tool -> { Consumer<EditorTool> addTool = tool -> {
ImageButton button = new ImageButton("icon-" + tool.name(), "toggle"); ImageButton button = new ImageButton("icon-" + tool.name(), "clear-toggle");
button.clicked(() -> view.setTool(tool)); button.clicked(() -> view.setTool(tool));
button.resizeImage(16 * 2f); button.resizeImage(16 * 2f);
button.update(() -> button.setChecked(view.getTool() == tool)); button.update(() -> button.setChecked(view.getTool() == tool));
@@ -368,21 +376,21 @@ public class MapEditorDialog extends Dialog implements Disposable{
if(tool == EditorTool.pencil) if(tool == EditorTool.pencil)
button.setChecked(true); button.setChecked(true);
tools.add(button).padBottom(-5.1f); tools.add(button);
}; };
tools.defaults().size(size, size + 4f).padBottom(-5.1f); tools.defaults().size(size, size);
tools.addImageButton("icon-menu-large", 16 * 2f, menu::show); tools.addImageButton("icon-menu-large", "clear", 16 * 2f, menu::show);
ImageButton grid = tools.addImageButton("icon-grid", "toggle", 16 * 2f, () -> view.setGrid(!view.isGrid())).get(); ImageButton grid = tools.addImageButton("icon-grid", "clear-toggle", 16 * 2f, () -> view.setGrid(!view.isGrid())).get();
addTool.accept(EditorTool.zoom); addTool.accept(EditorTool.zoom);
tools.row(); tools.row();
ImageButton undo = tools.addImageButton("icon-undo", 16 * 2f, () -> view.undo()).get(); ImageButton undo = tools.addImageButton("icon-undo", "clear", 16 * 2f, () -> view.undo()).get();
ImageButton redo = tools.addImageButton("icon-redo", 16 * 2f, () -> view.redo()).get(); ImageButton redo = tools.addImageButton("icon-redo", "clear", 16 * 2f, () -> view.redo()).get();
addTool.accept(EditorTool.pick); addTool.accept(EditorTool.pick);
@@ -404,7 +412,7 @@ public class MapEditorDialog extends Dialog implements Disposable{
addTool.accept(EditorTool.fill); addTool.accept(EditorTool.fill);
addTool.accept(EditorTool.elevation); addTool.accept(EditorTool.elevation);
ImageButton rotate = tools.addImageButton("icon-arrow-16", 16 * 2f, () -> editor.setDrawRotation((editor.getDrawRotation() + 1) % 4)).get(); ImageButton rotate = tools.addImageButton("icon-arrow-16", "clear", 16 * 2f, () -> editor.setDrawRotation((editor.getDrawRotation() + 1) % 4)).get();
rotate.getImage().update(() -> { rotate.getImage().update(() -> {
rotate.getImage().setRotation(editor.getDrawRotation() * 90); rotate.getImage().setRotation(editor.getDrawRotation() * 90);
rotate.getImage().setOrigin(Align.center); rotate.getImage().setOrigin(Align.center);
@@ -412,8 +420,8 @@ public class MapEditorDialog extends Dialog implements Disposable{
tools.row(); tools.row();
tools.table("button", t -> t.add("$text.editor.teams")) tools.table("underline", t -> t.add("$text.editor.teams"))
.colspan(3).height(40).width(size * 3f); .colspan(3).height(40).width(size * 3f).padBottom(3);
tools.row(); tools.row();
@@ -422,14 +430,14 @@ public class MapEditorDialog extends Dialog implements Disposable{
int i = 0; int i = 0;
for(Team team : Team.all){ for(Team team : Team.all){
ImageButton button = new ImageButton("white", "toggle"); ImageButton button = new ImageButton("white", "clear-toggle-partial");
button.margin(4f, 4f, 10f, 4f); button.margin(4f);
button.getImageCell().grow(); button.getImageCell().grow();
button.getStyle().imageUpColor = team.color; button.getStyle().imageUpColor = team.color;
button.clicked(() -> editor.setDrawTeam(team)); button.clicked(() -> editor.setDrawTeam(team));
button.update(() -> button.setChecked(editor.getDrawTeam() == team)); button.update(() -> button.setChecked(editor.getDrawTeam() == team));
teamgroup.add(button); teamgroup.add(button);
tools.add(button).padBottom(-5.1f); tools.add(button);
if(i++ % 3 == 2) tools.row(); if(i++ % 3 == 2) tools.row();
} }
@@ -438,7 +446,7 @@ public class MapEditorDialog extends Dialog implements Disposable{
mid.row(); mid.row();
mid.table("button", t -> { mid.table("underline", t -> {
Slider slider = new Slider(0, MapEditor.brushSizes.length - 1, 1, false); Slider slider = new Slider(0, MapEditor.brushSizes.length - 1, 1, false);
slider.moved(f -> editor.setBrushSize(MapEditor.brushSizes[(int) (float) f])); slider.moved(f -> editor.setBrushSize(MapEditor.brushSizes[(int) (float) f]));
@@ -450,28 +458,27 @@ public class MapEditorDialog extends Dialog implements Disposable{
mid.row(); mid.row();
mid.table("button", t -> t.add("$text.editor.elevation")) mid.table("underline", t -> t.add("$text.editor.elevation"))
.colspan(3).height(40).width(size * 3f); .colspan(3).height(40).width(size * 3f);
mid.row(); mid.row();
mid.table("button", t -> { mid.table("underline", t -> {
t.margin(0); t.margin(0);
t.addImageButton("icon-arrow-left", 16 * 2f, () -> editor.setDrawElevation(editor.getDrawElevation() - 1)) t.addImageButton("icon-arrow-left", "clear-partial", 16 * 2f, () -> editor.setDrawElevation(editor.getDrawElevation() - 1))
.disabled(b -> editor.getDrawElevation() <= -1).size(size); .disabled(b -> editor.getDrawElevation() <= -1).size(size);
t.label(() -> editor.getDrawElevation() == -1 ? "$text.editor.slope" : (editor.getDrawElevation() + "")) t.label(() -> editor.getDrawElevation() == -1 ? "$text.editor.slope" : (editor.getDrawElevation() + ""))
.size(size).get().setAlignment(Align.center, Align.center); .size(size).get().setAlignment(Align.center, Align.center);
t.addImageButton("icon-arrow-right", 16 * 2f, () -> editor.setDrawElevation(editor.getDrawElevation() + 1)) t.addImageButton("icon-arrow-right", "clear-partial", 16 * 2f, () -> editor.setDrawElevation(editor.getDrawElevation() + 1))
.disabled(b -> editor.getDrawElevation() >= 63).size(size); .disabled(b -> editor.getDrawElevation() >= 63).size(size);
}).colspan(3).height(size).padTop(-5).width(size * 3f); }).colspan(3).height(size).width(size * 3f);
}).margin(0).left().growY(); }).margin(0).left().growY();
cont.table("button", t -> t.add(view).grow()) cont.table(t -> t.add(view).grow()).grow();
.margin(5).marginBottom(10).grow();
cont.table(this::addBlockSelection).right().growY(); cont.table(this::addBlockSelection).right().growY();
@@ -525,7 +532,7 @@ public class MapEditorDialog extends Dialog implements Disposable{
private void addBlockSelection(Table table){ private void addBlockSelection(Table table){
Table content = new Table(); Table content = new Table();
pane = new ScrollPane(content, "volume"); pane = new ScrollPane(content);
pane.setFadeScrollBars(false); pane.setFadeScrollBars(false);
pane.setOverscroll(true, false); pane.setOverscroll(true, false);
ButtonGroup<ImageButton> group = new ButtonGroup<>(); ButtonGroup<ImageButton> group = new ButtonGroup<>();
@@ -552,7 +559,7 @@ public class MapEditorDialog extends Dialog implements Disposable{
stack.add(new Image(region)); stack.add(new Image(region));
} }
ImageButton button = new ImageButton("white", "toggle"); ImageButton button = new ImageButton("white", "clear-toggle");
button.clicked(() -> editor.setDrawBlock(block)); button.clicked(() -> editor.setDrawBlock(block));
button.resizeImage(8 * 4f); button.resizeImage(8 * 4f);
button.getImageCell().setActor(stack); button.getImageCell().setActor(stack);
@@ -560,7 +567,7 @@ public class MapEditorDialog extends Dialog implements Disposable{
button.getImage().remove(); button.getImage().remove();
button.update(() -> button.setChecked(editor.getDrawBlock() == block)); button.update(() -> button.setChecked(editor.getDrawBlock() == block));
group.add(button); group.add(button);
content.add(button).pad(4f).size(53f, 58f); content.add(button).size(60f);
if(i++ % 3 == 2){ if(i++ % 3 == 2){
content.row(); content.row();
@@ -569,9 +576,7 @@ public class MapEditorDialog extends Dialog implements Disposable{
group.getButtons().get(2).setChecked(true); group.getButtons().get(2).setChecked(true);
Table extra = new Table("button"); table.table("underline", extra -> extra.labelWrap(() -> editor.getDrawBlock().formalName).width(220f).center()).growX();
extra.labelWrap(() -> editor.getDrawBlock().formalName).width(220f).center();
table.add(extra).growX();
table.row(); table.row();
table.add(pane).growY().fillX(); table.add(pane).growY().fillX();
} }

View File

@@ -74,6 +74,11 @@ public class MapRenderer implements Disposable{
for(int y = 0; y < chunks[0].length; y++){ for(int y = 0; y < chunks[0].length; y++){
IndexedRenderer mesh = chunks[x][y]; IndexedRenderer mesh = chunks[x][y];
if(mesh == null){
chunks[x][y] = new IndexedRenderer(chunksize * chunksize * 2);
mesh = chunks[x][y];
}
mesh.getTransformMatrix().setToTranslation(tx, ty, 0).scl(tw / (width * tilesize), mesh.getTransformMatrix().setToTranslation(tx, ty, 0).scl(tw / (width * tilesize),
th / (height * tilesize), 1f); th / (height * tilesize), 1f);
mesh.setProjectionMatrix(Core.batch.getProjectionMatrix()); mesh.setProjectionMatrix(Core.batch.getProjectionMatrix());

View File

@@ -175,7 +175,6 @@ public class MapView extends Element implements GestureListener{
public void clearStack(){ public void clearStack(){
stack.clear(); stack.clear();
//TODO clear und obuffer
} }
public OperationStack getStack(){ public OperationStack getStack(){
@@ -271,8 +270,8 @@ public class MapView extends Element implements GestureListener{
Graphics.beginClip(x, y, width, height); Graphics.beginClip(x, y, width, height);
Draw.color(Color.LIGHT_GRAY); Draw.color(Palette.remove);
Lines.stroke(-2f); Lines.stroke(2f);
Lines.rect(centerx - sclwidth / 2 - 1, centery - sclheight / 2 - 1, sclwidth + 2, sclheight + 2); Lines.rect(centerx - sclwidth / 2 - 1, centery - sclheight / 2 - 1, sclwidth + 2, sclheight + 2);
editor.renderer().draw(centerx - sclwidth / 2, centery - sclheight / 2, sclwidth, sclheight); editor.renderer().draw(centerx - sclwidth / 2, centery - sclheight / 2, sclwidth, sclheight);
Draw.reset(); Draw.reset();
@@ -292,7 +291,6 @@ public class MapView extends Element implements GestureListener{
} }
} }
//todo is it really math.max?
float scaling = zoom * Math.min(width, height) / editor.getMap().width(); float scaling = zoom * Math.min(width, height) / editor.getMap().width();
Draw.color(Palette.accent); Draw.color(Palette.accent);

View File

@@ -19,10 +19,7 @@ import io.anuke.mindustry.graphics.Trail;
import io.anuke.mindustry.io.TypeIO; import io.anuke.mindustry.io.TypeIO;
import io.anuke.mindustry.net.Net; import io.anuke.mindustry.net.Net;
import io.anuke.mindustry.net.NetConnection; import io.anuke.mindustry.net.NetConnection;
import io.anuke.mindustry.type.ContentType; import io.anuke.mindustry.type.*;
import io.anuke.mindustry.type.ItemStack;
import io.anuke.mindustry.type.Mech;
import io.anuke.mindustry.type.Weapon;
import io.anuke.mindustry.world.Block; import io.anuke.mindustry.world.Block;
import io.anuke.mindustry.world.Tile; import io.anuke.mindustry.world.Tile;
import io.anuke.mindustry.world.blocks.Floor; import io.anuke.mindustry.world.blocks.Floor;
@@ -192,6 +189,11 @@ public class Player extends Unit implements BuilderTrait, CarryTrait, ShooterTra
this.mining = tile; this.mining = tile;
} }
@Override
public boolean canMine(Item item){
return item.hardness <= mech.drillPower;
}
@Override @Override
public float getArmor(){ public float getArmor(){
return mech.armor + mech.getExtraArmor(this); return mech.armor + mech.getExtraArmor(this);

View File

@@ -209,7 +209,7 @@ public class Bullet extends BulletEntity<BulletType> implements TeamTrait, SyncT
if(tile == null) return false; if(tile == null) return false;
tile = tile.target(); tile = tile.target();
if(tile.entity != null && tile.entity.collide(this) && !tile.entity.isDead() && (type.collidesTeam || tile.getTeam() != team)){ if(tile.entity != null && tile.entity.collide(this) && type.collides(this, tile) && !tile.entity.isDead() && (type.collidesTeam || tile.getTeam() != team)){
if(tile.getTeam() != team){ if(tile.getTeam() != team){
tile.entity.collision(this); tile.entity.collision(this);
} }

View File

@@ -55,6 +55,10 @@ public abstract class BulletType extends Content implements BaseBulletType<Bulle
despawneffect = BulletFx.hitBulletSmall; despawneffect = BulletFx.hitBulletSmall;
} }
public boolean collides(Bullet bullet, Tile tile){
return true;
}
public void hitTile(Bullet b, Tile tile){ public void hitTile(Bullet b, Tile tile){
hit(b); hit(b);
} }

View File

@@ -1,5 +1,6 @@
package io.anuke.mindustry.entities.traits; package io.anuke.mindustry.entities.traits;
import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.graphics.Color; import com.badlogic.gdx.graphics.Color;
import com.badlogic.gdx.utils.Queue; import com.badlogic.gdx.utils.Queue;
import io.anuke.mindustry.Vars; import io.anuke.mindustry.Vars;
@@ -58,6 +59,9 @@ public interface BuilderTrait extends Entity{
/**Build power, can be any float. 1 = builds recipes in normal time, 0 = doesn't build at all.*/ /**Build power, can be any float. 1 = builds recipes in normal time, 0 = doesn't build at all.*/
float getBuildPower(Tile tile); float getBuildPower(Tile tile);
/**Returns whether or not this builder can mine a specific item type.*/
boolean canMine(Item item);
/**Whether this type of builder can begin creating new blocks.*/ /**Whether this type of builder can begin creating new blocks.*/
default boolean canCreateBlocks(){ default boolean canCreateBlocks(){
return true; return true;
@@ -226,7 +230,7 @@ public interface BuilderTrait extends Entity{
} }
if(!current.initialized){ if(!current.initialized){
Events.fire(new BuildSelectEvent(tile, unit.getTeam(), this, current.breaking)); Gdx.app.postRunnable(() -> Events.fire(new BuildSelectEvent(tile, unit.getTeam(), this, current.breaking)));
current.initialized = true; current.initialized = true;
} }
} }
@@ -236,7 +240,8 @@ public interface BuilderTrait extends Entity{
Tile tile = getMineTile(); Tile tile = getMineTile();
TileEntity core = unit.getClosestCore(); TileEntity core = unit.getClosestCore();
if(core == null || tile.block() != Blocks.air || unit.distanceTo(tile.worldx(), tile.worldy()) > mineDistance || !unit.inventory.canAcceptItem(tile.floor().drops.item)){ if(core == null || tile.block() != Blocks.air || unit.distanceTo(tile.worldx(), tile.worldy()) > mineDistance
|| tile.floor().drops == null || !unit.inventory.canAcceptItem(tile.floor().drops.item) || !canMine(tile.floor().drops.item)){
setMineTile(null); setMineTile(null);
}else{ }else{
Item item = tile.floor().drops.item; Item item = tile.floor().drops.item;

View File

@@ -1,19 +0,0 @@
package io.anuke.mindustry.entities.traits;
import io.anuke.ucore.entities.trait.HealthTrait;
//TODO implement
public interface RepairTrait extends TeamTrait{
HealthTrait getRepairing();
void setRepairing(HealthTrait trait);
default void drawRepair(){
if(getRepairing() == null) return;
}
default void updateRepair(){
if(getRepairing() == null) return;
}
}

View File

@@ -97,7 +97,7 @@ public abstract class BaseUnit extends Unit implements ShooterTrait{
} }
public boolean isCommanded(){ public boolean isCommanded(){
return !isWave && world.indexer.getAllied(team, BlockFlag.comandCenter).size != 0; return !isWave && world.indexer.getAllied(team, BlockFlag.comandCenter).size != 0 && world.indexer.getAllied(team, BlockFlag.comandCenter).first().entity instanceof CommandCenterEntity;
} }
public UnitCommand getCommand(){ public UnitCommand getCommand(){

View File

@@ -19,7 +19,6 @@ import io.anuke.ucore.util.Bundles;
import io.anuke.ucore.util.Log; import io.anuke.ucore.util.Log;
import io.anuke.ucore.util.Strings; import io.anuke.ucore.util.Strings;
//TODO merge unit type with mech
public class UnitType extends UnlockableContent{ public class UnitType extends UnlockableContent{
protected final Supplier<? extends BaseUnit> constructor; protected final Supplier<? extends BaseUnit> constructor;
@@ -42,7 +41,7 @@ public class UnitType extends UnlockableContent{
public float carryWeight = 1f; public float carryWeight = 1f;
public int itemCapacity = 30; public int itemCapacity = 30;
public ObjectSet<Item> toMine = ObjectSet.with(Items.lead, Items.copper); public ObjectSet<Item> toMine = ObjectSet.with(Items.lead, Items.copper);
public float buildPower = 0.3f, minePower = 0.7f, healSpeed = 2f; public float buildPower = 0.3f, minePower = 0.7f;
public Weapon weapon = Weapons.blaster; public Weapon weapon = Weapons.blaster;
public float weaponOffsetX, weaponOffsetY; public float weaponOffsetX, weaponOffsetY;
public Color trailColor = Color.valueOf("ffa665"); public Color trailColor = Color.valueOf("ffa665");

View File

@@ -1,14 +1,11 @@
package io.anuke.mindustry.entities.units.types; package io.anuke.mindustry.entities.units.types;
import com.badlogic.gdx.graphics.Color;
import com.badlogic.gdx.utils.Queue; import com.badlogic.gdx.utils.Queue;
import io.anuke.mindustry.content.blocks.Blocks; import io.anuke.mindustry.content.blocks.Blocks;
import io.anuke.mindustry.content.fx.BlockFx;
import io.anuke.mindustry.entities.Player; import io.anuke.mindustry.entities.Player;
import io.anuke.mindustry.entities.TileEntity; import io.anuke.mindustry.entities.TileEntity;
import io.anuke.mindustry.entities.Units; import io.anuke.mindustry.entities.Units;
import io.anuke.mindustry.entities.traits.BuilderTrait; import io.anuke.mindustry.entities.traits.BuilderTrait;
import io.anuke.mindustry.entities.traits.TargetTrait;
import io.anuke.mindustry.entities.units.BaseUnit; import io.anuke.mindustry.entities.units.BaseUnit;
import io.anuke.mindustry.entities.units.FlyingUnit; import io.anuke.mindustry.entities.units.FlyingUnit;
import io.anuke.mindustry.entities.units.UnitCommand; import io.anuke.mindustry.entities.units.UnitCommand;
@@ -16,7 +13,6 @@ import io.anuke.mindustry.entities.units.UnitState;
import io.anuke.mindustry.game.EventType.BuildSelectEvent; import io.anuke.mindustry.game.EventType.BuildSelectEvent;
import io.anuke.mindustry.gen.Call; import io.anuke.mindustry.gen.Call;
import io.anuke.mindustry.graphics.Palette; import io.anuke.mindustry.graphics.Palette;
import io.anuke.mindustry.net.Net;
import io.anuke.mindustry.type.Item; import io.anuke.mindustry.type.Item;
import io.anuke.mindustry.type.ItemStack; import io.anuke.mindustry.type.ItemStack;
import io.anuke.mindustry.type.ItemType; import io.anuke.mindustry.type.ItemType;
@@ -24,13 +20,11 @@ import io.anuke.mindustry.world.Tile;
import io.anuke.mindustry.world.blocks.BuildBlock; import io.anuke.mindustry.world.blocks.BuildBlock;
import io.anuke.mindustry.world.blocks.BuildBlock.BuildEntity; import io.anuke.mindustry.world.blocks.BuildBlock.BuildEntity;
import io.anuke.mindustry.world.meta.BlockFlag; import io.anuke.mindustry.world.meta.BlockFlag;
import io.anuke.ucore.core.Effects;
import io.anuke.ucore.core.Events; import io.anuke.ucore.core.Events;
import io.anuke.ucore.core.Timers;
import io.anuke.ucore.entities.EntityGroup; import io.anuke.ucore.entities.EntityGroup;
import io.anuke.ucore.graphics.Draw; import io.anuke.ucore.util.Geometry;
import io.anuke.ucore.graphics.Shapes; import io.anuke.ucore.util.Mathf;
import io.anuke.ucore.util.*; import io.anuke.ucore.util.Structs;
import java.io.DataInput; import java.io.DataInput;
import java.io.DataOutput; import java.io.DataOutput;
@@ -117,12 +111,7 @@ public class Drone extends FlyingUnit implements BuilderTrait{
if(target.distanceTo(Drone.this) > type.range){ if(target.distanceTo(Drone.this) > type.range){
circle(type.range*0.9f); circle(type.range*0.9f);
}else{ }else{
TileEntity entity = (TileEntity) target; getWeapon().update(Drone.this, target.getX(), target.getY());
entity.healBy(type.healSpeed * entity.tile.block().health / 100f * Timers.delta());
if(timer.get(timerRepairEffect, 30)){
Effects.effect(BlockFx.healBlockFull, Palette.heal, entity.x, entity.y, entity.tile.block().size);
}
} }
} }
}, },
@@ -279,6 +268,11 @@ public class Drone extends FlyingUnit implements BuilderTrait{
//no //no
} }
@Override
public boolean canMine(Item item){
return type.toMine.contains(item);
}
@Override @Override
public float getBuildPower(Tile tile){ public float getBuildPower(Tile tile){
return type.buildPower; return type.buildPower;
@@ -312,16 +306,6 @@ public class Drone extends FlyingUnit implements BuilderTrait{
target = null; target = null;
} }
if(Net.client() && state.is(repair) && target instanceof TileEntity && target.distanceTo(this) < type.range){
TileEntity entity = (TileEntity) target;
entity.health += type.healSpeed * Timers.delta();
entity.health = Mathf.clamp(entity.health, 0, entity.tile.block().health);
if(timer.get(timerRepairEffect, 30)){
Effects.effect(BlockFx.healBlockFull, Palette.heal, entity.x, entity.y, entity.tile.block().size);
}
}
updateBuilding(this); updateBuilding(this);
} }
@@ -350,19 +334,6 @@ public class Drone extends FlyingUnit implements BuilderTrait{
@Override @Override
public void drawOver(){ public void drawOver(){
trail.draw(Palette.lightTrail, 3f); trail.draw(Palette.lightTrail, 3f);
TargetTrait entity = target;
if(entity instanceof TileEntity && state.is(repair) && target.distanceTo(this) < type.range){
float len = 5f;
Draw.color(Color.BLACK, Color.WHITE, 0.95f + Mathf.absin(Timers.time(), 0.8f, 0.05f));
Shapes.laser("beam", "beam-end",
x + Angles.trnsx(rotation, len),
y + Angles.trnsy(rotation, len),
entity.getX(), entity.getY());
Draw.color();
}
drawBuilding(this); drawBuilding(this);
} }

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