Merge branch 'Anuken:master' into do-you-hear-the-voices-too

This commit is contained in:
Mythril382
2024-04-12 11:55:10 +08:00
committed by GitHub
121 changed files with 4352 additions and 2445 deletions

View File

@@ -0,0 +1,10 @@
name: "Validate Gradle Wrapper"
on: [push, pull_request]
jobs:
validation:
name: "Validation"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: gradle/wrapper-validation-action@v2

View File

@@ -101,64 +101,68 @@ public class AndroidLauncher extends AndroidApplication{
} }
void showFileChooser(boolean open, String title, Cons<Fi> cons, String... extensions){ void showFileChooser(boolean open, String title, Cons<Fi> cons, String... extensions){
String extension = extensions[0]; try{
String extension = extensions[0];
if(VERSION.SDK_INT >= VERSION_CODES.Q){ if(VERSION.SDK_INT >= VERSION_CODES.Q){
Intent intent = new Intent(open ? Intent.ACTION_OPEN_DOCUMENT : Intent.ACTION_CREATE_DOCUMENT); Intent intent = new Intent(open ? Intent.ACTION_OPEN_DOCUMENT : Intent.ACTION_CREATE_DOCUMENT);
intent.addCategory(Intent.CATEGORY_OPENABLE); intent.addCategory(Intent.CATEGORY_OPENABLE);
intent.setType(extension.equals("zip") && !open && extensions.length == 1 ? "application/zip" : "*/*"); intent.setType(extension.equals("zip") && !open && extensions.length == 1 ? "application/zip" : "*/*");
addResultListener(i -> startActivityForResult(intent, i), (code, in) -> { addResultListener(i -> startActivityForResult(intent, i), (code, in) -> {
if(code == Activity.RESULT_OK && in != null && in.getData() != null){ if(code == Activity.RESULT_OK && in != null && in.getData() != null){
Uri uri = in.getData(); Uri uri = in.getData();
if(uri.getPath().contains("(invalid)")) return; if(uri.getPath().contains("(invalid)")) return;
Core.app.post(() -> Core.app.post(() -> cons.get(new Fi(uri.getPath()){ Core.app.post(() -> Core.app.post(() -> cons.get(new Fi(uri.getPath()){
@Override @Override
public InputStream read(){ public InputStream read(){
try{ try{
return getContentResolver().openInputStream(uri); return getContentResolver().openInputStream(uri);
}catch(IOException e){ }catch(IOException e){
throw new ArcRuntimeException(e); throw new ArcRuntimeException(e);
}
} }
}
@Override @Override
public OutputStream write(boolean append){ public OutputStream write(boolean append){
try{ try{
return getContentResolver().openOutputStream(uri); return getContentResolver().openOutputStream(uri);
}catch(IOException e){ }catch(IOException e){
throw new ArcRuntimeException(e); throw new ArcRuntimeException(e);
}
} }
} })));
}))); }
} });
}); }else if(VERSION.SDK_INT >= VERSION_CODES.M && !(checkSelfPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE) == PackageManager.PERMISSION_GRANTED &&
}else if(VERSION.SDK_INT >= VERSION_CODES.M && !(checkSelfPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE) == PackageManager.PERMISSION_GRANTED &&
checkSelfPermission(Manifest.permission.READ_EXTERNAL_STORAGE) == PackageManager.PERMISSION_GRANTED)){ checkSelfPermission(Manifest.permission.READ_EXTERNAL_STORAGE) == PackageManager.PERMISSION_GRANTED)){
chooser = new FileChooser(title, file -> Structs.contains(extensions, file.extension().toLowerCase()), open, file -> { chooser = new FileChooser(title, file -> Structs.contains(extensions, file.extension().toLowerCase()), open, file -> {
if(!open){ if(!open){
cons.get(file.parent().child(file.nameWithoutExtension() + "." + extension)); cons.get(file.parent().child(file.nameWithoutExtension() + "." + extension));
}else{ }else{
cons.get(file); cons.get(file);
} }
}); });
ArrayList<String> perms = new ArrayList<>(); ArrayList<String> perms = new ArrayList<>();
if(checkSelfPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED){ if(checkSelfPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED){
perms.add(Manifest.permission.WRITE_EXTERNAL_STORAGE); perms.add(Manifest.permission.WRITE_EXTERNAL_STORAGE);
} }
if(checkSelfPermission(Manifest.permission.READ_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED){ if(checkSelfPermission(Manifest.permission.READ_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED){
perms.add(Manifest.permission.READ_EXTERNAL_STORAGE); perms.add(Manifest.permission.READ_EXTERNAL_STORAGE);
} }
requestPermissions(perms.toArray(new String[0]), PERMISSION_REQUEST_CODE); requestPermissions(perms.toArray(new String[0]), PERMISSION_REQUEST_CODE);
}else{
if(open){
new FileChooser(title, file -> Structs.contains(extensions, file.extension().toLowerCase()), true, cons).show();
}else{ }else{
super.showFileChooser(open, "@open", extension, cons); if(open){
new FileChooser(title, file -> Structs.contains(extensions, file.extension().toLowerCase()), true, cons).show();
}else{
super.showFileChooser(open, "@open", extension, cons);
}
} }
}catch(Throwable error){
Core.app.post(() -> Vars.ui.showException(error));
} }
} }

Binary file not shown.

Before

Width:  |  Height:  |  Size: 71 B

After

Width:  |  Height:  |  Size: 81 B

View File

@@ -688,6 +688,7 @@ marker.shape.name = Shape
marker.text.name = Text marker.text.name = Text
marker.line.name = Line marker.line.name = Line
marker.quad.name = Quad marker.quad.name = Quad
marker.texture.name = Texture
marker.background = Background marker.background = Background
marker.outline = Outline marker.outline = Outline
@@ -738,7 +739,7 @@ error.any = Unknown network error.
error.bloom = Failed to initialize bloom.\nYour device may not support it. error.bloom = Failed to initialize bloom.\nYour device may not support it.
weather.rain.name = Rain weather.rain.name = Rain
weather.snow.name = Snow weather.snowing.name = Snow
weather.sandstorm.name = Sandstorm weather.sandstorm.name = Sandstorm
weather.sporestorm.name = Sporestorm weather.sporestorm.name = Sporestorm
weather.fog.name = Fog weather.fog.name = Fog
@@ -998,17 +999,47 @@ stat.immunities = Immunities
stat.healing = Healing stat.healing = Healing
ability.forcefield = Force Field ability.forcefield = Force Field
ability.forcefield.description = Projects a force shield that absorbs bullets
ability.repairfield = Repair Field ability.repairfield = Repair Field
ability.repairfield.description = Repairs nearby units
ability.statusfield = Status Field ability.statusfield = Status Field
ability.statusfield.description = Applies a status effect to nearby units
ability.unitspawn = Factory ability.unitspawn = Factory
ability.unitspawn.description = Constructs units
ability.shieldregenfield = Shield Regen Field ability.shieldregenfield = Shield Regen Field
ability.shieldregenfield.description = Regenerates shields of nearby units
ability.movelightning = Movement Lightning ability.movelightning = Movement Lightning
ability.movelightning.description = Releases lightning while moving
ability.armorplate = Armor Plate
ability.armorplate.description = Reduces damage taken while shooting
ability.shieldarc = Shield Arc ability.shieldarc = Shield Arc
ability.shieldarc.description = Projects a force shield in an arc that absorbs bullets
ability.suppressionfield = Repair Suppression ability.suppressionfield = Repair Suppression
ability.suppressionfield.description = Stops nearby repair buildings
ability.energyfield = Energy Field ability.energyfield = Energy Field
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}% ability.energyfield.description = Zaps nearby enemies
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0} ability.energyfield.healdescription = Zaps nearby enemies and heals allies
ability.regen = Regeneration ability.regen = Self Regeneration
ability.regen.description = Regenerates own health over time
ability.liquidregen = Liquid Absorption
ability.liquidregen.description = Absorbs liquid to heal itself
ability.spawndeath = Death Spawns
ability.spawndeath.description = Releases units on death
ability.liquidexplode = Death Spillage
ability.liquidexplode.description = Spills liquid on death
ability.stat.firingrate = [stat]{0}/sec[lightgray] firing rate
ability.stat.regen = [stat]{0}[lightgray] health/sec
ability.stat.shield = [stat]{0}[lightgray] shield
ability.stat.repairspeed = [stat]{0}/sec[lightgray] repair speed
ability.stat.slurpheal = [stat]{0}[lightgray] health/liquid unit
ability.stat.cooldown = [stat]{0} sec[lightgray] cooldown
ability.stat.maxtargets = [stat]{0}[lightgray] max targets
ability.stat.sametypehealmultiplier = [stat]{0}%[lightgray] same type repair amount
ability.stat.damagereduction = [stat]{0}%[lightgray] damage reduction
ability.stat.minspeed = [stat]{0} tiles/sec[lightgray] min speed
ability.stat.duration = [stat]{0} sec[lightgray] duration
ability.stat.buildtime = [stat]{0} sec[lightgray] build time
bar.onlycoredeposit = Only Core Depositing Allowed bar.onlycoredeposit = Only Core Depositing Allowed
bar.drilltierreq = Better Drill Required bar.drilltierreq = Better Drill Required
@@ -1051,15 +1082,15 @@ bullet.armorpierce = [stat]armor piercing
bullet.maxdamagefraction = [stat]{0}%[lightgray] damage limit bullet.maxdamagefraction = [stat]{0}%[lightgray] damage limit
bullet.suppression = [stat]{0}[lightgray] seconds of repair suppression ~ [stat]{1}[lightgray] tiles bullet.suppression = [stat]{0}[lightgray] seconds of repair suppression ~ [stat]{1}[lightgray] tiles
bullet.interval = [stat]{0}/sec[lightgray] interval bullets: bullet.interval = [stat]{0}/sec[lightgray] interval bullets:
bullet.frags = [stat]{0}[lightgray]x frag bullets: bullet.frags = [stat]{0}x[lightgray] frag bullets:
bullet.lightning = [stat]{0}[lightgray]x lightning ~ [stat]{1}[lightgray] damage bullet.lightning = [stat]{0}x[lightgray] lightning ~ [stat]{1}[lightgray] damage
bullet.buildingdamage = [stat]{0}%[lightgray] building damage bullet.buildingdamage = [stat]{0}%[lightgray] building damage
bullet.knockback = [stat]{0}[lightgray] knockback bullet.knockback = [stat]{0}[lightgray] knockback
bullet.pierce = [stat]{0}[lightgray]x pierce bullet.pierce = [stat]{0}x[lightgray] pierce
bullet.infinitepierce = [stat]pierce bullet.infinitepierce = [stat]pierce
bullet.healpercent = [stat]{0}[lightgray]% repair bullet.healpercent = [stat]{0}%[lightgray] repair
bullet.healamount = [stat]{0}[lightgray] direct repair bullet.healamount = [stat]{0}[lightgray] direct repair
bullet.multiplier = [stat]{0}[lightgray]x ammo multiplier bullet.multiplier = [stat]{0}x[lightgray] ammo multiplier
bullet.reload = [stat]{0}%[lightgray] fire rate bullet.reload = [stat]{0}%[lightgray] fire rate
bullet.range = [stat]{0}[lightgray] tiles range bullet.range = [stat]{0}[lightgray] tiles range
@@ -1206,15 +1237,16 @@ keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target
keybind.unit_stance_patrol.name = Unit Stance: Patrol keybind.unit_stance_patrol.name = Unit Stance: Patrol
keybind.unit_stance_ram.name = Unit Stance: Ram keybind.unit_stance_ram.name = Unit Stance: Ram
keybind.unit_command_move = Unit Command: Move keybind.unit_command_move.name = Unit Command: Move
keybind.unit_command_repair = Unit Command: Repair keybind.unit_command_repair.name = Unit Command: Repair
keybind.unit_command_rebuild = Unit Command: Rebuild keybind.unit_command_rebuild.name = Unit Command: Rebuild
keybind.unit_command_assist = Unit Command: Assist keybind.unit_command_assist.name = Unit Command: Assist
keybind.unit_command_mine = Unit Command: Mine keybind.unit_command_mine.name = Unit Command: Mine
keybind.unit_command_boost = Unit Command: Boost keybind.unit_command_boost.name = Unit Command: Boost
keybind.unit_command_load_units = Unit Command: Load Units keybind.unit_command_load_units.name = Unit Command: Load Units
keybind.unit_command_load_blocks = Unit Command: Load Blocks keybind.unit_command_load_blocks.name = Unit Command: Load Blocks
keybind.unit_command_unload_payload = Unit Command: Unload Payload keybind.unit_command_unload_payload.name = Unit Command: Unload Payload
keybind.unit_command_enter_payload.name = Unit Command: Enter Payload
keybind.rebuild_select.name = Rebuild Region keybind.rebuild_select.name = Rebuild Region
keybind.schematic_select.name = Select Region keybind.schematic_select.name = Select Region
@@ -1313,6 +1345,7 @@ rules.unitdamagemultiplier = Unit Damage Multiplier
rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier
rules.solarmultiplier = Solar Power Multiplier rules.solarmultiplier = Solar Power Multiplier
rules.unitcapvariable = Cores Contribute To Unit Cap rules.unitcapvariable = Cores Contribute To Unit Cap
rules.unitpayloadsexplode = Carried Payloads Explode With The Unit
rules.unitcap = Base Unit Cap rules.unitcap = Base Unit Cap
rules.limitarea = Limit Map Area rules.limitarea = Limit Map Area
rules.enemycorebuildradius = Enemy Core No-Build Radius:[lightgray] (tiles) rules.enemycorebuildradius = Enemy Core No-Build Radius:[lightgray] (tiles)
@@ -1346,6 +1379,9 @@ rules.weather.frequency = Frequency:
rules.weather.always = Always rules.weather.always = Always
rules.weather.duration = Duration: rules.weather.duration = Duration:
rules.placerangecheck.info = Prevents players from placing anything near enemy buildings. When trying to place a turret, the range is increased, so the turret will not be able to reach the enemy.
rules.onlydepositcore.info = Prevents units from depositing items into any buildings except cores.
content.item.name = Items content.item.name = Items
content.liquid.name = Fluids content.liquid.name = Fluids
content.unit.name = Units content.unit.name = Units
@@ -2315,6 +2351,8 @@ lst.getblock = Get tile data at any location.
lst.setblock = Set tile data at any location. lst.setblock = Set tile data at any location.
lst.spawnunit = Spawn unit at a location. lst.spawnunit = Spawn unit at a location.
lst.applystatus = Apply or clear a status effect from a unit. lst.applystatus = Apply or clear a status effect from a unit.
lst.weathersense = Check if a type of weather is active.
lst.weatherset = Set the current state of a type of weather.
lst.spawnwave = Spawn a wave. lst.spawnwave = Spawn a wave.
lst.explosion = Create an explosion at a location. lst.explosion = Create an explosion at a location.
lst.setrate = Set processor execution speed in instructions/tick. lst.setrate = Set processor execution speed in instructions/tick.

View File

@@ -598,7 +598,7 @@ filter.option.floor2 = Другая паверхню
filter.option.threshold2 = Другасны гранічны парог filter.option.threshold2 = Другасны гранічны парог
filter.option.radius = Радыус filter.option.radius = Радыус
filter.option.percentile = Процентль filter.option.percentile = Процентль
locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: @[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable) locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: {0}[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable)
locales.deletelocale = Are you sure you want to delete this locale bundle? locales.deletelocale = Are you sure you want to delete this locale bundle?
locales.applytoall = Apply Changes To All Locales locales.applytoall = Apply Changes To All Locales
locales.addtoother = Add To Other Locales locales.addtoother = Add To Other Locales
@@ -670,6 +670,7 @@ marker.shape.name = Форма
marker.text.name = Тэкст marker.text.name = Тэкст
marker.line.name = Line marker.line.name = Line
marker.quad.name = Quad marker.quad.name = Quad
marker.texture.name = Texture
marker.background = Задні Фон marker.background = Задні Фон
marker.outline = Контур marker.outline = Контур
objective.research = [accent]Даследаваць:\n[]{0}[lightgray]{1} objective.research = [accent]Даследаваць:\n[]{0}[lightgray]{1}
@@ -716,7 +717,7 @@ error.any = Невядомая сеткавая памылка.
error.bloom = Не атрымалася ініцыялізаваць свячэнне (Bloom). \nМагчыма, зараз Вашая прылада не падтрымлівае яго. error.bloom = Не атрымалася ініцыялізаваць свячэнне (Bloom). \nМагчыма, зараз Вашая прылада не падтрымлівае яго.
weather.rain.name = Дождж weather.rain.name = Дождж
weather.snow.name = Снег weather.snowing.name = Снег
weather.sandstorm.name = Пясчаная бура weather.sandstorm.name = Пясчаная бура
weather.sporestorm.name = Спаравая бура weather.sporestorm.name = Спаравая бура
weather.fog.name = Туман weather.fog.name = Туман
@@ -971,17 +972,46 @@ stat.immunities = Імунітэт
stat.healing = Аднаўленне stat.healing = Аднаўленне
ability.forcefield = Сіловое Поле ability.forcefield = Сіловое Поле
ability.forcefield.description = Projects a force shield that absorbs bullets
ability.repairfield = Поле Рамонту ability.repairfield = Поле Рамонту
ability.repairfield.description = Repairs nearby units
ability.statusfield = Поле Статусу ability.statusfield = Поле Статусу
ability.statusfield.description = Applies a status effect to nearby units
ability.unitspawn = Завод ability.unitspawn = Завод
ability.unitspawn.description = Constructs units
ability.shieldregenfield = Васстанўляюяае Поле Шчыта ability.shieldregenfield = Васстанўляюяае Поле Шчыта
ability.shieldregenfield.description = Regenerates shields of nearby units
ability.movelightning = Рух Маланкі ability.movelightning = Рух Маланкі
ability.movelightning.description = Releases lightning while moving
ability.armorplate = Armor Plate
ability.armorplate.description = Reduces damage taken while shooting
ability.shieldarc = Шчытавая Дуга ability.shieldarc = Шчытавая Дуга
ability.shieldarc.description = Projects a force shield in an arc that absorbs bullets
ability.suppressionfield = Regen Suppression Field ability.suppressionfield = Regen Suppression Field
ability.suppressionfield.description = Stops nearby repair buildings
ability.energyfield = Энэргетычнае Поле ability.energyfield = Энэргетычнае Поле
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}% ability.energyfield.description = Zaps nearby enemies
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0} ability.energyfield.healdescription = Zaps nearby enemies and heals allies
ability.regen = Regeneration ability.regen = Regeneration
ability.regen.description = Regenerates own health over time
ability.liquidregen = Liquid Absorption
ability.liquidregen.description = Absorbs liquid to heal itself
ability.spawndeath = Death Spawns
ability.spawndeath.description = Releases units on death
ability.liquidexplode = Death Spillage
ability.liquidexplode.description = Spills liquid on death
ability.stat.firingrate = [stat]{0}/sec[lightgray] firing rate
ability.stat.regen = [stat]{0}[lightgray] health/sec
ability.stat.shield = [stat]{0}[lightgray] shield
ability.stat.repairspeed = [stat]{0}/sec[lightgray] repair speed
ability.stat.slurpheal = [stat]{0}[lightgray] health/liquid unit
ability.stat.cooldown = [stat]{0} sec[lightgray] cooldown
ability.stat.maxtargets = [stat]{0}[lightgray] max targets
ability.stat.sametypehealmultiplier = [stat]{0}%[lightgray] same type repair amount
ability.stat.damagereduction = [stat]{0}%[lightgray] damage reduction
ability.stat.minspeed = [stat]{0} tiles/sec[lightgray] min speed
ability.stat.duration = [stat]{0} sec[lightgray] duration
ability.stat.buildtime = [stat]{0} sec[lightgray] build time
bar.onlycoredeposit = Даступны Толькі Перанос Рэсурсаў У Ядро bar.onlycoredeposit = Даступны Толькі Перанос Рэсурсаў У Ядро
bar.drilltierreq = Патрабуецца свідар лепей bar.drilltierreq = Патрабуецца свідар лепей
@@ -1177,15 +1207,16 @@ keybind.unit_stance_hold_fire.name = Unit Stance: Hold Fire
keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target
keybind.unit_stance_patrol.name = Unit Stance: Patrol keybind.unit_stance_patrol.name = Unit Stance: Patrol
keybind.unit_stance_ram.name = Unit Stance: Ram keybind.unit_stance_ram.name = Unit Stance: Ram
keybind.unit_command_move = Unit Command: Move keybind.unit_command_move.name = Unit Command: Move
keybind.unit_command_repair = Unit Command: Repair keybind.unit_command_repair.name = Unit Command: Repair
keybind.unit_command_rebuild = Unit Command: Rebuild keybind.unit_command_rebuild.name = Unit Command: Rebuild
keybind.unit_command_assist = Unit Command: Assist keybind.unit_command_assist.name = Unit Command: Assist
keybind.unit_command_mine = Unit Command: Mine keybind.unit_command_mine.name = Unit Command: Mine
keybind.unit_command_boost = Unit Command: Boost keybind.unit_command_boost.name = Unit Command: Boost
keybind.unit_command_load_units = Unit Command: Load Units keybind.unit_command_load_units.name = Unit Command: Load Units
keybind.unit_command_load_blocks = Unit Command: Load Blocks keybind.unit_command_load_blocks.name = Unit Command: Load Blocks
keybind.unit_command_unload_payload = Unit Command: Unload Payload keybind.unit_command_unload_payload.name = Unit Command: Unload Payload
keybind.unit_command_enter_payload.name = Unit Command: Enter Payload
keybind.rebuild_select.name = Перабудаваць Рэгіён keybind.rebuild_select.name = Перабудаваць Рэгіён
keybind.schematic_select.name = Абраць Вобласць keybind.schematic_select.name = Абраць Вобласць
keybind.schematic_menu.name = Меню Схем keybind.schematic_menu.name = Меню Схем
@@ -1283,6 +1314,7 @@ rules.unitdamagemultiplier = Множнік страт баяв. адз.
rules.unitcrashdamagemultiplier = Множнік Падрыўнога Пашкоджання Юніта rules.unitcrashdamagemultiplier = Множнік Падрыўнога Пашкоджання Юніта
rules.solarmultiplier = Множнік Сонечнай Энергіі rules.solarmultiplier = Множнік Сонечнай Энергіі
rules.unitcapvariable = Ядра Спрыяюць Колькасці Юнітаў rules.unitcapvariable = Ядра Спрыяюць Колькасці Юнітаў
rules.unitpayloadsexplode = Carried Payloads Explode With The Unit
rules.unitcap = Асноўная Колькасць Юнітаў rules.unitcap = Асноўная Колькасць Юнітаў
rules.limitarea = Абмежаваць Вобласць Мапы rules.limitarea = Абмежаваць Вобласць Мапы
rules.enemycorebuildradius = Радыус абароны варожае. ядраў: [lightgray] (блок.) rules.enemycorebuildradius = Радыус абароны варожае. ядраў: [lightgray] (блок.)
@@ -1315,6 +1347,8 @@ rules.weather = Надвор'е
rules.weather.frequency = Частата: rules.weather.frequency = Частата:
rules.weather.always = Заўсёды rules.weather.always = Заўсёды
rules.weather.duration = Працягласць: rules.weather.duration = Працягласць:
rules.placerangecheck.info = Prevents players from placing anything near enemy buildings. When trying to place a turret, the range is increased, so the turret will not be able to reach the enemy.
rules.onlydepositcore.info = Prevents units from depositing items into any buildings except cores.
content.item.name = Рэчывы content.item.name = Рэчывы
content.liquid.name = Вадкасці content.liquid.name = Вадкасці
@@ -2241,7 +2275,7 @@ unit.emanate.description = Builds structures to defend the Acropolis core. Repai
lst.read = Read a number from a linked memory cell. lst.read = Read a number from a linked memory cell.
lst.write = Write a number to a linked memory cell. lst.write = Write a number to a linked memory cell.
lst.print = Add text to the print buffer.\nDoes not display anything until [accent]Print Flush[] is used. lst.print = Add text to the print buffer.\nDoes not display anything until [accent]Print Flush[] is used.
lst.format = Replace next placeholder ("[accent]@[]") in text buffer with a value.\nExample:\n[accent]print "test @"\nformat "example" lst.format = Replace next placeholder in text buffer with a value.\nDoes not do anything if placeholder pattern is invalid.\nPlaceholder pattern: "{[accent]number 0-9[]}"\nExample:\n[accent]print "test {0}"\nformat "example"
lst.draw = Add an operation to the drawing buffer.\nDoes not display anything until [accent]Draw Flush[] is used. lst.draw = Add an operation to the drawing buffer.\nDoes not display anything until [accent]Draw Flush[] is used.
lst.drawflush = Flush queued [accent]Draw[] operations to a display. lst.drawflush = Flush queued [accent]Draw[] operations to a display.
lst.printflush = Flush queued [accent]Print[] operations to a message block. lst.printflush = Flush queued [accent]Print[] operations to a message block.
@@ -2264,6 +2298,8 @@ lst.getblock = Get tile data at any location.
lst.setblock = Set tile data at any location. lst.setblock = Set tile data at any location.
lst.spawnunit = Spawn unit at a location. lst.spawnunit = Spawn unit at a location.
lst.applystatus = Apply or clear a status effect from a uniut. lst.applystatus = Apply or clear a status effect from a uniut.
lst.weathersense = Check if a type of weather is active.
lst.weatherset = Set the current state of a type of weather.
lst.spawnwave = Simulate a wave being spawned at a arbitrary location.\nWill not increment the wave counter. lst.spawnwave = Simulate a wave being spawned at a arbitrary location.\nWill not increment the wave counter.
lst.explosion = Create an explosion at a location. lst.explosion = Create an explosion at a location.
lst.setrate = Set processor execution speed in instructions/tick. lst.setrate = Set processor execution speed in instructions/tick.

View File

@@ -604,7 +604,7 @@ filter.option.floor2 = Втори под
filter.option.threshold2 = Втори праг filter.option.threshold2 = Втори праг
filter.option.radius = Радиус filter.option.radius = Радиус
filter.option.percentile = Перцентил filter.option.percentile = Перцентил
locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: @[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable) locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: {0}[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable)
locales.deletelocale = Are you sure you want to delete this locale bundle? locales.deletelocale = Are you sure you want to delete this locale bundle?
locales.applytoall = Apply Changes To All Locales locales.applytoall = Apply Changes To All Locales
locales.addtoother = Add To Other Locales locales.addtoother = Add To Other Locales
@@ -676,6 +676,7 @@ marker.shape.name = Shape
marker.text.name = Text marker.text.name = Text
marker.line.name = Line marker.line.name = Line
marker.quad.name = Quad marker.quad.name = Quad
marker.texture.name = Texture
marker.background = Background marker.background = Background
marker.outline = Outline marker.outline = Outline
objective.research = [accent]Research:\n[]{0}[lightgray]{1} objective.research = [accent]Research:\n[]{0}[lightgray]{1}
@@ -723,7 +724,7 @@ error.any = Неизвестна мрежова грешка.
error.bloom = Неуспешно инициализиране на Сияния.\nВашето устройство може да не поддържа този ефект. error.bloom = Неуспешно инициализиране на Сияния.\nВашето устройство може да не поддържа този ефект.
weather.rain.name = Дъжд weather.rain.name = Дъжд
weather.snow.name = Сняг weather.snowing.name = Сняг
weather.sandstorm.name = Пясъчна буря weather.sandstorm.name = Пясъчна буря
weather.sporestorm.name = Спорова буря weather.sporestorm.name = Спорова буря
weather.fog.name = Мъгла weather.fog.name = Мъгла
@@ -981,17 +982,46 @@ stat.immunities = Immunities
stat.healing = Healing stat.healing = Healing
ability.forcefield = Енергийно Поле ability.forcefield = Енергийно Поле
ability.forcefield.description = Projects a force shield that absorbs bullets
ability.repairfield = Възстановяващо Поле ability.repairfield = Възстановяващо Поле
ability.repairfield.description = Repairs nearby units
ability.statusfield = Подсилващо Поле ability.statusfield = Подсилващо Поле
ability.statusfield.description = Applies a status effect to nearby units
ability.unitspawn = Factory ability.unitspawn = Factory
ability.unitspawn.description = Constructs units
ability.shieldregenfield = Възстановяващо броня Поле ability.shieldregenfield = Възстановяващо броня Поле
ability.shieldregenfield.description = Regenerates shields of nearby units
ability.movelightning = Подвижна светкавица ability.movelightning = Подвижна светкавица
ability.movelightning.description = Releases lightning while moving
ability.armorplate = Armor Plate
ability.armorplate.description = Reduces damage taken while shooting
ability.shieldarc = Shield Arc ability.shieldarc = Shield Arc
ability.shieldarc.description = Projects a force shield in an arc that absorbs bullets
ability.suppressionfield = Regen Suppression Field ability.suppressionfield = Regen Suppression Field
ability.suppressionfield.description = Stops nearby repair buildings
ability.energyfield = Energy Field ability.energyfield = Energy Field
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}% ability.energyfield.description = Zaps nearby enemies
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0} ability.energyfield.healdescription = Zaps nearby enemies and heals allies
ability.regen = Regeneration ability.regen = Regeneration
ability.regen.description = Regenerates own health over time
ability.liquidregen = Liquid Absorption
ability.liquidregen.description = Absorbs liquid to heal itself
ability.spawndeath = Death Spawns
ability.spawndeath.description = Releases units on death
ability.liquidexplode = Death Spillage
ability.liquidexplode.description = Spills liquid on death
ability.stat.firingrate = [stat]{0}/sec[lightgray] firing rate
ability.stat.regen = [stat]{0}[lightgray] health/sec
ability.stat.shield = [stat]{0}[lightgray] shield
ability.stat.repairspeed = [stat]{0}/sec[lightgray] repair speed
ability.stat.slurpheal = [stat]{0}[lightgray] health/liquid unit
ability.stat.cooldown = [stat]{0} sec[lightgray] cooldown
ability.stat.maxtargets = [stat]{0}[lightgray] max targets
ability.stat.sametypehealmultiplier = [stat]{0}%[lightgray] same type repair amount
ability.stat.damagereduction = [stat]{0}%[lightgray] damage reduction
ability.stat.minspeed = [stat]{0} tiles/sec[lightgray] min speed
ability.stat.duration = [stat]{0} sec[lightgray] duration
ability.stat.buildtime = [stat]{0} sec[lightgray] build time
bar.onlycoredeposit = Only Core Depositing Allowed bar.onlycoredeposit = Only Core Depositing Allowed
@@ -1188,15 +1218,16 @@ keybind.unit_stance_hold_fire.name = Unit Stance: Hold Fire
keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target
keybind.unit_stance_patrol.name = Unit Stance: Patrol keybind.unit_stance_patrol.name = Unit Stance: Patrol
keybind.unit_stance_ram.name = Unit Stance: Ram keybind.unit_stance_ram.name = Unit Stance: Ram
keybind.unit_command_move = Unit Command: Move keybind.unit_command_move.name = Unit Command: Move
keybind.unit_command_repair = Unit Command: Repair keybind.unit_command_repair.name = Unit Command: Repair
keybind.unit_command_rebuild = Unit Command: Rebuild keybind.unit_command_rebuild.name = Unit Command: Rebuild
keybind.unit_command_assist = Unit Command: Assist keybind.unit_command_assist.name = Unit Command: Assist
keybind.unit_command_mine = Unit Command: Mine keybind.unit_command_mine.name = Unit Command: Mine
keybind.unit_command_boost = Unit Command: Boost keybind.unit_command_boost.name = Unit Command: Boost
keybind.unit_command_load_units = Unit Command: Load Units keybind.unit_command_load_units.name = Unit Command: Load Units
keybind.unit_command_load_blocks = Unit Command: Load Blocks keybind.unit_command_load_blocks.name = Unit Command: Load Blocks
keybind.unit_command_unload_payload = Unit Command: Unload Payload keybind.unit_command_unload_payload.name = Unit Command: Unload Payload
keybind.unit_command_enter_payload.name = Unit Command: Enter Payload
keybind.rebuild_select.name = Rebuild Region keybind.rebuild_select.name = Rebuild Region
keybind.schematic_select.name = Избери Регион keybind.schematic_select.name = Избери Регион
keybind.schematic_menu.name = Меню със Схеми keybind.schematic_menu.name = Меню със Схеми
@@ -1294,6 +1325,7 @@ rules.unitdamagemultiplier = Множител на Щетите на Едини
rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier
rules.solarmultiplier = Solar Power Multiplier rules.solarmultiplier = Solar Power Multiplier
rules.unitcapvariable = Ядрата Увеличават Максималния Брой Единици rules.unitcapvariable = Ядрата Увеличават Максималния Брой Единици
rules.unitpayloadsexplode = Carried Payloads Explode With The Unit
rules.unitcap = Максимален Брой Единици rules.unitcap = Максимален Брой Единици
rules.limitarea = Limit Map Area rules.limitarea = Limit Map Area
rules.enemycorebuildradius = Радиус на Защитена от Строене Зона Около Ядрата:[lightgray] (полета) rules.enemycorebuildradius = Радиус на Защитена от Строене Зона Около Ядрата:[lightgray] (полета)
@@ -1326,6 +1358,8 @@ rules.weather = Климат
rules.weather.frequency = Честота: rules.weather.frequency = Честота:
rules.weather.always = Винаги rules.weather.always = Винаги
rules.weather.duration = Продължителност: rules.weather.duration = Продължителност:
rules.placerangecheck.info = Prevents players from placing anything near enemy buildings. When trying to place a turret, the range is increased, so the turret will not be able to reach the enemy.
rules.onlydepositcore.info = Prevents units from depositing items into any buildings except cores.
content.item.name = Предмети content.item.name = Предмети
content.liquid.name = Течности content.liquid.name = Течности
@@ -2255,7 +2289,7 @@ unit.emanate.description = Builds structures to defend the Acropolis core. Repai
lst.read = Прочети число от свързано хранилище за памет. lst.read = Прочети число от свързано хранилище за памет.
lst.write = Запиши число в свързано хранилище за памет. lst.write = Запиши число в свързано хранилище за памет.
lst.print = Добави текст в буфера за изписване.\nНе визуализира нищо докато не използвате [accent]Print Flush[]. lst.print = Добави текст в буфера за изписване.\nНе визуализира нищо докато не използвате [accent]Print Flush[].
lst.format = Replace next placeholder ("[accent]@[]") in text buffer with a value.\nExample:\n[accent]print "test @"\nformat "example" lst.format = Replace next placeholder in text buffer with a value.\nDoes not do anything if placeholder pattern is invalid.\nPlaceholder pattern: "{[accent]number 0-9[]}"\nExample:\n[accent]print "test {0}"\nformat "example"
lst.draw = Добавя операция в буфера за изображение.\nНе показва нищо докато не използвате [accent]Draw Flush[]. lst.draw = Добавя операция в буфера за изображение.\nНе показва нищо докато не използвате [accent]Draw Flush[].
lst.drawflush = Изпълнява операции, поискани с команда [accent]Draw[] върху посочен дисплей. lst.drawflush = Изпълнява операции, поискани с команда [accent]Draw[] върху посочен дисплей.
lst.printflush = Извежда текст натрупан с [accent]Print[] върху посочен блок за съобщение. lst.printflush = Извежда текст натрупан с [accent]Print[] върху посочен блок за съобщение.
@@ -2278,6 +2312,8 @@ lst.getblock = Get tile data at any location.
lst.setblock = Set tile data at any location. lst.setblock = Set tile data at any location.
lst.spawnunit = Spawn unit at a location. lst.spawnunit = Spawn unit at a location.
lst.applystatus = Apply or clear a status effect from a uniut. lst.applystatus = Apply or clear a status effect from a uniut.
lst.weathersense = Check if a type of weather is active.
lst.weatherset = Set the current state of a type of weather.
lst.spawnwave = Simulate a wave being spawned at a arbitrary location.\nWill not increment the wave counter. lst.spawnwave = Simulate a wave being spawned at a arbitrary location.\nWill not increment the wave counter.
lst.explosion = Create an explosion at a location. lst.explosion = Create an explosion at a location.
lst.setrate = Set processor execution speed in instructions/tick. lst.setrate = Set processor execution speed in instructions/tick.

View File

@@ -607,7 +607,7 @@ filter.option.floor2 = Terra secundari
filter.option.threshold2 = Llindar secundari filter.option.threshold2 = Llindar secundari
filter.option.radius = Radi filter.option.radius = Radi
filter.option.percentile = Percentil filter.option.percentile = Percentil
locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: @[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable) locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: {0}[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable)
locales.deletelocale = Are you sure you want to delete this locale bundle? locales.deletelocale = Are you sure you want to delete this locale bundle?
locales.applytoall = Apply Changes To All Locales locales.applytoall = Apply Changes To All Locales
locales.addtoother = Add To Other Locales locales.addtoother = Add To Other Locales
@@ -679,6 +679,7 @@ marker.shape.name = Forma
marker.text.name = Text marker.text.name = Text
marker.line.name = Línia marker.line.name = Línia
marker.quad.name = Rectangle marker.quad.name = Rectangle
marker.texture.name = Texture
marker.background = Fons marker.background = Fons
marker.outline = Contorn marker.outline = Contorn
@@ -727,7 +728,7 @@ error.any = Sha produït un error de xarxa desconegut.
error.bloom = No sha pogut inicialitzar lefecte «bloom».\nPotser el dispositiu no admet aquesta funció. error.bloom = No sha pogut inicialitzar lefecte «bloom».\nPotser el dispositiu no admet aquesta funció.
weather.rain.name = Pluja weather.rain.name = Pluja
weather.snow.name = Neu weather.snowing.name = Neu
weather.sandstorm.name = Tempesta de sorra weather.sandstorm.name = Tempesta de sorra
weather.sporestorm.name = Tempesta despores weather.sporestorm.name = Tempesta despores
weather.fog.name = Boira weather.fog.name = Boira
@@ -985,17 +986,46 @@ stat.immunities = Immunitats
stat.healing = Reparador stat.healing = Reparador
ability.forcefield = Camp de força ability.forcefield = Camp de força
ability.forcefield.description = Projects a force shield that absorbs bullets
ability.repairfield = Repara el camp de força ability.repairfield = Repara el camp de força
ability.repairfield.description = Repairs nearby units
ability.statusfield = Estat del camp ability.statusfield = Estat del camp
ability.statusfield.description = Applies a status effect to nearby units
ability.unitspawn = Fàbrica ability.unitspawn = Fàbrica
ability.unitspawn.description = Constructs units
ability.shieldregenfield = Regenerador de camps de força ability.shieldregenfield = Regenerador de camps de força
ability.shieldregenfield.description = Regenerates shields of nearby units
ability.movelightning = Moviment llampec ability.movelightning = Moviment llampec
ability.movelightning.description = Releases lightning while moving
ability.armorplate = Armor Plate
ability.armorplate.description = Reduces damage taken while shooting
ability.shieldarc = Escut de descàrregues ability.shieldarc = Escut de descàrregues
ability.shieldarc.description = Projects a force shield in an arc that absorbs bullets
ability.suppressionfield = Regen Suppression Field ability.suppressionfield = Regen Suppression Field
ability.suppressionfield.description = Stops nearby repair buildings
ability.energyfield = Camp de força ability.energyfield = Camp de força
ability.energyfield.sametypehealmultiplier = [lightgray]Mateix tipus de guarició: [white]{0} % ability.energyfield.description = Zaps nearby enemies
ability.energyfield.maxtargets = [lightgray]Objectius màx.: [white]{0} ability.energyfield.healdescription = Zaps nearby enemies and heals allies
ability.regen = Regeneració ability.regen = Regeneració
ability.regen.description = Regenerates own health over time
ability.liquidregen = Liquid Absorption
ability.liquidregen.description = Absorbs liquid to heal itself
ability.spawndeath = Death Spawns
ability.spawndeath.description = Releases units on death
ability.liquidexplode = Death Spillage
ability.liquidexplode.description = Spills liquid on death
ability.stat.firingrate = [stat]{0}/sec[lightgray] firing rate
ability.stat.regen = [stat]{0}[lightgray] health/sec
ability.stat.shield = [stat]{0}[lightgray] shield
ability.stat.repairspeed = [stat]{0}/sec[lightgray] repair speed
ability.stat.slurpheal = [stat]{0}[lightgray] health/liquid unit
ability.stat.cooldown = [stat]{0} sec[lightgray] cooldown
ability.stat.maxtargets = [stat]{0}[lightgray] max targets
ability.stat.sametypehealmultiplier = [stat]{0}%[lightgray] same type repair amount
ability.stat.damagereduction = [stat]{0}%[lightgray] damage reduction
ability.stat.minspeed = [stat]{0} tiles/sec[lightgray] min speed
ability.stat.duration = [stat]{0} sec[lightgray] duration
ability.stat.buildtime = [stat]{0} sec[lightgray] build time
bar.onlycoredeposit = Només es permet depositar al nucli. bar.onlycoredeposit = Només es permet depositar al nucli.
bar.drilltierreq = Cal una perforadora millor. bar.drilltierreq = Cal una perforadora millor.
@@ -1191,15 +1221,16 @@ keybind.unit_stance_hold_fire.name = Comportament: Mantén el foc
keybind.unit_stance_pursue_target.name = Comportament: Persegueix lobjectiu keybind.unit_stance_pursue_target.name = Comportament: Persegueix lobjectiu
keybind.unit_stance_patrol.name = Comportament: Patrulla keybind.unit_stance_patrol.name = Comportament: Patrulla
keybind.unit_stance_ram.name = Comportament: Senzill keybind.unit_stance_ram.name = Comportament: Senzill
keybind.unit_command_move = Comportament: Mou keybind.unit_command_move.name = Unit Command: Move
keybind.unit_command_repair = Comportament: Repara keybind.unit_command_repair.name = Unit Command: Repair
keybind.unit_command_rebuild = Comportament: Reconstrueix keybind.unit_command_rebuild.name = Unit Command: Rebuild
keybind.unit_command_assist = Comportament: Assisteix keybind.unit_command_assist.name = Unit Command: Assist
keybind.unit_command_mine = Comportament: Extrau keybind.unit_command_mine.name = Unit Command: Mine
keybind.unit_command_boost = Comportament: Sobrevola keybind.unit_command_boost.name = Unit Command: Boost
keybind.unit_command_load_units = Comportament: Carrega unitats keybind.unit_command_load_units.name = Unit Command: Load Units
keybind.unit_command_load_blocks = Comportament: Carrega blocs keybind.unit_command_load_blocks.name = Unit Command: Load Blocks
keybind.unit_command_unload_payload = Comportament: Descarrega keybind.unit_command_unload_payload.name = Unit Command: Unload Payload
keybind.unit_command_enter_payload.name = Unit Command: Enter Payload
keybind.rebuild_select.name = Reconstrueix la regió keybind.rebuild_select.name = Reconstrueix la regió
keybind.schematic_select.name = Selecciona una regió keybind.schematic_select.name = Selecciona una regió
keybind.schematic_menu.name = Menú de plànols keybind.schematic_menu.name = Menú de plànols
@@ -1297,6 +1328,7 @@ rules.unitdamagemultiplier = Multiplicador del dany de les unitats
rules.unitcrashdamagemultiplier = Multiplicador del dany de xoc de les unitats rules.unitcrashdamagemultiplier = Multiplicador del dany de xoc de les unitats
rules.solarmultiplier = Multiplicador de lenergia solar rules.solarmultiplier = Multiplicador de lenergia solar
rules.unitcapvariable = Els nuclis contribueixen al límit dunitats rules.unitcapvariable = Els nuclis contribueixen al límit dunitats
rules.unitpayloadsexplode = Carried Payloads Explode With The Unit
rules.unitcap = Capacitat base dunitats rules.unitcap = Capacitat base dunitats
rules.limitarea = Limita làrea del mapa rules.limitarea = Limita làrea del mapa
rules.enemycorebuildradius = Radi de no construcció del nucli enemic:[lightgray] (caselles) rules.enemycorebuildradius = Radi de no construcció del nucli enemic:[lightgray] (caselles)
@@ -1329,6 +1361,8 @@ rules.weather = Estat meteorològic
rules.weather.frequency = Freqüència: rules.weather.frequency = Freqüència:
rules.weather.always = Sempre rules.weather.always = Sempre
rules.weather.duration = Durada: rules.weather.duration = Durada:
rules.placerangecheck.info = Prevents players from placing anything near enemy buildings. When trying to place a turret, the range is increased, so the turret will not be able to reach the enemy.
rules.onlydepositcore.info = Prevents units from depositing items into any buildings except cores.
content.item.name = Elements content.item.name = Elements
content.liquid.name = Fluids content.liquid.name = Fluids
@@ -2265,7 +2299,7 @@ unit.emanate.description = Construeix estructures per defensar el nucli Acròpol
lst.read = Llegeix un nombre des duna cel·la de memòria connectada. lst.read = Llegeix un nombre des duna cel·la de memòria connectada.
lst.write = Escriu un nombre en una cel·la de memòria connectada. lst.write = Escriu un nombre en una cel·la de memòria connectada.
lst.print = Afegeix un text a la cua dimpressió.\nEl text no es mostrarà fins que sapliqui «[accent]Print Flush[]». lst.print = Afegeix un text a la cua dimpressió.\nEl text no es mostrarà fins que sapliqui «[accent]Print Flush[]».
lst.format = Replace next placeholder ("[accent]@[]") in text buffer with a value.\nExample:\n[accent]print "test @"\nformat "example" lst.format = Replace next placeholder in text buffer with a value.\nDoes not do anything if placeholder pattern is invalid.\nPlaceholder pattern: "{[accent]number 0-9[]}"\nExample:\n[accent]print "test {0}"\nformat "example"
lst.draw = Afegeix una instrucció de dibuix a la cua corresponent.\nEl resultat no es mostrarà fins que sapliqui «[accent]Draw Flush[]». lst.draw = Afegeix una instrucció de dibuix a la cua corresponent.\nEl resultat no es mostrarà fins que sapliqui «[accent]Draw Flush[]».
lst.drawflush = Executa les operacions de la cua de dibuix al monitor lògic. lst.drawflush = Executa les operacions de la cua de dibuix al monitor lògic.
lst.printflush = Executa les operacions de la cua dimpressió al monitor lògic. lst.printflush = Executa les operacions de la cua dimpressió al monitor lògic.
@@ -2288,6 +2322,8 @@ lst.getblock = Obtén les dades dun bloc en qualsevol posició.
lst.setblock = Estableix les dades dun bloc en qualsevol posició. lst.setblock = Estableix les dades dun bloc en qualsevol posició.
lst.spawnunit = Fes aparèixer una unitat en una posició. lst.spawnunit = Fes aparèixer una unitat en una posició.
lst.applystatus = Aplica o esborra un efecte destat duna unitat. lst.applystatus = Aplica o esborra un efecte destat duna unitat.
lst.weathersense = Check if a type of weather is active.
lst.weatherset = Set the current state of a type of weather.
lst.spawnwave = Simula laparició duna onada enemiga en una posició arbitrària.\nEl comptador donades no sincrementarà. lst.spawnwave = Simula laparició duna onada enemiga en una posició arbitrària.\nEl comptador donades no sincrementarà.
lst.explosion = Crea una explosió en una posició. lst.explosion = Crea una explosió en una posició.
lst.setrate = Estableix la velocitat dexecució del processador en instruccions/tic. lst.setrate = Estableix la velocitat dexecució del processador en instruccions/tic.

View File

@@ -606,7 +606,7 @@ filter.option.floor2 = Druhotný povrch
filter.option.threshold2 = Druhotný práh filter.option.threshold2 = Druhotný práh
filter.option.radius = Poloměr filter.option.radius = Poloměr
filter.option.percentile = Percentil filter.option.percentile = Percentil
locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: @[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable) locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: {0}[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable)
locales.deletelocale = Are you sure you want to delete this locale bundle? locales.deletelocale = Are you sure you want to delete this locale bundle?
locales.applytoall = Apply Changes To All Locales locales.applytoall = Apply Changes To All Locales
locales.addtoother = Add To Other Locales locales.addtoother = Add To Other Locales
@@ -678,6 +678,7 @@ marker.shape.name = Tvar
marker.text.name = Text marker.text.name = Text
marker.line.name = Line marker.line.name = Line
marker.quad.name = Quad marker.quad.name = Quad
marker.texture.name = Texture
marker.background = Pozadí marker.background = Pozadí
marker.outline = Outline marker.outline = Outline
objective.research = [accent]Research:\n[]{0}[lightgray]{1} objective.research = [accent]Research:\n[]{0}[lightgray]{1}
@@ -725,7 +726,7 @@ error.any = Neznámá chyba sítě.
error.bloom = Chyba inicializace filtru Bloom.\nTvé zařízení ho nejspíš nepodporuje. error.bloom = Chyba inicializace filtru Bloom.\nTvé zařízení ho nejspíš nepodporuje.
weather.rain.name = Déšť weather.rain.name = Déšť
weather.snow.name = Sníh weather.snowing.name = Sníh
weather.sandstorm.name = Písečná ouře weather.sandstorm.name = Písečná ouře
weather.sporestorm.name = Spórová bouře weather.sporestorm.name = Spórová bouře
weather.fog.name = Mlha weather.fog.name = Mlha
@@ -983,17 +984,46 @@ stat.immunities = Imunity
stat.healing = Léčí se stat.healing = Léčí se
ability.forcefield = Silové pole ability.forcefield = Silové pole
ability.forcefield.description = Projects a force shield that absorbs bullets
ability.repairfield = Opravit pole ability.repairfield = Opravit pole
ability.repairfield.description = Repairs nearby units
ability.statusfield = Stav pole ability.statusfield = Stav pole
ability.statusfield.description = Applies a status effect to nearby units
ability.unitspawn = továrna ability.unitspawn = továrna
ability.unitspawn.description = Constructs units
ability.shieldregenfield = Silově opravné pole ability.shieldregenfield = Silově opravné pole
ability.shieldregenfield.description = Regenerates shields of nearby units
ability.movelightning = Pohybující se blesk ability.movelightning = Pohybující se blesk
ability.movelightning.description = Releases lightning while moving
ability.armorplate = Armor Plate
ability.armorplate.description = Reduces damage taken while shooting
ability.shieldarc = Štítovy Oblouk ability.shieldarc = Štítovy Oblouk
ability.shieldarc.description = Projects a force shield in an arc that absorbs bullets
ability.suppressionfield = Regen Suppression Field ability.suppressionfield = Regen Suppression Field
ability.suppressionfield.description = Stops nearby repair buildings
ability.energyfield = Energetické pole ability.energyfield = Energetické pole
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}% ability.energyfield.description = Zaps nearby enemies
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0} ability.energyfield.healdescription = Zaps nearby enemies and heals allies
ability.regen = Regeneration ability.regen = Regeneration
ability.regen.description = Regenerates own health over time
ability.liquidregen = Liquid Absorption
ability.liquidregen.description = Absorbs liquid to heal itself
ability.spawndeath = Death Spawns
ability.spawndeath.description = Releases units on death
ability.liquidexplode = Death Spillage
ability.liquidexplode.description = Spills liquid on death
ability.stat.firingrate = [stat]{0}/sec[lightgray] firing rate
ability.stat.regen = [stat]{0}[lightgray] health/sec
ability.stat.shield = [stat]{0}[lightgray] shield
ability.stat.repairspeed = [stat]{0}/sec[lightgray] repair speed
ability.stat.slurpheal = [stat]{0}[lightgray] health/liquid unit
ability.stat.cooldown = [stat]{0} sec[lightgray] cooldown
ability.stat.maxtargets = [stat]{0}[lightgray] max targets
ability.stat.sametypehealmultiplier = [stat]{0}%[lightgray] same type repair amount
ability.stat.damagereduction = [stat]{0}%[lightgray] damage reduction
ability.stat.minspeed = [stat]{0} tiles/sec[lightgray] min speed
ability.stat.duration = [stat]{0} sec[lightgray] duration
ability.stat.buildtime = [stat]{0} sec[lightgray] build time
bar.onlycoredeposit = Pouze Ukládání do Jádra je povoleno bar.onlycoredeposit = Pouze Ukládání do Jádra je povoleno
@@ -1190,15 +1220,16 @@ keybind.unit_stance_hold_fire.name = Unit Stance: Hold Fire
keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target
keybind.unit_stance_patrol.name = Unit Stance: Patrol keybind.unit_stance_patrol.name = Unit Stance: Patrol
keybind.unit_stance_ram.name = Unit Stance: Ram keybind.unit_stance_ram.name = Unit Stance: Ram
keybind.unit_command_move = Unit Command: Move keybind.unit_command_move.name = Unit Command: Move
keybind.unit_command_repair = Unit Command: Repair keybind.unit_command_repair.name = Unit Command: Repair
keybind.unit_command_rebuild = Unit Command: Rebuild keybind.unit_command_rebuild.name = Unit Command: Rebuild
keybind.unit_command_assist = Unit Command: Assist keybind.unit_command_assist.name = Unit Command: Assist
keybind.unit_command_mine = Unit Command: Mine keybind.unit_command_mine.name = Unit Command: Mine
keybind.unit_command_boost = Unit Command: Boost keybind.unit_command_boost.name = Unit Command: Boost
keybind.unit_command_load_units = Unit Command: Load Units keybind.unit_command_load_units.name = Unit Command: Load Units
keybind.unit_command_load_blocks = Unit Command: Load Blocks keybind.unit_command_load_blocks.name = Unit Command: Load Blocks
keybind.unit_command_unload_payload = Unit Command: Unload Payload keybind.unit_command_unload_payload.name = Unit Command: Unload Payload
keybind.unit_command_enter_payload.name = Unit Command: Enter Payload
keybind.rebuild_select.name = Přestavět Region keybind.rebuild_select.name = Přestavět Region
keybind.schematic_select.name = Vybrat oblast keybind.schematic_select.name = Vybrat oblast
keybind.schematic_menu.name = Nabídka šablon keybind.schematic_menu.name = Nabídka šablon
@@ -1296,6 +1327,7 @@ rules.unitdamagemultiplier = Násobek poškození jednotkami
rules.unitcrashdamagemultiplier = Násobek poškození při nárazu jednotky rules.unitcrashdamagemultiplier = Násobek poškození při nárazu jednotky
rules.solarmultiplier = Násobek Solární Energie rules.solarmultiplier = Násobek Solární Energie
rules.unitcapvariable = Jádra Zvýšujou Maximum Počtu Jednotek rules.unitcapvariable = Jádra Zvýšujou Maximum Počtu Jednotek
rules.unitpayloadsexplode = Carried Payloads Explode With The Unit
rules.unitcap = Základní Maximum Počtu Jednotek rules.unitcap = Základní Maximum Počtu Jednotek
rules.limitarea = Limit Map Area rules.limitarea = Limit Map Area
rules.enemycorebuildradius = Poloměr, ve kterém se okolo nepřátelského jádra nesmí stavět: [lightgray](dlaždic)[] rules.enemycorebuildradius = Poloměr, ve kterém se okolo nepřátelského jádra nesmí stavět: [lightgray](dlaždic)[]
@@ -1328,6 +1360,8 @@ rules.weather = Počasí
rules.weather.frequency = Četnost: rules.weather.frequency = Četnost:
rules.weather.always = Vždy rules.weather.always = Vždy
rules.weather.duration = Trvání: rules.weather.duration = Trvání:
rules.placerangecheck.info = Prevents players from placing anything near enemy buildings. When trying to place a turret, the range is increased, so the turret will not be able to reach the enemy.
rules.onlydepositcore.info = Prevents units from depositing items into any buildings except cores.
content.item.name = Předměty content.item.name = Předměty
content.liquid.name = Kapaliny content.liquid.name = Kapaliny
@@ -2260,7 +2294,7 @@ unit.emanate.description = Builds structures to defend the Acropolis core. Repai
lst.read = Přečte číslo z připojené paměti. lst.read = Přečte číslo z připojené paměti.
lst.write = Zapíše číslo do připojené paměti. lst.write = Zapíše číslo do připojené paměti.
lst.print = Přídá text do vypisovacího buferu.\nNezobrazí nic dokud [accent]Print Flush[] je použít. lst.print = Přídá text do vypisovacího buferu.\nNezobrazí nic dokud [accent]Print Flush[] je použít.
lst.format = Replace next placeholder ("[accent]@[]") in text buffer with a value.\nExample:\n[accent]print "test @"\nformat "example" lst.format = Replace next placeholder in text buffer with a value.\nDoes not do anything if placeholder pattern is invalid.\nPlaceholder pattern: "{[accent]number 0-9[]}"\nExample:\n[accent]print "test {0}"\nformat "example"
lst.draw = Přídá operaci do vykreslovacího buferu.\nNezobrazí nic dokud [accent]Draw Flush[] je použít. lst.draw = Přídá operaci do vykreslovacího buferu.\nNezobrazí nic dokud [accent]Draw Flush[] je použít.
lst.drawflush = Provede všechny [accent]Draw[] operace na zobrazovač logiky. Pak vyčistí vykreslovací bufer. lst.drawflush = Provede všechny [accent]Draw[] operace na zobrazovač logiky. Pak vyčistí vykreslovací bufer.
lst.printflush = Provede všechny [accent]Print[] operace do zprávy. Pak vyčistí vypisovací bufer. lst.printflush = Provede všechny [accent]Print[] operace do zprávy. Pak vyčistí vypisovací bufer.
@@ -2283,6 +2317,8 @@ lst.getblock = Get tile data at any location.
lst.setblock = Set tile data at any location. lst.setblock = Set tile data at any location.
lst.spawnunit = Spawn unit at a location. lst.spawnunit = Spawn unit at a location.
lst.applystatus = Apply or clear a status effect from a uniut. lst.applystatus = Apply or clear a status effect from a uniut.
lst.weathersense = Check if a type of weather is active.
lst.weatherset = Set the current state of a type of weather.
lst.spawnwave = Simulate a wave being spawned at a arbitrary location.\nWill not increment the wave counter. lst.spawnwave = Simulate a wave being spawned at a arbitrary location.\nWill not increment the wave counter.
lst.explosion = Create an explosion at a location. lst.explosion = Create an explosion at a location.
lst.setrate = Set processor execution speed in instructions/tick. lst.setrate = Set processor execution speed in instructions/tick.

View File

@@ -599,7 +599,7 @@ filter.option.floor2 = Sekundært gulv
filter.option.threshold2 = Sekundær terskel filter.option.threshold2 = Sekundær terskel
filter.option.radius = Radius filter.option.radius = Radius
filter.option.percentile = Percentil filter.option.percentile = Percentil
locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: @[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable) locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: {0}[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable)
locales.deletelocale = Are you sure you want to delete this locale bundle? locales.deletelocale = Are you sure you want to delete this locale bundle?
locales.applytoall = Apply Changes To All Locales locales.applytoall = Apply Changes To All Locales
locales.addtoother = Add To Other Locales locales.addtoother = Add To Other Locales
@@ -671,6 +671,7 @@ marker.shape.name = Shape
marker.text.name = Text marker.text.name = Text
marker.line.name = Line marker.line.name = Line
marker.quad.name = Quad marker.quad.name = Quad
marker.texture.name = Texture
marker.background = Background marker.background = Background
marker.outline = Outline marker.outline = Outline
objective.research = [accent]Research:\n[]{0}[lightgray]{1} objective.research = [accent]Research:\n[]{0}[lightgray]{1}
@@ -717,7 +718,7 @@ error.any = Ukendt netværksfejl.
error.bloom = Kunne ikke etablere bloom-effekt.\nMåske understøtter din enhed den ikke. error.bloom = Kunne ikke etablere bloom-effekt.\nMåske understøtter din enhed den ikke.
weather.rain.name = Regn weather.rain.name = Regn
weather.snow.name = Sne weather.snowing.name = Sne
weather.sandstorm.name = Sandstorm weather.sandstorm.name = Sandstorm
weather.sporestorm.name = Sporestorm weather.sporestorm.name = Sporestorm
weather.fog.name = Tåge weather.fog.name = Tåge
@@ -972,17 +973,46 @@ stat.immunities = Immunities
stat.healing = Healing stat.healing = Healing
ability.forcefield = Kraftfelt ability.forcefield = Kraftfelt
ability.forcefield.description = Projects a force shield that absorbs bullets
ability.repairfield = Reparationsfelt ability.repairfield = Reparationsfelt
ability.repairfield.description = Repairs nearby units
ability.statusfield = Statusfelt ability.statusfield = Statusfelt
ability.statusfield.description = Applies a status effect to nearby units
ability.unitspawn = Fabrik ability.unitspawn = Fabrik
ability.unitspawn.description = Constructs units
ability.shieldregenfield = Skjold-regenereringsfelt ability.shieldregenfield = Skjold-regenereringsfelt
ability.shieldregenfield.description = Regenerates shields of nearby units
ability.movelightning = Movement Lightning ability.movelightning = Movement Lightning
ability.movelightning.description = Releases lightning while moving
ability.armorplate = Armor Plate
ability.armorplate.description = Reduces damage taken while shooting
ability.shieldarc = Shield Arc ability.shieldarc = Shield Arc
ability.shieldarc.description = Projects a force shield in an arc that absorbs bullets
ability.suppressionfield = Regen Suppression Field ability.suppressionfield = Regen Suppression Field
ability.suppressionfield.description = Stops nearby repair buildings
ability.energyfield = Energy Field ability.energyfield = Energy Field
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}% ability.energyfield.description = Zaps nearby enemies
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0} ability.energyfield.healdescription = Zaps nearby enemies and heals allies
ability.regen = Regeneration ability.regen = Regeneration
ability.regen.description = Regenerates own health over time
ability.liquidregen = Liquid Absorption
ability.liquidregen.description = Absorbs liquid to heal itself
ability.spawndeath = Death Spawns
ability.spawndeath.description = Releases units on death
ability.liquidexplode = Death Spillage
ability.liquidexplode.description = Spills liquid on death
ability.stat.firingrate = [stat]{0}/sec[lightgray] firing rate
ability.stat.regen = [stat]{0}[lightgray] health/sec
ability.stat.shield = [stat]{0}[lightgray] shield
ability.stat.repairspeed = [stat]{0}/sec[lightgray] repair speed
ability.stat.slurpheal = [stat]{0}[lightgray] health/liquid unit
ability.stat.cooldown = [stat]{0} sec[lightgray] cooldown
ability.stat.maxtargets = [stat]{0}[lightgray] max targets
ability.stat.sametypehealmultiplier = [stat]{0}%[lightgray] same type repair amount
ability.stat.damagereduction = [stat]{0}%[lightgray] damage reduction
ability.stat.minspeed = [stat]{0} tiles/sec[lightgray] min speed
ability.stat.duration = [stat]{0} sec[lightgray] duration
ability.stat.buildtime = [stat]{0} sec[lightgray] build time
bar.onlycoredeposit = Only Core Depositing Allowed bar.onlycoredeposit = Only Core Depositing Allowed
@@ -1179,15 +1209,16 @@ keybind.unit_stance_hold_fire.name = Unit Stance: Hold Fire
keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target
keybind.unit_stance_patrol.name = Unit Stance: Patrol keybind.unit_stance_patrol.name = Unit Stance: Patrol
keybind.unit_stance_ram.name = Unit Stance: Ram keybind.unit_stance_ram.name = Unit Stance: Ram
keybind.unit_command_move = Unit Command: Move keybind.unit_command_move.name = Unit Command: Move
keybind.unit_command_repair = Unit Command: Repair keybind.unit_command_repair.name = Unit Command: Repair
keybind.unit_command_rebuild = Unit Command: Rebuild keybind.unit_command_rebuild.name = Unit Command: Rebuild
keybind.unit_command_assist = Unit Command: Assist keybind.unit_command_assist.name = Unit Command: Assist
keybind.unit_command_mine = Unit Command: Mine keybind.unit_command_mine.name = Unit Command: Mine
keybind.unit_command_boost = Unit Command: Boost keybind.unit_command_boost.name = Unit Command: Boost
keybind.unit_command_load_units = Unit Command: Load Units keybind.unit_command_load_units.name = Unit Command: Load Units
keybind.unit_command_load_blocks = Unit Command: Load Blocks keybind.unit_command_load_blocks.name = Unit Command: Load Blocks
keybind.unit_command_unload_payload = Unit Command: Unload Payload keybind.unit_command_unload_payload.name = Unit Command: Unload Payload
keybind.unit_command_enter_payload.name = Unit Command: Enter Payload
keybind.rebuild_select.name = Rebuild Region keybind.rebuild_select.name = Rebuild Region
keybind.schematic_select.name = Vælg region keybind.schematic_select.name = Vælg region
keybind.schematic_menu.name = Skabelon-visning keybind.schematic_menu.name = Skabelon-visning
@@ -1285,6 +1316,7 @@ rules.unitdamagemultiplier = Enheds-skade-forstærker
rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier
rules.solarmultiplier = Solar Power Multiplier rules.solarmultiplier = Solar Power Multiplier
rules.unitcapvariable = Cores Contribute To Unit Cap rules.unitcapvariable = Cores Contribute To Unit Cap
rules.unitpayloadsexplode = Carried Payloads Explode With The Unit
rules.unitcap = Base Unit Cap rules.unitcap = Base Unit Cap
rules.limitarea = Limit Map Area rules.limitarea = Limit Map Area
rules.enemycorebuildradius = Radius af fjendtlig kernes ubebyggelig zone:[lightgray] (felter) rules.enemycorebuildradius = Radius af fjendtlig kernes ubebyggelig zone:[lightgray] (felter)
@@ -1317,6 +1349,8 @@ rules.weather = Vejr
rules.weather.frequency = Frekvens: rules.weather.frequency = Frekvens:
rules.weather.always = Always rules.weather.always = Always
rules.weather.duration = Varighed: rules.weather.duration = Varighed:
rules.placerangecheck.info = Prevents players from placing anything near enemy buildings. When trying to place a turret, the range is increased, so the turret will not be able to reach the enemy.
rules.onlydepositcore.info = Prevents units from depositing items into any buildings except cores.
content.item.name = Genstande content.item.name = Genstande
content.liquid.name = Væsker content.liquid.name = Væsker
@@ -2241,7 +2275,7 @@ unit.emanate.description = Builds structures to defend the Acropolis core. Repai
lst.read = Read a number from a linked memory cell. lst.read = Read a number from a linked memory cell.
lst.write = Write a number to a linked memory cell. lst.write = Write a number to a linked memory cell.
lst.print = Add text to the print buffer.\nDoes not display anything until [accent]Print Flush[] is used. lst.print = Add text to the print buffer.\nDoes not display anything until [accent]Print Flush[] is used.
lst.format = Replace next placeholder ("[accent]@[]") in text buffer with a value.\nExample:\n[accent]print "test @"\nformat "example" lst.format = Replace next placeholder in text buffer with a value.\nDoes not do anything if placeholder pattern is invalid.\nPlaceholder pattern: "{[accent]number 0-9[]}"\nExample:\n[accent]print "test {0}"\nformat "example"
lst.draw = Add an operation to the drawing buffer.\nDoes not display anything until [accent]Draw Flush[] is used. lst.draw = Add an operation to the drawing buffer.\nDoes not display anything until [accent]Draw Flush[] is used.
lst.drawflush = Flush queued [accent]Draw[] operations to a display. lst.drawflush = Flush queued [accent]Draw[] operations to a display.
lst.printflush = Flush queued [accent]Print[] operations to a message block. lst.printflush = Flush queued [accent]Print[] operations to a message block.
@@ -2264,6 +2298,8 @@ lst.getblock = Get tile data at any location.
lst.setblock = Set tile data at any location. lst.setblock = Set tile data at any location.
lst.spawnunit = Spawn unit at a location. lst.spawnunit = Spawn unit at a location.
lst.applystatus = Apply or clear a status effect from a uniut. lst.applystatus = Apply or clear a status effect from a uniut.
lst.weathersense = Check if a type of weather is active.
lst.weatherset = Set the current state of a type of weather.
lst.spawnwave = Simulate a wave being spawned at a arbitrary location.\nWill not increment the wave counter. lst.spawnwave = Simulate a wave being spawned at a arbitrary location.\nWill not increment the wave counter.
lst.explosion = Create an explosion at a location. lst.explosion = Create an explosion at a location.
lst.setrate = Set processor execution speed in instructions/tick. lst.setrate = Set processor execution speed in instructions/tick.

View File

@@ -610,7 +610,7 @@ filter.option.floor2 = Sekundärer Boden
filter.option.threshold2 = Sekundärer Grenzwert filter.option.threshold2 = Sekundärer Grenzwert
filter.option.radius = Radius filter.option.radius = Radius
filter.option.percentile = Perzentil filter.option.percentile = Perzentil
locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: @[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable) locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: {0}[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable)
locales.deletelocale = Are you sure you want to delete this locale bundle? locales.deletelocale = Are you sure you want to delete this locale bundle?
locales.applytoall = Apply Changes To All Locales locales.applytoall = Apply Changes To All Locales
locales.addtoother = Add To Other Locales locales.addtoother = Add To Other Locales
@@ -684,6 +684,7 @@ marker.shape.name = Form
marker.text.name = Text marker.text.name = Text
marker.line.name = Line marker.line.name = Line
marker.quad.name = Quad marker.quad.name = Quad
marker.texture.name = Texture
marker.background = Hintergrund marker.background = Hintergrund
marker.outline = Umriss marker.outline = Umriss
@@ -734,7 +735,7 @@ error.any = Unbekannter Netzwerkfehler.
error.bloom = Bloom konnte nicht initialisiert werden.\nEs kann sein, dass dein Gerät es nicht unterstützt. error.bloom = Bloom konnte nicht initialisiert werden.\nEs kann sein, dass dein Gerät es nicht unterstützt.
weather.rain.name = Regen weather.rain.name = Regen
weather.snow.name = Schnee weather.snowing.name = Schnee
weather.sandstorm.name = Sandsturm weather.sandstorm.name = Sandsturm
weather.sporestorm.name = Sporensturm weather.sporestorm.name = Sporensturm
weather.fog.name = Nebel weather.fog.name = Nebel
@@ -994,17 +995,46 @@ stat.immunities = Immunitäten
stat.healing = Heilung stat.healing = Heilung
ability.forcefield = Kraftfeld ability.forcefield = Kraftfeld
ability.forcefield.description = Projects a force shield that absorbs bullets
ability.repairfield = Heilungsfeld ability.repairfield = Heilungsfeld
ability.repairfield.description = Repairs nearby units
ability.statusfield = Statusfeld ability.statusfield = Statusfeld
ability.statusfield.description = Applies a status effect to nearby units
ability.unitspawn = Fabrik ability.unitspawn = Fabrik
ability.unitspawn.description = Constructs units
ability.shieldregenfield = Schildregenerationsfeld ability.shieldregenfield = Schildregenerationsfeld
ability.shieldregenfield.description = Regenerates shields of nearby units
ability.movelightning = Bewegungsblitze ability.movelightning = Bewegungsblitze
ability.movelightning.description = Releases lightning while moving
ability.armorplate = Armor Plate
ability.armorplate.description = Reduces damage taken while shooting
ability.shieldarc = Lichtbogenschild ability.shieldarc = Lichtbogenschild
ability.shieldarc.description = Projects a force shield in an arc that absorbs bullets
ability.suppressionfield = Heilungsunterdrückungsfeld ability.suppressionfield = Heilungsunterdrückungsfeld
ability.suppressionfield.description = Stops nearby repair buildings
ability.energyfield = Energiefeld ability.energyfield = Energiefeld
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}% ability.energyfield.description = Zaps nearby enemies
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0} ability.energyfield.healdescription = Zaps nearby enemies and heals allies
ability.regen = Regeneration ability.regen = Regeneration
ability.regen.description = Regenerates own health over time
ability.liquidregen = Liquid Absorption
ability.liquidregen.description = Absorbs liquid to heal itself
ability.spawndeath = Death Spawns
ability.spawndeath.description = Releases units on death
ability.liquidexplode = Death Spillage
ability.liquidexplode.description = Spills liquid on death
ability.stat.firingrate = [stat]{0}/sec[lightgray] firing rate
ability.stat.regen = [stat]{0}[lightgray] health/sec
ability.stat.shield = [stat]{0}[lightgray] shield
ability.stat.repairspeed = [stat]{0}/sec[lightgray] repair speed
ability.stat.slurpheal = [stat]{0}[lightgray] health/liquid unit
ability.stat.cooldown = [stat]{0} sec[lightgray] cooldown
ability.stat.maxtargets = [stat]{0}[lightgray] max targets
ability.stat.sametypehealmultiplier = [stat]{0}%[lightgray] same type repair amount
ability.stat.damagereduction = [stat]{0}%[lightgray] damage reduction
ability.stat.minspeed = [stat]{0} tiles/sec[lightgray] min speed
ability.stat.duration = [stat]{0} sec[lightgray] duration
ability.stat.buildtime = [stat]{0} sec[lightgray] build time
bar.onlycoredeposit = Nur Kernablage möglich bar.onlycoredeposit = Nur Kernablage möglich
@@ -1201,15 +1231,16 @@ keybind.unit_stance_hold_fire.name = Unit Stance: Hold Fire
keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target
keybind.unit_stance_patrol.name = Unit Stance: Patrol keybind.unit_stance_patrol.name = Unit Stance: Patrol
keybind.unit_stance_ram.name = Unit Stance: Ram keybind.unit_stance_ram.name = Unit Stance: Ram
keybind.unit_command_move = Unit Command: Move keybind.unit_command_move.name = Unit Command: Move
keybind.unit_command_repair = Unit Command: Repair keybind.unit_command_repair.name = Unit Command: Repair
keybind.unit_command_rebuild = Unit Command: Rebuild keybind.unit_command_rebuild.name = Unit Command: Rebuild
keybind.unit_command_assist = Unit Command: Assist keybind.unit_command_assist.name = Unit Command: Assist
keybind.unit_command_mine = Unit Command: Mine keybind.unit_command_mine.name = Unit Command: Mine
keybind.unit_command_boost = Unit Command: Boost keybind.unit_command_boost.name = Unit Command: Boost
keybind.unit_command_load_units = Unit Command: Load Units keybind.unit_command_load_units.name = Unit Command: Load Units
keybind.unit_command_load_blocks = Unit Command: Load Blocks keybind.unit_command_load_blocks.name = Unit Command: Load Blocks
keybind.unit_command_unload_payload = Unit Command: Unload Payload keybind.unit_command_unload_payload.name = Unit Command: Unload Payload
keybind.unit_command_enter_payload.name = Unit Command: Enter Payload
keybind.rebuild_select.name = Region wiederaufbauen keybind.rebuild_select.name = Region wiederaufbauen
keybind.schematic_select.name = Bereich auswählen keybind.schematic_select.name = Bereich auswählen
keybind.schematic_menu.name = Entwurfsmenü keybind.schematic_menu.name = Entwurfsmenü
@@ -1307,6 +1338,7 @@ rules.unitdamagemultiplier = Einheit-Schaden-Multiplikator
rules.unitcrashdamagemultiplier = Einheiten-Absturzschaden-Multiplikator rules.unitcrashdamagemultiplier = Einheiten-Absturzschaden-Multiplikator
rules.solarmultiplier = Solarstrom-Multiplikator rules.solarmultiplier = Solarstrom-Multiplikator
rules.unitcapvariable = Kerne zählen zum Einheiten-Limit dazu rules.unitcapvariable = Kerne zählen zum Einheiten-Limit dazu
rules.unitpayloadsexplode = Carried Payloads Explode With The Unit
rules.unitcap = Einheiten-Limit rules.unitcap = Einheiten-Limit
rules.limitarea = Kartenbereich begrenzen rules.limitarea = Kartenbereich begrenzen
rules.enemycorebuildradius = Bauverbot-Radius durch feindlichen Kern:[lightgray] (Kacheln) rules.enemycorebuildradius = Bauverbot-Radius durch feindlichen Kern:[lightgray] (Kacheln)
@@ -1339,6 +1371,8 @@ rules.weather = Wetter
rules.weather.frequency = Häufigkeit: rules.weather.frequency = Häufigkeit:
rules.weather.always = Immer rules.weather.always = Immer
rules.weather.duration = Dauer: rules.weather.duration = Dauer:
rules.placerangecheck.info = Prevents players from placing anything near enemy buildings. When trying to place a turret, the range is increased, so the turret will not be able to reach the enemy.
rules.onlydepositcore.info = Prevents units from depositing items into any buildings except cores.
content.item.name = Materialien content.item.name = Materialien
content.liquid.name = Flüssigkeiten content.liquid.name = Flüssigkeiten
@@ -2290,7 +2324,7 @@ unit.emanate.description = Baut Blöcke, um den Akropolis-Kern zu beschützen. H
lst.read = Liest einen Wert aus einer verbundenen Speicherzelle. lst.read = Liest einen Wert aus einer verbundenen Speicherzelle.
lst.write = Schreibt eine Zahl in einer verbundene Speicherzelle. lst.write = Schreibt eine Zahl in einer verbundene Speicherzelle.
lst.print = Fügt Text zum Textspeicher hinzu.\nZeigt nichts an, bis [accent]Print Flush[] verwendet wird. lst.print = Fügt Text zum Textspeicher hinzu.\nZeigt nichts an, bis [accent]Print Flush[] verwendet wird.
lst.format = Replace next placeholder ("[accent]@[]") in text buffer with a value.\nExample:\n[accent]print "test @"\nformat "example" lst.format = Replace next placeholder in text buffer with a value.\nDoes not do anything if placeholder pattern is invalid.\nPlaceholder pattern: "{[accent]number 0-9[]}"\nExample:\n[accent]print "test {0}"\nformat "example"
lst.draw = Fügt eine [accent]Draw[]-Aufgabe zum Bildspeicher hinzu.\nZeigt nichts an, bis [accent]Draw Flush[] verwendet wird. lst.draw = Fügt eine [accent]Draw[]-Aufgabe zum Bildspeicher hinzu.\nZeigt nichts an, bis [accent]Draw Flush[] verwendet wird.
lst.drawflush = Druckt [accent]Draw[]-Aufgaben aus dem Bildspeicher auf einen Bildschirm. lst.drawflush = Druckt [accent]Draw[]-Aufgaben aus dem Bildspeicher auf einen Bildschirm.
lst.printflush = Druckt [accent]Print[]-Aufgaben aus dem Textspeicher auf einen Nachrichtenblock. lst.printflush = Druckt [accent]Print[]-Aufgaben aus dem Textspeicher auf einen Nachrichtenblock.
@@ -2313,6 +2347,8 @@ lst.getblock = Lese Tile-Daten von jedem Standort.
lst.setblock = Setze Tile-Daten an jedem Standort. lst.setblock = Setze Tile-Daten an jedem Standort.
lst.spawnunit = Einheit an einem Standort erstellen. lst.spawnunit = Einheit an einem Standort erstellen.
lst.applystatus = Füge einer Einheit einen Effekt hinzu oder entferne ihn. lst.applystatus = Füge einer Einheit einen Effekt hinzu oder entferne ihn.
lst.weathersense = Check if a type of weather is active.
lst.weatherset = Set the current state of a type of weather.
lst.spawnwave = Schickt die nächste Welle. lst.spawnwave = Schickt die nächste Welle.
lst.explosion = Erstellt an einer beliebigen Stelle eine Explosion. lst.explosion = Erstellt an einer beliebigen Stelle eine Explosion.
lst.setrate = Setzt die Ausführungsgeschwindigkeit von Prozessoren in Anweisungen/tick. lst.setrate = Setzt die Ausführungsgeschwindigkeit von Prozessoren in Anweisungen/tick.

View File

@@ -607,7 +607,7 @@ filter.option.floor2 = Terreno secundario
filter.option.threshold2 = Umbral secundario filter.option.threshold2 = Umbral secundario
filter.option.radius = Radio filter.option.radius = Radio
filter.option.percentile = Percentil filter.option.percentile = Percentil
locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: @[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable) locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: {0}[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable)
locales.deletelocale = Are you sure you want to delete this locale bundle? locales.deletelocale = Are you sure you want to delete this locale bundle?
locales.applytoall = Apply Changes To All Locales locales.applytoall = Apply Changes To All Locales
locales.addtoother = Add To Other Locales locales.addtoother = Add To Other Locales
@@ -681,6 +681,7 @@ marker.shape.name = Forma
marker.text.name = Texto marker.text.name = Texto
marker.line.name = Line marker.line.name = Line
marker.quad.name = Quad marker.quad.name = Quad
marker.texture.name = Texture
marker.background = Fondo marker.background = Fondo
marker.outline = Bordes marker.outline = Bordes
@@ -731,7 +732,7 @@ error.any = Error de red desconocido.
error.bloom = Error al cargar el efecto de bloom.\nPuede que tu dispositivo no sea compatible con esta característica. error.bloom = Error al cargar el efecto de bloom.\nPuede que tu dispositivo no sea compatible con esta característica.
weather.rain.name = Lluvia weather.rain.name = Lluvia
weather.snow.name = Nieve weather.snowing.name = Nieve
weather.sandstorm.name = Tormenta de arena weather.sandstorm.name = Tormenta de arena
weather.sporestorm.name = Tormenta de esporas weather.sporestorm.name = Tormenta de esporas
weather.fog.name = Niebla weather.fog.name = Niebla
@@ -991,17 +992,46 @@ stat.immunities = Inmune a
stat.healing = Curación stat.healing = Curación
ability.forcefield = Área de Escudo ability.forcefield = Área de Escudo
ability.forcefield.description = Projects a force shield that absorbs bullets
ability.repairfield = Área de Reparación ability.repairfield = Área de Reparación
ability.repairfield.description = Repairs nearby units
ability.statusfield = Área de Potenciación ability.statusfield = Área de Potenciación
ability.statusfield.description = Applies a status effect to nearby units
ability.unitspawn = Fábrica ability.unitspawn = Fábrica
ability.unitspawn.description = Constructs units
ability.shieldregenfield = Área de Regeneración de Armaduras ability.shieldregenfield = Área de Regeneración de Armaduras
ability.shieldregenfield.description = Regenerates shields of nearby units
ability.movelightning = Movimiento Relámpago ability.movelightning = Movimiento Relámpago
ability.movelightning.description = Releases lightning while moving
ability.armorplate = Armor Plate
ability.armorplate.description = Reduces damage taken while shooting
ability.shieldarc = Sector de Escudo ability.shieldarc = Sector de Escudo
ability.shieldarc.description = Projects a force shield in an arc that absorbs bullets
ability.suppressionfield = Área de Bloqueo de Regeneración ability.suppressionfield = Área de Bloqueo de Regeneración
ability.suppressionfield.description = Stops nearby repair buildings
ability.energyfield = Campo de Energía ability.energyfield = Campo de Energía
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}% ability.energyfield.description = Zaps nearby enemies
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0} ability.energyfield.healdescription = Zaps nearby enemies and heals allies
ability.regen = Regeneration ability.regen = Regeneration
ability.regen.description = Regenerates own health over time
ability.liquidregen = Liquid Absorption
ability.liquidregen.description = Absorbs liquid to heal itself
ability.spawndeath = Death Spawns
ability.spawndeath.description = Releases units on death
ability.liquidexplode = Death Spillage
ability.liquidexplode.description = Spills liquid on death
ability.stat.firingrate = [stat]{0}/sec[lightgray] firing rate
ability.stat.regen = [stat]{0}[lightgray] health/sec
ability.stat.shield = [stat]{0}[lightgray] shield
ability.stat.repairspeed = [stat]{0}/sec[lightgray] repair speed
ability.stat.slurpheal = [stat]{0}[lightgray] health/liquid unit
ability.stat.cooldown = [stat]{0} sec[lightgray] cooldown
ability.stat.maxtargets = [stat]{0}[lightgray] max targets
ability.stat.sametypehealmultiplier = [stat]{0}%[lightgray] same type repair amount
ability.stat.damagereduction = [stat]{0}%[lightgray] damage reduction
ability.stat.minspeed = [stat]{0} tiles/sec[lightgray] min speed
ability.stat.duration = [stat]{0} sec[lightgray] duration
ability.stat.buildtime = [stat]{0} sec[lightgray] build time
bar.onlycoredeposit = Sólo se permite depositar en el núcleo bar.onlycoredeposit = Sólo se permite depositar en el núcleo
bar.drilltierreq = Requiere un taladro mejor bar.drilltierreq = Requiere un taladro mejor
@@ -1197,15 +1227,16 @@ keybind.unit_stance_hold_fire.name = Unit Stance: Hold Fire
keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target
keybind.unit_stance_patrol.name = Unit Stance: Patrol keybind.unit_stance_patrol.name = Unit Stance: Patrol
keybind.unit_stance_ram.name = Unit Stance: Ram keybind.unit_stance_ram.name = Unit Stance: Ram
keybind.unit_command_move = Unit Command: Move keybind.unit_command_move.name = Unit Command: Move
keybind.unit_command_repair = Unit Command: Repair keybind.unit_command_repair.name = Unit Command: Repair
keybind.unit_command_rebuild = Unit Command: Rebuild keybind.unit_command_rebuild.name = Unit Command: Rebuild
keybind.unit_command_assist = Unit Command: Assist keybind.unit_command_assist.name = Unit Command: Assist
keybind.unit_command_mine = Unit Command: Mine keybind.unit_command_mine.name = Unit Command: Mine
keybind.unit_command_boost = Unit Command: Boost keybind.unit_command_boost.name = Unit Command: Boost
keybind.unit_command_load_units = Unit Command: Load Units keybind.unit_command_load_units.name = Unit Command: Load Units
keybind.unit_command_load_blocks = Unit Command: Load Blocks keybind.unit_command_load_blocks.name = Unit Command: Load Blocks
keybind.unit_command_unload_payload = Unit Command: Unload Payload keybind.unit_command_unload_payload.name = Unit Command: Unload Payload
keybind.unit_command_enter_payload.name = Unit Command: Enter Payload
keybind.rebuild_select.name = Reconstruir región keybind.rebuild_select.name = Reconstruir región
keybind.schematic_select.name = Seleccionar región keybind.schematic_select.name = Seleccionar región
keybind.schematic_menu.name = Menú de esquemas keybind.schematic_menu.name = Menú de esquemas
@@ -1303,6 +1334,7 @@ rules.unitdamagemultiplier = Multiplicador de daño de unidades
rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier
rules.solarmultiplier = Multiplicador de energía solar rules.solarmultiplier = Multiplicador de energía solar
rules.unitcapvariable = Las categorías del núcleo alteran el límite máximo de unidades rules.unitcapvariable = Las categorías del núcleo alteran el límite máximo de unidades
rules.unitpayloadsexplode = Carried Payloads Explode With The Unit
rules.unitcap = Límite base de unidades rules.unitcap = Límite base de unidades
rules.limitarea = Limitar área del mapa rules.limitarea = Limitar área del mapa
rules.enemycorebuildradius = Radio de zona anti-construcción del núcleo enemigo:[lightgray] (bloques) rules.enemycorebuildradius = Radio de zona anti-construcción del núcleo enemigo:[lightgray] (bloques)
@@ -1335,6 +1367,8 @@ rules.weather = Clima
rules.weather.frequency = Frecuencia: rules.weather.frequency = Frecuencia:
rules.weather.always = Siempre rules.weather.always = Siempre
rules.weather.duration = Duracion: rules.weather.duration = Duracion:
rules.placerangecheck.info = Prevents players from placing anything near enemy buildings. When trying to place a turret, the range is increased, so the turret will not be able to reach the enemy.
rules.onlydepositcore.info = Prevents units from depositing items into any buildings except cores.
content.item.name = Objetos content.item.name = Objetos
content.liquid.name = Líquidos content.liquid.name = Líquidos
@@ -2283,7 +2317,7 @@ unit.emanate.description = Construye estructuras para defender el núcleo Acropo
lst.read = Lee un número desde una unidad de memoria conectada. lst.read = Lee un número desde una unidad de memoria conectada.
lst.write = Escribe un número en una unidad de memoria conectada. lst.write = Escribe un número en una unidad de memoria conectada.
lst.print = Añade texto a la cola para imprimir texto.\nNo mostrará nada hasta que se use [accent]Print Flush[]. lst.print = Añade texto a la cola para imprimir texto.\nNo mostrará nada hasta que se use [accent]Print Flush[].
lst.format = Replace next placeholder ("[accent]@[]") in text buffer with a value.\nExample:\n[accent]print "test @"\nformat "example" lst.format = Replace next placeholder in text buffer with a value.\nDoes not do anything if placeholder pattern is invalid.\nPlaceholder pattern: "{[accent]number 0-9[]}"\nExample:\n[accent]print "test {0}"\nformat "example"
lst.draw = Añade una operación a la cola para dibujar.\nNo mostrará nada hasta que se use [accent]Draw Flush[]. lst.draw = Añade una operación a la cola para dibujar.\nNo mostrará nada hasta que se use [accent]Draw Flush[].
lst.drawflush = Muestra los datos en cola de operaciones [accent]Draw[] en un monitor gráfico. lst.drawflush = Muestra los datos en cola de operaciones [accent]Draw[] en un monitor gráfico.
lst.printflush = Muestra los datos en cola de operaciones de [accent]Print[] en un bloque de mensaje. lst.printflush = Muestra los datos en cola de operaciones de [accent]Print[] en un bloque de mensaje.
@@ -2306,6 +2340,8 @@ lst.getblock = Obtiene los datos de un bloque en cualquier lugar.
lst.setblock = Cambia los datos de un bloque en cualquier lugar. lst.setblock = Cambia los datos de un bloque en cualquier lugar.
lst.spawnunit = Crea una unidad en una localización. lst.spawnunit = Crea una unidad en una localización.
lst.applystatus = Aplica o elimina un efecto de alteración de estado a una unidad. lst.applystatus = Aplica o elimina un efecto de alteración de estado a una unidad.
lst.weathersense = Check if a type of weather is active.
lst.weatherset = Set the current state of a type of weather.
lst.spawnwave = Simula la aparición de una oleada de enemigos en una localización arbitraria.\nNo incrementará el contador de oleadas. lst.spawnwave = Simula la aparición de una oleada de enemigos en una localización arbitraria.\nNo incrementará el contador de oleadas.
lst.explosion = Crea una explosión en una localización. lst.explosion = Crea una explosión en una localización.
lst.setrate = Establece la velocidad de ejecución de los procesadores lógicos en formato instrucción/tick. lst.setrate = Establece la velocidad de ejecución de los procesadores lógicos en formato instrucción/tick.

View File

@@ -599,7 +599,7 @@ filter.option.floor2 = Teine põrand
filter.option.threshold2 = Teine lävi filter.option.threshold2 = Teine lävi
filter.option.radius = Raadius filter.option.radius = Raadius
filter.option.percentile = Protsentiil filter.option.percentile = Protsentiil
locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: @[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable) locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: {0}[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable)
locales.deletelocale = Are you sure you want to delete this locale bundle? locales.deletelocale = Are you sure you want to delete this locale bundle?
locales.applytoall = Apply Changes To All Locales locales.applytoall = Apply Changes To All Locales
locales.addtoother = Add To Other Locales locales.addtoother = Add To Other Locales
@@ -671,6 +671,7 @@ marker.shape.name = Shape
marker.text.name = Text marker.text.name = Text
marker.line.name = Line marker.line.name = Line
marker.quad.name = Quad marker.quad.name = Quad
marker.texture.name = Texture
marker.background = Background marker.background = Background
marker.outline = Outline marker.outline = Outline
objective.research = [accent]Research:\n[]{0}[lightgray]{1} objective.research = [accent]Research:\n[]{0}[lightgray]{1}
@@ -717,7 +718,7 @@ error.any = Teadmata viga võrgus.
error.bloom = Bloom-efekti lähtestamine ebaõnnestus.\nSinu seade ei pruugi seda efekti toetada. error.bloom = Bloom-efekti lähtestamine ebaõnnestus.\nSinu seade ei pruugi seda efekti toetada.
weather.rain.name = Rain weather.rain.name = Rain
weather.snow.name = Snow weather.snowing.name = Snow
weather.sandstorm.name = Sandstorm weather.sandstorm.name = Sandstorm
weather.sporestorm.name = Sporestorm weather.sporestorm.name = Sporestorm
weather.fog.name = Fog weather.fog.name = Fog
@@ -972,17 +973,46 @@ stat.immunities = Immunities
stat.healing = Healing stat.healing = Healing
ability.forcefield = Force Field ability.forcefield = Force Field
ability.forcefield.description = Projects a force shield that absorbs bullets
ability.repairfield = Repair Field ability.repairfield = Repair Field
ability.repairfield.description = Repairs nearby units
ability.statusfield = Status Field ability.statusfield = Status Field
ability.statusfield.description = Applies a status effect to nearby units
ability.unitspawn = Factory ability.unitspawn = Factory
ability.unitspawn.description = Constructs units
ability.shieldregenfield = Shield Regen Field ability.shieldregenfield = Shield Regen Field
ability.shieldregenfield.description = Regenerates shields of nearby units
ability.movelightning = Movement Lightning ability.movelightning = Movement Lightning
ability.movelightning.description = Releases lightning while moving
ability.armorplate = Armor Plate
ability.armorplate.description = Reduces damage taken while shooting
ability.shieldarc = Shield Arc ability.shieldarc = Shield Arc
ability.shieldarc.description = Projects a force shield in an arc that absorbs bullets
ability.suppressionfield = Regen Suppression Field ability.suppressionfield = Regen Suppression Field
ability.suppressionfield.description = Stops nearby repair buildings
ability.energyfield = Energy Field ability.energyfield = Energy Field
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}% ability.energyfield.description = Zaps nearby enemies
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0} ability.energyfield.healdescription = Zaps nearby enemies and heals allies
ability.regen = Regeneration ability.regen = Regeneration
ability.regen.description = Regenerates own health over time
ability.liquidregen = Liquid Absorption
ability.liquidregen.description = Absorbs liquid to heal itself
ability.spawndeath = Death Spawns
ability.spawndeath.description = Releases units on death
ability.liquidexplode = Death Spillage
ability.liquidexplode.description = Spills liquid on death
ability.stat.firingrate = [stat]{0}/sec[lightgray] firing rate
ability.stat.regen = [stat]{0}[lightgray] health/sec
ability.stat.shield = [stat]{0}[lightgray] shield
ability.stat.repairspeed = [stat]{0}/sec[lightgray] repair speed
ability.stat.slurpheal = [stat]{0}[lightgray] health/liquid unit
ability.stat.cooldown = [stat]{0} sec[lightgray] cooldown
ability.stat.maxtargets = [stat]{0}[lightgray] max targets
ability.stat.sametypehealmultiplier = [stat]{0}%[lightgray] same type repair amount
ability.stat.damagereduction = [stat]{0}%[lightgray] damage reduction
ability.stat.minspeed = [stat]{0} tiles/sec[lightgray] min speed
ability.stat.duration = [stat]{0} sec[lightgray] duration
ability.stat.buildtime = [stat]{0} sec[lightgray] build time
bar.onlycoredeposit = Only Core Depositing Allowed bar.onlycoredeposit = Only Core Depositing Allowed
@@ -1179,15 +1209,16 @@ keybind.unit_stance_hold_fire.name = Unit Stance: Hold Fire
keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target
keybind.unit_stance_patrol.name = Unit Stance: Patrol keybind.unit_stance_patrol.name = Unit Stance: Patrol
keybind.unit_stance_ram.name = Unit Stance: Ram keybind.unit_stance_ram.name = Unit Stance: Ram
keybind.unit_command_move = Unit Command: Move keybind.unit_command_move.name = Unit Command: Move
keybind.unit_command_repair = Unit Command: Repair keybind.unit_command_repair.name = Unit Command: Repair
keybind.unit_command_rebuild = Unit Command: Rebuild keybind.unit_command_rebuild.name = Unit Command: Rebuild
keybind.unit_command_assist = Unit Command: Assist keybind.unit_command_assist.name = Unit Command: Assist
keybind.unit_command_mine = Unit Command: Mine keybind.unit_command_mine.name = Unit Command: Mine
keybind.unit_command_boost = Unit Command: Boost keybind.unit_command_boost.name = Unit Command: Boost
keybind.unit_command_load_units = Unit Command: Load Units keybind.unit_command_load_units.name = Unit Command: Load Units
keybind.unit_command_load_blocks = Unit Command: Load Blocks keybind.unit_command_load_blocks.name = Unit Command: Load Blocks
keybind.unit_command_unload_payload = Unit Command: Unload Payload keybind.unit_command_unload_payload.name = Unit Command: Unload Payload
keybind.unit_command_enter_payload.name = Unit Command: Enter Payload
keybind.rebuild_select.name = Rebuild Region keybind.rebuild_select.name = Rebuild Region
keybind.schematic_select.name = Select Region keybind.schematic_select.name = Select Region
keybind.schematic_menu.name = Schematic Menu keybind.schematic_menu.name = Schematic Menu
@@ -1285,6 +1316,7 @@ rules.unitdamagemultiplier = Väeüksuste hävitusvõime kordaja
rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier
rules.solarmultiplier = Solar Power Multiplier rules.solarmultiplier = Solar Power Multiplier
rules.unitcapvariable = Cores Contribute To Unit Cap rules.unitcapvariable = Cores Contribute To Unit Cap
rules.unitpayloadsexplode = Carried Payloads Explode With The Unit
rules.unitcap = Base Unit Cap rules.unitcap = Base Unit Cap
rules.limitarea = Limit Map Area rules.limitarea = Limit Map Area
rules.enemycorebuildradius = Vaenlaste tuumiku ehitistevaba ala raadius:[lightgray] (ühik) rules.enemycorebuildradius = Vaenlaste tuumiku ehitistevaba ala raadius:[lightgray] (ühik)
@@ -1317,6 +1349,8 @@ rules.weather = Weather
rules.weather.frequency = Frequency: rules.weather.frequency = Frequency:
rules.weather.always = Always rules.weather.always = Always
rules.weather.duration = Duration: rules.weather.duration = Duration:
rules.placerangecheck.info = Prevents players from placing anything near enemy buildings. When trying to place a turret, the range is increased, so the turret will not be able to reach the enemy.
rules.onlydepositcore.info = Prevents units from depositing items into any buildings except cores.
content.item.name = Ressursid content.item.name = Ressursid
content.liquid.name = Vedelikud content.liquid.name = Vedelikud
@@ -2243,7 +2277,7 @@ unit.emanate.description = Builds structures to defend the Acropolis core. Repai
lst.read = Read a number from a linked memory cell. lst.read = Read a number from a linked memory cell.
lst.write = Write a number to a linked memory cell. lst.write = Write a number to a linked memory cell.
lst.print = Add text to the print buffer.\nDoes not display anything until [accent]Print Flush[] is used. lst.print = Add text to the print buffer.\nDoes not display anything until [accent]Print Flush[] is used.
lst.format = Replace next placeholder ("[accent]@[]") in text buffer with a value.\nExample:\n[accent]print "test @"\nformat "example" lst.format = Replace next placeholder in text buffer with a value.\nDoes not do anything if placeholder pattern is invalid.\nPlaceholder pattern: "{[accent]number 0-9[]}"\nExample:\n[accent]print "test {0}"\nformat "example"
lst.draw = Add an operation to the drawing buffer.\nDoes not display anything until [accent]Draw Flush[] is used. lst.draw = Add an operation to the drawing buffer.\nDoes not display anything until [accent]Draw Flush[] is used.
lst.drawflush = Flush queued [accent]Draw[] operations to a display. lst.drawflush = Flush queued [accent]Draw[] operations to a display.
lst.printflush = Flush queued [accent]Print[] operations to a message block. lst.printflush = Flush queued [accent]Print[] operations to a message block.
@@ -2266,6 +2300,8 @@ lst.getblock = Get tile data at any location.
lst.setblock = Set tile data at any location. lst.setblock = Set tile data at any location.
lst.spawnunit = Spawn unit at a location. lst.spawnunit = Spawn unit at a location.
lst.applystatus = Apply or clear a status effect from a uniut. lst.applystatus = Apply or clear a status effect from a uniut.
lst.weathersense = Check if a type of weather is active.
lst.weatherset = Set the current state of a type of weather.
lst.spawnwave = Simulate a wave being spawned at a arbitrary location.\nWill not increment the wave counter. lst.spawnwave = Simulate a wave being spawned at a arbitrary location.\nWill not increment the wave counter.
lst.explosion = Create an explosion at a location. lst.explosion = Create an explosion at a location.
lst.setrate = Set processor execution speed in instructions/tick. lst.setrate = Set processor execution speed in instructions/tick.

View File

@@ -601,7 +601,7 @@ filter.option.floor2 = Bigarren zorua
filter.option.threshold2 = Bigarren atalasea filter.option.threshold2 = Bigarren atalasea
filter.option.radius = Erradioa filter.option.radius = Erradioa
filter.option.percentile = Pertzentila filter.option.percentile = Pertzentila
locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: @[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable) locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: {0}[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable)
locales.deletelocale = Are you sure you want to delete this locale bundle? locales.deletelocale = Are you sure you want to delete this locale bundle?
locales.applytoall = Apply Changes To All Locales locales.applytoall = Apply Changes To All Locales
locales.addtoother = Add To Other Locales locales.addtoother = Add To Other Locales
@@ -673,6 +673,7 @@ marker.shape.name = Shape
marker.text.name = Text marker.text.name = Text
marker.line.name = Line marker.line.name = Line
marker.quad.name = Quad marker.quad.name = Quad
marker.texture.name = Texture
marker.background = Background marker.background = Background
marker.outline = Outline marker.outline = Outline
objective.research = [accent]Research:\n[]{0}[lightgray]{1} objective.research = [accent]Research:\n[]{0}[lightgray]{1}
@@ -719,7 +720,7 @@ error.any = Sareko errore ezezaguna.
error.bloom = Ezin izan da distira hasieratu.\nAgian zure gailuak ez du onartzen. error.bloom = Ezin izan da distira hasieratu.\nAgian zure gailuak ez du onartzen.
weather.rain.name = Rain weather.rain.name = Rain
weather.snow.name = Snow weather.snowing.name = Snow
weather.sandstorm.name = Sandstorm weather.sandstorm.name = Sandstorm
weather.sporestorm.name = Sporestorm weather.sporestorm.name = Sporestorm
weather.fog.name = Fog weather.fog.name = Fog
@@ -974,17 +975,46 @@ stat.immunities = Immunities
stat.healing = Healing stat.healing = Healing
ability.forcefield = Force Field ability.forcefield = Force Field
ability.forcefield.description = Projects a force shield that absorbs bullets
ability.repairfield = Repair Field ability.repairfield = Repair Field
ability.repairfield.description = Repairs nearby units
ability.statusfield = Status Field ability.statusfield = Status Field
ability.statusfield.description = Applies a status effect to nearby units
ability.unitspawn = Factory ability.unitspawn = Factory
ability.unitspawn.description = Constructs units
ability.shieldregenfield = Shield Regen Field ability.shieldregenfield = Shield Regen Field
ability.shieldregenfield.description = Regenerates shields of nearby units
ability.movelightning = Movement Lightning ability.movelightning = Movement Lightning
ability.movelightning.description = Releases lightning while moving
ability.armorplate = Armor Plate
ability.armorplate.description = Reduces damage taken while shooting
ability.shieldarc = Shield Arc ability.shieldarc = Shield Arc
ability.shieldarc.description = Projects a force shield in an arc that absorbs bullets
ability.suppressionfield = Regen Suppression Field ability.suppressionfield = Regen Suppression Field
ability.suppressionfield.description = Stops nearby repair buildings
ability.energyfield = Energy Field ability.energyfield = Energy Field
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}% ability.energyfield.description = Zaps nearby enemies
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0} ability.energyfield.healdescription = Zaps nearby enemies and heals allies
ability.regen = Regeneration ability.regen = Regeneration
ability.regen.description = Regenerates own health over time
ability.liquidregen = Liquid Absorption
ability.liquidregen.description = Absorbs liquid to heal itself
ability.spawndeath = Death Spawns
ability.spawndeath.description = Releases units on death
ability.liquidexplode = Death Spillage
ability.liquidexplode.description = Spills liquid on death
ability.stat.firingrate = [stat]{0}/sec[lightgray] firing rate
ability.stat.regen = [stat]{0}[lightgray] health/sec
ability.stat.shield = [stat]{0}[lightgray] shield
ability.stat.repairspeed = [stat]{0}/sec[lightgray] repair speed
ability.stat.slurpheal = [stat]{0}[lightgray] health/liquid unit
ability.stat.cooldown = [stat]{0} sec[lightgray] cooldown
ability.stat.maxtargets = [stat]{0}[lightgray] max targets
ability.stat.sametypehealmultiplier = [stat]{0}%[lightgray] same type repair amount
ability.stat.damagereduction = [stat]{0}%[lightgray] damage reduction
ability.stat.minspeed = [stat]{0} tiles/sec[lightgray] min speed
ability.stat.duration = [stat]{0} sec[lightgray] duration
ability.stat.buildtime = [stat]{0} sec[lightgray] build time
bar.onlycoredeposit = Only Core Depositing Allowed bar.onlycoredeposit = Only Core Depositing Allowed
@@ -1181,15 +1211,16 @@ keybind.unit_stance_hold_fire.name = Unit Stance: Hold Fire
keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target
keybind.unit_stance_patrol.name = Unit Stance: Patrol keybind.unit_stance_patrol.name = Unit Stance: Patrol
keybind.unit_stance_ram.name = Unit Stance: Ram keybind.unit_stance_ram.name = Unit Stance: Ram
keybind.unit_command_move = Unit Command: Move keybind.unit_command_move.name = Unit Command: Move
keybind.unit_command_repair = Unit Command: Repair keybind.unit_command_repair.name = Unit Command: Repair
keybind.unit_command_rebuild = Unit Command: Rebuild keybind.unit_command_rebuild.name = Unit Command: Rebuild
keybind.unit_command_assist = Unit Command: Assist keybind.unit_command_assist.name = Unit Command: Assist
keybind.unit_command_mine = Unit Command: Mine keybind.unit_command_mine.name = Unit Command: Mine
keybind.unit_command_boost = Unit Command: Boost keybind.unit_command_boost.name = Unit Command: Boost
keybind.unit_command_load_units = Unit Command: Load Units keybind.unit_command_load_units.name = Unit Command: Load Units
keybind.unit_command_load_blocks = Unit Command: Load Blocks keybind.unit_command_load_blocks.name = Unit Command: Load Blocks
keybind.unit_command_unload_payload = Unit Command: Unload Payload keybind.unit_command_unload_payload.name = Unit Command: Unload Payload
keybind.unit_command_enter_payload.name = Unit Command: Enter Payload
keybind.rebuild_select.name = Rebuild Region keybind.rebuild_select.name = Rebuild Region
keybind.schematic_select.name = Hautatu eskualdea keybind.schematic_select.name = Hautatu eskualdea
keybind.schematic_menu.name = Eskema menua keybind.schematic_menu.name = Eskema menua
@@ -1287,6 +1318,7 @@ rules.unitdamagemultiplier = Unitateen kalte-biderkatzailea
rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier
rules.solarmultiplier = Solar Power Multiplier rules.solarmultiplier = Solar Power Multiplier
rules.unitcapvariable = Cores Contribute To Unit Cap rules.unitcapvariable = Cores Contribute To Unit Cap
rules.unitpayloadsexplode = Carried Payloads Explode With The Unit
rules.unitcap = Base Unit Cap rules.unitcap = Base Unit Cap
rules.limitarea = Limit Map Area rules.limitarea = Limit Map Area
rules.enemycorebuildradius = Etsaien muinaren ez-eraikitze erradioa:[lightgray] (lauzak) rules.enemycorebuildradius = Etsaien muinaren ez-eraikitze erradioa:[lightgray] (lauzak)
@@ -1319,6 +1351,8 @@ rules.weather = Weather
rules.weather.frequency = Frequency: rules.weather.frequency = Frequency:
rules.weather.always = Always rules.weather.always = Always
rules.weather.duration = Duration: rules.weather.duration = Duration:
rules.placerangecheck.info = Prevents players from placing anything near enemy buildings. When trying to place a turret, the range is increased, so the turret will not be able to reach the enemy.
rules.onlydepositcore.info = Prevents units from depositing items into any buildings except cores.
content.item.name = Solidoak content.item.name = Solidoak
content.liquid.name = Likidoak content.liquid.name = Likidoak
@@ -2245,7 +2279,7 @@ unit.emanate.description = Builds structures to defend the Acropolis core. Repai
lst.read = Read a number from a linked memory cell. lst.read = Read a number from a linked memory cell.
lst.write = Write a number to a linked memory cell. lst.write = Write a number to a linked memory cell.
lst.print = Add text to the print buffer.\nDoes not display anything until [accent]Print Flush[] is used. lst.print = Add text to the print buffer.\nDoes not display anything until [accent]Print Flush[] is used.
lst.format = Replace next placeholder ("[accent]@[]") in text buffer with a value.\nExample:\n[accent]print "test @"\nformat "example" lst.format = Replace next placeholder in text buffer with a value.\nDoes not do anything if placeholder pattern is invalid.\nPlaceholder pattern: "{[accent]number 0-9[]}"\nExample:\n[accent]print "test {0}"\nformat "example"
lst.draw = Add an operation to the drawing buffer.\nDoes not display anything until [accent]Draw Flush[] is used. lst.draw = Add an operation to the drawing buffer.\nDoes not display anything until [accent]Draw Flush[] is used.
lst.drawflush = Flush queued [accent]Draw[] operations to a display. lst.drawflush = Flush queued [accent]Draw[] operations to a display.
lst.printflush = Flush queued [accent]Print[] operations to a message block. lst.printflush = Flush queued [accent]Print[] operations to a message block.
@@ -2268,6 +2302,8 @@ lst.getblock = Get tile data at any location.
lst.setblock = Set tile data at any location. lst.setblock = Set tile data at any location.
lst.spawnunit = Spawn unit at a location. lst.spawnunit = Spawn unit at a location.
lst.applystatus = Apply or clear a status effect from a uniut. lst.applystatus = Apply or clear a status effect from a uniut.
lst.weathersense = Check if a type of weather is active.
lst.weatherset = Set the current state of a type of weather.
lst.spawnwave = Simulate a wave being spawned at a arbitrary location.\nWill not increment the wave counter. lst.spawnwave = Simulate a wave being spawned at a arbitrary location.\nWill not increment the wave counter.
lst.explosion = Create an explosion at a location. lst.explosion = Create an explosion at a location.
lst.setrate = Set processor execution speed in instructions/tick. lst.setrate = Set processor execution speed in instructions/tick.

View File

@@ -599,7 +599,7 @@ filter.option.floor2 = Toinen lattia
filter.option.threshold2 = Toissijainen raja-arvo filter.option.threshold2 = Toissijainen raja-arvo
filter.option.radius = Säde filter.option.radius = Säde
filter.option.percentile = Prosentti filter.option.percentile = Prosentti
locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: @[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable) locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: {0}[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable)
locales.deletelocale = Are you sure you want to delete this locale bundle? locales.deletelocale = Are you sure you want to delete this locale bundle?
locales.applytoall = Apply Changes To All Locales locales.applytoall = Apply Changes To All Locales
locales.addtoother = Add To Other Locales locales.addtoother = Add To Other Locales
@@ -671,6 +671,7 @@ marker.shape.name = Shape
marker.text.name = Teksti marker.text.name = Teksti
marker.line.name = Line marker.line.name = Line
marker.quad.name = Quad marker.quad.name = Quad
marker.texture.name = Texture
marker.background = Background marker.background = Background
marker.outline = Outline marker.outline = Outline
objective.research = [accent]Tutki:\n[]{0}[lightgray]{1} objective.research = [accent]Tutki:\n[]{0}[lightgray]{1}
@@ -717,7 +718,7 @@ error.any = Tuntematon verkon virhe.
error.bloom = Bloomin initialisointi epäonnistui.\nLaitteesi ei ehkä tue sitä. error.bloom = Bloomin initialisointi epäonnistui.\nLaitteesi ei ehkä tue sitä.
weather.rain.name = Sade weather.rain.name = Sade
weather.snow.name = Lumi weather.snowing.name = Lumi
weather.sandstorm.name = Hiekkamyrsky weather.sandstorm.name = Hiekkamyrsky
weather.sporestorm.name = Sienimyräkkä weather.sporestorm.name = Sienimyräkkä
weather.fog.name = Sumu weather.fog.name = Sumu
@@ -971,17 +972,46 @@ stat.immunities = Immuuni
stat.healing = Parantuu stat.healing = Parantuu
ability.forcefield = Voimakenttä ability.forcefield = Voimakenttä
ability.forcefield.description = Projects a force shield that absorbs bullets
ability.repairfield = Korjauskenttä ability.repairfield = Korjauskenttä
ability.repairfield.description = Repairs nearby units
ability.statusfield = Statuskenttä ability.statusfield = Statuskenttä
ability.statusfield.description = Applies a status effect to nearby units
ability.unitspawn = Tehdas ability.unitspawn = Tehdas
ability.unitspawn.description = Constructs units
ability.shieldregenfield = Kilvenvahvistuskenttä ability.shieldregenfield = Kilvenvahvistuskenttä
ability.shieldregenfield.description = Regenerates shields of nearby units
ability.movelightning = Salamointi liikkuessa ability.movelightning = Salamointi liikkuessa
ability.movelightning.description = Releases lightning while moving
ability.armorplate = Armor Plate
ability.armorplate.description = Reduces damage taken while shooting
ability.shieldarc = Kilpikaari ability.shieldarc = Kilpikaari
ability.shieldarc.description = Projects a force shield in an arc that absorbs bullets
ability.suppressionfield = Regen Suppression Field ability.suppressionfield = Regen Suppression Field
ability.suppressionfield.description = Stops nearby repair buildings
ability.energyfield = Energiakenttä ability.energyfield = Energiakenttä
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}% ability.energyfield.description = Zaps nearby enemies
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0} ability.energyfield.healdescription = Zaps nearby enemies and heals allies
ability.regen = Regeneration ability.regen = Regeneration
ability.regen.description = Regenerates own health over time
ability.liquidregen = Liquid Absorption
ability.liquidregen.description = Absorbs liquid to heal itself
ability.spawndeath = Death Spawns
ability.spawndeath.description = Releases units on death
ability.liquidexplode = Death Spillage
ability.liquidexplode.description = Spills liquid on death
ability.stat.firingrate = [stat]{0}/sec[lightgray] firing rate
ability.stat.regen = [stat]{0}[lightgray] health/sec
ability.stat.shield = [stat]{0}[lightgray] shield
ability.stat.repairspeed = [stat]{0}/sec[lightgray] repair speed
ability.stat.slurpheal = [stat]{0}[lightgray] health/liquid unit
ability.stat.cooldown = [stat]{0} sec[lightgray] cooldown
ability.stat.maxtargets = [stat]{0}[lightgray] max targets
ability.stat.sametypehealmultiplier = [stat]{0}%[lightgray] same type repair amount
ability.stat.damagereduction = [stat]{0}%[lightgray] damage reduction
ability.stat.minspeed = [stat]{0} tiles/sec[lightgray] min speed
ability.stat.duration = [stat]{0} sec[lightgray] duration
ability.stat.buildtime = [stat]{0} sec[lightgray] build time
bar.onlycoredeposit = Sijoittaminen sallittua vain ytimeen bar.onlycoredeposit = Sijoittaminen sallittua vain ytimeen
@@ -1178,15 +1208,16 @@ keybind.unit_stance_hold_fire.name = Unit Stance: Hold Fire
keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target
keybind.unit_stance_patrol.name = Unit Stance: Patrol keybind.unit_stance_patrol.name = Unit Stance: Patrol
keybind.unit_stance_ram.name = Unit Stance: Ram keybind.unit_stance_ram.name = Unit Stance: Ram
keybind.unit_command_move = Unit Command: Move keybind.unit_command_move.name = Unit Command: Move
keybind.unit_command_repair = Unit Command: Repair keybind.unit_command_repair.name = Unit Command: Repair
keybind.unit_command_rebuild = Unit Command: Rebuild keybind.unit_command_rebuild.name = Unit Command: Rebuild
keybind.unit_command_assist = Unit Command: Assist keybind.unit_command_assist.name = Unit Command: Assist
keybind.unit_command_mine = Unit Command: Mine keybind.unit_command_mine.name = Unit Command: Mine
keybind.unit_command_boost = Unit Command: Boost keybind.unit_command_boost.name = Unit Command: Boost
keybind.unit_command_load_units = Unit Command: Load Units keybind.unit_command_load_units.name = Unit Command: Load Units
keybind.unit_command_load_blocks = Unit Command: Load Blocks keybind.unit_command_load_blocks.name = Unit Command: Load Blocks
keybind.unit_command_unload_payload = Unit Command: Unload Payload keybind.unit_command_unload_payload.name = Unit Command: Unload Payload
keybind.unit_command_enter_payload.name = Unit Command: Enter Payload
keybind.rebuild_select.name = Rebuild Region keybind.rebuild_select.name = Rebuild Region
keybind.schematic_select.name = Valitse alue keybind.schematic_select.name = Valitse alue
keybind.schematic_menu.name = Kaavio Valikko keybind.schematic_menu.name = Kaavio Valikko
@@ -1284,6 +1315,7 @@ rules.unitdamagemultiplier = Yksikköjen vahinkokerroin
rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier
rules.solarmultiplier = Aurinkovoimakerroin rules.solarmultiplier = Aurinkovoimakerroin
rules.unitcapvariable = Ytimet vaikuttavat yksikkörajaan rules.unitcapvariable = Ytimet vaikuttavat yksikkörajaan
rules.unitpayloadsexplode = Carried Payloads Explode With The Unit
rules.unitcap = Perusyksikköraja rules.unitcap = Perusyksikköraja
rules.limitarea = Rajoita kartan aluetta rules.limitarea = Rajoita kartan aluetta
rules.enemycorebuildradius = Vihollisytimen rakennuksenestosäde:[lightgray] (laattoina) rules.enemycorebuildradius = Vihollisytimen rakennuksenestosäde:[lightgray] (laattoina)
@@ -1316,6 +1348,8 @@ rules.weather = Sää
rules.weather.frequency = Tiheys: rules.weather.frequency = Tiheys:
rules.weather.always = Aina rules.weather.always = Aina
rules.weather.duration = Kesto: rules.weather.duration = Kesto:
rules.placerangecheck.info = Prevents players from placing anything near enemy buildings. When trying to place a turret, the range is increased, so the turret will not be able to reach the enemy.
rules.onlydepositcore.info = Prevents units from depositing items into any buildings except cores.
content.item.name = Tavarat content.item.name = Tavarat
content.liquid.name = Nesteet content.liquid.name = Nesteet
@@ -2246,7 +2280,7 @@ unit.emanate.description = Builds structures to defend the Acropolis core. Repai
lst.read = Lue numero yhdistetystä muistisolusta. lst.read = Lue numero yhdistetystä muistisolusta.
lst.write = Kirjoita numero yhdistettyyn muistisoluun. lst.write = Kirjoita numero yhdistettyyn muistisoluun.
lst.print = Lisää tekstiä tekstipuskuriin.\nEi näytä mitään, kunnes [accent]Painosyötettä[] käytetään. lst.print = Lisää tekstiä tekstipuskuriin.\nEi näytä mitään, kunnes [accent]Painosyötettä[] käytetään.
lst.format = Replace next placeholder ("[accent]@[]") in text buffer with a value.\nExample:\n[accent]print "test @"\nformat "example" lst.format = Replace next placeholder in text buffer with a value.\nDoes not do anything if placeholder pattern is invalid.\nPlaceholder pattern: "{[accent]number 0-9[]}"\nExample:\n[accent]print "test {0}"\nformat "example"
lst.draw = Lisää operaation piirtopuskuriin.\nEi näytä mitään, kunnes [accent]Piirtosyötettä[] käytetään. lst.draw = Lisää operaation piirtopuskuriin.\nEi näytä mitään, kunnes [accent]Piirtosyötettä[] käytetään.
lst.drawflush = Syöttää jonottavat [accent]Piirto[]-operaatiot näyttöön. lst.drawflush = Syöttää jonottavat [accent]Piirto[]-operaatiot näyttöön.
lst.printflush = Syöttää jonottavat [accent]Paino[]-operaatiot viestipalikkaan. lst.printflush = Syöttää jonottavat [accent]Paino[]-operaatiot viestipalikkaan.
@@ -2269,6 +2303,8 @@ lst.getblock = Selvitä laattadata missä tahansa sijainnissa.
lst.setblock = Aseta laattadata missä tahansa sijainnissa. lst.setblock = Aseta laattadata missä tahansa sijainnissa.
lst.spawnunit = Luo joukko tietyssä sijainnissa. lst.spawnunit = Luo joukko tietyssä sijainnissa.
lst.applystatus = Lisää tai poista statusefekti yksiköltä. lst.applystatus = Lisää tai poista statusefekti yksiköltä.
lst.weathersense = Check if a type of weather is active.
lst.weatherset = Set the current state of a type of weather.
lst.spawnwave = Simuloi tason syntymistä mielivaltaisessa sijainnissa.\nEi vaikuta tasolaskuriin. lst.spawnwave = Simuloi tason syntymistä mielivaltaisessa sijainnissa.\nEi vaikuta tasolaskuriin.
lst.explosion = Luo räjähdys tietyssä sijainnissa. lst.explosion = Luo räjähdys tietyssä sijainnissa.
lst.setrate = Aseta prosessorin suoritusnopeus ohjeessa/sekunti. lst.setrate = Aseta prosessorin suoritusnopeus ohjeessa/sekunti.

View File

@@ -599,7 +599,7 @@ filter.option.floor2 = Secondary Floor
filter.option.threshold2 = Secondary Threshold filter.option.threshold2 = Secondary Threshold
filter.option.radius = Radius filter.option.radius = Radius
filter.option.percentile = Percentile filter.option.percentile = Percentile
locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: @[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable) locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: {0}[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable)
locales.deletelocale = Are you sure you want to delete this locale bundle? locales.deletelocale = Are you sure you want to delete this locale bundle?
locales.applytoall = Apply Changes To All Locales locales.applytoall = Apply Changes To All Locales
locales.addtoother = Add To Other Locales locales.addtoother = Add To Other Locales
@@ -671,6 +671,7 @@ marker.shape.name = Shape
marker.text.name = Text marker.text.name = Text
marker.line.name = Line marker.line.name = Line
marker.quad.name = Quad marker.quad.name = Quad
marker.texture.name = Texture
marker.background = Background marker.background = Background
marker.outline = Outline marker.outline = Outline
objective.research = [accent]Research:\n[]{0}[lightgray]{1} objective.research = [accent]Research:\n[]{0}[lightgray]{1}
@@ -717,7 +718,7 @@ error.any = Unknown network error.
error.bloom = Nabigong simulan ang bloom.\nMaaaring hindi ito sinusuportahan ng iyong device. error.bloom = Nabigong simulan ang bloom.\nMaaaring hindi ito sinusuportahan ng iyong device.
weather.rain.name = Rain weather.rain.name = Rain
weather.snow.name = Snow weather.snowing.name = Snow
weather.sandstorm.name = Sandstorm weather.sandstorm.name = Sandstorm
weather.sporestorm.name = Sporestorm weather.sporestorm.name = Sporestorm
weather.fog.name = Fog weather.fog.name = Fog
@@ -971,17 +972,46 @@ stat.immunities = Immunities
stat.healing = Healing stat.healing = Healing
ability.forcefield = Force Field ability.forcefield = Force Field
ability.forcefield.description = Projects a force shield that absorbs bullets
ability.repairfield = Repair Field ability.repairfield = Repair Field
ability.repairfield.description = Repairs nearby units
ability.statusfield = Status Field ability.statusfield = Status Field
ability.statusfield.description = Applies a status effect to nearby units
ability.unitspawn = Factory ability.unitspawn = Factory
ability.unitspawn.description = Constructs units
ability.shieldregenfield = Shield Regen Field ability.shieldregenfield = Shield Regen Field
ability.shieldregenfield.description = Regenerates shields of nearby units
ability.movelightning = Movement Lightning ability.movelightning = Movement Lightning
ability.movelightning.description = Releases lightning while moving
ability.armorplate = Armor Plate
ability.armorplate.description = Reduces damage taken while shooting
ability.shieldarc = Shield Arc ability.shieldarc = Shield Arc
ability.shieldarc.description = Projects a force shield in an arc that absorbs bullets
ability.suppressionfield = Regen Suppression Field ability.suppressionfield = Regen Suppression Field
ability.suppressionfield.description = Stops nearby repair buildings
ability.energyfield = Energy Field ability.energyfield = Energy Field
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}% ability.energyfield.description = Zaps nearby enemies
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0} ability.energyfield.healdescription = Zaps nearby enemies and heals allies
ability.regen = Regeneration ability.regen = Regeneration
ability.regen.description = Regenerates own health over time
ability.liquidregen = Liquid Absorption
ability.liquidregen.description = Absorbs liquid to heal itself
ability.spawndeath = Death Spawns
ability.spawndeath.description = Releases units on death
ability.liquidexplode = Death Spillage
ability.liquidexplode.description = Spills liquid on death
ability.stat.firingrate = [stat]{0}/sec[lightgray] firing rate
ability.stat.regen = [stat]{0}[lightgray] health/sec
ability.stat.shield = [stat]{0}[lightgray] shield
ability.stat.repairspeed = [stat]{0}/sec[lightgray] repair speed
ability.stat.slurpheal = [stat]{0}[lightgray] health/liquid unit
ability.stat.cooldown = [stat]{0} sec[lightgray] cooldown
ability.stat.maxtargets = [stat]{0}[lightgray] max targets
ability.stat.sametypehealmultiplier = [stat]{0}%[lightgray] same type repair amount
ability.stat.damagereduction = [stat]{0}%[lightgray] damage reduction
ability.stat.minspeed = [stat]{0} tiles/sec[lightgray] min speed
ability.stat.duration = [stat]{0} sec[lightgray] duration
ability.stat.buildtime = [stat]{0} sec[lightgray] build time
bar.onlycoredeposit = Only Core Depositing Allowed bar.onlycoredeposit = Only Core Depositing Allowed
@@ -1178,15 +1208,16 @@ keybind.unit_stance_hold_fire.name = Unit Stance: Hold Fire
keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target
keybind.unit_stance_patrol.name = Unit Stance: Patrol keybind.unit_stance_patrol.name = Unit Stance: Patrol
keybind.unit_stance_ram.name = Unit Stance: Ram keybind.unit_stance_ram.name = Unit Stance: Ram
keybind.unit_command_move = Unit Command: Move keybind.unit_command_move.name = Unit Command: Move
keybind.unit_command_repair = Unit Command: Repair keybind.unit_command_repair.name = Unit Command: Repair
keybind.unit_command_rebuild = Unit Command: Rebuild keybind.unit_command_rebuild.name = Unit Command: Rebuild
keybind.unit_command_assist = Unit Command: Assist keybind.unit_command_assist.name = Unit Command: Assist
keybind.unit_command_mine = Unit Command: Mine keybind.unit_command_mine.name = Unit Command: Mine
keybind.unit_command_boost = Unit Command: Boost keybind.unit_command_boost.name = Unit Command: Boost
keybind.unit_command_load_units = Unit Command: Load Units keybind.unit_command_load_units.name = Unit Command: Load Units
keybind.unit_command_load_blocks = Unit Command: Load Blocks keybind.unit_command_load_blocks.name = Unit Command: Load Blocks
keybind.unit_command_unload_payload = Unit Command: Unload Payload keybind.unit_command_unload_payload.name = Unit Command: Unload Payload
keybind.unit_command_enter_payload.name = Unit Command: Enter Payload
keybind.rebuild_select.name = Rebuild Region keybind.rebuild_select.name = Rebuild Region
keybind.schematic_select.name = Select Region keybind.schematic_select.name = Select Region
keybind.schematic_menu.name = Schematic Menu keybind.schematic_menu.name = Schematic Menu
@@ -1284,6 +1315,7 @@ rules.unitdamagemultiplier = Unit Damage Multiplier
rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier
rules.solarmultiplier = Solar Power Multiplier rules.solarmultiplier = Solar Power Multiplier
rules.unitcapvariable = Cores Contribute To Unit Cap rules.unitcapvariable = Cores Contribute To Unit Cap
rules.unitpayloadsexplode = Carried Payloads Explode With The Unit
rules.unitcap = Base Unit Cap rules.unitcap = Base Unit Cap
rules.limitarea = Limit Map Area rules.limitarea = Limit Map Area
rules.enemycorebuildradius = Enemy Core No-Build Radius:[lightgray] (tiles) rules.enemycorebuildradius = Enemy Core No-Build Radius:[lightgray] (tiles)
@@ -1316,6 +1348,8 @@ rules.weather = Weather
rules.weather.frequency = Frequency: rules.weather.frequency = Frequency:
rules.weather.always = Always rules.weather.always = Always
rules.weather.duration = Duration: rules.weather.duration = Duration:
rules.placerangecheck.info = Prevents players from placing anything near enemy buildings. When trying to place a turret, the range is increased, so the turret will not be able to reach the enemy.
rules.onlydepositcore.info = Prevents units from depositing items into any buildings except cores.
content.item.name = Items content.item.name = Items
content.liquid.name = Liquids content.liquid.name = Liquids
@@ -2242,7 +2276,7 @@ unit.emanate.description = Builds structures to defend the Acropolis core. Repai
lst.read = Read a number from a linked memory cell. lst.read = Read a number from a linked memory cell.
lst.write = Write a number to a linked memory cell. lst.write = Write a number to a linked memory cell.
lst.print = Add text to the print buffer.\nDoes not display anything until [accent]Print Flush[] is used. lst.print = Add text to the print buffer.\nDoes not display anything until [accent]Print Flush[] is used.
lst.format = Replace next placeholder ("[accent]@[]") in text buffer with a value.\nExample:\n[accent]print "test @"\nformat "example" lst.format = Replace next placeholder in text buffer with a value.\nDoes not do anything if placeholder pattern is invalid.\nPlaceholder pattern: "{[accent]number 0-9[]}"\nExample:\n[accent]print "test {0}"\nformat "example"
lst.draw = Add an operation to the drawing buffer.\nDoes not display anything until [accent]Draw Flush[] is used. lst.draw = Add an operation to the drawing buffer.\nDoes not display anything until [accent]Draw Flush[] is used.
lst.drawflush = Flush queued [accent]Draw[] operations to a display. lst.drawflush = Flush queued [accent]Draw[] operations to a display.
lst.printflush = Flush queued [accent]Print[] operations to a message block. lst.printflush = Flush queued [accent]Print[] operations to a message block.
@@ -2265,6 +2299,8 @@ lst.getblock = Get tile data at any location.
lst.setblock = Set tile data at any location. lst.setblock = Set tile data at any location.
lst.spawnunit = Spawn unit at a location. lst.spawnunit = Spawn unit at a location.
lst.applystatus = Apply or clear a status effect from a uniut. lst.applystatus = Apply or clear a status effect from a uniut.
lst.weathersense = Check if a type of weather is active.
lst.weatherset = Set the current state of a type of weather.
lst.spawnwave = Simulate a wave being spawned at a arbitrary location.\nWill not increment the wave counter. lst.spawnwave = Simulate a wave being spawned at a arbitrary location.\nWill not increment the wave counter.
lst.explosion = Create an explosion at a location. lst.explosion = Create an explosion at a location.
lst.setrate = Set processor execution speed in instructions/tick. lst.setrate = Set processor execution speed in instructions/tick.

View File

@@ -613,7 +613,7 @@ filter.option.floor2 = Sol secondaire
filter.option.threshold2 = Seuil secondaire filter.option.threshold2 = Seuil secondaire
filter.option.radius = Rayon filter.option.radius = Rayon
filter.option.percentile = Pourcentage filter.option.percentile = Pourcentage
locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: @[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable) locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: {0}[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable)
locales.deletelocale = Are you sure you want to delete this locale bundle? locales.deletelocale = Are you sure you want to delete this locale bundle?
locales.applytoall = Apply Changes To All Locales locales.applytoall = Apply Changes To All Locales
locales.addtoother = Add To Other Locales locales.addtoother = Add To Other Locales
@@ -687,6 +687,7 @@ marker.shape.name = Forme
marker.text.name = Texte marker.text.name = Texte
marker.line.name = Ligne marker.line.name = Ligne
marker.quad.name = Quad marker.quad.name = Quad
marker.texture.name = Texture
marker.background = Fond marker.background = Fond
marker.outline = Contour marker.outline = Contour
@@ -737,7 +738,7 @@ error.any = Erreur de réseau inconnue.
error.bloom = Échec de l'initialisation du flou lumineux.\nIl se peut que votre appareil ne le prenne pas en charge. error.bloom = Échec de l'initialisation du flou lumineux.\nIl se peut que votre appareil ne le prenne pas en charge.
weather.rain.name = Pluie weather.rain.name = Pluie
weather.snow.name = Neige weather.snowing.name = Neige
weather.sandstorm.name = Tempête de sable weather.sandstorm.name = Tempête de sable
weather.sporestorm.name = Tempête de spores weather.sporestorm.name = Tempête de spores
weather.fog.name = Brouillard weather.fog.name = Brouillard
@@ -997,17 +998,46 @@ stat.immunities = Immunités
stat.healing = Guérison stat.healing = Guérison
ability.forcefield = Champ de Force ability.forcefield = Champ de Force
ability.forcefield.description = Projects a force shield that absorbs bullets
ability.repairfield = Champ de Réparation ability.repairfield = Champ de Réparation
ability.repairfield.description = Repairs nearby units
ability.statusfield = Champ d'Amélioration ability.statusfield = Champ d'Amélioration
ability.statusfield.description = Applies a status effect to nearby units
ability.unitspawn = Usine ability.unitspawn = Usine
ability.unitspawn.description = Constructs units
ability.shieldregenfield = Champ de régénération de bouclier ability.shieldregenfield = Champ de régénération de bouclier
ability.shieldregenfield.description = Regenerates shields of nearby units
ability.movelightning = Déplacement éclair ability.movelightning = Déplacement éclair
ability.movelightning.description = Releases lightning while moving
ability.armorplate = Armor Plate
ability.armorplate.description = Reduces damage taken while shooting
ability.shieldarc = Arc de Bouclier ability.shieldarc = Arc de Bouclier
ability.shieldarc.description = Projects a force shield in an arc that absorbs bullets
ability.suppressionfield = Champ de Suppression de Soins ability.suppressionfield = Champ de Suppression de Soins
ability.suppressionfield.description = Stops nearby repair buildings
ability.energyfield = Champ d'énergie ability.energyfield = Champ d'énergie
ability.energyfield.sametypehealmultiplier = [lightgray]Soins des Unités du Même Type: [white]{0}% ability.energyfield.description = Zaps nearby enemies
ability.energyfield.maxtargets = [lightgray]Cibles Maximales: [white]{0} ability.energyfield.healdescription = Zaps nearby enemies and heals allies
ability.regen = Régénération ability.regen = Régénération
ability.regen.description = Regenerates own health over time
ability.liquidregen = Liquid Absorption
ability.liquidregen.description = Absorbs liquid to heal itself
ability.spawndeath = Death Spawns
ability.spawndeath.description = Releases units on death
ability.liquidexplode = Death Spillage
ability.liquidexplode.description = Spills liquid on death
ability.stat.firingrate = [stat]{0}/sec[lightgray] firing rate
ability.stat.regen = [stat]{0}[lightgray] health/sec
ability.stat.shield = [stat]{0}[lightgray] shield
ability.stat.repairspeed = [stat]{0}/sec[lightgray] repair speed
ability.stat.slurpheal = [stat]{0}[lightgray] health/liquid unit
ability.stat.cooldown = [stat]{0} sec[lightgray] cooldown
ability.stat.maxtargets = [stat]{0}[lightgray] max targets
ability.stat.sametypehealmultiplier = [stat]{0}%[lightgray] same type repair amount
ability.stat.damagereduction = [stat]{0}%[lightgray] damage reduction
ability.stat.minspeed = [stat]{0} tiles/sec[lightgray] min speed
ability.stat.duration = [stat]{0} sec[lightgray] duration
ability.stat.buildtime = [stat]{0} sec[lightgray] build time
bar.onlycoredeposit = Seul le dépôt de ressources dans le Noyau est autorisé bar.onlycoredeposit = Seul le dépôt de ressources dans le Noyau est autorisé
bar.drilltierreq = Meilleure Foreuse Requise bar.drilltierreq = Meilleure Foreuse Requise
@@ -1204,16 +1234,16 @@ keybind.unit_stance_hold_fire.name = Ordre: Ne pas tirer
keybind.unit_stance_pursue_target.name = Ordre: Poursuivre la cible keybind.unit_stance_pursue_target.name = Ordre: Poursuivre la cible
keybind.unit_stance_patrol.name = Ordre: Patrouille keybind.unit_stance_patrol.name = Ordre: Patrouille
keybind.unit_stance_ram.name = Ordre: Charger keybind.unit_stance_ram.name = Ordre: Charger
keybind.unit_command_move.name = Unit Command: Move
keybind.unit_command_move = Commande: Bouger keybind.unit_command_repair.name = Unit Command: Repair
keybind.unit_command_repair = Commande: Réparer keybind.unit_command_rebuild.name = Unit Command: Rebuild
keybind.unit_command_rebuild = Commande: Reconstruire keybind.unit_command_assist.name = Unit Command: Assist
keybind.unit_command_assist = Commande: Assister keybind.unit_command_mine.name = Unit Command: Mine
keybind.unit_command_mine = Commande: Miner keybind.unit_command_boost.name = Unit Command: Boost
keybind.unit_command_boost = Commande: Boost keybind.unit_command_load_units.name = Unit Command: Load Units
keybind.unit_command_load_units = Commande: Transporter unités keybind.unit_command_load_blocks.name = Unit Command: Load Blocks
keybind.unit_command_load_blocks = Commande: Transporter blocs keybind.unit_command_unload_payload.name = Unit Command: Unload Payload
keybind.unit_command_unload_payload = Commande: Poser chargement keybind.unit_command_enter_payload.name = Unit Command: Enter Payload
keybind.rebuild_select.name = Reconstruire la Zone keybind.rebuild_select.name = Reconstruire la Zone
keybind.schematic_select.name = Sélectionner une Région keybind.schematic_select.name = Sélectionner une Région
@@ -1312,6 +1342,7 @@ rules.unitdamagemultiplier = Multiplicateur de Dégât des Unités
rules.unitcrashdamagemultiplier = Multiplicateur de Dégât de chute des Unités rules.unitcrashdamagemultiplier = Multiplicateur de Dégât de chute des Unités
rules.solarmultiplier = Multiplicateur de l'Efficacité des Panneaux Solaires rules.solarmultiplier = Multiplicateur de l'Efficacité des Panneaux Solaires
rules.unitcapvariable = Les Noyaux contribuent à la limite d'Unités actives rules.unitcapvariable = Les Noyaux contribuent à la limite d'Unités actives
rules.unitpayloadsexplode = Carried Payloads Explode With The Unit
rules.unitcap = Limite initiale d'Unités actives rules.unitcap = Limite initiale d'Unités actives
rules.limitarea = Limite de la zone de jeu de la Carte rules.limitarea = Limite de la zone de jeu de la Carte
rules.enemycorebuildradius = Périmètre Non-Constructible autour du Noyau ennemi :[lightgray] (blocs) rules.enemycorebuildradius = Périmètre Non-Constructible autour du Noyau ennemi :[lightgray] (blocs)
@@ -1344,6 +1375,8 @@ rules.weather = Météo
rules.weather.frequency = Fréquence : rules.weather.frequency = Fréquence :
rules.weather.always = Permanent rules.weather.always = Permanent
rules.weather.duration = Durée : rules.weather.duration = Durée :
rules.placerangecheck.info = Prevents players from placing anything near enemy buildings. When trying to place a turret, the range is increased, so the turret will not be able to reach the enemy.
rules.onlydepositcore.info = Prevents units from depositing items into any buildings except cores.
content.item.name = Objets content.item.name = Objets
content.liquid.name = Liquides content.liquid.name = Liquides
@@ -2291,7 +2324,7 @@ unit.emanate.description = Construit des structures pour défendre le Noyau acro
lst.read = Lit un nombre depuis un bloc de mémoire relié au processeur. lst.read = Lit un nombre depuis un bloc de mémoire relié au processeur.
lst.write = Écrit un nombre dans un bloc de mémoire relié au processeur. lst.write = Écrit un nombre dans un bloc de mémoire relié au processeur.
lst.print = Ajoute du texte dans la mémoire tampon de l'imprimante.\nNe montrera aucun texte tant que [accent]Print Flush[] ne sera pas utilisé. lst.print = Ajoute du texte dans la mémoire tampon de l'imprimante.\nNe montrera aucun texte tant que [accent]Print Flush[] ne sera pas utilisé.
lst.format = Replace next placeholder ("[accent]@[]") in text buffer with a value.\nExample:\n[accent]print "test @"\nformat "example" lst.format = Replace next placeholder in text buffer with a value.\nDoes not do anything if placeholder pattern is invalid.\nPlaceholder pattern: "{[accent]number 0-9[]}"\nExample:\n[accent]print "test {0}"\nformat "example"
lst.draw = Ajoute une opération dans la mémoire tampon de dessin.\nNe montrera aucune image tant que [accent]Draw Flush[] ne sera pas utilisé. lst.draw = Ajoute une opération dans la mémoire tampon de dessin.\nNe montrera aucune image tant que [accent]Draw Flush[] ne sera pas utilisé.
lst.drawflush = Affiche les opérations [accent]Draw[] en file d'attente vers un écran. lst.drawflush = Affiche les opérations [accent]Draw[] en file d'attente vers un écran.
lst.printflush = Affiche les opérations [accent]Print[] en file d'attente vers un bloc de message. lst.printflush = Affiche les opérations [accent]Print[] en file d'attente vers un bloc de message.
@@ -2314,6 +2347,8 @@ lst.getblock = Obtient les données d'une tuile à n'importe quel emplacement.
lst.setblock = Définit les données d'une tuile à n'importe quel emplacement. lst.setblock = Définit les données d'une tuile à n'importe quel emplacement.
lst.spawnunit = Fait apparaître une unité à un emplacement. lst.spawnunit = Fait apparaître une unité à un emplacement.
lst.applystatus = Ajoute ou enlève un effet de statut d'une unité. lst.applystatus = Ajoute ou enlève un effet de statut d'une unité.
lst.weathersense = Check if a type of weather is active.
lst.weatherset = Set the current state of a type of weather.
lst.spawnwave = Simule un déclenchement de vague à n'importe quel emplacement.\nCela n'incrémente pas le compteur de vaugues. lst.spawnwave = Simule un déclenchement de vague à n'importe quel emplacement.\nCela n'incrémente pas le compteur de vaugues.
lst.explosion = Crée une explosion à un emplacement. lst.explosion = Crée une explosion à un emplacement.
lst.setrate = Définit la vitesse d'exécution d'un processeur en instructions/tick. lst.setrate = Définit la vitesse d'exécution d'un processeur en instructions/tick.

File diff suppressed because it is too large Load Diff

View File

@@ -607,7 +607,7 @@ filter.option.floor2 = Lantai Sekunder
filter.option.threshold2 = Ambang Sekunder filter.option.threshold2 = Ambang Sekunder
filter.option.radius = Radius filter.option.radius = Radius
filter.option.percentile = Perseratus filter.option.percentile = Perseratus
locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: @[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable) locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: {0}[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable)
locales.deletelocale = Are you sure you want to delete this locale bundle? locales.deletelocale = Are you sure you want to delete this locale bundle?
locales.applytoall = Apply Changes To All Locales locales.applytoall = Apply Changes To All Locales
locales.addtoother = Add To Other Locales locales.addtoother = Add To Other Locales
@@ -681,6 +681,7 @@ marker.shape.name = Bentuk
marker.text.name = Teks marker.text.name = Teks
marker.line.name = Line marker.line.name = Line
marker.quad.name = Quad marker.quad.name = Quad
marker.texture.name = Texture
marker.background = Latar Belakang marker.background = Latar Belakang
marker.outline = Garis Luar marker.outline = Garis Luar
@@ -731,7 +732,7 @@ error.any = Terjadi kesalahan Jaringan tidak diketahui.
error.bloom = Gagal untuk menjalankan bloom.\nPerangkat Anda mungkin tidak mendukung fitur ini. error.bloom = Gagal untuk menjalankan bloom.\nPerangkat Anda mungkin tidak mendukung fitur ini.
weather.rain.name = Hujan weather.rain.name = Hujan
weather.snow.name = Salju weather.snowing.name = Salju
weather.sandstorm.name = Badai Pasir weather.sandstorm.name = Badai Pasir
weather.sporestorm.name = Badai Spora weather.sporestorm.name = Badai Spora
weather.fog.name = Kabut weather.fog.name = Kabut
@@ -991,17 +992,46 @@ stat.immunities = Kekebalan
stat.healing = Menyembuhkan stat.healing = Menyembuhkan
ability.forcefield = Bidang Kekuatan ability.forcefield = Bidang Kekuatan
ability.forcefield.description = Projects a force shield that absorbs bullets
ability.repairfield = Bidang Perbaikan ability.repairfield = Bidang Perbaikan
ability.repairfield.description = Repairs nearby units
ability.statusfield = Bidang Status ability.statusfield = Bidang Status
ability.statusfield.description = Applies a status effect to nearby units
ability.unitspawn = Pabrik ability.unitspawn = Pabrik
ability.unitspawn.description = Constructs units
ability.shieldregenfield = Bidang Regenerasi Perisai ability.shieldregenfield = Bidang Regenerasi Perisai
ability.shieldregenfield.description = Regenerates shields of nearby units
ability.movelightning = Pergerakan Petir ability.movelightning = Pergerakan Petir
ability.movelightning.description = Releases lightning while moving
ability.armorplate = Armor Plate
ability.armorplate.description = Reduces damage taken while shooting
ability.shieldarc = Shield Arc ability.shieldarc = Shield Arc
ability.shieldarc.description = Projects a force shield in an arc that absorbs bullets
ability.suppressionfield = Regen Suppression Field ability.suppressionfield = Regen Suppression Field
ability.suppressionfield.description = Stops nearby repair buildings
ability.energyfield = Bidang Tenaga ability.energyfield = Bidang Tenaga
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}% ability.energyfield.description = Zaps nearby enemies
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0} ability.energyfield.healdescription = Zaps nearby enemies and heals allies
ability.regen = Regeneration ability.regen = Regeneration
ability.regen.description = Regenerates own health over time
ability.liquidregen = Liquid Absorption
ability.liquidregen.description = Absorbs liquid to heal itself
ability.spawndeath = Death Spawns
ability.spawndeath.description = Releases units on death
ability.liquidexplode = Death Spillage
ability.liquidexplode.description = Spills liquid on death
ability.stat.firingrate = [stat]{0}/sec[lightgray] firing rate
ability.stat.regen = [stat]{0}[lightgray] health/sec
ability.stat.shield = [stat]{0}[lightgray] shield
ability.stat.repairspeed = [stat]{0}/sec[lightgray] repair speed
ability.stat.slurpheal = [stat]{0}[lightgray] health/liquid unit
ability.stat.cooldown = [stat]{0} sec[lightgray] cooldown
ability.stat.maxtargets = [stat]{0}[lightgray] max targets
ability.stat.sametypehealmultiplier = [stat]{0}%[lightgray] same type repair amount
ability.stat.damagereduction = [stat]{0}%[lightgray] damage reduction
ability.stat.minspeed = [stat]{0} tiles/sec[lightgray] min speed
ability.stat.duration = [stat]{0} sec[lightgray] duration
ability.stat.buildtime = [stat]{0} sec[lightgray] build time
bar.onlycoredeposit = Hanya Penyetoran Inti yang Diizinkan bar.onlycoredeposit = Hanya Penyetoran Inti yang Diizinkan
bar.drilltierreq = Membutuhkan Bor yang Lebih Baik bar.drilltierreq = Membutuhkan Bor yang Lebih Baik
@@ -1197,15 +1227,16 @@ keybind.unit_stance_hold_fire.name = Unit Stance: Hold Fire
keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target
keybind.unit_stance_patrol.name = Unit Stance: Patrol keybind.unit_stance_patrol.name = Unit Stance: Patrol
keybind.unit_stance_ram.name = Unit Stance: Ram keybind.unit_stance_ram.name = Unit Stance: Ram
keybind.unit_command_move = Unit Command: Move keybind.unit_command_move.name = Unit Command: Move
keybind.unit_command_repair = Unit Command: Repair keybind.unit_command_repair.name = Unit Command: Repair
keybind.unit_command_rebuild = Unit Command: Rebuild keybind.unit_command_rebuild.name = Unit Command: Rebuild
keybind.unit_command_assist = Unit Command: Assist keybind.unit_command_assist.name = Unit Command: Assist
keybind.unit_command_mine = Unit Command: Mine keybind.unit_command_mine.name = Unit Command: Mine
keybind.unit_command_boost = Unit Command: Boost keybind.unit_command_boost.name = Unit Command: Boost
keybind.unit_command_load_units = Unit Command: Load Units keybind.unit_command_load_units.name = Unit Command: Load Units
keybind.unit_command_load_blocks = Unit Command: Load Blocks keybind.unit_command_load_blocks.name = Unit Command: Load Blocks
keybind.unit_command_unload_payload = Unit Command: Unload Payload keybind.unit_command_unload_payload.name = Unit Command: Unload Payload
keybind.unit_command_enter_payload.name = Unit Command: Enter Payload
keybind.rebuild_select.name = Rebuild Region keybind.rebuild_select.name = Rebuild Region
keybind.schematic_select.name = Pilih Daerah keybind.schematic_select.name = Pilih Daerah
keybind.schematic_menu.name = Menu Skema keybind.schematic_menu.name = Menu Skema
@@ -1303,6 +1334,7 @@ rules.unitdamagemultiplier = Penggandaan Kekuatan Unit
rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier
rules.solarmultiplier = Penggandaan Tenaga Surya rules.solarmultiplier = Penggandaan Tenaga Surya
rules.unitcapvariable = Inti Memengaruhi Batas Unit rules.unitcapvariable = Inti Memengaruhi Batas Unit
rules.unitpayloadsexplode = Carried Payloads Explode With The Unit
rules.unitcap = Batas Unit Dasar rules.unitcap = Batas Unit Dasar
rules.limitarea = Batas Area Peta rules.limitarea = Batas Area Peta
rules.enemycorebuildradius = Dilarang Membangun Radius Inti Musuh :[lightgray] (blok) rules.enemycorebuildradius = Dilarang Membangun Radius Inti Musuh :[lightgray] (blok)
@@ -1335,6 +1367,8 @@ rules.weather = Cuaca
rules.weather.frequency = Frekuensi: rules.weather.frequency = Frekuensi:
rules.weather.always = Selalu rules.weather.always = Selalu
rules.weather.duration = Durasi: rules.weather.duration = Durasi:
rules.placerangecheck.info = Prevents players from placing anything near enemy buildings. When trying to place a turret, the range is increased, so the turret will not be able to reach the enemy.
rules.onlydepositcore.info = Prevents units from depositing items into any buildings except cores.
content.item.name = Bahan content.item.name = Bahan
content.liquid.name = Zat Cair content.liquid.name = Zat Cair
@@ -2281,7 +2315,7 @@ unit.emanate.description = Builds structures to defend the Acropolis core. Repai
lst.read = Membaca angka dari memori sel yang dihubungkan. lst.read = Membaca angka dari memori sel yang dihubungkan.
lst.write = Menulis angka ke memori sel yang dihubungkan. lst.write = Menulis angka ke memori sel yang dihubungkan.
lst.print = Menambahkan teks ke daftar cetak.\nTidak dapat menampilkan apapun sampai [accent]Print Flush[] dipakai. lst.print = Menambahkan teks ke daftar cetak.\nTidak dapat menampilkan apapun sampai [accent]Print Flush[] dipakai.
lst.format = Replace next placeholder ("[accent]@[]") in text buffer with a value.\nExample:\n[accent]print "test @"\nformat "example" lst.format = Replace next placeholder in text buffer with a value.\nDoes not do anything if placeholder pattern is invalid.\nPlaceholder pattern: "{[accent]number 0-9[]}"\nExample:\n[accent]print "test {0}"\nformat "example"
lst.draw = Menambahkan perintah ke daftar gambar.\nTidak dapat menampilkan apapun sampai [accent]Draw Flush[] dipakai. lst.draw = Menambahkan perintah ke daftar gambar.\nTidak dapat menampilkan apapun sampai [accent]Draw Flush[] dipakai.
lst.drawflush = Mengeluarkan perintah [accent]Draw[] dari daftar antrean untuk ditampilkan. lst.drawflush = Mengeluarkan perintah [accent]Draw[] dari daftar antrean untuk ditampilkan.
lst.printflush = Mengeluarkan perintah [accent]Print[] dari daftar antrean untuk blok pesan. lst.printflush = Mengeluarkan perintah [accent]Print[] dari daftar antrean untuk blok pesan.
@@ -2304,6 +2338,8 @@ lst.getblock = Mendapatkan data petak di lokasi manapun.
lst.setblock = Menentukan data petak di lokasi manapun. lst.setblock = Menentukan data petak di lokasi manapun.
lst.spawnunit = Munculkan unit pada tempat yang ditentukan. lst.spawnunit = Munculkan unit pada tempat yang ditentukan.
lst.applystatus = Menerapkan atau menghapus status efek dari sebuah unit. lst.applystatus = Menerapkan atau menghapus status efek dari sebuah unit.
lst.weathersense = Check if a type of weather is active.
lst.weatherset = Set the current state of a type of weather.
lst.spawnwave = Simulasikan adanya gelombang pada lokasi acak.\nTidak akan ditambahkan pada jumlah gelombang keseluruhan. lst.spawnwave = Simulasikan adanya gelombang pada lokasi acak.\nTidak akan ditambahkan pada jumlah gelombang keseluruhan.
lst.explosion = Membuat sebuah ledakan pada lokasi yang ditentukan. lst.explosion = Membuat sebuah ledakan pada lokasi yang ditentukan.
lst.setrate = Menentukan kecepatan eksekusi prosesor dalam instruksi per tick. lst.setrate = Menentukan kecepatan eksekusi prosesor dalam instruksi per tick.

View File

@@ -602,7 +602,7 @@ filter.option.floor2 = Terreno Secondario
filter.option.threshold2 = Soglia Secondaria filter.option.threshold2 = Soglia Secondaria
filter.option.radius = Raggio filter.option.radius = Raggio
filter.option.percentile = Percentuale filter.option.percentile = Percentuale
locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: @[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable) locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: {0}[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable)
locales.deletelocale = Are you sure you want to delete this locale bundle? locales.deletelocale = Are you sure you want to delete this locale bundle?
locales.applytoall = Apply Changes To All Locales locales.applytoall = Apply Changes To All Locales
locales.addtoother = Add To Other Locales locales.addtoother = Add To Other Locales
@@ -674,6 +674,7 @@ marker.shape.name = Forma
marker.text.name = Testo marker.text.name = Testo
marker.line.name = Line marker.line.name = Line
marker.quad.name = Quad marker.quad.name = Quad
marker.texture.name = Texture
marker.background = Sfondo marker.background = Sfondo
marker.outline = Outline marker.outline = Outline
objective.research = [accent]Ricerca:\n[]{0}[lightgray]{1} objective.research = [accent]Ricerca:\n[]{0}[lightgray]{1}
@@ -721,7 +722,7 @@ error.any = Errore di rete sconosciuto.
error.bloom = Errore dell'avvio delle shaders.\nIl tuo dispositivo potrebbe non supportarle. error.bloom = Errore dell'avvio delle shaders.\nIl tuo dispositivo potrebbe non supportarle.
weather.rain.name = Pioggia weather.rain.name = Pioggia
weather.snow.name = Neve weather.snowing.name = Neve
weather.sandstorm.name = Tempesta di Sabbia weather.sandstorm.name = Tempesta di Sabbia
weather.sporestorm.name = Tempesta di Spore weather.sporestorm.name = Tempesta di Spore
weather.fog.name = Nebbia weather.fog.name = Nebbia
@@ -977,17 +978,46 @@ stat.immunities = Immunità
stat.healing = Rigenerazione stat.healing = Rigenerazione
ability.forcefield = Campo di Forza ability.forcefield = Campo di Forza
ability.forcefield.description = Projects a force shield that absorbs bullets
ability.repairfield = Campo Riparativo ability.repairfield = Campo Riparativo
ability.repairfield.description = Repairs nearby units
ability.statusfield = Campo di Stato ability.statusfield = Campo di Stato
ability.statusfield.description = Applies a status effect to nearby units
ability.unitspawn = Fabbrica ability.unitspawn = Fabbrica
ability.unitspawn.description = Constructs units
ability.shieldregenfield = Campo di Rigenerazione Scudo ability.shieldregenfield = Campo di Rigenerazione Scudo
ability.shieldregenfield.description = Regenerates shields of nearby units
ability.movelightning = Movimento Fulminante ability.movelightning = Movimento Fulminante
ability.movelightning.description = Releases lightning while moving
ability.armorplate = Armor Plate
ability.armorplate.description = Reduces damage taken while shooting
ability.shieldarc = Shield Arc ability.shieldarc = Shield Arc
ability.shieldarc.description = Projects a force shield in an arc that absorbs bullets
ability.suppressionfield = Regen Suppression Field ability.suppressionfield = Regen Suppression Field
ability.suppressionfield.description = Stops nearby repair buildings
ability.energyfield = Campo energetico ability.energyfield = Campo energetico
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}% ability.energyfield.description = Zaps nearby enemies
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0} ability.energyfield.healdescription = Zaps nearby enemies and heals allies
ability.regen = Regeneration ability.regen = Regeneration
ability.regen.description = Regenerates own health over time
ability.liquidregen = Liquid Absorption
ability.liquidregen.description = Absorbs liquid to heal itself
ability.spawndeath = Death Spawns
ability.spawndeath.description = Releases units on death
ability.liquidexplode = Death Spillage
ability.liquidexplode.description = Spills liquid on death
ability.stat.firingrate = [stat]{0}/sec[lightgray] firing rate
ability.stat.regen = [stat]{0}[lightgray] health/sec
ability.stat.shield = [stat]{0}[lightgray] shield
ability.stat.repairspeed = [stat]{0}/sec[lightgray] repair speed
ability.stat.slurpheal = [stat]{0}[lightgray] health/liquid unit
ability.stat.cooldown = [stat]{0} sec[lightgray] cooldown
ability.stat.maxtargets = [stat]{0}[lightgray] max targets
ability.stat.sametypehealmultiplier = [stat]{0}%[lightgray] same type repair amount
ability.stat.damagereduction = [stat]{0}%[lightgray] damage reduction
ability.stat.minspeed = [stat]{0} tiles/sec[lightgray] min speed
ability.stat.duration = [stat]{0} sec[lightgray] duration
ability.stat.buildtime = [stat]{0} sec[lightgray] build time
bar.onlycoredeposit = Concesso solo il deposito al nucleo bar.onlycoredeposit = Concesso solo il deposito al nucleo
@@ -1184,15 +1214,16 @@ keybind.unit_stance_hold_fire.name = Unit Stance: Hold Fire
keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target
keybind.unit_stance_patrol.name = Unit Stance: Patrol keybind.unit_stance_patrol.name = Unit Stance: Patrol
keybind.unit_stance_ram.name = Unit Stance: Ram keybind.unit_stance_ram.name = Unit Stance: Ram
keybind.unit_command_move = Unit Command: Move keybind.unit_command_move.name = Unit Command: Move
keybind.unit_command_repair = Unit Command: Repair keybind.unit_command_repair.name = Unit Command: Repair
keybind.unit_command_rebuild = Unit Command: Rebuild keybind.unit_command_rebuild.name = Unit Command: Rebuild
keybind.unit_command_assist = Unit Command: Assist keybind.unit_command_assist.name = Unit Command: Assist
keybind.unit_command_mine = Unit Command: Mine keybind.unit_command_mine.name = Unit Command: Mine
keybind.unit_command_boost = Unit Command: Boost keybind.unit_command_boost.name = Unit Command: Boost
keybind.unit_command_load_units = Unit Command: Load Units keybind.unit_command_load_units.name = Unit Command: Load Units
keybind.unit_command_load_blocks = Unit Command: Load Blocks keybind.unit_command_load_blocks.name = Unit Command: Load Blocks
keybind.unit_command_unload_payload = Unit Command: Unload Payload keybind.unit_command_unload_payload.name = Unit Command: Unload Payload
keybind.unit_command_enter_payload.name = Unit Command: Enter Payload
keybind.rebuild_select.name = Rebuild Region keybind.rebuild_select.name = Rebuild Region
keybind.schematic_select.name = Seleziona Regione keybind.schematic_select.name = Seleziona Regione
keybind.schematic_menu.name = Menu Schematica keybind.schematic_menu.name = Menu Schematica
@@ -1290,6 +1321,7 @@ rules.unitdamagemultiplier = Moltiplicatore Danno Unità
rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier
rules.solarmultiplier = Moltiplicatore energia solare rules.solarmultiplier = Moltiplicatore energia solare
rules.unitcapvariable = Cores Contribute To Unit Cap rules.unitcapvariable = Cores Contribute To Unit Cap
rules.unitpayloadsexplode = Carried Payloads Explode With The Unit
rules.unitcap = Base Unit Cap rules.unitcap = Base Unit Cap
rules.limitarea = Limite dimensioni mappa rules.limitarea = Limite dimensioni mappa
rules.enemycorebuildradius = Raggio di protezione del Nucleo Nemico dalle costruzioni:[lightgray] (blocchi) rules.enemycorebuildradius = Raggio di protezione del Nucleo Nemico dalle costruzioni:[lightgray] (blocchi)
@@ -1322,6 +1354,8 @@ rules.weather = Meteo
rules.weather.frequency = Frequenza: rules.weather.frequency = Frequenza:
rules.weather.always = sempre rules.weather.always = sempre
rules.weather.duration = Durata: rules.weather.duration = Durata:
rules.placerangecheck.info = Prevents players from placing anything near enemy buildings. When trying to place a turret, the range is increased, so the turret will not be able to reach the enemy.
rules.onlydepositcore.info = Prevents units from depositing items into any buildings except cores.
content.item.name = Oggetti content.item.name = Oggetti
content.liquid.name = Liquidi content.liquid.name = Liquidi
@@ -2255,7 +2289,7 @@ unit.emanate.description = Costruisce strutture per difendere il nucleo dell'Acr
lst.read = Leggi un numero da una cella di memoria collegata. lst.read = Leggi un numero da una cella di memoria collegata.
lst.write = Scrivi un numero in una cella di memoria collegata. lst.write = Scrivi un numero in una cella di memoria collegata.
lst.print = Add text to the print buffer.\nDoes not display anything until [accent]Print Flush[] is used. lst.print = Add text to the print buffer.\nDoes not display anything until [accent]Print Flush[] is used.
lst.format = Replace next placeholder ("[accent]@[]") in text buffer with a value.\nExample:\n[accent]print "test @"\nformat "example" lst.format = Replace next placeholder in text buffer with a value.\nDoes not do anything if placeholder pattern is invalid.\nPlaceholder pattern: "{[accent]number 0-9[]}"\nExample:\n[accent]print "test {0}"\nformat "example"
lst.draw = Add an operation to the drawing buffer.\nDoes not display anything until [accent]Draw Flush[] is used. lst.draw = Add an operation to the drawing buffer.\nDoes not display anything until [accent]Draw Flush[] is used.
lst.drawflush = Flush queued [accent]Draw[] operations to a display. lst.drawflush = Flush queued [accent]Draw[] operations to a display.
lst.printflush = Flush queued [accent]Print[] operations to a message block. lst.printflush = Flush queued [accent]Print[] operations to a message block.
@@ -2278,6 +2312,8 @@ lst.getblock = Get tile data at any location.
lst.setblock = Set tile data at any location. lst.setblock = Set tile data at any location.
lst.spawnunit = Spawn unit at a location. lst.spawnunit = Spawn unit at a location.
lst.applystatus = Apply or clear a status effect from a uniut. lst.applystatus = Apply or clear a status effect from a uniut.
lst.weathersense = Check if a type of weather is active.
lst.weatherset = Set the current state of a type of weather.
lst.spawnwave = Simulate a wave being spawned at a arbitrary location.\nWill not increment the wave counter. lst.spawnwave = Simulate a wave being spawned at a arbitrary location.\nWill not increment the wave counter.
lst.explosion = Create an explosion at a location. lst.explosion = Create an explosion at a location.
lst.setrate = Set processor execution speed in instructions/tick. lst.setrate = Set processor execution speed in instructions/tick.

View File

@@ -606,7 +606,7 @@ filter.option.floor2 = 2番目の地面
filter.option.threshold2 = 2番目の閾値 filter.option.threshold2 = 2番目の閾値
filter.option.radius = 半径 filter.option.radius = 半径
filter.option.percentile = パーセンタイル filter.option.percentile = パーセンタイル
locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: @[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable) locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: {0}[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable)
locales.deletelocale = Are you sure you want to delete this locale bundle? locales.deletelocale = Are you sure you want to delete this locale bundle?
locales.applytoall = Apply Changes To All Locales locales.applytoall = Apply Changes To All Locales
locales.addtoother = Add To Other Locales locales.addtoother = Add To Other Locales
@@ -678,6 +678,7 @@ marker.shape.name = 図形
marker.text.name = 文章 marker.text.name = 文章
marker.line.name = Line marker.line.name = Line
marker.quad.name = Quad marker.quad.name = Quad
marker.texture.name = Texture
marker.background = 背景 marker.background = 背景
marker.outline = 輪郭 marker.outline = 輪郭
objective.research = [accent]Research:\n[]{0}[lightgray]{1} objective.research = [accent]Research:\n[]{0}[lightgray]{1}
@@ -725,7 +726,7 @@ error.any = 不明なネットワークエラーです。
error.bloom = ブルームの初期化に失敗しました。\n恐らくあなたのデバイスではブルームがサポートされていません。 error.bloom = ブルームの初期化に失敗しました。\n恐らくあなたのデバイスではブルームがサポートされていません。
weather.rain.name = weather.rain.name =
weather.snow.name = weather.snowing.name =
weather.sandstorm.name = 砂嵐 weather.sandstorm.name = 砂嵐
weather.sporestorm.name = 胞子嵐 weather.sporestorm.name = 胞子嵐
weather.fog.name = weather.fog.name =
@@ -983,17 +984,46 @@ stat.immunities = 耐性
stat.healing = 治癒 stat.healing = 治癒
ability.forcefield = フォースフィールド ability.forcefield = フォースフィールド
ability.forcefield.description = Projects a force shield that absorbs bullets
ability.repairfield = リペアフィールド ability.repairfield = リペアフィールド
ability.repairfield.description = Repairs nearby units
ability.statusfield = ステータスフィールド ability.statusfield = ステータスフィールド
ability.statusfield.description = Applies a status effect to nearby units
ability.unitspawn = 生産 ability.unitspawn = 生産
ability.unitspawn.description = Constructs units
ability.shieldregenfield = シールドリペアフィールド ability.shieldregenfield = シールドリペアフィールド
ability.shieldregenfield.description = Regenerates shields of nearby units
ability.movelightning = ムーブメントライトニング ability.movelightning = ムーブメントライトニング
ability.movelightning.description = Releases lightning while moving
ability.armorplate = Armor Plate
ability.armorplate.description = Reduces damage taken while shooting
ability.shieldarc = シールドアーク ability.shieldarc = シールドアーク
ability.shieldarc.description = Projects a force shield in an arc that absorbs bullets
ability.suppressionfield = リジェネ抑制フィールド ability.suppressionfield = リジェネ抑制フィールド
ability.suppressionfield.description = Stops nearby repair buildings
ability.energyfield = エネルギー範囲 ability.energyfield = エネルギー範囲
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}% ability.energyfield.description = Zaps nearby enemies
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0} ability.energyfield.healdescription = Zaps nearby enemies and heals allies
ability.regen = Regeneration ability.regen = Regeneration
ability.regen.description = Regenerates own health over time
ability.liquidregen = Liquid Absorption
ability.liquidregen.description = Absorbs liquid to heal itself
ability.spawndeath = Death Spawns
ability.spawndeath.description = Releases units on death
ability.liquidexplode = Death Spillage
ability.liquidexplode.description = Spills liquid on death
ability.stat.firingrate = [stat]{0}/sec[lightgray] firing rate
ability.stat.regen = [stat]{0}[lightgray] health/sec
ability.stat.shield = [stat]{0}[lightgray] shield
ability.stat.repairspeed = [stat]{0}/sec[lightgray] repair speed
ability.stat.slurpheal = [stat]{0}[lightgray] health/liquid unit
ability.stat.cooldown = [stat]{0} sec[lightgray] cooldown
ability.stat.maxtargets = [stat]{0}[lightgray] max targets
ability.stat.sametypehealmultiplier = [stat]{0}%[lightgray] same type repair amount
ability.stat.damagereduction = [stat]{0}%[lightgray] damage reduction
ability.stat.minspeed = [stat]{0} tiles/sec[lightgray] min speed
ability.stat.duration = [stat]{0} sec[lightgray] duration
ability.stat.buildtime = [stat]{0} sec[lightgray] build time
bar.onlycoredeposit = コアにのみ搬入できます。 bar.onlycoredeposit = コアにのみ搬入できます。
@@ -1190,15 +1220,16 @@ keybind.unit_stance_hold_fire.name = Unit Stance: Hold Fire
keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target
keybind.unit_stance_patrol.name = Unit Stance: Patrol keybind.unit_stance_patrol.name = Unit Stance: Patrol
keybind.unit_stance_ram.name = Unit Stance: Ram keybind.unit_stance_ram.name = Unit Stance: Ram
keybind.unit_command_move = Unit Command: Move keybind.unit_command_move.name = Unit Command: Move
keybind.unit_command_repair = Unit Command: Repair keybind.unit_command_repair.name = Unit Command: Repair
keybind.unit_command_rebuild = Unit Command: Rebuild keybind.unit_command_rebuild.name = Unit Command: Rebuild
keybind.unit_command_assist = Unit Command: Assist keybind.unit_command_assist.name = Unit Command: Assist
keybind.unit_command_mine = Unit Command: Mine keybind.unit_command_mine.name = Unit Command: Mine
keybind.unit_command_boost = Unit Command: Boost keybind.unit_command_boost.name = Unit Command: Boost
keybind.unit_command_load_units = Unit Command: Load Units keybind.unit_command_load_units.name = Unit Command: Load Units
keybind.unit_command_load_blocks = Unit Command: Load Blocks keybind.unit_command_load_blocks.name = Unit Command: Load Blocks
keybind.unit_command_unload_payload = Unit Command: Unload Payload keybind.unit_command_unload_payload.name = Unit Command: Unload Payload
keybind.unit_command_enter_payload.name = Unit Command: Enter Payload
keybind.rebuild_select.name = リージョンの再構築 keybind.rebuild_select.name = リージョンの再構築
keybind.schematic_select.name = 範囲選択 keybind.schematic_select.name = 範囲選択
keybind.schematic_menu.name = 設計図メニュー keybind.schematic_menu.name = 設計図メニュー
@@ -1296,6 +1327,7 @@ rules.unitdamagemultiplier = ユニットのダメージ倍率
rules.unitcrashdamagemultiplier = ユニットの衝突ダメージ倍率 rules.unitcrashdamagemultiplier = ユニットの衝突ダメージ倍率
rules.solarmultiplier = 太陽光の倍率 rules.solarmultiplier = 太陽光の倍率
rules.unitcapvariable = コア数によってユニット上限を変動 rules.unitcapvariable = コア数によってユニット上限を変動
rules.unitpayloadsexplode = Carried Payloads Explode With The Unit
rules.unitcap = 基礎ユニット上限数 rules.unitcap = 基礎ユニット上限数
rules.limitarea = マップエリアを制限 rules.limitarea = マップエリアを制限
rules.enemycorebuildradius = 敵コア周辺の建設禁止区域の半径:[lightgray] (タイル) rules.enemycorebuildradius = 敵コア周辺の建設禁止区域の半径:[lightgray] (タイル)
@@ -1328,6 +1360,8 @@ rules.weather = 気象
rules.weather.frequency = 頻度: rules.weather.frequency = 頻度:
rules.weather.always = 常時 rules.weather.always = 常時
rules.weather.duration = 継続時間: rules.weather.duration = 継続時間:
rules.placerangecheck.info = Prevents players from placing anything near enemy buildings. When trying to place a turret, the range is increased, so the turret will not be able to reach the enemy.
rules.onlydepositcore.info = Prevents units from depositing items into any buildings except cores.
content.item.name = アイテム content.item.name = アイテム
content.liquid.name = 液体 content.liquid.name = 液体
@@ -2259,7 +2293,7 @@ unit.emanate.description = アクロポリスコアを敵から守ります。\n
lst.read = リンクされたメモリセルから数値を読み取ります。 lst.read = リンクされたメモリセルから数値を読み取ります。
lst.write = リンクされたメモリセルに数値を書き込みます。 lst.write = リンクされたメモリセルに数値を書き込みます。
lst.print = メッセージブロックにテキストを追加します。[accent]Print Flush[] を使用するまで何も表示しません。 lst.print = メッセージブロックにテキストを追加します。[accent]Print Flush[] を使用するまで何も表示しません。
lst.format = Replace next placeholder ("[accent]@[]") in text buffer with a value.\nExample:\n[accent]print "test @"\nformat "example" lst.format = Replace next placeholder in text buffer with a value.\nDoes not do anything if placeholder pattern is invalid.\nPlaceholder pattern: "{[accent]number 0-9[]}"\nExample:\n[accent]print "test {0}"\nformat "example"
lst.draw = ロジックディスプレイに操作を追加します。[accent]Draw Flush[] を使用するまで何も表示しません。 lst.draw = ロジックディスプレイに操作を追加します。[accent]Draw Flush[] を使用するまで何も表示しません。
lst.drawflush = キューに入れられた [accent]Draw[] 操作をディスプレイにフラッシュします。 lst.drawflush = キューに入れられた [accent]Draw[] 操作をディスプレイにフラッシュします。
lst.printflush = キューに入れられた [accent]Print[] 操作をメッセージ ブロックにフラッシュします。 lst.printflush = キューに入れられた [accent]Print[] 操作をメッセージ ブロックにフラッシュします。
@@ -2282,6 +2316,8 @@ lst.getblock = 任意の座標のタイルの情報を取得します。
lst.setblock = 任意の座標のタイルの情報を変更します。 lst.setblock = 任意の座標のタイルの情報を変更します。
lst.spawnunit = 任意の座標にユニットをスポーンさせます。 lst.spawnunit = 任意の座標にユニットをスポーンさせます。
lst.applystatus = ユニットからステータス効果を適用または削除する。 lst.applystatus = ユニットからステータス効果を適用または削除する。
lst.weathersense = Check if a type of weather is active.
lst.weatherset = Set the current state of a type of weather.
lst.spawnwave = 任意の座標で発生するウェーブをシミュレーションします。\nウェーブを進めません。 lst.spawnwave = 任意の座標で発生するウェーブをシミュレーションします。\nウェーブを進めません。
lst.explosion = ある場所で爆発を起こします。 lst.explosion = ある場所で爆発を起こします。
lst.setrate = プロセッサーの実行速度を1命令/tickで設定します。 lst.setrate = プロセッサーの実行速度を1命令/tickで設定します。

View File

@@ -606,7 +606,7 @@ filter.option.floor2 = 2번째 타일
filter.option.threshold2 = 2번째 경계선 filter.option.threshold2 = 2번째 경계선
filter.option.radius = 반경 filter.option.radius = 반경
filter.option.percentile = 백분율 filter.option.percentile = 백분율
locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: @[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable) locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: {0}[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable)
locales.deletelocale = Are you sure you want to delete this locale bundle? locales.deletelocale = Are you sure you want to delete this locale bundle?
locales.applytoall = Apply Changes To All Locales locales.applytoall = Apply Changes To All Locales
locales.addtoother = Add To Other Locales locales.addtoother = Add To Other Locales
@@ -678,6 +678,7 @@ marker.shape.name = 도형
marker.text.name = 문자 marker.text.name = 문자
marker.line.name = Line marker.line.name = Line
marker.quad.name = Quad marker.quad.name = Quad
marker.texture.name = Texture
marker.background = 배경 marker.background = 배경
marker.outline = 외곽선 marker.outline = 외곽선
@@ -726,7 +727,7 @@ error.any = 알 수 없는 네트워크 오류
error.bloom = 블룸 그래픽 효과를 적용하지 못했습니다.\n기기가 이 기능을 지원하지 않는 것일 수도 있습니다. error.bloom = 블룸 그래픽 효과를 적용하지 못했습니다.\n기기가 이 기능을 지원하지 않는 것일 수도 있습니다.
weather.rain.name = weather.rain.name =
weather.snow.name = weather.snowing.name =
weather.sandstorm.name = 모래 폭풍 weather.sandstorm.name = 모래 폭풍
weather.sporestorm.name = 포자 폭풍 weather.sporestorm.name = 포자 폭풍
weather.fog.name = 안개 weather.fog.name = 안개
@@ -983,17 +984,46 @@ stat.immunities = 상태이상 면역
stat.healing = 회복량 stat.healing = 회복량
ability.forcefield = 보호막 필드 ability.forcefield = 보호막 필드
ability.forcefield.description = Projects a force shield that absorbs bullets
ability.repairfield = 수리 필드 ability.repairfield = 수리 필드
ability.repairfield.description = Repairs nearby units
ability.statusfield = 상태이상 필드 ability.statusfield = 상태이상 필드
ability.statusfield.description = Applies a status effect to nearby units
ability.unitspawn = 공장 ability.unitspawn = 공장
ability.unitspawn.description = Constructs units
ability.shieldregenfield = 방어막 복구 필드 ability.shieldregenfield = 방어막 복구 필드
ability.shieldregenfield.description = Regenerates shields of nearby units
ability.movelightning = 가속 전격 ability.movelightning = 가속 전격
ability.movelightning.description = Releases lightning while moving
ability.armorplate = Armor Plate
ability.armorplate.description = Reduces damage taken while shooting
ability.shieldarc = 방어막 아크 ability.shieldarc = 방어막 아크
ability.shieldarc.description = Projects a force shield in an arc that absorbs bullets
ability.suppressionfield = 재생성 억제 필드 ability.suppressionfield = 재생성 억제 필드
ability.suppressionfield.description = Stops nearby repair buildings
ability.energyfield = 에너지 필드 ability.energyfield = 에너지 필드
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}% ability.energyfield.description = Zaps nearby enemies
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0} ability.energyfield.healdescription = Zaps nearby enemies and heals allies
ability.regen = Regeneration ability.regen = Regeneration
ability.regen.description = Regenerates own health over time
ability.liquidregen = Liquid Absorption
ability.liquidregen.description = Absorbs liquid to heal itself
ability.spawndeath = Death Spawns
ability.spawndeath.description = Releases units on death
ability.liquidexplode = Death Spillage
ability.liquidexplode.description = Spills liquid on death
ability.stat.firingrate = [stat]{0}/sec[lightgray] firing rate
ability.stat.regen = [stat]{0}[lightgray] health/sec
ability.stat.shield = [stat]{0}[lightgray] shield
ability.stat.repairspeed = [stat]{0}/sec[lightgray] repair speed
ability.stat.slurpheal = [stat]{0}[lightgray] health/liquid unit
ability.stat.cooldown = [stat]{0} sec[lightgray] cooldown
ability.stat.maxtargets = [stat]{0}[lightgray] max targets
ability.stat.sametypehealmultiplier = [stat]{0}%[lightgray] same type repair amount
ability.stat.damagereduction = [stat]{0}%[lightgray] damage reduction
ability.stat.minspeed = [stat]{0} tiles/sec[lightgray] min speed
ability.stat.duration = [stat]{0} sec[lightgray] duration
ability.stat.buildtime = [stat]{0} sec[lightgray] build time
bar.onlycoredeposit = 코어에만 투입할 수 있습니다 bar.onlycoredeposit = 코어에만 투입할 수 있습니다
bar.drilltierreq = 더 좋은 드릴 필요 bar.drilltierreq = 더 좋은 드릴 필요
@@ -1189,15 +1219,16 @@ keybind.unit_stance_hold_fire.name = Unit Stance: Hold Fire
keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target
keybind.unit_stance_patrol.name = Unit Stance: Patrol keybind.unit_stance_patrol.name = Unit Stance: Patrol
keybind.unit_stance_ram.name = Unit Stance: Ram keybind.unit_stance_ram.name = Unit Stance: Ram
keybind.unit_command_move = Unit Command: Move keybind.unit_command_move.name = Unit Command: Move
keybind.unit_command_repair = Unit Command: Repair keybind.unit_command_repair.name = Unit Command: Repair
keybind.unit_command_rebuild = Unit Command: Rebuild keybind.unit_command_rebuild.name = Unit Command: Rebuild
keybind.unit_command_assist = Unit Command: Assist keybind.unit_command_assist.name = Unit Command: Assist
keybind.unit_command_mine = Unit Command: Mine keybind.unit_command_mine.name = Unit Command: Mine
keybind.unit_command_boost = Unit Command: Boost keybind.unit_command_boost.name = Unit Command: Boost
keybind.unit_command_load_units = Unit Command: Load Units keybind.unit_command_load_units.name = Unit Command: Load Units
keybind.unit_command_load_blocks = Unit Command: Load Blocks keybind.unit_command_load_blocks.name = Unit Command: Load Blocks
keybind.unit_command_unload_payload = Unit Command: Unload Payload keybind.unit_command_unload_payload.name = Unit Command: Unload Payload
keybind.unit_command_enter_payload.name = Unit Command: Enter Payload
keybind.rebuild_select.name = 지역 재건 keybind.rebuild_select.name = 지역 재건
keybind.schematic_select.name = 영역 설정 keybind.schematic_select.name = 영역 설정
keybind.schematic_menu.name = 설계도 메뉴 keybind.schematic_menu.name = 설계도 메뉴
@@ -1295,6 +1326,7 @@ rules.unitdamagemultiplier = 기체 피해량 배수
rules.unitcrashdamagemultiplier = 기체 파손 피해량 배수 rules.unitcrashdamagemultiplier = 기체 파손 피해량 배수
rules.solarmultiplier = 태양광 전력 배수 rules.solarmultiplier = 태양광 전력 배수
rules.unitcapvariable = 코어 기체수 제한 추가 rules.unitcapvariable = 코어 기체수 제한 추가
rules.unitpayloadsexplode = Carried Payloads Explode With The Unit
rules.unitcap = 기본 기체 제한 rules.unitcap = 기본 기체 제한
rules.limitarea = 맵 영역 제한 rules.limitarea = 맵 영역 제한
rules.enemycorebuildradius = 적 코어 건설금지 범위:[lightgray] (타일) rules.enemycorebuildradius = 적 코어 건설금지 범위:[lightgray] (타일)
@@ -1327,6 +1359,8 @@ rules.weather = 날씨 추가
rules.weather.frequency = 빈도: rules.weather.frequency = 빈도:
rules.weather.always = 항상 rules.weather.always = 항상
rules.weather.duration = 지속 시간: rules.weather.duration = 지속 시간:
rules.placerangecheck.info = Prevents players from placing anything near enemy buildings. When trying to place a turret, the range is increased, so the turret will not be able to reach the enemy.
rules.onlydepositcore.info = Prevents units from depositing items into any buildings except cores.
content.item.name = 자원 content.item.name = 자원
content.liquid.name = 액체 content.liquid.name = 액체
@@ -2258,7 +2292,7 @@ unit.emanate.description = 코어: 도심을 지켜내기 위해 구조물을
lst.read = 연결된 메모리 셀에서 숫자 읽음 lst.read = 연결된 메모리 셀에서 숫자 읽음
lst.write = 연결된 메모리 셀에 숫자 작성 lst.write = 연결된 메모리 셀에 숫자 작성
lst.print = 프린트 버퍼에 텍스트 추가\n[accent]Print Flush[]가 사용되기 전까진 아무것도 보여주지 않습니다 lst.print = 프린트 버퍼에 텍스트 추가\n[accent]Print Flush[]가 사용되기 전까진 아무것도 보여주지 않습니다
lst.format = Replace next placeholder ("[accent]@[]") in text buffer with a value.\nExample:\n[accent]print "test @"\nformat "example" lst.format = Replace next placeholder in text buffer with a value.\nDoes not do anything if placeholder pattern is invalid.\nPlaceholder pattern: "{[accent]number 0-9[]}"\nExample:\n[accent]print "test {0}"\nformat "example"
lst.draw = 드로잉 버퍼에 실행문 추가\n[accent]Draw Flush[]가 사용되기 전까진 아무것도 보여주지 않습니다 lst.draw = 드로잉 버퍼에 실행문 추가\n[accent]Draw Flush[]가 사용되기 전까진 아무것도 보여주지 않습니다
lst.drawflush = 대기중인 [accent]Draw[]실행문을 디스플레이에 출력 lst.drawflush = 대기중인 [accent]Draw[]실행문을 디스플레이에 출력
lst.printflush = 대기중인 [accent]Print[]실행문을 메시지 블록에 출력 lst.printflush = 대기중인 [accent]Print[]실행문을 메시지 블록에 출력
@@ -2281,6 +2315,8 @@ lst.getblock = 특정 위치의 타일 정보를 불러옴
lst.setblock = 특정 위치의 타일 정보 설정 lst.setblock = 특정 위치의 타일 정보 설정
lst.spawnunit = 특정 위치에 기체 소환 lst.spawnunit = 특정 위치에 기체 소환
lst.applystatus = 기체에게 상태이상을 적용하거나 삭제 lst.applystatus = 기체에게 상태이상을 적용하거나 삭제
lst.weathersense = Check if a type of weather is active.
lst.weatherset = Set the current state of a type of weather.
lst.spawnwave = 특정 위치에 이전 단계를 실행\n실제 단계가 넘어가지 않습니다 lst.spawnwave = 특정 위치에 이전 단계를 실행\n실제 단계가 넘어가지 않습니다
lst.explosion = 특정 위치에 폭발 생성 lst.explosion = 특정 위치에 폭발 생성
lst.setrate = 프로세서 실행 속도를 틱당 연산량으로 설정 lst.setrate = 프로세서 실행 속도를 틱당 연산량으로 설정

View File

@@ -599,7 +599,7 @@ filter.option.floor2 = Antrasis sluoksnis
filter.option.threshold2 = Antrasis slenkstis filter.option.threshold2 = Antrasis slenkstis
filter.option.radius = Spindulys filter.option.radius = Spindulys
filter.option.percentile = Procentilė filter.option.percentile = Procentilė
locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: @[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable) locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: {0}[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable)
locales.deletelocale = Are you sure you want to delete this locale bundle? locales.deletelocale = Are you sure you want to delete this locale bundle?
locales.applytoall = Apply Changes To All Locales locales.applytoall = Apply Changes To All Locales
locales.addtoother = Add To Other Locales locales.addtoother = Add To Other Locales
@@ -671,6 +671,7 @@ marker.shape.name = Shape
marker.text.name = Text marker.text.name = Text
marker.line.name = Line marker.line.name = Line
marker.quad.name = Quad marker.quad.name = Quad
marker.texture.name = Texture
marker.background = Background marker.background = Background
marker.outline = Outline marker.outline = Outline
objective.research = [accent]Research:\n[]{0}[lightgray]{1} objective.research = [accent]Research:\n[]{0}[lightgray]{1}
@@ -717,7 +718,7 @@ error.any = Nžinoma tinklo klaida.
error.bloom = Nepavyko inicijuoti spindėjimo.\nJūsų įrenginys gali nepalaikyti šios funkcijos. error.bloom = Nepavyko inicijuoti spindėjimo.\nJūsų įrenginys gali nepalaikyti šios funkcijos.
weather.rain.name = Rain weather.rain.name = Rain
weather.snow.name = Snow weather.snowing.name = Snow
weather.sandstorm.name = Sandstorm weather.sandstorm.name = Sandstorm
weather.sporestorm.name = Sporestorm weather.sporestorm.name = Sporestorm
weather.fog.name = Fog weather.fog.name = Fog
@@ -972,17 +973,46 @@ stat.immunities = Immunities
stat.healing = Healing stat.healing = Healing
ability.forcefield = Force Field ability.forcefield = Force Field
ability.forcefield.description = Projects a force shield that absorbs bullets
ability.repairfield = Repair Field ability.repairfield = Repair Field
ability.repairfield.description = Repairs nearby units
ability.statusfield = Status Field ability.statusfield = Status Field
ability.statusfield.description = Applies a status effect to nearby units
ability.unitspawn = Factory ability.unitspawn = Factory
ability.unitspawn.description = Constructs units
ability.shieldregenfield = Shield Regen Field ability.shieldregenfield = Shield Regen Field
ability.shieldregenfield.description = Regenerates shields of nearby units
ability.movelightning = Movement Lightning ability.movelightning = Movement Lightning
ability.movelightning.description = Releases lightning while moving
ability.armorplate = Armor Plate
ability.armorplate.description = Reduces damage taken while shooting
ability.shieldarc = Shield Arc ability.shieldarc = Shield Arc
ability.shieldarc.description = Projects a force shield in an arc that absorbs bullets
ability.suppressionfield = Regen Suppression Field ability.suppressionfield = Regen Suppression Field
ability.suppressionfield.description = Stops nearby repair buildings
ability.energyfield = Energy Field ability.energyfield = Energy Field
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}% ability.energyfield.description = Zaps nearby enemies
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0} ability.energyfield.healdescription = Zaps nearby enemies and heals allies
ability.regen = Regeneration ability.regen = Regeneration
ability.regen.description = Regenerates own health over time
ability.liquidregen = Liquid Absorption
ability.liquidregen.description = Absorbs liquid to heal itself
ability.spawndeath = Death Spawns
ability.spawndeath.description = Releases units on death
ability.liquidexplode = Death Spillage
ability.liquidexplode.description = Spills liquid on death
ability.stat.firingrate = [stat]{0}/sec[lightgray] firing rate
ability.stat.regen = [stat]{0}[lightgray] health/sec
ability.stat.shield = [stat]{0}[lightgray] shield
ability.stat.repairspeed = [stat]{0}/sec[lightgray] repair speed
ability.stat.slurpheal = [stat]{0}[lightgray] health/liquid unit
ability.stat.cooldown = [stat]{0} sec[lightgray] cooldown
ability.stat.maxtargets = [stat]{0}[lightgray] max targets
ability.stat.sametypehealmultiplier = [stat]{0}%[lightgray] same type repair amount
ability.stat.damagereduction = [stat]{0}%[lightgray] damage reduction
ability.stat.minspeed = [stat]{0} tiles/sec[lightgray] min speed
ability.stat.duration = [stat]{0} sec[lightgray] duration
ability.stat.buildtime = [stat]{0} sec[lightgray] build time
bar.onlycoredeposit = Only Core Depositing Allowed bar.onlycoredeposit = Only Core Depositing Allowed
@@ -1179,15 +1209,16 @@ keybind.unit_stance_hold_fire.name = Unit Stance: Hold Fire
keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target
keybind.unit_stance_patrol.name = Unit Stance: Patrol keybind.unit_stance_patrol.name = Unit Stance: Patrol
keybind.unit_stance_ram.name = Unit Stance: Ram keybind.unit_stance_ram.name = Unit Stance: Ram
keybind.unit_command_move = Unit Command: Move keybind.unit_command_move.name = Unit Command: Move
keybind.unit_command_repair = Unit Command: Repair keybind.unit_command_repair.name = Unit Command: Repair
keybind.unit_command_rebuild = Unit Command: Rebuild keybind.unit_command_rebuild.name = Unit Command: Rebuild
keybind.unit_command_assist = Unit Command: Assist keybind.unit_command_assist.name = Unit Command: Assist
keybind.unit_command_mine = Unit Command: Mine keybind.unit_command_mine.name = Unit Command: Mine
keybind.unit_command_boost = Unit Command: Boost keybind.unit_command_boost.name = Unit Command: Boost
keybind.unit_command_load_units = Unit Command: Load Units keybind.unit_command_load_units.name = Unit Command: Load Units
keybind.unit_command_load_blocks = Unit Command: Load Blocks keybind.unit_command_load_blocks.name = Unit Command: Load Blocks
keybind.unit_command_unload_payload = Unit Command: Unload Payload keybind.unit_command_unload_payload.name = Unit Command: Unload Payload
keybind.unit_command_enter_payload.name = Unit Command: Enter Payload
keybind.rebuild_select.name = Rebuild Region keybind.rebuild_select.name = Rebuild Region
keybind.schematic_select.name = Pasirinkite Regioną keybind.schematic_select.name = Pasirinkite Regioną
keybind.schematic_menu.name = Schemų Meniu keybind.schematic_menu.name = Schemų Meniu
@@ -1285,6 +1316,7 @@ rules.unitdamagemultiplier = Vienetų Žalos Daugiklis
rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier
rules.solarmultiplier = Solar Power Multiplier rules.solarmultiplier = Solar Power Multiplier
rules.unitcapvariable = Cores Contribute To Unit Cap rules.unitcapvariable = Cores Contribute To Unit Cap
rules.unitpayloadsexplode = Carried Payloads Explode With The Unit
rules.unitcap = Base Unit Cap rules.unitcap = Base Unit Cap
rules.limitarea = Limit Map Area rules.limitarea = Limit Map Area
rules.enemycorebuildradius = Nestatymo aplink priešų branduolį spindulys:[lightgray] (blokais) rules.enemycorebuildradius = Nestatymo aplink priešų branduolį spindulys:[lightgray] (blokais)
@@ -1317,6 +1349,8 @@ rules.weather = Weather
rules.weather.frequency = Frequency: rules.weather.frequency = Frequency:
rules.weather.always = Always rules.weather.always = Always
rules.weather.duration = Duration: rules.weather.duration = Duration:
rules.placerangecheck.info = Prevents players from placing anything near enemy buildings. When trying to place a turret, the range is increased, so the turret will not be able to reach the enemy.
rules.onlydepositcore.info = Prevents units from depositing items into any buildings except cores.
content.item.name = Daiktai content.item.name = Daiktai
content.liquid.name = Skysčiai content.liquid.name = Skysčiai
@@ -2243,7 +2277,7 @@ unit.emanate.description = Builds structures to defend the Acropolis core. Repai
lst.read = Read a number from a linked memory cell. lst.read = Read a number from a linked memory cell.
lst.write = Write a number to a linked memory cell. lst.write = Write a number to a linked memory cell.
lst.print = Add text to the print buffer.\nDoes not display anything until [accent]Print Flush[] is used. lst.print = Add text to the print buffer.\nDoes not display anything until [accent]Print Flush[] is used.
lst.format = Replace next placeholder ("[accent]@[]") in text buffer with a value.\nExample:\n[accent]print "test @"\nformat "example" lst.format = Replace next placeholder in text buffer with a value.\nDoes not do anything if placeholder pattern is invalid.\nPlaceholder pattern: "{[accent]number 0-9[]}"\nExample:\n[accent]print "test {0}"\nformat "example"
lst.draw = Add an operation to the drawing buffer.\nDoes not display anything until [accent]Draw Flush[] is used. lst.draw = Add an operation to the drawing buffer.\nDoes not display anything until [accent]Draw Flush[] is used.
lst.drawflush = Flush queued [accent]Draw[] operations to a display. lst.drawflush = Flush queued [accent]Draw[] operations to a display.
lst.printflush = Flush queued [accent]Print[] operations to a message block. lst.printflush = Flush queued [accent]Print[] operations to a message block.
@@ -2266,6 +2300,8 @@ lst.getblock = Get tile data at any location.
lst.setblock = Set tile data at any location. lst.setblock = Set tile data at any location.
lst.spawnunit = Spawn unit at a location. lst.spawnunit = Spawn unit at a location.
lst.applystatus = Apply or clear a status effect from a uniut. lst.applystatus = Apply or clear a status effect from a uniut.
lst.weathersense = Check if a type of weather is active.
lst.weatherset = Set the current state of a type of weather.
lst.spawnwave = Simulate a wave being spawned at a arbitrary location.\nWill not increment the wave counter. lst.spawnwave = Simulate a wave being spawned at a arbitrary location.\nWill not increment the wave counter.
lst.explosion = Create an explosion at a location. lst.explosion = Create an explosion at a location.
lst.setrate = Set processor execution speed in instructions/tick. lst.setrate = Set processor execution speed in instructions/tick.

View File

@@ -609,7 +609,7 @@ filter.option.floor2 = Secundaire Vloer
filter.option.threshold2 = Secundaire Drempel filter.option.threshold2 = Secundaire Drempel
filter.option.radius = Straal filter.option.radius = Straal
filter.option.percentile = percentiel filter.option.percentile = percentiel
locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: @[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable) locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: {0}[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable)
locales.deletelocale = Are you sure you want to delete this locale bundle? locales.deletelocale = Are you sure you want to delete this locale bundle?
locales.applytoall = Apply Changes To All Locales locales.applytoall = Apply Changes To All Locales
locales.addtoother = Add To Other Locales locales.addtoother = Add To Other Locales
@@ -682,6 +682,7 @@ marker.shape.name = Vorm
marker.text.name = Tekst marker.text.name = Tekst
marker.line.name = Line marker.line.name = Line
marker.quad.name = Quad marker.quad.name = Quad
marker.texture.name = Texture
marker.background = Achtergrond marker.background = Achtergrond
marker.outline = Omtrek marker.outline = Omtrek
objective.research = [accent]Onderzoek:\n[]{0}[lightgray]{1} objective.research = [accent]Onderzoek:\n[]{0}[lightgray]{1}
@@ -728,7 +729,7 @@ error.any = Onbekende netwerk fout.
error.bloom = Bloom aanzetten mislukt.\nJe apparaat ondersteunt het waarschijnlijk niet. error.bloom = Bloom aanzetten mislukt.\nJe apparaat ondersteunt het waarschijnlijk niet.
weather.rain.name = Regen weather.rain.name = Regen
weather.snow.name = Sneeuw weather.snowing.name = Sneeuw
weather.sandstorm.name = Zandstorm weather.sandstorm.name = Zandstorm
weather.sporestorm.name = Schimmelstorm weather.sporestorm.name = Schimmelstorm
weather.fog.name = Mist weather.fog.name = Mist
@@ -984,17 +985,46 @@ stat.immunities = Immuniteiten
stat.healing = Genezing stat.healing = Genezing
ability.forcefield = Krachtveld ability.forcefield = Krachtveld
ability.forcefield.description = Projects a force shield that absorbs bullets
ability.repairfield = Reparatieveld ability.repairfield = Reparatieveld
ability.repairfield.description = Repairs nearby units
ability.statusfield = Statusveld ability.statusfield = Statusveld
ability.statusfield.description = Applies a status effect to nearby units
ability.unitspawn = Fabriek ability.unitspawn = Fabriek
ability.unitspawn.description = Constructs units
ability.shieldregenfield = Schild Regeneratie Veld ability.shieldregenfield = Schild Regeneratie Veld
ability.shieldregenfield.description = Regenerates shields of nearby units
ability.movelightning = Beweging Bliksem ability.movelightning = Beweging Bliksem
ability.movelightning.description = Releases lightning while moving
ability.armorplate = Armor Plate
ability.armorplate.description = Reduces damage taken while shooting
ability.shieldarc = Schild Boog ability.shieldarc = Schild Boog
ability.shieldarc.description = Projects a force shield in an arc that absorbs bullets
ability.suppressionfield = Regeneratie Onderdrukkingsveld ability.suppressionfield = Regeneratie Onderdrukkingsveld
ability.suppressionfield.description = Stops nearby repair buildings
ability.energyfield = Energieveld ability.energyfield = Energieveld
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}% ability.energyfield.description = Zaps nearby enemies
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0} ability.energyfield.healdescription = Zaps nearby enemies and heals allies
ability.regen = Regeneration ability.regen = Regeneration
ability.regen.description = Regenerates own health over time
ability.liquidregen = Liquid Absorption
ability.liquidregen.description = Absorbs liquid to heal itself
ability.spawndeath = Death Spawns
ability.spawndeath.description = Releases units on death
ability.liquidexplode = Death Spillage
ability.liquidexplode.description = Spills liquid on death
ability.stat.firingrate = [stat]{0}/sec[lightgray] firing rate
ability.stat.regen = [stat]{0}[lightgray] health/sec
ability.stat.shield = [stat]{0}[lightgray] shield
ability.stat.repairspeed = [stat]{0}/sec[lightgray] repair speed
ability.stat.slurpheal = [stat]{0}[lightgray] health/liquid unit
ability.stat.cooldown = [stat]{0} sec[lightgray] cooldown
ability.stat.maxtargets = [stat]{0}[lightgray] max targets
ability.stat.sametypehealmultiplier = [stat]{0}%[lightgray] same type repair amount
ability.stat.damagereduction = [stat]{0}%[lightgray] damage reduction
ability.stat.minspeed = [stat]{0} tiles/sec[lightgray] min speed
ability.stat.duration = [stat]{0} sec[lightgray] duration
ability.stat.buildtime = [stat]{0} sec[lightgray] build time
bar.onlycoredeposit = Alleen materialen in de Core toegestaan. bar.onlycoredeposit = Alleen materialen in de Core toegestaan.
@@ -1191,15 +1221,16 @@ keybind.unit_stance_hold_fire.name = Unit Stance: Hold Fire
keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target
keybind.unit_stance_patrol.name = Unit Stance: Patrol keybind.unit_stance_patrol.name = Unit Stance: Patrol
keybind.unit_stance_ram.name = Unit Stance: Ram keybind.unit_stance_ram.name = Unit Stance: Ram
keybind.unit_command_move = Unit Command: Move keybind.unit_command_move.name = Unit Command: Move
keybind.unit_command_repair = Unit Command: Repair keybind.unit_command_repair.name = Unit Command: Repair
keybind.unit_command_rebuild = Unit Command: Rebuild keybind.unit_command_rebuild.name = Unit Command: Rebuild
keybind.unit_command_assist = Unit Command: Assist keybind.unit_command_assist.name = Unit Command: Assist
keybind.unit_command_mine = Unit Command: Mine keybind.unit_command_mine.name = Unit Command: Mine
keybind.unit_command_boost = Unit Command: Boost keybind.unit_command_boost.name = Unit Command: Boost
keybind.unit_command_load_units = Unit Command: Load Units keybind.unit_command_load_units.name = Unit Command: Load Units
keybind.unit_command_load_blocks = Unit Command: Load Blocks keybind.unit_command_load_blocks.name = Unit Command: Load Blocks
keybind.unit_command_unload_payload = Unit Command: Unload Payload keybind.unit_command_unload_payload.name = Unit Command: Unload Payload
keybind.unit_command_enter_payload.name = Unit Command: Enter Payload
keybind.rebuild_select.name = Herbouw Regio keybind.rebuild_select.name = Herbouw Regio
keybind.schematic_select.name = Selecteer gebied keybind.schematic_select.name = Selecteer gebied
keybind.schematic_menu.name = Ontwerpmenu keybind.schematic_menu.name = Ontwerpmenu
@@ -1297,6 +1328,7 @@ rules.unitdamagemultiplier = Eenheid Schade Vermenigvuldiger
rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier
rules.solarmultiplier = Zonne-Energie Vermenigvuldiger rules.solarmultiplier = Zonne-Energie Vermenigvuldiger
rules.unitcapvariable = Cores Dragen Bij Aan Eenheidslimiet rules.unitcapvariable = Cores Dragen Bij Aan Eenheidslimiet
rules.unitpayloadsexplode = Carried Payloads Explode With The Unit
rules.unitcap = Bais Eenheidlimiet rules.unitcap = Bais Eenheidlimiet
rules.limitarea = Limiteer Kaart Gebied rules.limitarea = Limiteer Kaart Gebied
rules.enemycorebuildradius = Niet-Bouw Bereik Vijandelijke Cores:[lightgray] (tegels) rules.enemycorebuildradius = Niet-Bouw Bereik Vijandelijke Cores:[lightgray] (tegels)
@@ -1329,6 +1361,8 @@ rules.weather = Weer
rules.weather.frequency = Frequentie: rules.weather.frequency = Frequentie:
rules.weather.always = Altijd rules.weather.always = Altijd
rules.weather.duration = Duur: rules.weather.duration = Duur:
rules.placerangecheck.info = Prevents players from placing anything near enemy buildings. When trying to place a turret, the range is increased, so the turret will not be able to reach the enemy.
rules.onlydepositcore.info = Prevents units from depositing items into any buildings except cores.
content.item.name = Materialen content.item.name = Materialen
content.liquid.name = Vloeistoffen content.liquid.name = Vloeistoffen
@@ -2256,7 +2290,7 @@ unit.emanate.description = Builds structures to defend the Acropolis core. Repai
lst.read = Read a number from a linked memory cell. lst.read = Read a number from a linked memory cell.
lst.write = Write a number to a linked memory cell. lst.write = Write a number to a linked memory cell.
lst.print = Add text to the print buffer.\nDoes not display anything until [accent]Print Flush[] is used. lst.print = Add text to the print buffer.\nDoes not display anything until [accent]Print Flush[] is used.
lst.format = Replace next placeholder ("[accent]@[]") in text buffer with a value.\nExample:\n[accent]print "test @"\nformat "example" lst.format = Replace next placeholder in text buffer with a value.\nDoes not do anything if placeholder pattern is invalid.\nPlaceholder pattern: "{[accent]number 0-9[]}"\nExample:\n[accent]print "test {0}"\nformat "example"
lst.draw = Add an operation to the drawing buffer.\nDoes not display anything until [accent]Draw Flush[] is used. lst.draw = Add an operation to the drawing buffer.\nDoes not display anything until [accent]Draw Flush[] is used.
lst.drawflush = Flush queued [accent]Draw[] operations to a display. lst.drawflush = Flush queued [accent]Draw[] operations to a display.
lst.printflush = Flush queued [accent]Print[] operations to a message block. lst.printflush = Flush queued [accent]Print[] operations to a message block.
@@ -2279,6 +2313,8 @@ lst.getblock = Get tile data at any location.
lst.setblock = Set tile data at any location. lst.setblock = Set tile data at any location.
lst.spawnunit = Spawn unit at a location. lst.spawnunit = Spawn unit at a location.
lst.applystatus = Apply or clear a status effect from a uniut. lst.applystatus = Apply or clear a status effect from a uniut.
lst.weathersense = Check if a type of weather is active.
lst.weatherset = Set the current state of a type of weather.
lst.spawnwave = Simulate a wave being spawned at a arbitrary location.\nWill not increment the wave counter. lst.spawnwave = Simulate a wave being spawned at a arbitrary location.\nWill not increment the wave counter.
lst.explosion = Create an explosion at a location. lst.explosion = Create an explosion at a location.
lst.setrate = Set processor execution speed in instructions/tick. lst.setrate = Set processor execution speed in instructions/tick.

View File

@@ -599,7 +599,7 @@ filter.option.floor2 = Secondary Floor
filter.option.threshold2 = Secondary Threshold filter.option.threshold2 = Secondary Threshold
filter.option.radius = Radius filter.option.radius = Radius
filter.option.percentile = Percentile filter.option.percentile = Percentile
locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: @[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable) locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: {0}[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable)
locales.deletelocale = Are you sure you want to delete this locale bundle? locales.deletelocale = Are you sure you want to delete this locale bundle?
locales.applytoall = Apply Changes To All Locales locales.applytoall = Apply Changes To All Locales
locales.addtoother = Add To Other Locales locales.addtoother = Add To Other Locales
@@ -671,6 +671,7 @@ marker.shape.name = Shape
marker.text.name = Text marker.text.name = Text
marker.line.name = Line marker.line.name = Line
marker.quad.name = Quad marker.quad.name = Quad
marker.texture.name = Texture
marker.background = Background marker.background = Background
marker.outline = Outline marker.outline = Outline
objective.research = [accent]Research:\n[]{0}[lightgray]{1} objective.research = [accent]Research:\n[]{0}[lightgray]{1}
@@ -717,7 +718,7 @@ error.any = Unknown network error.
error.bloom = Failed to initialize bloom.\nYour device may not support it. error.bloom = Failed to initialize bloom.\nYour device may not support it.
weather.rain.name = Rain weather.rain.name = Rain
weather.snow.name = Snow weather.snowing.name = Snow
weather.sandstorm.name = Sandstorm weather.sandstorm.name = Sandstorm
weather.sporestorm.name = Sporestorm weather.sporestorm.name = Sporestorm
weather.fog.name = Fog weather.fog.name = Fog
@@ -972,17 +973,46 @@ stat.immunities = Immunities
stat.healing = Healing stat.healing = Healing
ability.forcefield = Force Field ability.forcefield = Force Field
ability.forcefield.description = Projects a force shield that absorbs bullets
ability.repairfield = Repair Field ability.repairfield = Repair Field
ability.repairfield.description = Repairs nearby units
ability.statusfield = Status Field ability.statusfield = Status Field
ability.statusfield.description = Applies a status effect to nearby units
ability.unitspawn = Factory ability.unitspawn = Factory
ability.unitspawn.description = Constructs units
ability.shieldregenfield = Shield Regen Field ability.shieldregenfield = Shield Regen Field
ability.shieldregenfield.description = Regenerates shields of nearby units
ability.movelightning = Movement Lightning ability.movelightning = Movement Lightning
ability.movelightning.description = Releases lightning while moving
ability.armorplate = Armor Plate
ability.armorplate.description = Reduces damage taken while shooting
ability.shieldarc = Shield Arc ability.shieldarc = Shield Arc
ability.shieldarc.description = Projects a force shield in an arc that absorbs bullets
ability.suppressionfield = Regen Suppression Field ability.suppressionfield = Regen Suppression Field
ability.suppressionfield.description = Stops nearby repair buildings
ability.energyfield = Energy Field ability.energyfield = Energy Field
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}% ability.energyfield.description = Zaps nearby enemies
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0} ability.energyfield.healdescription = Zaps nearby enemies and heals allies
ability.regen = Regeneration ability.regen = Regeneration
ability.regen.description = Regenerates own health over time
ability.liquidregen = Liquid Absorption
ability.liquidregen.description = Absorbs liquid to heal itself
ability.spawndeath = Death Spawns
ability.spawndeath.description = Releases units on death
ability.liquidexplode = Death Spillage
ability.liquidexplode.description = Spills liquid on death
ability.stat.firingrate = [stat]{0}/sec[lightgray] firing rate
ability.stat.regen = [stat]{0}[lightgray] health/sec
ability.stat.shield = [stat]{0}[lightgray] shield
ability.stat.repairspeed = [stat]{0}/sec[lightgray] repair speed
ability.stat.slurpheal = [stat]{0}[lightgray] health/liquid unit
ability.stat.cooldown = [stat]{0} sec[lightgray] cooldown
ability.stat.maxtargets = [stat]{0}[lightgray] max targets
ability.stat.sametypehealmultiplier = [stat]{0}%[lightgray] same type repair amount
ability.stat.damagereduction = [stat]{0}%[lightgray] damage reduction
ability.stat.minspeed = [stat]{0} tiles/sec[lightgray] min speed
ability.stat.duration = [stat]{0} sec[lightgray] duration
ability.stat.buildtime = [stat]{0} sec[lightgray] build time
bar.onlycoredeposit = Only Core Depositing Allowed bar.onlycoredeposit = Only Core Depositing Allowed
@@ -1179,15 +1209,16 @@ keybind.unit_stance_hold_fire.name = Unit Stance: Hold Fire
keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target
keybind.unit_stance_patrol.name = Unit Stance: Patrol keybind.unit_stance_patrol.name = Unit Stance: Patrol
keybind.unit_stance_ram.name = Unit Stance: Ram keybind.unit_stance_ram.name = Unit Stance: Ram
keybind.unit_command_move = Unit Command: Move keybind.unit_command_move.name = Unit Command: Move
keybind.unit_command_repair = Unit Command: Repair keybind.unit_command_repair.name = Unit Command: Repair
keybind.unit_command_rebuild = Unit Command: Rebuild keybind.unit_command_rebuild.name = Unit Command: Rebuild
keybind.unit_command_assist = Unit Command: Assist keybind.unit_command_assist.name = Unit Command: Assist
keybind.unit_command_mine = Unit Command: Mine keybind.unit_command_mine.name = Unit Command: Mine
keybind.unit_command_boost = Unit Command: Boost keybind.unit_command_boost.name = Unit Command: Boost
keybind.unit_command_load_units = Unit Command: Load Units keybind.unit_command_load_units.name = Unit Command: Load Units
keybind.unit_command_load_blocks = Unit Command: Load Blocks keybind.unit_command_load_blocks.name = Unit Command: Load Blocks
keybind.unit_command_unload_payload = Unit Command: Unload Payload keybind.unit_command_unload_payload.name = Unit Command: Unload Payload
keybind.unit_command_enter_payload.name = Unit Command: Enter Payload
keybind.rebuild_select.name = Rebuild Region keybind.rebuild_select.name = Rebuild Region
keybind.schematic_select.name = Select Region keybind.schematic_select.name = Select Region
keybind.schematic_menu.name = Schematic Menu keybind.schematic_menu.name = Schematic Menu
@@ -1285,6 +1316,7 @@ rules.unitdamagemultiplier = Unit Damage Multiplier
rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier
rules.solarmultiplier = Solar Power Multiplier rules.solarmultiplier = Solar Power Multiplier
rules.unitcapvariable = Cores Contribute To Unit Cap rules.unitcapvariable = Cores Contribute To Unit Cap
rules.unitpayloadsexplode = Carried Payloads Explode With The Unit
rules.unitcap = Base Unit Cap rules.unitcap = Base Unit Cap
rules.limitarea = Limit Map Area rules.limitarea = Limit Map Area
rules.enemycorebuildradius = Enemy Core No-Build Radius:[lightgray] (tiles) rules.enemycorebuildradius = Enemy Core No-Build Radius:[lightgray] (tiles)
@@ -1317,6 +1349,8 @@ rules.weather = Weather
rules.weather.frequency = Frequency: rules.weather.frequency = Frequency:
rules.weather.always = Always rules.weather.always = Always
rules.weather.duration = Duration: rules.weather.duration = Duration:
rules.placerangecheck.info = Prevents players from placing anything near enemy buildings. When trying to place a turret, the range is increased, so the turret will not be able to reach the enemy.
rules.onlydepositcore.info = Prevents units from depositing items into any buildings except cores.
content.item.name = Items content.item.name = Items
content.liquid.name = Liquids content.liquid.name = Liquids
@@ -2243,7 +2277,7 @@ unit.emanate.description = Builds structures to defend the Acropolis core. Repai
lst.read = Read a number from a linked memory cell. lst.read = Read a number from a linked memory cell.
lst.write = Write a number to a linked memory cell. lst.write = Write a number to a linked memory cell.
lst.print = Add text to the print buffer.\nDoes not display anything until [accent]Print Flush[] is used. lst.print = Add text to the print buffer.\nDoes not display anything until [accent]Print Flush[] is used.
lst.format = Replace next placeholder ("[accent]@[]") in text buffer with a value.\nExample:\n[accent]print "test @"\nformat "example" lst.format = Replace next placeholder in text buffer with a value.\nDoes not do anything if placeholder pattern is invalid.\nPlaceholder pattern: "{[accent]number 0-9[]}"\nExample:\n[accent]print "test {0}"\nformat "example"
lst.draw = Add an operation to the drawing buffer.\nDoes not display anything until [accent]Draw Flush[] is used. lst.draw = Add an operation to the drawing buffer.\nDoes not display anything until [accent]Draw Flush[] is used.
lst.drawflush = Flush queued [accent]Draw[] operations to a display. lst.drawflush = Flush queued [accent]Draw[] operations to a display.
lst.printflush = Flush queued [accent]Print[] operations to a message block. lst.printflush = Flush queued [accent]Print[] operations to a message block.
@@ -2266,6 +2300,8 @@ lst.getblock = Get tile data at any location.
lst.setblock = Set tile data at any location. lst.setblock = Set tile data at any location.
lst.spawnunit = Spawn unit at a location. lst.spawnunit = Spawn unit at a location.
lst.applystatus = Apply or clear a status effect from a uniut. lst.applystatus = Apply or clear a status effect from a uniut.
lst.weathersense = Check if a type of weather is active.
lst.weatherset = Set the current state of a type of weather.
lst.spawnwave = Simulate a wave being spawned at a arbitrary location.\nWill not increment the wave counter. lst.spawnwave = Simulate a wave being spawned at a arbitrary location.\nWill not increment the wave counter.
lst.explosion = Create an explosion at a location. lst.explosion = Create an explosion at a location.
lst.setrate = Set processor execution speed in instructions/tick. lst.setrate = Set processor execution speed in instructions/tick.

View File

@@ -604,7 +604,7 @@ filter.option.floor2 = Druga Podłoga
filter.option.threshold2 = Drugi Próg filter.option.threshold2 = Drugi Próg
filter.option.radius = Zasięg filter.option.radius = Zasięg
filter.option.percentile = Procent filter.option.percentile = Procent
locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: @[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable) locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: {0}[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable)
locales.deletelocale = Are you sure you want to delete this locale bundle? locales.deletelocale = Are you sure you want to delete this locale bundle?
locales.applytoall = Apply Changes To All Locales locales.applytoall = Apply Changes To All Locales
locales.addtoother = Add To Other Locales locales.addtoother = Add To Other Locales
@@ -676,6 +676,7 @@ marker.shape.name = Figura
marker.text.name = Tekst marker.text.name = Tekst
marker.line.name = Line marker.line.name = Line
marker.quad.name = Quad marker.quad.name = Quad
marker.texture.name = Texture
marker.background = Tło marker.background = Tło
marker.outline = Kontur marker.outline = Kontur
objective.research = [accent]Zbadaj:\n[]{0}[lightgray]{1} objective.research = [accent]Zbadaj:\n[]{0}[lightgray]{1}
@@ -723,7 +724,7 @@ error.any = Nieznany błąd sieci.
error.bloom = Nie udało się załadować funkcji bloom.\nTwoje urządzenie może nie wspierać tej funkcji. error.bloom = Nie udało się załadować funkcji bloom.\nTwoje urządzenie może nie wspierać tej funkcji.
weather.rain.name = Deszcz weather.rain.name = Deszcz
weather.snow.name = Śnieg weather.snowing.name = Śnieg
weather.sandstorm.name = Burza piaskowa weather.sandstorm.name = Burza piaskowa
weather.sporestorm.name = Burza zarodników weather.sporestorm.name = Burza zarodników
weather.fog.name = Mgła weather.fog.name = Mgła
@@ -981,17 +982,46 @@ stat.immunities = Odporności
stat.healing = Leczy stat.healing = Leczy
ability.forcefield = Pole Siłowe ability.forcefield = Pole Siłowe
ability.forcefield.description = Projects a force shield that absorbs bullets
ability.repairfield = Pole Naprawy ability.repairfield = Pole Naprawy
ability.repairfield.description = Repairs nearby units
ability.statusfield = Pole Statusu ability.statusfield = Pole Statusu
ability.statusfield.description = Applies a status effect to nearby units
ability.unitspawn = Fabryka Jednostek ability.unitspawn = Fabryka Jednostek
ability.unitspawn.description = Constructs units
ability.shieldregenfield = Strefa Tarczy Regenerującej ability.shieldregenfield = Strefa Tarczy Regenerującej
ability.shieldregenfield.description = Regenerates shields of nearby units
ability.movelightning = Pioruny Poruszania ability.movelightning = Pioruny Poruszania
ability.movelightning.description = Releases lightning while moving
ability.armorplate = Armor Plate
ability.armorplate.description = Reduces damage taken while shooting
ability.shieldarc = Łuk Tarczy ability.shieldarc = Łuk Tarczy
ability.shieldarc.description = Projects a force shield in an arc that absorbs bullets
ability.suppressionfield = Pole Tłumienia Regeneracji ability.suppressionfield = Pole Tłumienia Regeneracji
ability.suppressionfield.description = Stops nearby repair buildings
ability.energyfield = Pole Energii ability.energyfield = Pole Energii
ability.energyfield.sametypehealmultiplier = [lightgray]Ten sam typ leczenia: [white]{0}% ability.energyfield.description = Zaps nearby enemies
ability.energyfield.maxtargets = [lightgray]Maksymalne cele: [white]{0} ability.energyfield.healdescription = Zaps nearby enemies and heals allies
ability.regen = Regeneracja ability.regen = Regeneracja
ability.regen.description = Regenerates own health over time
ability.liquidregen = Liquid Absorption
ability.liquidregen.description = Absorbs liquid to heal itself
ability.spawndeath = Death Spawns
ability.spawndeath.description = Releases units on death
ability.liquidexplode = Death Spillage
ability.liquidexplode.description = Spills liquid on death
ability.stat.firingrate = [stat]{0}/sec[lightgray] firing rate
ability.stat.regen = [stat]{0}[lightgray] health/sec
ability.stat.shield = [stat]{0}[lightgray] shield
ability.stat.repairspeed = [stat]{0}/sec[lightgray] repair speed
ability.stat.slurpheal = [stat]{0}[lightgray] health/liquid unit
ability.stat.cooldown = [stat]{0} sec[lightgray] cooldown
ability.stat.maxtargets = [stat]{0}[lightgray] max targets
ability.stat.sametypehealmultiplier = [stat]{0}%[lightgray] same type repair amount
ability.stat.damagereduction = [stat]{0}%[lightgray] damage reduction
ability.stat.minspeed = [stat]{0} tiles/sec[lightgray] min speed
ability.stat.duration = [stat]{0} sec[lightgray] duration
ability.stat.buildtime = [stat]{0} sec[lightgray] build time
bar.onlycoredeposit = Dozwolone jest tylko przeniesienie z rdzenia bar.onlycoredeposit = Dozwolone jest tylko przeniesienie z rdzenia
@@ -1188,15 +1218,16 @@ keybind.unit_stance_hold_fire.name = Wstrzymaj ogień
keybind.unit_stance_pursue_target.name = Goń Cel keybind.unit_stance_pursue_target.name = Goń Cel
keybind.unit_stance_patrol.name = Patroluj keybind.unit_stance_patrol.name = Patroluj
keybind.unit_stance_ram.name = Taranuj keybind.unit_stance_ram.name = Taranuj
keybind.unit_command_move = Porusz keybind.unit_command_move.name = Unit Command: Move
keybind.unit_command_repair = Naprawiaj keybind.unit_command_repair.name = Unit Command: Repair
keybind.unit_command_rebuild = Odbudowywuj keybind.unit_command_rebuild.name = Unit Command: Rebuild
keybind.unit_command_assist = Asystuj keybind.unit_command_assist.name = Unit Command: Assist
keybind.unit_command_mine = Kop keybind.unit_command_mine.name = Unit Command: Mine
keybind.unit_command_boost = Przyspieszaj keybind.unit_command_boost.name = Unit Command: Boost
keybind.unit_command_load_units = Załaduj jednostki keybind.unit_command_load_units.name = Unit Command: Load Units
keybind.unit_command_load_blocks = Załaduj Bloki keybind.unit_command_load_blocks.name = Unit Command: Load Blocks
keybind.unit_command_unload_payload = Rozładuj Ładunek keybind.unit_command_unload_payload.name = Unit Command: Unload Payload
keybind.unit_command_enter_payload.name = Unit Command: Enter Payload
keybind.rebuild_select.name = Odbuduj Region keybind.rebuild_select.name = Odbuduj Region
keybind.schematic_select.name = Wybierz Region keybind.schematic_select.name = Wybierz Region
keybind.schematic_menu.name = Menu Schematów keybind.schematic_menu.name = Menu Schematów
@@ -1294,6 +1325,7 @@ rules.unitdamagemultiplier = Mnożnik Obrażeń jednostek
rules.unitcrashdamagemultiplier = Obrażenia Zadawane Po Zniszczeniu rules.unitcrashdamagemultiplier = Obrażenia Zadawane Po Zniszczeniu
rules.solarmultiplier = Mnożnik Mocy Paneli Słonecznych rules.solarmultiplier = Mnożnik Mocy Paneli Słonecznych
rules.unitcapvariable = Rdzenie mają wpływ na limit jednostek rules.unitcapvariable = Rdzenie mają wpływ na limit jednostek
rules.unitpayloadsexplode = Carried Payloads Explode With The Unit
rules.unitcap = Podstawowy limit jednostek rules.unitcap = Podstawowy limit jednostek
rules.limitarea = Limit Obszaru Mapy rules.limitarea = Limit Obszaru Mapy
rules.enemycorebuildradius = Zasięg Blokady Budowy Przy Rdzeniu Wroga:[lightgray] (kratki) rules.enemycorebuildradius = Zasięg Blokady Budowy Przy Rdzeniu Wroga:[lightgray] (kratki)
@@ -1326,6 +1358,8 @@ rules.weather = Pogoda
rules.weather.frequency = Częstotliwość: rules.weather.frequency = Częstotliwość:
rules.weather.always = Zawsze rules.weather.always = Zawsze
rules.weather.duration = Czas trwania: rules.weather.duration = Czas trwania:
rules.placerangecheck.info = Prevents players from placing anything near enemy buildings. When trying to place a turret, the range is increased, so the turret will not be able to reach the enemy.
rules.onlydepositcore.info = Prevents units from depositing items into any buildings except cores.
content.item.name = Przedmioty content.item.name = Przedmioty
content.liquid.name = Płyny content.liquid.name = Płyny
@@ -2277,7 +2311,7 @@ unit.emanate.description = Lotnicza jednostka aministracyjna zdolna do wydobycia
lst.read = Wczytuje liczbę z połączonej komórki pamięci. lst.read = Wczytuje liczbę z połączonej komórki pamięci.
lst.write = Zapisuje liczbę do połączonej komórki pamięci. lst.write = Zapisuje liczbę do połączonej komórki pamięci.
lst.print = Dodaje tekst do buforu drukującego.\nNie wyświetla niczego dopóki [accent]Print Flush[] nie jest użyte. lst.print = Dodaje tekst do buforu drukującego.\nNie wyświetla niczego dopóki [accent]Print Flush[] nie jest użyte.
lst.format = Replace next placeholder ("[accent]@[]") in text buffer with a value.\nExample:\n[accent]print "test @"\nformat "example" lst.format = Replace next placeholder in text buffer with a value.\nDoes not do anything if placeholder pattern is invalid.\nPlaceholder pattern: "{[accent]number 0-9[]}"\nExample:\n[accent]print "test {0}"\nformat "example"
lst.draw = Dodaje operacje do buforu rysującego.\nNie wyświetla niczego dopóki [accent]Draw Flush[] nie jest użyte. lst.draw = Dodaje operacje do buforu rysującego.\nNie wyświetla niczego dopóki [accent]Draw Flush[] nie jest użyte.
lst.drawflush = Wyświetla oczekujące operacje z funkcji [accent]Draw[] na wyświetlaczu. lst.drawflush = Wyświetla oczekujące operacje z funkcji [accent]Draw[] na wyświetlaczu.
lst.printflush = Dodaje oczekujące operacje z funkcji [accent]Print[] do bloku wiadomości. lst.printflush = Dodaje oczekujące operacje z funkcji [accent]Print[] do bloku wiadomości.
@@ -2300,6 +2334,8 @@ lst.getblock = Uzyskaj dane dla dowolnej lokalizacji.
lst.setblock = Ustaw dane dla dowolnej lokalizacji. lst.setblock = Ustaw dane dla dowolnej lokalizacji.
lst.spawnunit = Odródź jednostkę w lokalizacji. lst.spawnunit = Odródź jednostkę w lokalizacji.
lst.applystatus = Zastosuj lub wyczyść efekty statusu jednostki. lst.applystatus = Zastosuj lub wyczyść efekty statusu jednostki.
lst.weathersense = Check if a type of weather is active.
lst.weatherset = Set the current state of a type of weather.
lst.spawnwave = Symuluj falę odradzającą się w dowolnym miejscu.\nNie zwiększy licznika fali. lst.spawnwave = Symuluj falę odradzającą się w dowolnym miejscu.\nNie zwiększy licznika fali.
lst.explosion = Stwórz eksplozję w lokalizacji. lst.explosion = Stwórz eksplozję w lokalizacji.
lst.setrate = Ustaw szybkość wykonywania procesora w instrukcjach/tick. lst.setrate = Ustaw szybkość wykonywania procesora w instrukcjach/tick.

View File

@@ -41,16 +41,16 @@ be.ignore = Ignorar
be.noupdates = Nenhuma atualização encontrada. be.noupdates = Nenhuma atualização encontrada.
be.check = Checar por atualizações be.check = Checar por atualizações
mods.browser = Mod Browser mods.browser = Navegador de mods
mods.browser.selected = Mod selecionado mods.browser.selected = Mod selecionado
mods.browser.add = Instalar mods.browser.add = Instalar
mods.browser.reinstall = Reinstalar mods.browser.reinstall = Reinstalar
mods.browser.view-releases = View Releases mods.browser.view-releases = Ver versões
mods.browser.noreleases = [scarlet]Nenhum lançamento encontrado\n[accent]Não foi possível encontrar nenhum lançamento para este mod. Verifique se o repositório do mod tem algum lançamento publicado. mods.browser.noreleases = [scarlet]Nenhuma versão encontrada\n[accent]Não foi possível encontrar nenhuma versão do mod. Veja se o repositório do mod possui alguma versão publicada.
mods.browser.latest = <Latest> mods.browser.latest = <Mais recente>
mods.browser.releases = Releases mods.browser.releases = Versões
mods.github.open = Repositório mods.github.open = Repositório
mods.github.open-release = Release Page mods.github.open-release = Página da versão
mods.browser.sortdate = Ordenar por mais recente mods.browser.sortdate = Ordenar por mais recente
mods.browser.sortstars = Ordenar por estrelas mods.browser.sortstars = Ordenar por estrelas
@@ -146,9 +146,9 @@ mod.multiplayer.compatible = [gray]Compatível com Multiplayer
mod.disable = Desati-\nvar mod.disable = Desati-\nvar
mod.content = Conteúdo: mod.content = Conteúdo:
mod.delete.error = Incapaz de deletar o mod. O arquivo talvez esteja em uso. mod.delete.error = Incapaz de deletar o mod. O arquivo talvez esteja em uso.
mod.incompatiblegame = [red]Outdated Game mod.incompatiblegame = [red]Jogo desatualizado
mod.incompatiblemod = [red]Incompatible mod.incompatiblemod = [red]Incompatível
mod.blacklisted = [red]Unsupported mod.blacklisted = [red]Não suportado
mod.unmetdependencies = [red]Unmet Dependencies mod.unmetdependencies = [red]Unmet Dependencies
mod.erroredcontent = [scarlet]Erros no conteúdo mod.erroredcontent = [scarlet]Erros no conteúdo
mod.circulardependencies = [red]Circular Dependencies mod.circulardependencies = [red]Circular Dependencies
@@ -190,9 +190,9 @@ unlocked = Novo bloco desbloqueado!
available = Nova pesquisa disponível! available = Nova pesquisa disponível!
unlock.incampaign = < Desbloqueie na campanha para mais detalhes > unlock.incampaign = < Desbloqueie na campanha para mais detalhes >
campaign.select = Selecione a campanha inicial campaign.select = Selecione a campanha inicial
campaign.none = [lightgray]Selecione um planeta para começar.\nEle pode ser alterado a qualquer momento. campaign.none = [lightgray]Selecione um planeta para começar nele.\nVocê pode mudar de planeta a qualquer momento.
campaign.erekir = Conteúdo mais novo e mais polido. Progressão de campanha principalmente linear.\n\nMapas de maior qualidade e experiência geral. campaign.erekir = Novo, conteúdo mais polido. Uma progressão mais linear na campanha.\n\nExperiência geral e mapas de maior qualidade.
campaign.serpulo = Conteúdo mais antigo; a experiência clássica. Mais aberto.\n\nMapas e mecânicas de campanha potencialmente desbalanceados. Menos polido. campaign.serpulo = Conteúdo antigo; a experiência clássica. Mais aberto.\n\nMapas e mecânicas de campanha potencialmente desbalanceados. Menos polido.
completed = [accent]Completado completed = [accent]Completado
techtree = Árvore Tecnológica techtree = Árvore Tecnológica
techtree.select = Seleção de Árvore Tecnológica techtree.select = Seleção de Árvore Tecnológica
@@ -383,8 +383,8 @@ pausebuilding = [accent][[{0}][] para parar a construção
resumebuilding = [scarlet][[{0}][] para continuar a construção resumebuilding = [scarlet][[{0}][] para continuar a construção
enablebuilding = [scarlet][[{0}][] para habilitar construção enablebuilding = [scarlet][[{0}][] para habilitar construção
showui = Interface escondida.\nPressione [accent][[{0}][] para mostrar a interface. showui = Interface escondida.\nPressione [accent][[{0}][] para mostrar a interface.
commandmode.name = [accent]Command Mode commandmode.name = [accent]Modo de comando
commandmode.nounits = [no units] commandmode.nounits = [nenhuma unidade]
wave = [accent]Horda {0} wave = [accent]Horda {0}
wave.cap = [accent]Horda {0}/{1} wave.cap = [accent]Horda {0}/{1}
wave.waiting = Proxima horda em {0} wave.waiting = Proxima horda em {0}
@@ -607,7 +607,7 @@ filter.option.floor2 = Chão secundário
filter.option.threshold2 = Margem secundária filter.option.threshold2 = Margem secundária
filter.option.radius = Raio filter.option.radius = Raio
filter.option.percentile = Percentual filter.option.percentile = Percentual
locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: @[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable) locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: {0}[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable)
locales.deletelocale = Are you sure you want to delete this locale bundle? locales.deletelocale = Are you sure you want to delete this locale bundle?
locales.applytoall = Apply Changes To All Locales locales.applytoall = Apply Changes To All Locales
locales.addtoother = Add To Other Locales locales.addtoother = Add To Other Locales
@@ -681,6 +681,7 @@ marker.shape.name = Shape
marker.text.name = Texto marker.text.name = Texto
marker.line.name = Line marker.line.name = Line
marker.quad.name = Quad marker.quad.name = Quad
marker.texture.name = Texture
marker.background = Fundo marker.background = Fundo
marker.outline = Contorno marker.outline = Contorno
@@ -731,7 +732,7 @@ error.any = Erro de rede desconhecido.
error.bloom = Falha ao inicializar bloom.\nSeu dispositivo talvez não o suporte. error.bloom = Falha ao inicializar bloom.\nSeu dispositivo talvez não o suporte.
weather.rain.name = Chuva weather.rain.name = Chuva
weather.snow.name = Neve weather.snowing.name = Neve
weather.sandstorm.name = Tempestade de Areia weather.sandstorm.name = Tempestade de Areia
weather.sporestorm.name = Tempestade de Esporos weather.sporestorm.name = Tempestade de Esporos
weather.fog.name = Névoa weather.fog.name = Névoa
@@ -992,17 +993,46 @@ stat.immunities = Imunidades
stat.healing = Reparo stat.healing = Reparo
ability.forcefield = Campo de Força ability.forcefield = Campo de Força
ability.forcefield.description = Projects a force shield that absorbs bullets
ability.repairfield = Campo de Reparação ability.repairfield = Campo de Reparação
ability.repairfield.description = Repairs nearby units
ability.statusfield = Campo de Status ability.statusfield = Campo de Status
ability.statusfield.description = Applies a status effect to nearby units
ability.unitspawn = Fábrica ability.unitspawn = Fábrica
ability.unitspawn.description = Constructs units
ability.shieldregenfield = Raio de Regeneração do Escudo ability.shieldregenfield = Raio de Regeneração do Escudo
ability.shieldregenfield.description = Regenerates shields of nearby units
ability.movelightning = Raio de Movimento ability.movelightning = Raio de Movimento
ability.movelightning.description = Releases lightning while moving
ability.armorplate = Armor Plate
ability.armorplate.description = Reduces damage taken while shooting
ability.shieldarc = Arco do Escudo ability.shieldarc = Arco do Escudo
ability.shieldarc.description = Projects a force shield in an arc that absorbs bullets
ability.suppressionfield = Regen Suppression Field ability.suppressionfield = Regen Suppression Field
ability.suppressionfield.description = Stops nearby repair buildings
ability.energyfield = Campo de Energia ability.energyfield = Campo de Energia
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}% ability.energyfield.description = Zaps nearby enemies
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0} ability.energyfield.healdescription = Zaps nearby enemies and heals allies
ability.regen = Regeneration ability.regen = Regeneration
ability.regen.description = Regenerates own health over time
ability.liquidregen = Liquid Absorption
ability.liquidregen.description = Absorbs liquid to heal itself
ability.spawndeath = Death Spawns
ability.spawndeath.description = Releases units on death
ability.liquidexplode = Death Spillage
ability.liquidexplode.description = Spills liquid on death
ability.stat.firingrate = [stat]{0}/sec[lightgray] firing rate
ability.stat.regen = [stat]{0}[lightgray] health/sec
ability.stat.shield = [stat]{0}[lightgray] shield
ability.stat.repairspeed = [stat]{0}/sec[lightgray] repair speed
ability.stat.slurpheal = [stat]{0}[lightgray] health/liquid unit
ability.stat.cooldown = [stat]{0} sec[lightgray] cooldown
ability.stat.maxtargets = [stat]{0}[lightgray] max targets
ability.stat.sametypehealmultiplier = [stat]{0}%[lightgray] same type repair amount
ability.stat.damagereduction = [stat]{0}%[lightgray] damage reduction
ability.stat.minspeed = [stat]{0} tiles/sec[lightgray] min speed
ability.stat.duration = [stat]{0} sec[lightgray] duration
ability.stat.buildtime = [stat]{0} sec[lightgray] build time
bar.onlycoredeposit = Somente depósito no núcleo permitido bar.onlycoredeposit = Somente depósito no núcleo permitido
bar.drilltierreq = Broca melhor necessária. bar.drilltierreq = Broca melhor necessária.
@@ -1198,15 +1228,16 @@ keybind.unit_stance_hold_fire.name = Unit Stance: Hold Fire
keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target
keybind.unit_stance_patrol.name = Unit Stance: Patrol keybind.unit_stance_patrol.name = Unit Stance: Patrol
keybind.unit_stance_ram.name = Unit Stance: Ram keybind.unit_stance_ram.name = Unit Stance: Ram
keybind.unit_command_move = Unit Command: Move keybind.unit_command_move.name = Unit Command: Move
keybind.unit_command_repair = Unit Command: Repair keybind.unit_command_repair.name = Unit Command: Repair
keybind.unit_command_rebuild = Unit Command: Rebuild keybind.unit_command_rebuild.name = Unit Command: Rebuild
keybind.unit_command_assist = Unit Command: Assist keybind.unit_command_assist.name = Unit Command: Assist
keybind.unit_command_mine = Unit Command: Mine keybind.unit_command_mine.name = Unit Command: Mine
keybind.unit_command_boost = Unit Command: Boost keybind.unit_command_boost.name = Unit Command: Boost
keybind.unit_command_load_units = Unit Command: Load Units keybind.unit_command_load_units.name = Unit Command: Load Units
keybind.unit_command_load_blocks = Unit Command: Load Blocks keybind.unit_command_load_blocks.name = Unit Command: Load Blocks
keybind.unit_command_unload_payload = Unit Command: Unload Payload keybind.unit_command_unload_payload.name = Unit Command: Unload Payload
keybind.unit_command_enter_payload.name = Unit Command: Enter Payload
keybind.rebuild_select.name = Rebuild Region keybind.rebuild_select.name = Rebuild Region
keybind.schematic_select.name = Selecionar região keybind.schematic_select.name = Selecionar região
keybind.schematic_menu.name = Menu de Esquemas keybind.schematic_menu.name = Menu de Esquemas
@@ -1304,6 +1335,7 @@ rules.unitdamagemultiplier = Multiplicador de dano de Unidade
rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier
rules.solarmultiplier = Multiplicador de Energia Solar rules.solarmultiplier = Multiplicador de Energia Solar
rules.unitcapvariable = Núcleos contribuem para a capacidade da unidade rules.unitcapvariable = Núcleos contribuem para a capacidade da unidade
rules.unitpayloadsexplode = Carried Payloads Explode With The Unit
rules.unitcap = Capacidade base da Unidade rules.unitcap = Capacidade base da Unidade
rules.limitarea = Limitar área do mapa rules.limitarea = Limitar área do mapa
rules.enemycorebuildradius = Raio de "não-criação" de núcleo inimigo:[lightgray] (blocos) rules.enemycorebuildradius = Raio de "não-criação" de núcleo inimigo:[lightgray] (blocos)
@@ -1336,6 +1368,8 @@ rules.weather = Clima
rules.weather.frequency = Frequência: rules.weather.frequency = Frequência:
rules.weather.always = Sempre rules.weather.always = Sempre
rules.weather.duration = Duração: rules.weather.duration = Duração:
rules.placerangecheck.info = Prevents players from placing anything near enemy buildings. When trying to place a turret, the range is increased, so the turret will not be able to reach the enemy.
rules.onlydepositcore.info = Prevents units from depositing items into any buildings except cores.
content.item.name = Itens content.item.name = Itens
content.liquid.name = Líquidos content.liquid.name = Líquidos
@@ -1851,12 +1885,12 @@ hint.research = Use o botão de \ue875 [accent]Pesquisa[] para pesquisar novas t
hint.research.mobile = Use o botão de \ue875 [accent]Pesquisa[] no \ue88c [accent]Menu[] para pesquisar novas tecnologias. hint.research.mobile = Use o botão de \ue875 [accent]Pesquisa[] no \ue88c [accent]Menu[] para pesquisar novas tecnologias.
hint.unitControl = Segure [accent][[L-ctrl][] e [accent]click[] para controlar suas unidades ou torretas. hint.unitControl = Segure [accent][[L-ctrl][] e [accent]click[] para controlar suas unidades ou torretas.
hint.unitControl.mobile = [accent][[Toque duas vezes][] para controlar suas unidades ou torretas. hint.unitControl.mobile = [accent][[Toque duas vezes][] para controlar suas unidades ou torretas.
hint.unitSelectControl = To control units, enter [accent]command mode[] by holding [accent]L-shift.[]\nWhile in command mode, click and drag to select units. [accent]Right-click[] a location or target to command units there. hint.unitSelectControl = Para controlar unidades, entre no [accent]modo de comando[] segurando [accent]Shift esquerdo.[]\nEnquanto no modo de comando, clique e segure pra selecionar unidades. Clique com o [accent]Botão direito[] em um lugar ou alvo para mandar as unidades para lá.
hint.unitSelectControl.mobile = To control units, enter [accent]command mode[] by pressing the [accent]command[] button in the bottom left.\nWhile in command mode, long-press and drag to select units. Tap a location or target to command units there. hint.unitSelectControl.mobile = Para controlar unidades, entre no [accent]modo de comando[] segurando o botão de [accent]comando[] no canto inferior esquerdo.\nEnquanto no modo de comando, segure e arraste pra selecionar unidades. Toque em algum lugar ou alvo para mandar as unidades para lá.
hint.launch = Quando recursos suficientes forem coletados, você pode [accent]Lançar[] selecionando setores próximos a partir do \ue827 [accent]Mapa[] no canto inferior direito. hint.launch = Quando recursos suficientes forem coletados, você pode [accent]Lançar[] selecionando setores próximos a partir do \ue827 [accent]Mapa[] no canto inferior direito.
hint.launch.mobile = Quando recursos suficientes forem coletados, você pode [accent]Lançar[] selecionando setores próximos a partir do \ue827 [accent]Mapa[] no \ue88c [accent]Menu[]. hint.launch.mobile = Quando recursos suficientes forem coletados, você pode [accent]Lançar[] selecionando setores próximos a partir do \ue827 [accent]Mapa[] no \ue88c [accent]Menu[].
hint.schematicSelect = Segure [accent][[F][] e arraste para selecionar blocos para copiar e colar.\n\n[accent][[Middle Click][] para copiar um bloco só. hint.schematicSelect = Segure [accent][[F][] e arraste para selecionar blocos para copiar e colar.\n\n[accent][[Middle Click][] para copiar um bloco só.
hint.rebuildSelect = Hold [accent][[B][] and drag to select destroyed block plans.\nThis will rebuild them automatically. hint.rebuildSelect = Segure [accent][[B][] e arraste para selecionar blocos destruídos.\nIsso irá reconstruí-los automaticamente.
hint.rebuildSelect.mobile = Select the \ue874 copy button, then tap the \ue80f rebuild button and drag to select destroyed block plans.\nThis will rebuild them automatically. hint.rebuildSelect.mobile = Select the \ue874 copy button, then tap the \ue80f rebuild button and drag to select destroyed block plans.\nThis will rebuild them automatically.
hint.conveyorPathfind = Segure [accent][[L-Ctrl][] enquanto arrasta as esteiras para gerar automaticamente um caminho. hint.conveyorPathfind = Segure [accent][[L-Ctrl][] enquanto arrasta as esteiras para gerar automaticamente um caminho.
hint.conveyorPathfind.mobile = Ative o \ue844 [accent]modo diagonal[] e arraste as esteiras para gerar automaticamente um caminho. hint.conveyorPathfind.mobile = Ative o \ue844 [accent]modo diagonal[] e arraste as esteiras para gerar automaticamente um caminho.
@@ -1874,53 +1908,53 @@ hint.presetDifficulty = Esse setor tem um [scarlet]alto nível de ameaça inimig
hint.coreIncinerate = Depois que o núcleo ter recebido até a capacidade máxima de um item, qualquer item do mesmo tipo que ele receber será [accent]incinerado[]. hint.coreIncinerate = Depois que o núcleo ter recebido até a capacidade máxima de um item, qualquer item do mesmo tipo que ele receber será [accent]incinerado[].
hint.factoryControl = Para definir a [accent]o local de saída[] de uma fábrica de unidades, clique em uma fábrica enquanto estiver no modo de comando, depois clique com o botão direito em um local.\nAs unidades produzidas por ela se moverão automaticamente para lá. hint.factoryControl = Para definir a [accent]o local de saída[] de uma fábrica de unidades, clique em uma fábrica enquanto estiver no modo de comando, depois clique com o botão direito em um local.\nAs unidades produzidas por ela se moverão automaticamente para lá.
hint.factoryControl.mobile = Para definir a [accent]o local de saída[] de uma fábrica de unidades, toque em uma fábrica enquanto estiver no modo de comando, depois toque em um local.\nAs unidades produzidas por ela se moverão automaticamente para lá. hint.factoryControl.mobile = Para definir a [accent]o local de saída[] de uma fábrica de unidades, toque em uma fábrica enquanto estiver no modo de comando, depois toque em um local.\nAs unidades produzidas por ela se moverão automaticamente para lá.
gz.mine = Move near the \uf8c4 [accent]copper ore[] on the ground and click to begin mining. gz.mine = Vá para perto do \uf8c4 [accent]minério de cobre[] no chão e clique para começar a minerar.
gz.mine.mobile = Move near the \uf8c4 [accent]copper ore[] on the ground and tap it to begin mining. gz.mine.mobile = Vá para perto do \uf8c4 [accent]minério de cobre[] no chão e toque nele para começar a minerar.
gz.research = Open the \ue875 tech tree.\nResearch the \uf870 [accent]Mechanical Drill[], then select it from the menu in the bottom right.\nClick on a copper patch to place it. gz.research = Abra a \ue875 árvore tecnológica.\nPesquise a \uf870 [accent]Broca mecânica[], Depois selecione-a pelo menu no canto inferior direito.\nClique no cobre para coloca-la.
gz.research.mobile = Open the \ue875 tech tree.\nResearch the \uf870 [accent]Mechanical Drill[], then select it from the menu in the bottom right.\nTap on a copper patch to place it.\n\nPress the \ue800 [accent]checkmark[] at the bottom right to confirm. gz.research.mobile = Abra a \ue875 árvore tecnológica.\nPesquise a \uf870 [accent]Broca mecânica[], Depois selecione-a pelo menu no canto inferior direito.\nClique no cobre para colocá-la.\n\nPressione a \ue800 [accent]confirmação[] no canto inferior direito para confirmar.
gz.conveyors = Research and place \uf896 [accent]conveyors[] to move the mined resources\nfrom drills to the core.\n\nClick and drag to place multiple conveyors.\n[accent]Scroll[] to rotate. gz.conveyors = Pesquise e coloque \uf896 [accent]esteiras[] para mover os recursos minerados\ndas brocas para o núcleo.\n\nClique e arraste para pôr multiplas esteiras.\n[accent]Scroll[] para rotacionar.
gz.conveyors.mobile = Research and place \uf896 [accent]conveyors[] to move the mined resources\nfrom drills to the core.\n\nHold down your finger for a second and drag to place multiple conveyors. gz.conveyors.mobile = Pesquise e coloque \uf896 [accent]esteiras[] para mover os recursos minerados\ndas brocas para o núcleo.\n\nSegure por um segundo e arraste para colocar múltiplas esteiras.
gz.drills = Expand the mining operation.\nPlace more Mechanical Drills.\nMine 100 copper. gz.drills = Expanda a mineração.\nColoque mais Brocas Mecânicas.\nMinere 100 cobres.
gz.lead = \uf837 [accent]Lead[] is another commonly used resource.\nSet up drills to mine lead. gz.lead = \uf837 [accent]Chumbo[] é outro recurso comumente usado.\nColoque brocas para minerar chumbo.
gz.moveup = \ue804 Move up for further objectives. gz.moveup = \ue804 Vá para cima para outros objetivos.
gz.turrets = Research and place 2 \uf861 [accent]Duo[] turrets to defend the core.\nDuo turrets require \uf838 [accent]ammo[] from conveyors. gz.turrets = Pesquise e coloque 2 torretas \uf861 [accent]Duo[] para defender o núcleo.\ntorretas Duo requerem \uf838 [accent]munição[] de esteiras.
gz.duoammo = Supply the Duo turrets with [accent]copper[], using conveyors. gz.duoammo = Abasteça as torretas Duo com [accent]cobre[], usando esteiras.
gz.walls = [accent]Walls[] can prevent oncoming damage from reaching buildings.\nPlace \uf8ae [accent]copper walls[] around the turrets. gz.walls = [accent]Muros[] podem previnir danos recebidos de atingir as construções.\nColoque \uf8ae [accent]muros de cobre[] em volta das torretas.
gz.defend = Enemy incoming, prepare to defend. gz.defend = Inimigos vindo, prepare-se para defender.
gz.aa = Flying units cannot easily be dispatched with standard turrets.\n\uf860 [accent]Scatter[] turrets provide excellent anti-air, but require \uf837 [accent]lead[] as ammo. gz.aa = Unidades flutuantes não podem ser destruidas facilmente por torretas comuns.\nTorretas\uf860 [accent]Scatter[] Proveem ótima defesa aérea, mas requerem \uf837 [accent]chumbo[] como munição.
gz.scatterammo = Supply the Scatter turret with [accent]lead[], using conveyors. gz.scatterammo = Abasteça a torreta Scatter com [accent]chumbo[], usando esteiras.
gz.supplyturret = [accent]Supply Turret gz.supplyturret = [accent]Abasteça a torreta
gz.zone1 = This is the enemy drop zone. gz.zone1 = Essa é a zona de spawn inimigo.
gz.zone2 = Anything built in the radius is destroyed when a wave starts. gz.zone2 = Qualquer coisa construida nesta área será destruida quando uma horda começar.
gz.zone3 = A wave will begin now.\nGet ready. gz.zone3 = Uma horda vai começar agora\nSe prepare.
gz.finish = Build more turrets, mine more resources,\nand defend against all the waves to [accent]capture the sector[]. gz.finish = Construa mais torretas, minere mais recursos,\ne se defenda de todas as hordas para [accent]capturar o setor[].
onset.mine = Click to mine \uf748 [accent]beryllium[] from walls.\n\nUse [accent][[WASD] to move. onset.mine = Clique para minerar \uf748 [accent]berílio[] das paredes.\n\nUse [accent][[WASD] para se mover.
onset.mine.mobile = Tap to mine \uf748 [accent]beryllium[] from walls. onset.mine.mobile = Toque para minerar \uf748 [accent]berílio[] das paredes.
onset.research = Open the \ue875 tech tree.\nResearch, then place a \uf73e [accent]turbine condenser[] on the vent.\nThis will generate [accent]power[]. onset.research = Abra a \ue875 árvore tecnológica.\nPesquise, e então coloque um \uf73e [accent]Condensador de Turbina[] na ventilação.\nIsso vai gerar [accent]energia[].
onset.bore = Research and place a \uf741 [accent]plasma bore[].\nThis automatically mines resources from walls. onset.bore = Pesquise e coloque uma \uf741 [accent]Mineradora de Plasma[].\nEla minera recursos das paredes automaticamente.
onset.power = To [accent]power[] the plasma bore, research and place a \uf73d [accent]beam node[].\nConnect the turbine condenser to the plasma bore. onset.power = Para[accent]alimentar[] a Mineradora de Plasma, pesquise e coloque uma \uf73d [accent]Célula de Feixe[].\nConecte o condensador de turbina ao minerador de plasma.
onset.ducts = Research and place \uf799 [accent]ducts[] to move the mined resources from the plasma bore to the core.\nClick and drag to place multiple ducts.\n[accent]Scroll[] to rotate. onset.ducts = Pesquise e coloque \uf799 [accent]dutos[] para mover recursos minerados da mineradora de plasma para o núcleo.\nClique e segure para colocar múltiplos dutos.\n[accent]Scroll[] para rotacionar.
onset.ducts.mobile = Research and place \uf799 [accent]ducts[] to move the mined resources from the plasma bore to the core.\n\nHold down your finger for a second and drag to place multiple ducts. onset.ducts.mobile = Pesquise e coloque \uf799 [accent]dutos[] para mover recursos minerados da mineradora de plasma para o núcleo.\n\nSegure por um segundo e arraste para colocar múltiplos dutos.
onset.moremine = Expand the mining operation.\nPlace more Plasma Bores and use beam nodes and ducts to support them.\nMine 200 beryllium. onset.moremine = Expanda a mineração.\nColoque mais Mineradoras de Plasma, use as Células de Feixe e dutos para isso.\nMinere 200 berílios.
onset.graphite = More complex blocks require \uf835 [accent]graphite[].\nSet up plasma bores to mine graphite. onset.graphite = Blocos mais complexos requerem \uf835 [accent]grafite[].\nColoque Mineradoras de Plasma para minerar grafite.
onset.research2 = Begin researching [accent]factories[].\nResearch the \uf74d [accent]cliff crusher[] and \uf779 [accent]silicon arc furnace[]. onset.research2 = Comece a pesquisar [accent]fábricas[].\nPesquise o \uf74d [accent]Esmagador de Penhasco[] e o \uf779 [accent]silicon arc furnace[].
onset.arcfurnace = The arc furnace needs \uf834 [accent]sand[] and \uf835 [accent]graphite[] to create \uf82f [accent]silicon[].\n[accent]Power[] is also required. onset.arcfurnace = O arc furnace precisa de \uf834 [accent]areia[] e \uf835 [accent]grafite[] para criar \uf82f [accent]silício[].\n[accent]Energia[] também é necessária.
onset.crusher = Use \uf74d [accent]cliff crushers[] to mine sand. onset.crusher = Use o \uf74d [accent]Esmagador de Areia[] para minerar areia.
onset.fabricator = Use [accent]units[] to explore the map, defend buildings, and attack the enemy. Research and place a \uf6a2 [accent]tank fabricator[]. onset.fabricator = Use [accent]unidades[] para explorar o mapa, defender construções e atacar o inimigo. Pesquise e coloque um \uf6a2 [accent]Fabricador de Tanques[].
onset.makeunit = Produce a unit.\nUse the "?" button to see selected factory requirements. onset.makeunit = Produza uma unidade.\nUse o botão "?" para ver os requisitos da fábrica selecionada.
onset.turrets = Units are effective, but [accent]turrets[] provide better defensive capabilities if used effectively.\nPlace a \uf6eb [accent]Breach[] turret.\nTurrets require \uf748 [accent]ammo[]. onset.turrets = Unidades são efetivas, mas [accent]torretas[] proveem melhores capacidades defensivas se usadas efetivamente.\nColoque uma torreta \uf6eb [accent]Breach[].\nTorretas requerem \uf748 [accent]munição[].
onset.turretammo = Supply the turret with [accent]beryllium ammo.[] onset.turretammo = Abasteça a torreta com [accent]munição de berílio.[]
onset.walls = [accent]Walls[] can prevent oncoming damage from reaching buildings.\nPlace some \uf6ee [accent]beryllium walls[] around the turret. onset.walls = [accent]Muros[] podem previnir danos recebidos de atingir as construções.\nColoque \uf6ee [accent]muros de berílio[] em volta das torretas.
onset.enemies = Enemy incoming, prepare to defend.
onset.defenses = [accent]Set up defenses:[lightgray] {0}
onset.attack = The enemy is vulnerable. Counter-attack.
onset.cores = New cores can be placed on [accent]core tiles[].\nNew cores function as forward bases and share a resource inventory with other cores.\nPlace a \uf725 core.
onset.detect = The enemy will be able to detect you in 2 minutes.\nSet up defenses, mining, and production.
#Don't translate these yet! onset.enemies = Inimigo vindo, se prepare.
onset.defenses = [accent]Set up defenses:[lightgray] {0}
onset.attack = O inimigo está vulnerável. Contra ataque.
onset.cores = Novos núcleos podem ser colocados em [accent]ladrilhos de núcleo[].\nNovos núcleos funcionam como bases avançadas e compartilham seus recursos com outros núcleos.\nColoque um \uf725 núcleo.
onset.detect = O inimigo poderá te detectar em 2 minutos.\nConstrua defesas, mineração e produção.
onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack. onset.commandmode = Hold [accent]shift[] to enter [accent]command mode[].\n[accent]Left-click and drag[] to select units.\n[accent]Right-click[] to order selected units to move or attack.
onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack. onset.commandmode.mobile = Press the [accent]command button[] to enter [accent]command mode[].\nHold down a finger, then [accent]drag[] to select units.\n[accent]Tap[] to order selected units to move or attack.
aegis.tungsten = Tungsten can be mined using an [accent]impact drill[].\nThis structure requires [accent]water[] and [accent]power[]. aegis.tungsten = Tungsten can be mined using an [accent]impact drill[].\nThis structure requires [accent]water[] and [accent]power[].
split.pickup = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(Default keys are [ and ] to pick up and drop) split.pickup = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(Default keys are [ and ] to pick up and drop)
split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.) split.pickup.mobile = Some blocks can be picked up by the core unit.\nPick up this [accent]container[] and place it onto the [accent]payload loader[].\n(To pick up or drop something, long-press it.)
split.acquire = You must acquire some tungsten to build units. split.acquire = You must acquire some tungsten to build units.
@@ -2276,7 +2310,7 @@ unit.emanate.description = Constrói estruturas para defender o Núcelo Acrópol
lst.read = Ler um número de uma célula de memória vinculada. lst.read = Ler um número de uma célula de memória vinculada.
lst.write = Escrever um número de uma célula de memória vinculada. lst.write = Escrever um número de uma célula de memória vinculada.
lst.print = Adiciona texto ao buffer de impressão.\nNão exibe nada até [accent]Print Flush[] ser usado. lst.print = Adiciona texto ao buffer de impressão.\nNão exibe nada até [accent]Print Flush[] ser usado.
lst.format = Replace next placeholder ("[accent]@[]") in text buffer with a value.\nExample:\n[accent]print "test @"\nformat "example" lst.format = Replace next placeholder in text buffer with a value.\nDoes not do anything if placeholder pattern is invalid.\nPlaceholder pattern: "{[accent]number 0-9[]}"\nExample:\n[accent]print "test {0}"\nformat "example"
lst.draw = Adicionar uma operação ao buffer de desenho.\nNão exibe nada até [accent]Draw Flush[] ser usado. lst.draw = Adicionar uma operação ao buffer de desenho.\nNão exibe nada até [accent]Draw Flush[] ser usado.
lst.drawflush = Liberar operações [accent]Draw[] enfileiradas para um display. lst.drawflush = Liberar operações [accent]Draw[] enfileiradas para um display.
lst.printflush = Liberar operações [accent]Print[] enfileiradas para um bloco de mensagem. lst.printflush = Liberar operações [accent]Print[] enfileiradas para um bloco de mensagem.
@@ -2299,6 +2333,8 @@ lst.getblock = Obtenha dados de blocos em qualquer local.
lst.setblock = Defina os dados do bloco em qualquer local. lst.setblock = Defina os dados do bloco em qualquer local.
lst.spawnunit = Gere uma unidade em um local. lst.spawnunit = Gere uma unidade em um local.
lst.applystatus = Aplique ou elimine um efeito de status de uma unidade. lst.applystatus = Aplique ou elimine um efeito de status de uma unidade.
lst.weathersense = Check if a type of weather is active.
lst.weatherset = Set the current state of a type of weather.
lst.spawnwave = Gerar uma onda. lst.spawnwave = Gerar uma onda.
lst.explosion = Crie uma explosão em um local. lst.explosion = Crie uma explosão em um local.
lst.setrate = Defina a velocidade de execução do processador em instruções/tick. lst.setrate = Defina a velocidade de execução do processador em instruções/tick.

View File

@@ -599,7 +599,7 @@ filter.option.floor2 = Chão secundário
filter.option.threshold2 = Margem secundária filter.option.threshold2 = Margem secundária
filter.option.radius = Raio filter.option.radius = Raio
filter.option.percentile = Percentual filter.option.percentile = Percentual
locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: @[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable) locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: {0}[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable)
locales.deletelocale = Are you sure you want to delete this locale bundle? locales.deletelocale = Are you sure you want to delete this locale bundle?
locales.applytoall = Apply Changes To All Locales locales.applytoall = Apply Changes To All Locales
locales.addtoother = Add To Other Locales locales.addtoother = Add To Other Locales
@@ -671,6 +671,7 @@ marker.shape.name = Shape
marker.text.name = Text marker.text.name = Text
marker.line.name = Line marker.line.name = Line
marker.quad.name = Quad marker.quad.name = Quad
marker.texture.name = Texture
marker.background = Background marker.background = Background
marker.outline = Outline marker.outline = Outline
objective.research = [accent]Research:\n[]{0}[lightgray]{1} objective.research = [accent]Research:\n[]{0}[lightgray]{1}
@@ -717,7 +718,7 @@ error.any = Erro de rede desconhecido.
error.bloom = Falha ao inicializar bloom.\nSeu aparelho talvez não o suporte. error.bloom = Falha ao inicializar bloom.\nSeu aparelho talvez não o suporte.
weather.rain.name = Rain weather.rain.name = Rain
weather.snow.name = Snow weather.snowing.name = Snow
weather.sandstorm.name = Sandstorm weather.sandstorm.name = Sandstorm
weather.sporestorm.name = Sporestorm weather.sporestorm.name = Sporestorm
weather.fog.name = Fog weather.fog.name = Fog
@@ -972,17 +973,46 @@ stat.immunities = Immunities
stat.healing = Healing stat.healing = Healing
ability.forcefield = Force Field ability.forcefield = Force Field
ability.forcefield.description = Projects a force shield that absorbs bullets
ability.repairfield = Repair Field ability.repairfield = Repair Field
ability.repairfield.description = Repairs nearby units
ability.statusfield = Status Field ability.statusfield = Status Field
ability.statusfield.description = Applies a status effect to nearby units
ability.unitspawn = Factory ability.unitspawn = Factory
ability.unitspawn.description = Constructs units
ability.shieldregenfield = Shield Regen Field ability.shieldregenfield = Shield Regen Field
ability.shieldregenfield.description = Regenerates shields of nearby units
ability.movelightning = Movement Lightning ability.movelightning = Movement Lightning
ability.movelightning.description = Releases lightning while moving
ability.armorplate = Armor Plate
ability.armorplate.description = Reduces damage taken while shooting
ability.shieldarc = Shield Arc ability.shieldarc = Shield Arc
ability.shieldarc.description = Projects a force shield in an arc that absorbs bullets
ability.suppressionfield = Regen Suppression Field ability.suppressionfield = Regen Suppression Field
ability.suppressionfield.description = Stops nearby repair buildings
ability.energyfield = Energy Field ability.energyfield = Energy Field
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}% ability.energyfield.description = Zaps nearby enemies
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0} ability.energyfield.healdescription = Zaps nearby enemies and heals allies
ability.regen = Regeneration ability.regen = Regeneration
ability.regen.description = Regenerates own health over time
ability.liquidregen = Liquid Absorption
ability.liquidregen.description = Absorbs liquid to heal itself
ability.spawndeath = Death Spawns
ability.spawndeath.description = Releases units on death
ability.liquidexplode = Death Spillage
ability.liquidexplode.description = Spills liquid on death
ability.stat.firingrate = [stat]{0}/sec[lightgray] firing rate
ability.stat.regen = [stat]{0}[lightgray] health/sec
ability.stat.shield = [stat]{0}[lightgray] shield
ability.stat.repairspeed = [stat]{0}/sec[lightgray] repair speed
ability.stat.slurpheal = [stat]{0}[lightgray] health/liquid unit
ability.stat.cooldown = [stat]{0} sec[lightgray] cooldown
ability.stat.maxtargets = [stat]{0}[lightgray] max targets
ability.stat.sametypehealmultiplier = [stat]{0}%[lightgray] same type repair amount
ability.stat.damagereduction = [stat]{0}%[lightgray] damage reduction
ability.stat.minspeed = [stat]{0} tiles/sec[lightgray] min speed
ability.stat.duration = [stat]{0} sec[lightgray] duration
ability.stat.buildtime = [stat]{0} sec[lightgray] build time
bar.onlycoredeposit = Only Core Depositing Allowed bar.onlycoredeposit = Only Core Depositing Allowed
@@ -1179,15 +1209,16 @@ keybind.unit_stance_hold_fire.name = Unit Stance: Hold Fire
keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target
keybind.unit_stance_patrol.name = Unit Stance: Patrol keybind.unit_stance_patrol.name = Unit Stance: Patrol
keybind.unit_stance_ram.name = Unit Stance: Ram keybind.unit_stance_ram.name = Unit Stance: Ram
keybind.unit_command_move = Unit Command: Move keybind.unit_command_move.name = Unit Command: Move
keybind.unit_command_repair = Unit Command: Repair keybind.unit_command_repair.name = Unit Command: Repair
keybind.unit_command_rebuild = Unit Command: Rebuild keybind.unit_command_rebuild.name = Unit Command: Rebuild
keybind.unit_command_assist = Unit Command: Assist keybind.unit_command_assist.name = Unit Command: Assist
keybind.unit_command_mine = Unit Command: Mine keybind.unit_command_mine.name = Unit Command: Mine
keybind.unit_command_boost = Unit Command: Boost keybind.unit_command_boost.name = Unit Command: Boost
keybind.unit_command_load_units = Unit Command: Load Units keybind.unit_command_load_units.name = Unit Command: Load Units
keybind.unit_command_load_blocks = Unit Command: Load Blocks keybind.unit_command_load_blocks.name = Unit Command: Load Blocks
keybind.unit_command_unload_payload = Unit Command: Unload Payload keybind.unit_command_unload_payload.name = Unit Command: Unload Payload
keybind.unit_command_enter_payload.name = Unit Command: Enter Payload
keybind.rebuild_select.name = Rebuild Region keybind.rebuild_select.name = Rebuild Region
keybind.schematic_select.name = Selecionar região keybind.schematic_select.name = Selecionar região
keybind.schematic_menu.name = Menu esquemático keybind.schematic_menu.name = Menu esquemático
@@ -1285,6 +1316,7 @@ rules.unitdamagemultiplier = Multiplicador de dano de Unidade
rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier
rules.solarmultiplier = Solar Power Multiplier rules.solarmultiplier = Solar Power Multiplier
rules.unitcapvariable = Cores Contribute To Unit Cap rules.unitcapvariable = Cores Contribute To Unit Cap
rules.unitpayloadsexplode = Carried Payloads Explode With The Unit
rules.unitcap = Base Unit Cap rules.unitcap = Base Unit Cap
rules.limitarea = Limit Map Area rules.limitarea = Limit Map Area
rules.enemycorebuildradius = Raio de "Não-criação" de core inimigo:[lightgray] (blocos) rules.enemycorebuildradius = Raio de "Não-criação" de core inimigo:[lightgray] (blocos)
@@ -1317,6 +1349,8 @@ rules.weather = Weather
rules.weather.frequency = Frequency: rules.weather.frequency = Frequency:
rules.weather.always = Always rules.weather.always = Always
rules.weather.duration = Duration: rules.weather.duration = Duration:
rules.placerangecheck.info = Prevents players from placing anything near enemy buildings. When trying to place a turret, the range is increased, so the turret will not be able to reach the enemy.
rules.onlydepositcore.info = Prevents units from depositing items into any buildings except cores.
content.item.name = Itens content.item.name = Itens
content.liquid.name = Liquidos content.liquid.name = Liquidos
@@ -2243,7 +2277,7 @@ unit.emanate.description = Builds structures to defend the Acropolis core. Repai
lst.read = Read a number from a linked memory cell. lst.read = Read a number from a linked memory cell.
lst.write = Write a number to a linked memory cell. lst.write = Write a number to a linked memory cell.
lst.print = Add text to the print buffer.\nDoes not display anything until [accent]Print Flush[] is used. lst.print = Add text to the print buffer.\nDoes not display anything until [accent]Print Flush[] is used.
lst.format = Replace next placeholder ("[accent]@[]") in text buffer with a value.\nExample:\n[accent]print "test @"\nformat "example" lst.format = Replace next placeholder in text buffer with a value.\nDoes not do anything if placeholder pattern is invalid.\nPlaceholder pattern: "{[accent]number 0-9[]}"\nExample:\n[accent]print "test {0}"\nformat "example"
lst.draw = Add an operation to the drawing buffer.\nDoes not display anything until [accent]Draw Flush[] is used. lst.draw = Add an operation to the drawing buffer.\nDoes not display anything until [accent]Draw Flush[] is used.
lst.drawflush = Flush queued [accent]Draw[] operations to a display. lst.drawflush = Flush queued [accent]Draw[] operations to a display.
lst.printflush = Flush queued [accent]Print[] operations to a message block. lst.printflush = Flush queued [accent]Print[] operations to a message block.
@@ -2266,6 +2300,8 @@ lst.getblock = Get tile data at any location.
lst.setblock = Set tile data at any location. lst.setblock = Set tile data at any location.
lst.spawnunit = Spawn unit at a location. lst.spawnunit = Spawn unit at a location.
lst.applystatus = Apply or clear a status effect from a uniut. lst.applystatus = Apply or clear a status effect from a uniut.
lst.weathersense = Check if a type of weather is active.
lst.weatherset = Set the current state of a type of weather.
lst.spawnwave = Simulate a wave being spawned at a arbitrary location.\nWill not increment the wave counter. lst.spawnwave = Simulate a wave being spawned at a arbitrary location.\nWill not increment the wave counter.
lst.explosion = Create an explosion at a location. lst.explosion = Create an explosion at a location.
lst.setrate = Set processor execution speed in instructions/tick. lst.setrate = Set processor execution speed in instructions/tick.

View File

@@ -606,7 +606,7 @@ filter.option.floor2 = Podea Secundară
filter.option.threshold2 = Cantitate Secundară filter.option.threshold2 = Cantitate Secundară
filter.option.radius = Rază filter.option.radius = Rază
filter.option.percentile = Procent filter.option.percentile = Procent
locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: @[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable) locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: {0}[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable)
locales.deletelocale = Are you sure you want to delete this locale bundle? locales.deletelocale = Are you sure you want to delete this locale bundle?
locales.applytoall = Apply Changes To All Locales locales.applytoall = Apply Changes To All Locales
locales.addtoother = Add To Other Locales locales.addtoother = Add To Other Locales
@@ -678,6 +678,7 @@ marker.shape.name = Shape
marker.text.name = Text marker.text.name = Text
marker.line.name = Line marker.line.name = Line
marker.quad.name = Quad marker.quad.name = Quad
marker.texture.name = Texture
marker.background = Background marker.background = Background
marker.outline = Outline marker.outline = Outline
objective.research = [accent]Research:\n[]{0}[lightgray]{1} objective.research = [accent]Research:\n[]{0}[lightgray]{1}
@@ -725,7 +726,7 @@ error.any = Eroare de rețea necunoscută.
error.bloom = Inițializarea strălucirii a eșuat.\nS-ar putea ca dispozitivul tău să nu suporte funcția. error.bloom = Inițializarea strălucirii a eșuat.\nS-ar putea ca dispozitivul tău să nu suporte funcția.
weather.rain.name = Ploaie weather.rain.name = Ploaie
weather.snow.name = Ninsoare weather.snowing.name = Ninsoare
weather.sandstorm.name = Furtună de nisip weather.sandstorm.name = Furtună de nisip
weather.sporestorm.name = Furtună de spori weather.sporestorm.name = Furtună de spori
weather.fog.name = Ceață weather.fog.name = Ceață
@@ -983,17 +984,46 @@ stat.immunities = Immunities
stat.healing = Reparare stat.healing = Reparare
ability.forcefield = Câmp de Forță ability.forcefield = Câmp de Forță
ability.forcefield.description = Projects a force shield that absorbs bullets
ability.repairfield = Câmp de Reparare ability.repairfield = Câmp de Reparare
ability.repairfield.description = Repairs nearby units
ability.statusfield = Câmp de Stare ability.statusfield = Câmp de Stare
ability.statusfield.description = Applies a status effect to nearby units
ability.unitspawn = Fabrică ability.unitspawn = Fabrică
ability.unitspawn.description = Constructs units
ability.shieldregenfield = Câmp Regenerare Scut ability.shieldregenfield = Câmp Regenerare Scut
ability.shieldregenfield.description = Regenerates shields of nearby units
ability.movelightning = Mișcare Fulger ability.movelightning = Mișcare Fulger
ability.movelightning.description = Releases lightning while moving
ability.armorplate = Armor Plate
ability.armorplate.description = Reduces damage taken while shooting
ability.shieldarc = Shield Arc ability.shieldarc = Shield Arc
ability.shieldarc.description = Projects a force shield in an arc that absorbs bullets
ability.suppressionfield = Regen Suppression Field ability.suppressionfield = Regen Suppression Field
ability.suppressionfield.description = Stops nearby repair buildings
ability.energyfield = Câmp de Energie ability.energyfield = Câmp de Energie
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}% ability.energyfield.description = Zaps nearby enemies
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0} ability.energyfield.healdescription = Zaps nearby enemies and heals allies
ability.regen = Regeneration ability.regen = Regeneration
ability.regen.description = Regenerates own health over time
ability.liquidregen = Liquid Absorption
ability.liquidregen.description = Absorbs liquid to heal itself
ability.spawndeath = Death Spawns
ability.spawndeath.description = Releases units on death
ability.liquidexplode = Death Spillage
ability.liquidexplode.description = Spills liquid on death
ability.stat.firingrate = [stat]{0}/sec[lightgray] firing rate
ability.stat.regen = [stat]{0}[lightgray] health/sec
ability.stat.shield = [stat]{0}[lightgray] shield
ability.stat.repairspeed = [stat]{0}/sec[lightgray] repair speed
ability.stat.slurpheal = [stat]{0}[lightgray] health/liquid unit
ability.stat.cooldown = [stat]{0} sec[lightgray] cooldown
ability.stat.maxtargets = [stat]{0}[lightgray] max targets
ability.stat.sametypehealmultiplier = [stat]{0}%[lightgray] same type repair amount
ability.stat.damagereduction = [stat]{0}%[lightgray] damage reduction
ability.stat.minspeed = [stat]{0} tiles/sec[lightgray] min speed
ability.stat.duration = [stat]{0} sec[lightgray] duration
ability.stat.buildtime = [stat]{0} sec[lightgray] build time
bar.onlycoredeposit = Only Core Depositing Allowed bar.onlycoredeposit = Only Core Depositing Allowed
@@ -1190,15 +1220,16 @@ keybind.unit_stance_hold_fire.name = Unit Stance: Hold Fire
keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target
keybind.unit_stance_patrol.name = Unit Stance: Patrol keybind.unit_stance_patrol.name = Unit Stance: Patrol
keybind.unit_stance_ram.name = Unit Stance: Ram keybind.unit_stance_ram.name = Unit Stance: Ram
keybind.unit_command_move = Unit Command: Move keybind.unit_command_move.name = Unit Command: Move
keybind.unit_command_repair = Unit Command: Repair keybind.unit_command_repair.name = Unit Command: Repair
keybind.unit_command_rebuild = Unit Command: Rebuild keybind.unit_command_rebuild.name = Unit Command: Rebuild
keybind.unit_command_assist = Unit Command: Assist keybind.unit_command_assist.name = Unit Command: Assist
keybind.unit_command_mine = Unit Command: Mine keybind.unit_command_mine.name = Unit Command: Mine
keybind.unit_command_boost = Unit Command: Boost keybind.unit_command_boost.name = Unit Command: Boost
keybind.unit_command_load_units = Unit Command: Load Units keybind.unit_command_load_units.name = Unit Command: Load Units
keybind.unit_command_load_blocks = Unit Command: Load Blocks keybind.unit_command_load_blocks.name = Unit Command: Load Blocks
keybind.unit_command_unload_payload = Unit Command: Unload Payload keybind.unit_command_unload_payload.name = Unit Command: Unload Payload
keybind.unit_command_enter_payload.name = Unit Command: Enter Payload
keybind.rebuild_select.name = Rebuild Region keybind.rebuild_select.name = Rebuild Region
keybind.schematic_select.name = Selectează Regiunea keybind.schematic_select.name = Selectează Regiunea
keybind.schematic_menu.name = Meniu Scheme keybind.schematic_menu.name = Meniu Scheme
@@ -1296,6 +1327,7 @@ rules.unitdamagemultiplier = Multiplicatorul Deteriorării Unităților
rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier
rules.solarmultiplier = Solar Power Multiplier rules.solarmultiplier = Solar Power Multiplier
rules.unitcapvariable = Nucleele Contribuie la Limita Unităților rules.unitcapvariable = Nucleele Contribuie la Limita Unităților
rules.unitpayloadsexplode = Carried Payloads Explode With The Unit
rules.unitcap = Limita de Bază a Unităților rules.unitcap = Limita de Bază a Unităților
rules.limitarea = Limit Map Area rules.limitarea = Limit Map Area
rules.enemycorebuildradius = Interzisă Construirea în Jurul Nucleului Inamic:[lightgray] (pătrate) rules.enemycorebuildradius = Interzisă Construirea în Jurul Nucleului Inamic:[lightgray] (pătrate)
@@ -1328,6 +1360,8 @@ rules.weather = Vreme
rules.weather.frequency = Frevență: rules.weather.frequency = Frevență:
rules.weather.always = Încontinuu rules.weather.always = Încontinuu
rules.weather.duration = Durată: rules.weather.duration = Durată:
rules.placerangecheck.info = Prevents players from placing anything near enemy buildings. When trying to place a turret, the range is increased, so the turret will not be able to reach the enemy.
rules.onlydepositcore.info = Prevents units from depositing items into any buildings except cores.
content.item.name = Materiale content.item.name = Materiale
content.liquid.name = Lichide content.liquid.name = Lichide
@@ -2260,7 +2294,7 @@ unit.emanate.description = Builds structures to defend the Acropolis core. Repai
lst.read = Citește un număr dintr-o celulă de memorie conectată. lst.read = Citește un număr dintr-o celulă de memorie conectată.
lst.write = Scrie un număr într-o celulă de memorie conectată. lst.write = Scrie un număr într-o celulă de memorie conectată.
lst.print = Adaugă text în bufferul de tipărire.\nNu tipărește decât când se execută [accent]Print Flush[]. lst.print = Adaugă text în bufferul de tipărire.\nNu tipărește decât când se execută [accent]Print Flush[].
lst.format = Replace next placeholder ("[accent]@[]") in text buffer with a value.\nExample:\n[accent]print "test @"\nformat "example" lst.format = Replace next placeholder in text buffer with a value.\nDoes not do anything if placeholder pattern is invalid.\nPlaceholder pattern: "{[accent]number 0-9[]}"\nExample:\n[accent]print "test {0}"\nformat "example"
lst.draw = Adaugă o operație în bufferul de desenare.\nNu afișează decât când se execută [accent]Draw Flush[]. lst.draw = Adaugă o operație în bufferul de desenare.\nNu afișează decât când se execută [accent]Draw Flush[].
lst.drawflush = Afișează pe un monitor instrucțiunile [accent]Draw[] aflate în așteptare. lst.drawflush = Afișează pe un monitor instrucțiunile [accent]Draw[] aflate în așteptare.
lst.printflush = Tipărește într-un bloc Mesaj instrucțiunile [accent]Print[] aflate în așteptare. lst.printflush = Tipărește într-un bloc Mesaj instrucțiunile [accent]Print[] aflate în așteptare.
@@ -2283,6 +2317,8 @@ lst.getblock = Get tile data at any location.
lst.setblock = Set tile data at any location. lst.setblock = Set tile data at any location.
lst.spawnunit = Spawn unit at a location. lst.spawnunit = Spawn unit at a location.
lst.applystatus = Apply or clear a status effect from a uniut. lst.applystatus = Apply or clear a status effect from a uniut.
lst.weathersense = Check if a type of weather is active.
lst.weatherset = Set the current state of a type of weather.
lst.spawnwave = Simulate a wave being spawned at a arbitrary location.\nWill not increment the wave counter. lst.spawnwave = Simulate a wave being spawned at a arbitrary location.\nWill not increment the wave counter.
lst.explosion = Create an explosion at a location. lst.explosion = Create an explosion at a location.
lst.setrate = Set processor execution speed in instructions/tick. lst.setrate = Set processor execution speed in instructions/tick.

View File

@@ -606,7 +606,7 @@ filter.option.floor2 = Вторая поверхность
filter.option.threshold2 = Вторичный предельный порог filter.option.threshold2 = Вторичный предельный порог
filter.option.radius = Радиус filter.option.radius = Радиус
filter.option.percentile = Процентиль filter.option.percentile = Процентиль
locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: @[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable) locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: {0}[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable)
locales.deletelocale = Are you sure you want to delete this locale bundle? locales.deletelocale = Are you sure you want to delete this locale bundle?
locales.applytoall = Apply Changes To All Locales locales.applytoall = Apply Changes To All Locales
locales.addtoother = Add To Other Locales locales.addtoother = Add To Other Locales
@@ -678,6 +678,7 @@ marker.shape.name = Фигура
marker.text.name = Текст marker.text.name = Текст
marker.line.name = Line marker.line.name = Line
marker.quad.name = Quad marker.quad.name = Quad
marker.texture.name = Texture
marker.background = Фон marker.background = Фон
marker.outline = Контур marker.outline = Контур
objective.research = [accent]Исследуйте:\n[]{0}[lightgray]{1} objective.research = [accent]Исследуйте:\n[]{0}[lightgray]{1}
@@ -725,7 +726,7 @@ error.any = Неизвестная сетевая ошибка.
error.bloom = Не удалось инициализировать свечение (Bloom).\nВозможно, ваше устройство не поддерживает его. error.bloom = Не удалось инициализировать свечение (Bloom).\nВозможно, ваше устройство не поддерживает его.
weather.rain.name = Дождь weather.rain.name = Дождь
weather.snow.name = Снегопад weather.snowing.name = Снегопад
weather.sandstorm.name = Песчаная буря weather.sandstorm.name = Песчаная буря
weather.sporestorm.name = Споровая буря weather.sporestorm.name = Споровая буря
weather.fog.name = Туман weather.fog.name = Туман
@@ -984,17 +985,46 @@ stat.immunities = Невосприимчив
stat.healing = Ремонт stat.healing = Ремонт
ability.forcefield = Силовое поле ability.forcefield = Силовое поле
ability.forcefield.description = Projects a force shield that absorbs bullets
ability.repairfield = Ремонтирующее поле ability.repairfield = Ремонтирующее поле
ability.repairfield.description = Repairs nearby units
ability.statusfield = Усиливающее поле ability.statusfield = Усиливающее поле
ability.statusfield.description = Applies a status effect to nearby units
ability.unitspawn = Завод единиц <20> ability.unitspawn = Завод единиц <20>
ability.unitspawn.description = Constructs units
ability.shieldregenfield = Поле восстановления щита ability.shieldregenfield = Поле восстановления щита
ability.shieldregenfield.description = Regenerates shields of nearby units
ability.movelightning = Молнии при движении ability.movelightning = Молнии при движении
ability.movelightning.description = Releases lightning while moving
ability.armorplate = Armor Plate
ability.armorplate.description = Reduces damage taken while shooting
ability.shieldarc = Дуговой щит ability.shieldarc = Дуговой щит
ability.shieldarc.description = Projects a force shield in an arc that absorbs bullets
ability.suppressionfield = Поле подавления регенерации ability.suppressionfield = Поле подавления регенерации
ability.suppressionfield.description = Stops nearby repair buildings
ability.energyfield = Энергетическое поле ability.energyfield = Энергетическое поле
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}% ability.energyfield.description = Zaps nearby enemies
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0} ability.energyfield.healdescription = Zaps nearby enemies and heals allies
ability.regen = Regeneration ability.regen = Regeneration
ability.regen.description = Regenerates own health over time
ability.liquidregen = Liquid Absorption
ability.liquidregen.description = Absorbs liquid to heal itself
ability.spawndeath = Death Spawns
ability.spawndeath.description = Releases units on death
ability.liquidexplode = Death Spillage
ability.liquidexplode.description = Spills liquid on death
ability.stat.firingrate = [stat]{0}/sec[lightgray] firing rate
ability.stat.regen = [stat]{0}[lightgray] health/sec
ability.stat.shield = [stat]{0}[lightgray] shield
ability.stat.repairspeed = [stat]{0}/sec[lightgray] repair speed
ability.stat.slurpheal = [stat]{0}[lightgray] health/liquid unit
ability.stat.cooldown = [stat]{0} sec[lightgray] cooldown
ability.stat.maxtargets = [stat]{0}[lightgray] max targets
ability.stat.sametypehealmultiplier = [stat]{0}%[lightgray] same type repair amount
ability.stat.damagereduction = [stat]{0}%[lightgray] damage reduction
ability.stat.minspeed = [stat]{0} tiles/sec[lightgray] min speed
ability.stat.duration = [stat]{0} sec[lightgray] duration
ability.stat.buildtime = [stat]{0} sec[lightgray] build time
bar.onlycoredeposit = Доступен перенос только в ядро bar.onlycoredeposit = Доступен перенос только в ядро
bar.drilltierreq = Требуется бур получше bar.drilltierreq = Требуется бур получше
@@ -1190,15 +1220,16 @@ keybind.unit_stance_hold_fire.name = Unit Stance: Hold Fire
keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target
keybind.unit_stance_patrol.name = Unit Stance: Patrol keybind.unit_stance_patrol.name = Unit Stance: Patrol
keybind.unit_stance_ram.name = Unit Stance: Ram keybind.unit_stance_ram.name = Unit Stance: Ram
keybind.unit_command_move = Unit Command: Move keybind.unit_command_move.name = Unit Command: Move
keybind.unit_command_repair = Unit Command: Repair keybind.unit_command_repair.name = Unit Command: Repair
keybind.unit_command_rebuild = Unit Command: Rebuild keybind.unit_command_rebuild.name = Unit Command: Rebuild
keybind.unit_command_assist = Unit Command: Assist keybind.unit_command_assist.name = Unit Command: Assist
keybind.unit_command_mine = Unit Command: Mine keybind.unit_command_mine.name = Unit Command: Mine
keybind.unit_command_boost = Unit Command: Boost keybind.unit_command_boost.name = Unit Command: Boost
keybind.unit_command_load_units = Unit Command: Load Units keybind.unit_command_load_units.name = Unit Command: Load Units
keybind.unit_command_load_blocks = Unit Command: Load Blocks keybind.unit_command_load_blocks.name = Unit Command: Load Blocks
keybind.unit_command_unload_payload = Unit Command: Unload Payload keybind.unit_command_unload_payload.name = Unit Command: Unload Payload
keybind.unit_command_enter_payload.name = Unit Command: Enter Payload
keybind.rebuild_select.name = Перестроить в области keybind.rebuild_select.name = Перестроить в области
keybind.schematic_select.name = Выбрать область keybind.schematic_select.name = Выбрать область
keybind.schematic_menu.name = Меню схем keybind.schematic_menu.name = Меню схем
@@ -1266,7 +1297,7 @@ rules.invaliddata = Invalid clipboard data.
rules.hidebannedblocks = Скрыть запрещенные блоки rules.hidebannedblocks = Скрыть запрещенные блоки
rules.infiniteresources = Бесконечные ресурсы rules.infiniteresources = Бесконечные ресурсы
rules.onlydepositcore = Разрешен перенос только в ядро rules.onlydepositcore = Разрешен перенос только в ядро
rules.derelictrepair = Allow Derelict Block Repair rules.derelictrepair = Разрешить починку покинутых построек
rules.reactorexplosions = Взрывы реакторов rules.reactorexplosions = Взрывы реакторов
rules.coreincinerates = Ядро сжигает избыток ресурсов rules.coreincinerates = Ядро сжигает избыток ресурсов
rules.disableworldprocessors = Отключить мировые процессоры rules.disableworldprocessors = Отключить мировые процессоры
@@ -1296,6 +1327,7 @@ rules.unitdamagemultiplier = Множитель урона боев. ед.
rules.unitcrashdamagemultiplier = Множитель урона от падения боев. ед. rules.unitcrashdamagemultiplier = Множитель урона от падения боев. ед.
rules.solarmultiplier = Множитель солнечной энергии rules.solarmultiplier = Множитель солнечной энергии
rules.unitcapvariable = Ядра увеличивают лимит единиц rules.unitcapvariable = Ядра увеличивают лимит единиц
rules.unitpayloadsexplode = Carried Payloads Explode With The Unit
rules.unitcap = Начальный лимит единиц rules.unitcap = Начальный лимит единиц
rules.limitarea = Ограничить область карты rules.limitarea = Ограничить область карты
rules.enemycorebuildradius = Радиус защиты враж. ядер:[lightgray] (блок.) rules.enemycorebuildradius = Радиус защиты враж. ядер:[lightgray] (блок.)
@@ -1328,6 +1360,8 @@ rules.weather = Погода
rules.weather.frequency = Периодичность: rules.weather.frequency = Периодичность:
rules.weather.always = Всегда rules.weather.always = Всегда
rules.weather.duration = Длительность: rules.weather.duration = Длительность:
rules.placerangecheck.info = Prevents players from placing anything near enemy buildings. When trying to place a turret, the range is increased, so the turret will not be able to reach the enemy.
rules.onlydepositcore.info = Prevents units from depositing items into any buildings except cores.
content.item.name = Предметы content.item.name = Предметы
content.liquid.name = Жидкости content.liquid.name = Жидкости
@@ -2262,7 +2296,7 @@ unit.emanate.description = Защищает ядро «Акрополь» от
lst.read = Считывает число из соединённой ячейки памяти. lst.read = Считывает число из соединённой ячейки памяти.
lst.write = Записывает число в соединённую ячейку памяти. lst.write = Записывает число в соединённую ячейку памяти.
lst.print = Добавляет текст в текстовый буфер. Ничего не отображает, пока не будет вызван [accent]Print Flush[]. lst.print = Добавляет текст в текстовый буфер. Ничего не отображает, пока не будет вызван [accent]Print Flush[].
lst.format = Replace next placeholder ("[accent]@[]") in text buffer with a value.\nExample:\n[accent]print "test @"\nformat "example" lst.format = Replace next placeholder in text buffer with a value.\nDoes not do anything if placeholder pattern is invalid.\nPlaceholder pattern: "{[accent]number 0-9[]}"\nExample:\n[accent]print "test {0}"\nformat "example"
lst.draw = Добавляет операцию в буфер отрисовки. Ничего не отображает, пока не будет вызван [accent]Draw Flush[]. lst.draw = Добавляет операцию в буфер отрисовки. Ничего не отображает, пока не будет вызван [accent]Draw Flush[].
lst.drawflush = Сбрасывает буфер [accent]Draw[] операций на дисплей. lst.drawflush = Сбрасывает буфер [accent]Draw[] операций на дисплей.
lst.printflush = Сбрасывает буфер [accent]Print[] операций в блок-сообщение. lst.printflush = Сбрасывает буфер [accent]Print[] операций в блок-сообщение.
@@ -2285,6 +2319,8 @@ lst.getblock = Получает данные о плитке в любом ме
lst.setblock = Устанавливает плитку в любом месте. lst.setblock = Устанавливает плитку в любом месте.
lst.spawnunit = Создает боевую единицу на локации. lst.spawnunit = Создает боевую единицу на локации.
lst.applystatus = Применяет или снимает эффект статуса с боевой единицы. lst.applystatus = Применяет или снимает эффект статуса с боевой единицы.
lst.weathersense = Check if a type of weather is active.
lst.weatherset = Set the current state of a type of weather.
lst.spawnwave = Имитация волны, создаваемой в произвольном месте.\nСчетчик волн не увеличивается. lst.spawnwave = Имитация волны, создаваемой в произвольном месте.\nСчетчик волн не увеличивается.
lst.explosion = Создает взрыв на локации. lst.explosion = Создает взрыв на локации.
lst.setrate = Устанавливает скорость выполнения процессора в инструкциях/тиках. lst.setrate = Устанавливает скорость выполнения процессора в инструкциях/тиках.

View File

@@ -606,7 +606,7 @@ filter.option.floor2 = Drugi Pod
filter.option.threshold2 = Secondary Threshold filter.option.threshold2 = Secondary Threshold
filter.option.radius = Radius filter.option.radius = Radius
filter.option.percentile = Percentile filter.option.percentile = Percentile
locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: @[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable) locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: {0}[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable)
locales.deletelocale = Are you sure you want to delete this locale bundle? locales.deletelocale = Are you sure you want to delete this locale bundle?
locales.applytoall = Apply Changes To All Locales locales.applytoall = Apply Changes To All Locales
locales.addtoother = Add To Other Locales locales.addtoother = Add To Other Locales
@@ -678,6 +678,7 @@ marker.shape.name = Oblik
marker.text.name = Tekst marker.text.name = Tekst
marker.line.name = Line marker.line.name = Line
marker.quad.name = Quad marker.quad.name = Quad
marker.texture.name = Texture
marker.background = Pozadina marker.background = Pozadina
marker.outline = Outline marker.outline = Outline
objective.research = [accent]Izuči:\n[]{0}[lightgray]{1} objective.research = [accent]Izuči:\n[]{0}[lightgray]{1}
@@ -726,7 +727,7 @@ error.any = Nepoznata greška u mreži.
error.bloom = Failed to initialize bloom.\nYour device may not support it. error.bloom = Failed to initialize bloom.\nYour device may not support it.
weather.rain.name = Kiša weather.rain.name = Kiša
weather.snow.name = Sneg weather.snowing.name = Sneg
weather.sandstorm.name = Peščana Oluja weather.sandstorm.name = Peščana Oluja
weather.sporestorm.name = Sporna Oluja weather.sporestorm.name = Sporna Oluja
weather.fog.name = Magla weather.fog.name = Magla
@@ -985,17 +986,46 @@ stat.immunities = Imuniteti
stat.healing = Popravlja stat.healing = Popravlja
ability.forcefield = Polje Sile ability.forcefield = Polje Sile
ability.forcefield.description = Projects a force shield that absorbs bullets
ability.repairfield = Polje Popravke ability.repairfield = Polje Popravke
ability.repairfield.description = Repairs nearby units
ability.statusfield = Statusno Polje ability.statusfield = Statusno Polje
ability.statusfield.description = Applies a status effect to nearby units
ability.unitspawn = Fabrika ability.unitspawn = Fabrika
ability.unitspawn.description = Constructs units
ability.shieldregenfield = Brzina Obnove Štita ability.shieldregenfield = Brzina Obnove Štita
ability.shieldregenfield.description = Regenerates shields of nearby units
ability.movelightning = Munje Pri Kretanju ability.movelightning = Munje Pri Kretanju
ability.movelightning.description = Releases lightning while moving
ability.armorplate = Armor Plate
ability.armorplate.description = Reduces damage taken while shooting
ability.shieldarc = Elektrolučni Štit ability.shieldarc = Elektrolučni Štit
ability.shieldarc.description = Projects a force shield in an arc that absorbs bullets
ability.suppressionfield = Polje Prigušivanja Popravki ability.suppressionfield = Polje Prigušivanja Popravki
ability.suppressionfield.description = Stops nearby repair buildings
ability.energyfield = Energetsko Polje ability.energyfield = Energetsko Polje
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}% ability.energyfield.description = Zaps nearby enemies
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0} ability.energyfield.healdescription = Zaps nearby enemies and heals allies
ability.regen = Regeneration ability.regen = Regeneration
ability.regen.description = Regenerates own health over time
ability.liquidregen = Liquid Absorption
ability.liquidregen.description = Absorbs liquid to heal itself
ability.spawndeath = Death Spawns
ability.spawndeath.description = Releases units on death
ability.liquidexplode = Death Spillage
ability.liquidexplode.description = Spills liquid on death
ability.stat.firingrate = [stat]{0}/sec[lightgray] firing rate
ability.stat.regen = [stat]{0}[lightgray] health/sec
ability.stat.shield = [stat]{0}[lightgray] shield
ability.stat.repairspeed = [stat]{0}/sec[lightgray] repair speed
ability.stat.slurpheal = [stat]{0}[lightgray] health/liquid unit
ability.stat.cooldown = [stat]{0} sec[lightgray] cooldown
ability.stat.maxtargets = [stat]{0}[lightgray] max targets
ability.stat.sametypehealmultiplier = [stat]{0}%[lightgray] same type repair amount
ability.stat.damagereduction = [stat]{0}%[lightgray] damage reduction
ability.stat.minspeed = [stat]{0} tiles/sec[lightgray] min speed
ability.stat.duration = [stat]{0} sec[lightgray] duration
ability.stat.buildtime = [stat]{0} sec[lightgray] build time
bar.onlycoredeposit = Dozvoljeno Dostavljanje Samo Unutar Jezgra bar.onlycoredeposit = Dozvoljeno Dostavljanje Samo Unutar Jezgra
@@ -1192,15 +1222,16 @@ keybind.unit_stance_hold_fire.name = Unit Stance: Hold Fire
keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target
keybind.unit_stance_patrol.name = Unit Stance: Patrol keybind.unit_stance_patrol.name = Unit Stance: Patrol
keybind.unit_stance_ram.name = Unit Stance: Ram keybind.unit_stance_ram.name = Unit Stance: Ram
keybind.unit_command_move = Unit Command: Move keybind.unit_command_move.name = Unit Command: Move
keybind.unit_command_repair = Unit Command: Repair keybind.unit_command_repair.name = Unit Command: Repair
keybind.unit_command_rebuild = Unit Command: Rebuild keybind.unit_command_rebuild.name = Unit Command: Rebuild
keybind.unit_command_assist = Unit Command: Assist keybind.unit_command_assist.name = Unit Command: Assist
keybind.unit_command_mine = Unit Command: Mine keybind.unit_command_mine.name = Unit Command: Mine
keybind.unit_command_boost = Unit Command: Boost keybind.unit_command_boost.name = Unit Command: Boost
keybind.unit_command_load_units = Unit Command: Load Units keybind.unit_command_load_units.name = Unit Command: Load Units
keybind.unit_command_load_blocks = Unit Command: Load Blocks keybind.unit_command_load_blocks.name = Unit Command: Load Blocks
keybind.unit_command_unload_payload = Unit Command: Unload Payload keybind.unit_command_unload_payload.name = Unit Command: Unload Payload
keybind.unit_command_enter_payload.name = Unit Command: Enter Payload
keybind.rebuild_select.name = Ponovo Sagradi Region keybind.rebuild_select.name = Ponovo Sagradi Region
keybind.schematic_select.name = Izaberi Region keybind.schematic_select.name = Izaberi Region
keybind.schematic_menu.name = Menu Šema keybind.schematic_menu.name = Menu Šema
@@ -1298,6 +1329,7 @@ rules.unitdamagemultiplier = Unit Damage Multiplier
rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier
rules.solarmultiplier = Solar Power Multiplier rules.solarmultiplier = Solar Power Multiplier
rules.unitcapvariable = Jezgara Povećavaju Maksimalni Broj Jedinica rules.unitcapvariable = Jezgara Povećavaju Maksimalni Broj Jedinica
rules.unitpayloadsexplode = Carried Payloads Explode With The Unit
rules.unitcap = Maksimalni Broj Jedinica (ne računajući jezgra) rules.unitcap = Maksimalni Broj Jedinica (ne računajući jezgra)
rules.limitarea = Ograniči Prostor Mape rules.limitarea = Ograniči Prostor Mape
rules.enemycorebuildradius = Radius Neprijateljskog jezgra bez gradnje:[lightgray] (polja) rules.enemycorebuildradius = Radius Neprijateljskog jezgra bez gradnje:[lightgray] (polja)
@@ -1330,6 +1362,8 @@ rules.weather = Vreme
rules.weather.frequency = Učestalost: rules.weather.frequency = Učestalost:
rules.weather.always = Stalno rules.weather.always = Stalno
rules.weather.duration = Dužina: rules.weather.duration = Dužina:
rules.placerangecheck.info = Prevents players from placing anything near enemy buildings. When trying to place a turret, the range is increased, so the turret will not be able to reach the enemy.
rules.onlydepositcore.info = Prevents units from depositing items into any buildings except cores.
content.item.name = Materijali content.item.name = Materijali
content.liquid.name = Tečnosti content.liquid.name = Tečnosti
@@ -2263,7 +2297,7 @@ unit.emanate.description = Gradi građevine da odbrani Veliki Grad jezgro. Popra
lst.read = Čita broj iz povezane memorijske ćelije. lst.read = Čita broj iz povezane memorijske ćelije.
lst.write = Piše broj u povezanu memorijsku ćeliju. lst.write = Piše broj u povezanu memorijsku ćeliju.
lst.print = Add text to the print buffer.\nDoes not display anything until [accent]Print Flush[] is used. lst.print = Add text to the print buffer.\nDoes not display anything until [accent]Print Flush[] is used.
lst.format = Replace next placeholder ("[accent]@[]") in text buffer with a value.\nExample:\n[accent]print "test @"\nformat "example" lst.format = Replace next placeholder in text buffer with a value.\nDoes not do anything if placeholder pattern is invalid.\nPlaceholder pattern: "{[accent]number 0-9[]}"\nExample:\n[accent]print "test {0}"\nformat "example"
lst.draw = Add an operation to the drawing buffer.\nDoes not display anything until [accent]Draw Flush[] is used. lst.draw = Add an operation to the drawing buffer.\nDoes not display anything until [accent]Draw Flush[] is used.
lst.drawflush = Flush queued [accent]Draw[] operations to a display. lst.drawflush = Flush queued [accent]Draw[] operations to a display.
lst.printflush = Flush queued [accent]Print[] operations to a message block. lst.printflush = Flush queued [accent]Print[] operations to a message block.
@@ -2286,6 +2320,8 @@ lst.getblock = Get tile data at any location.
lst.setblock = Set tile data at any location. lst.setblock = Set tile data at any location.
lst.spawnunit = Prizovi jedinicu na mestu. lst.spawnunit = Prizovi jedinicu na mestu.
lst.applystatus = Dodaj ili ukloni statusni efekat na jedinicu/e. lst.applystatus = Dodaj ili ukloni statusni efekat na jedinicu/e.
lst.weathersense = Check if a type of weather is active.
lst.weatherset = Set the current state of a type of weather.
lst.spawnwave = Simulate a wave being spawned at a arbitrary location.\nWill not increment the wave counter. lst.spawnwave = Simulate a wave being spawned at a arbitrary location.\nWill not increment the wave counter.
lst.explosion = Izazovi eksploziju na mestu. lst.explosion = Izazovi eksploziju na mestu.
lst.setrate = Set processor execution speed in instructions/tick. lst.setrate = Set processor execution speed in instructions/tick.

View File

@@ -599,7 +599,7 @@ filter.option.floor2 = Secondary Floor
filter.option.threshold2 = Secondary Threshold filter.option.threshold2 = Secondary Threshold
filter.option.radius = Radie filter.option.radius = Radie
filter.option.percentile = Percentile filter.option.percentile = Percentile
locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: @[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable) locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: {0}[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable)
locales.deletelocale = Are you sure you want to delete this locale bundle? locales.deletelocale = Are you sure you want to delete this locale bundle?
locales.applytoall = Apply Changes To All Locales locales.applytoall = Apply Changes To All Locales
locales.addtoother = Add To Other Locales locales.addtoother = Add To Other Locales
@@ -671,6 +671,7 @@ marker.shape.name = Shape
marker.text.name = Text marker.text.name = Text
marker.line.name = Line marker.line.name = Line
marker.quad.name = Quad marker.quad.name = Quad
marker.texture.name = Texture
marker.background = Background marker.background = Background
marker.outline = Outline marker.outline = Outline
objective.research = [accent]Research:\n[]{0}[lightgray]{1} objective.research = [accent]Research:\n[]{0}[lightgray]{1}
@@ -717,7 +718,7 @@ error.any = Okänt nätverksfel.
error.bloom = Failed to initialize bloom.\nYour device may not support it. error.bloom = Failed to initialize bloom.\nYour device may not support it.
weather.rain.name = Rain weather.rain.name = Rain
weather.snow.name = Snow weather.snowing.name = Snow
weather.sandstorm.name = Sandstorm weather.sandstorm.name = Sandstorm
weather.sporestorm.name = Sporestorm weather.sporestorm.name = Sporestorm
weather.fog.name = Fog weather.fog.name = Fog
@@ -972,17 +973,46 @@ stat.immunities = Immunities
stat.healing = Healing stat.healing = Healing
ability.forcefield = Force Field ability.forcefield = Force Field
ability.forcefield.description = Projects a force shield that absorbs bullets
ability.repairfield = Repair Field ability.repairfield = Repair Field
ability.repairfield.description = Repairs nearby units
ability.statusfield = Status Field ability.statusfield = Status Field
ability.statusfield.description = Applies a status effect to nearby units
ability.unitspawn = Factory ability.unitspawn = Factory
ability.unitspawn.description = Constructs units
ability.shieldregenfield = Shield Regen Field ability.shieldregenfield = Shield Regen Field
ability.shieldregenfield.description = Regenerates shields of nearby units
ability.movelightning = Movement Lightning ability.movelightning = Movement Lightning
ability.movelightning.description = Releases lightning while moving
ability.armorplate = Armor Plate
ability.armorplate.description = Reduces damage taken while shooting
ability.shieldarc = Shield Arc ability.shieldarc = Shield Arc
ability.shieldarc.description = Projects a force shield in an arc that absorbs bullets
ability.suppressionfield = Regen Suppression Field ability.suppressionfield = Regen Suppression Field
ability.suppressionfield.description = Stops nearby repair buildings
ability.energyfield = Energy Field ability.energyfield = Energy Field
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}% ability.energyfield.description = Zaps nearby enemies
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0} ability.energyfield.healdescription = Zaps nearby enemies and heals allies
ability.regen = Regeneration ability.regen = Regeneration
ability.regen.description = Regenerates own health over time
ability.liquidregen = Liquid Absorption
ability.liquidregen.description = Absorbs liquid to heal itself
ability.spawndeath = Death Spawns
ability.spawndeath.description = Releases units on death
ability.liquidexplode = Death Spillage
ability.liquidexplode.description = Spills liquid on death
ability.stat.firingrate = [stat]{0}/sec[lightgray] firing rate
ability.stat.regen = [stat]{0}[lightgray] health/sec
ability.stat.shield = [stat]{0}[lightgray] shield
ability.stat.repairspeed = [stat]{0}/sec[lightgray] repair speed
ability.stat.slurpheal = [stat]{0}[lightgray] health/liquid unit
ability.stat.cooldown = [stat]{0} sec[lightgray] cooldown
ability.stat.maxtargets = [stat]{0}[lightgray] max targets
ability.stat.sametypehealmultiplier = [stat]{0}%[lightgray] same type repair amount
ability.stat.damagereduction = [stat]{0}%[lightgray] damage reduction
ability.stat.minspeed = [stat]{0} tiles/sec[lightgray] min speed
ability.stat.duration = [stat]{0} sec[lightgray] duration
ability.stat.buildtime = [stat]{0} sec[lightgray] build time
bar.onlycoredeposit = Only Core Depositing Allowed bar.onlycoredeposit = Only Core Depositing Allowed
@@ -1179,15 +1209,16 @@ keybind.unit_stance_hold_fire.name = Unit Stance: Hold Fire
keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target
keybind.unit_stance_patrol.name = Unit Stance: Patrol keybind.unit_stance_patrol.name = Unit Stance: Patrol
keybind.unit_stance_ram.name = Unit Stance: Ram keybind.unit_stance_ram.name = Unit Stance: Ram
keybind.unit_command_move = Unit Command: Move keybind.unit_command_move.name = Unit Command: Move
keybind.unit_command_repair = Unit Command: Repair keybind.unit_command_repair.name = Unit Command: Repair
keybind.unit_command_rebuild = Unit Command: Rebuild keybind.unit_command_rebuild.name = Unit Command: Rebuild
keybind.unit_command_assist = Unit Command: Assist keybind.unit_command_assist.name = Unit Command: Assist
keybind.unit_command_mine = Unit Command: Mine keybind.unit_command_mine.name = Unit Command: Mine
keybind.unit_command_boost = Unit Command: Boost keybind.unit_command_boost.name = Unit Command: Boost
keybind.unit_command_load_units = Unit Command: Load Units keybind.unit_command_load_units.name = Unit Command: Load Units
keybind.unit_command_load_blocks = Unit Command: Load Blocks keybind.unit_command_load_blocks.name = Unit Command: Load Blocks
keybind.unit_command_unload_payload = Unit Command: Unload Payload keybind.unit_command_unload_payload.name = Unit Command: Unload Payload
keybind.unit_command_enter_payload.name = Unit Command: Enter Payload
keybind.rebuild_select.name = Rebuild Region keybind.rebuild_select.name = Rebuild Region
keybind.schematic_select.name = Select Region keybind.schematic_select.name = Select Region
keybind.schematic_menu.name = Schematic Menu keybind.schematic_menu.name = Schematic Menu
@@ -1285,6 +1316,7 @@ rules.unitdamagemultiplier = Unit Damage Multiplier
rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier
rules.solarmultiplier = Solar Power Multiplier rules.solarmultiplier = Solar Power Multiplier
rules.unitcapvariable = Cores Contribute To Unit Cap rules.unitcapvariable = Cores Contribute To Unit Cap
rules.unitpayloadsexplode = Carried Payloads Explode With The Unit
rules.unitcap = Base Unit Cap rules.unitcap = Base Unit Cap
rules.limitarea = Limit Map Area rules.limitarea = Limit Map Area
rules.enemycorebuildradius = Enemy Core No-Build Radius:[lightgray] (tiles) rules.enemycorebuildradius = Enemy Core No-Build Radius:[lightgray] (tiles)
@@ -1317,6 +1349,8 @@ rules.weather = Weather
rules.weather.frequency = Frequency: rules.weather.frequency = Frequency:
rules.weather.always = Always rules.weather.always = Always
rules.weather.duration = Duration: rules.weather.duration = Duration:
rules.placerangecheck.info = Prevents players from placing anything near enemy buildings. When trying to place a turret, the range is increased, so the turret will not be able to reach the enemy.
rules.onlydepositcore.info = Prevents units from depositing items into any buildings except cores.
content.item.name = Föremål content.item.name = Föremål
content.liquid.name = Vätskor content.liquid.name = Vätskor
@@ -2243,7 +2277,7 @@ unit.emanate.description = Builds structures to defend the Acropolis core. Repai
lst.read = Read a number from a linked memory cell. lst.read = Read a number from a linked memory cell.
lst.write = Write a number to a linked memory cell. lst.write = Write a number to a linked memory cell.
lst.print = Add text to the print buffer.\nDoes not display anything until [accent]Print Flush[] is used. lst.print = Add text to the print buffer.\nDoes not display anything until [accent]Print Flush[] is used.
lst.format = Replace next placeholder ("[accent]@[]") in text buffer with a value.\nExample:\n[accent]print "test @"\nformat "example" lst.format = Replace next placeholder in text buffer with a value.\nDoes not do anything if placeholder pattern is invalid.\nPlaceholder pattern: "{[accent]number 0-9[]}"\nExample:\n[accent]print "test {0}"\nformat "example"
lst.draw = Add an operation to the drawing buffer.\nDoes not display anything until [accent]Draw Flush[] is used. lst.draw = Add an operation to the drawing buffer.\nDoes not display anything until [accent]Draw Flush[] is used.
lst.drawflush = Flush queued [accent]Draw[] operations to a display. lst.drawflush = Flush queued [accent]Draw[] operations to a display.
lst.printflush = Flush queued [accent]Print[] operations to a message block. lst.printflush = Flush queued [accent]Print[] operations to a message block.
@@ -2266,6 +2300,8 @@ lst.getblock = Get tile data at any location.
lst.setblock = Set tile data at any location. lst.setblock = Set tile data at any location.
lst.spawnunit = Spawn unit at a location. lst.spawnunit = Spawn unit at a location.
lst.applystatus = Apply or clear a status effect from a uniut. lst.applystatus = Apply or clear a status effect from a uniut.
lst.weathersense = Check if a type of weather is active.
lst.weatherset = Set the current state of a type of weather.
lst.spawnwave = Simulate a wave being spawned at a arbitrary location.\nWill not increment the wave counter. lst.spawnwave = Simulate a wave being spawned at a arbitrary location.\nWill not increment the wave counter.
lst.explosion = Create an explosion at a location. lst.explosion = Create an explosion at a location.
lst.setrate = Set processor execution speed in instructions/tick. lst.setrate = Set processor execution speed in instructions/tick.

View File

@@ -606,7 +606,7 @@ filter.option.floor2 = พื้นชั้นสอง
filter.option.threshold2 = เกณฑ์ชั้นสอง filter.option.threshold2 = เกณฑ์ชั้นสอง
filter.option.radius = รัศมี filter.option.radius = รัศมี
filter.option.percentile = เปอร์เซ็นต์ไทล์ filter.option.percentile = เปอร์เซ็นต์ไทล์
locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: @[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable) locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: {0}[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable)
locales.deletelocale = Are you sure you want to delete this locale bundle? locales.deletelocale = Are you sure you want to delete this locale bundle?
locales.applytoall = Apply Changes To All Locales locales.applytoall = Apply Changes To All Locales
locales.addtoother = Add To Other Locales locales.addtoother = Add To Other Locales
@@ -678,6 +678,7 @@ marker.shape.name = รูปทรง
marker.text.name = ข้อความ marker.text.name = ข้อความ
marker.line.name = Line marker.line.name = Line
marker.quad.name = Quad marker.quad.name = Quad
marker.texture.name = Texture
marker.background = พื้นหลัง marker.background = พื้นหลัง
marker.outline = โครงร่าง marker.outline = โครงร่าง
objective.research = [accent]วิจัย:\n[]{0}[lightgray]{1} objective.research = [accent]วิจัย:\n[]{0}[lightgray]{1}
@@ -725,7 +726,7 @@ error.any = ข้อผิดพลาด: เครือข่ายที่
error.bloom = ไม่สามารถเริ่มต้นบลูมได้\nอุปกรณ์ของคุณอาจไม่รองรับ error.bloom = ไม่สามารถเริ่มต้นบลูมได้\nอุปกรณ์ของคุณอาจไม่รองรับ
weather.rain.name = ฝน weather.rain.name = ฝน
weather.snow.name = หิมะ weather.snowing.name = หิมะ
weather.sandstorm.name = พายุทราย weather.sandstorm.name = พายุทราย
weather.sporestorm.name = พายุสปอร์ weather.sporestorm.name = พายุสปอร์
weather.fog.name = หมอก weather.fog.name = หมอก
@@ -985,17 +986,46 @@ stat.immunities = ต่อต้านสถานะ
stat.healing = การรักษา stat.healing = การรักษา
ability.forcefield = โล่พลังงาน ability.forcefield = โล่พลังงาน
ability.forcefield.description = Projects a force shield that absorbs bullets
ability.repairfield = สนามซ่อมแซม ability.repairfield = สนามซ่อมแซม
ability.repairfield.description = Repairs nearby units
ability.statusfield = สนามเอฟเฟกต์ ability.statusfield = สนามเอฟเฟกต์
ability.statusfield.description = Applies a status effect to nearby units
ability.unitspawn = โรงงานผลิต ability.unitspawn = โรงงานผลิต
ability.unitspawn.description = Constructs units
ability.shieldregenfield = สนามรักษาโล่ ability.shieldregenfield = สนามรักษาโล่
ability.shieldregenfield.description = Regenerates shields of nearby units
ability.movelightning = ปล่อยสายฟ้าเมื่อเคลื่อนที่ ability.movelightning = ปล่อยสายฟ้าเมื่อเคลื่อนที่
ability.movelightning.description = Releases lightning while moving
ability.armorplate = Armor Plate
ability.armorplate.description = Reduces damage taken while shooting
ability.shieldarc = โล่พลังงานโค้ง ability.shieldarc = โล่พลังงานโค้ง
ability.shieldarc.description = Projects a force shield in an arc that absorbs bullets
ability.suppressionfield = สนามระงับการฟื้นฟู ability.suppressionfield = สนามระงับการฟื้นฟู
ability.suppressionfield.description = Stops nearby repair buildings
ability.energyfield = สนามพลังงาน ability.energyfield = สนามพลังงาน
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}% ability.energyfield.description = Zaps nearby enemies
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0} ability.energyfield.healdescription = Zaps nearby enemies and heals allies
ability.regen = Regeneration ability.regen = Regeneration
ability.regen.description = Regenerates own health over time
ability.liquidregen = Liquid Absorption
ability.liquidregen.description = Absorbs liquid to heal itself
ability.spawndeath = Death Spawns
ability.spawndeath.description = Releases units on death
ability.liquidexplode = Death Spillage
ability.liquidexplode.description = Spills liquid on death
ability.stat.firingrate = [stat]{0}/sec[lightgray] firing rate
ability.stat.regen = [stat]{0}[lightgray] health/sec
ability.stat.shield = [stat]{0}[lightgray] shield
ability.stat.repairspeed = [stat]{0}/sec[lightgray] repair speed
ability.stat.slurpheal = [stat]{0}[lightgray] health/liquid unit
ability.stat.cooldown = [stat]{0} sec[lightgray] cooldown
ability.stat.maxtargets = [stat]{0}[lightgray] max targets
ability.stat.sametypehealmultiplier = [stat]{0}%[lightgray] same type repair amount
ability.stat.damagereduction = [stat]{0}%[lightgray] damage reduction
ability.stat.minspeed = [stat]{0} tiles/sec[lightgray] min speed
ability.stat.duration = [stat]{0} sec[lightgray] duration
ability.stat.buildtime = [stat]{0} sec[lightgray] build time
bar.onlycoredeposit = ขนย้ายทรัพยากรลงแกนกลางได้เท่านั้น bar.onlycoredeposit = ขนย้ายทรัพยากรลงแกนกลางได้เท่านั้น
bar.drilltierreq = ต้องมีเครื่องขุดที่ดีกว่านี้ bar.drilltierreq = ต้องมีเครื่องขุดที่ดีกว่านี้
@@ -1191,15 +1221,16 @@ keybind.unit_stance_hold_fire.name = Unit Stance: Hold Fire
keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target
keybind.unit_stance_patrol.name = Unit Stance: Patrol keybind.unit_stance_patrol.name = Unit Stance: Patrol
keybind.unit_stance_ram.name = Unit Stance: Ram keybind.unit_stance_ram.name = Unit Stance: Ram
keybind.unit_command_move = Unit Command: Move keybind.unit_command_move.name = Unit Command: Move
keybind.unit_command_repair = Unit Command: Repair keybind.unit_command_repair.name = Unit Command: Repair
keybind.unit_command_rebuild = Unit Command: Rebuild keybind.unit_command_rebuild.name = Unit Command: Rebuild
keybind.unit_command_assist = Unit Command: Assist keybind.unit_command_assist.name = Unit Command: Assist
keybind.unit_command_mine = Unit Command: Mine keybind.unit_command_mine.name = Unit Command: Mine
keybind.unit_command_boost = Unit Command: Boost keybind.unit_command_boost.name = Unit Command: Boost
keybind.unit_command_load_units = Unit Command: Load Units keybind.unit_command_load_units.name = Unit Command: Load Units
keybind.unit_command_load_blocks = Unit Command: Load Blocks keybind.unit_command_load_blocks.name = Unit Command: Load Blocks
keybind.unit_command_unload_payload = Unit Command: Unload Payload keybind.unit_command_unload_payload.name = Unit Command: Unload Payload
keybind.unit_command_enter_payload.name = Unit Command: Enter Payload
keybind.rebuild_select.name = เลือกพื้นที่สร้างใหม่ keybind.rebuild_select.name = เลือกพื้นที่สร้างใหม่
keybind.schematic_select.name = เลือกพื้นที่ keybind.schematic_select.name = เลือกพื้นที่
keybind.schematic_menu.name = เมนูแผนผัง keybind.schematic_menu.name = เมนูแผนผัง
@@ -1297,6 +1328,7 @@ rules.unitdamagemultiplier = พหุคูณพลังโจมตีขอ
rules.unitcrashdamagemultiplier = พหูคูณดาเมจการตกของยานยูนิต rules.unitcrashdamagemultiplier = พหูคูณดาเมจการตกของยานยูนิต
rules.solarmultiplier = พหูคุณพลังงานแสงอาทิตย์ rules.solarmultiplier = พหูคุณพลังงานแสงอาทิตย์
rules.unitcapvariable = เพิ่มจำนวนยูนิตสูงสุดต่อแกนกลาง rules.unitcapvariable = เพิ่มจำนวนยูนิตสูงสุดต่อแกนกลาง
rules.unitpayloadsexplode = Carried Payloads Explode With The Unit
rules.unitcap = ขีดกำจัดยูนิตสูงสุดพื้นฐาน rules.unitcap = ขีดกำจัดยูนิตสูงสุดพื้นฐาน
rules.limitarea = จำกัดพื้นที่แมพ rules.limitarea = จำกัดพื้นที่แมพ
rules.enemycorebuildradius = รัศมีห้ามสร้างบริเวณแกนกลางของศัตรู:[lightgray] (ช่อง) rules.enemycorebuildradius = รัศมีห้ามสร้างบริเวณแกนกลางของศัตรู:[lightgray] (ช่อง)
@@ -1329,6 +1361,8 @@ rules.weather = สภาพอากาศ
rules.weather.frequency = ความถี่: rules.weather.frequency = ความถี่:
rules.weather.always = ตลอด rules.weather.always = ตลอด
rules.weather.duration = ระยะเวลา: rules.weather.duration = ระยะเวลา:
rules.placerangecheck.info = Prevents players from placing anything near enemy buildings. When trying to place a turret, the range is increased, so the turret will not be able to reach the enemy.
rules.onlydepositcore.info = Prevents units from depositing items into any buildings except cores.
content.item.name = ไอเท็ม content.item.name = ไอเท็ม
content.liquid.name = ของเหลว content.liquid.name = ของเหลว
@@ -2280,7 +2314,7 @@ unit.emanate.description = สร้างสิ่งต่างๆ เพื
lst.read = อ่านเลขจากเซลล์ความจำที่เชื่อมต่อไว้ lst.read = อ่านเลขจากเซลล์ความจำที่เชื่อมต่อไว้
lst.write = เขียนเลขไปยังเซลล์ความจำที่เชื่อมต่อไว้ lst.write = เขียนเลขไปยังเซลล์ความจำที่เชื่อมต่อไว้
lst.print = เพิ่มข้อความไปยังคิวข้อความ\nข้อความจะยังไม่แสดงจนกว่าจะใช้คำสั่ง [accent]Print Flush[] lst.print = เพิ่มข้อความไปยังคิวข้อความ\nข้อความจะยังไม่แสดงจนกว่าจะใช้คำสั่ง [accent]Print Flush[]
lst.format = Replace next placeholder ("[accent]@[]") in text buffer with a value.\nExample:\n[accent]print "test @"\nformat "example" lst.format = Replace next placeholder in text buffer with a value.\nDoes not do anything if placeholder pattern is invalid.\nPlaceholder pattern: "{[accent]number 0-9[]}"\nExample:\n[accent]print "test {0}"\nformat "example"
lst.draw = เพิ่มรูปไปยังคิวการวาด\nภาพจะยังไม่แสดงจนกว่าจะใช้คำสั่ง [accent]Draw Flush[] lst.draw = เพิ่มรูปไปยังคิวการวาด\nภาพจะยังไม่แสดงจนกว่าจะใช้คำสั่ง [accent]Draw Flush[]
lst.drawflush = ปล่อยคิว [accent]Draw[] ไปยังหน้าจอลอจิกที่เชื่อมต่อไว้ lst.drawflush = ปล่อยคิว [accent]Draw[] ไปยังหน้าจอลอจิกที่เชื่อมต่อไว้
lst.printflush = ปล่อยคิว [accent]Print[] ไปยังตัวเก็บข้อความที่เชื่อมต่อไว้ lst.printflush = ปล่อยคิว [accent]Print[] ไปยังตัวเก็บข้อความที่เชื่อมต่อไว้
@@ -2303,6 +2337,8 @@ lst.getblock = รับข้อมูลของช่องที่ตำ
lst.setblock = ปรับแต่งข้อมูลของช่องที่ตำแหน่งใดๆ lst.setblock = ปรับแต่งข้อมูลของช่องที่ตำแหน่งใดๆ
lst.spawnunit = เสกยูนิตมาที่ตำแหน่งที่กำหนดไว้ lst.spawnunit = เสกยูนิตมาที่ตำแหน่งที่กำหนดไว้
lst.applystatus = ใส่หรือล้างเอฟเฟกต์สถานะจากยูนิต lst.applystatus = ใส่หรือล้างเอฟเฟกต์สถานะจากยูนิต
lst.weathersense = Check if a type of weather is active.
lst.weatherset = Set the current state of a type of weather.
lst.spawnwave = จำลองคลื่นที่ตำแหน่งใดๆ lst.spawnwave = จำลองคลื่นที่ตำแหน่งใดๆ
lst.explosion = เสกระเบิดที่ตำแหน่ง lst.explosion = เสกระเบิดที่ตำแหน่ง
lst.setrate = ตั้งค่าความเร็วการสั่งเป็นคำสั่งใน คำสั่ง/ติก lst.setrate = ตั้งค่าความเร็วการสั่งเป็นคำสั่งใน คำสั่ง/ติก

View File

@@ -599,7 +599,7 @@ filter.option.floor2 = Secondary Floor
filter.option.threshold2 = Secondary Threshold filter.option.threshold2 = Secondary Threshold
filter.option.radius = Radius filter.option.radius = Radius
filter.option.percentile = Percentile filter.option.percentile = Percentile
locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: @[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable) locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: {0}[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable)
locales.deletelocale = Are you sure you want to delete this locale bundle? locales.deletelocale = Are you sure you want to delete this locale bundle?
locales.applytoall = Apply Changes To All Locales locales.applytoall = Apply Changes To All Locales
locales.addtoother = Add To Other Locales locales.addtoother = Add To Other Locales
@@ -671,6 +671,7 @@ marker.shape.name = Shape
marker.text.name = Text marker.text.name = Text
marker.line.name = Line marker.line.name = Line
marker.quad.name = Quad marker.quad.name = Quad
marker.texture.name = Texture
marker.background = Background marker.background = Background
marker.outline = Outline marker.outline = Outline
objective.research = [accent]Research:\n[]{0}[lightgray]{1} objective.research = [accent]Research:\n[]{0}[lightgray]{1}
@@ -717,7 +718,7 @@ error.any = Unkown network error.
error.bloom = Failed to initialize bloom.\nYour device may not support it. error.bloom = Failed to initialize bloom.\nYour device may not support it.
weather.rain.name = Rain weather.rain.name = Rain
weather.snow.name = Snow weather.snowing.name = Snow
weather.sandstorm.name = Sandstorm weather.sandstorm.name = Sandstorm
weather.sporestorm.name = Sporestorm weather.sporestorm.name = Sporestorm
weather.fog.name = Fog weather.fog.name = Fog
@@ -972,17 +973,46 @@ stat.immunities = Immunities
stat.healing = Healing stat.healing = Healing
ability.forcefield = Force Field ability.forcefield = Force Field
ability.forcefield.description = Projects a force shield that absorbs bullets
ability.repairfield = Repair Field ability.repairfield = Repair Field
ability.repairfield.description = Repairs nearby units
ability.statusfield = Status Field ability.statusfield = Status Field
ability.statusfield.description = Applies a status effect to nearby units
ability.unitspawn = Factory ability.unitspawn = Factory
ability.unitspawn.description = Constructs units
ability.shieldregenfield = Shield Regen Field ability.shieldregenfield = Shield Regen Field
ability.shieldregenfield.description = Regenerates shields of nearby units
ability.movelightning = Movement Lightning ability.movelightning = Movement Lightning
ability.movelightning.description = Releases lightning while moving
ability.armorplate = Armor Plate
ability.armorplate.description = Reduces damage taken while shooting
ability.shieldarc = Shield Arc ability.shieldarc = Shield Arc
ability.shieldarc.description = Projects a force shield in an arc that absorbs bullets
ability.suppressionfield = Regen Suppression Field ability.suppressionfield = Regen Suppression Field
ability.suppressionfield.description = Stops nearby repair buildings
ability.energyfield = Energy Field ability.energyfield = Energy Field
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}% ability.energyfield.description = Zaps nearby enemies
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0} ability.energyfield.healdescription = Zaps nearby enemies and heals allies
ability.regen = Regeneration ability.regen = Regeneration
ability.regen.description = Regenerates own health over time
ability.liquidregen = Liquid Absorption
ability.liquidregen.description = Absorbs liquid to heal itself
ability.spawndeath = Death Spawns
ability.spawndeath.description = Releases units on death
ability.liquidexplode = Death Spillage
ability.liquidexplode.description = Spills liquid on death
ability.stat.firingrate = [stat]{0}/sec[lightgray] firing rate
ability.stat.regen = [stat]{0}[lightgray] health/sec
ability.stat.shield = [stat]{0}[lightgray] shield
ability.stat.repairspeed = [stat]{0}/sec[lightgray] repair speed
ability.stat.slurpheal = [stat]{0}[lightgray] health/liquid unit
ability.stat.cooldown = [stat]{0} sec[lightgray] cooldown
ability.stat.maxtargets = [stat]{0}[lightgray] max targets
ability.stat.sametypehealmultiplier = [stat]{0}%[lightgray] same type repair amount
ability.stat.damagereduction = [stat]{0}%[lightgray] damage reduction
ability.stat.minspeed = [stat]{0} tiles/sec[lightgray] min speed
ability.stat.duration = [stat]{0} sec[lightgray] duration
ability.stat.buildtime = [stat]{0} sec[lightgray] build time
bar.onlycoredeposit = Only Core Depositing Allowed bar.onlycoredeposit = Only Core Depositing Allowed
@@ -1179,15 +1209,16 @@ keybind.unit_stance_hold_fire.name = Unit Stance: Hold Fire
keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target
keybind.unit_stance_patrol.name = Unit Stance: Patrol keybind.unit_stance_patrol.name = Unit Stance: Patrol
keybind.unit_stance_ram.name = Unit Stance: Ram keybind.unit_stance_ram.name = Unit Stance: Ram
keybind.unit_command_move = Unit Command: Move keybind.unit_command_move.name = Unit Command: Move
keybind.unit_command_repair = Unit Command: Repair keybind.unit_command_repair.name = Unit Command: Repair
keybind.unit_command_rebuild = Unit Command: Rebuild keybind.unit_command_rebuild.name = Unit Command: Rebuild
keybind.unit_command_assist = Unit Command: Assist keybind.unit_command_assist.name = Unit Command: Assist
keybind.unit_command_mine = Unit Command: Mine keybind.unit_command_mine.name = Unit Command: Mine
keybind.unit_command_boost = Unit Command: Boost keybind.unit_command_boost.name = Unit Command: Boost
keybind.unit_command_load_units = Unit Command: Load Units keybind.unit_command_load_units.name = Unit Command: Load Units
keybind.unit_command_load_blocks = Unit Command: Load Blocks keybind.unit_command_load_blocks.name = Unit Command: Load Blocks
keybind.unit_command_unload_payload = Unit Command: Unload Payload keybind.unit_command_unload_payload.name = Unit Command: Unload Payload
keybind.unit_command_enter_payload.name = Unit Command: Enter Payload
keybind.rebuild_select.name = Rebuild Region keybind.rebuild_select.name = Rebuild Region
keybind.schematic_select.name = Select Region keybind.schematic_select.name = Select Region
keybind.schematic_menu.name = Schematic Menu keybind.schematic_menu.name = Schematic Menu
@@ -1285,6 +1316,7 @@ rules.unitdamagemultiplier = Unit Damage Multiplier
rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier
rules.solarmultiplier = Solar Power Multiplier rules.solarmultiplier = Solar Power Multiplier
rules.unitcapvariable = Cores Contribute To Unit Cap rules.unitcapvariable = Cores Contribute To Unit Cap
rules.unitpayloadsexplode = Carried Payloads Explode With The Unit
rules.unitcap = Base Unit Cap rules.unitcap = Base Unit Cap
rules.limitarea = Limit Map Area rules.limitarea = Limit Map Area
rules.enemycorebuildradius = Enemy Core No-Build Radius:[lightgray] (tiles) rules.enemycorebuildradius = Enemy Core No-Build Radius:[lightgray] (tiles)
@@ -1317,6 +1349,8 @@ rules.weather = Weather
rules.weather.frequency = Frequency: rules.weather.frequency = Frequency:
rules.weather.always = Always rules.weather.always = Always
rules.weather.duration = Duration: rules.weather.duration = Duration:
rules.placerangecheck.info = Prevents players from placing anything near enemy buildings. When trying to place a turret, the range is increased, so the turret will not be able to reach the enemy.
rules.onlydepositcore.info = Prevents units from depositing items into any buildings except cores.
content.item.name = Esyalar content.item.name = Esyalar
content.liquid.name = Sivilar content.liquid.name = Sivilar
@@ -2243,7 +2277,7 @@ unit.emanate.description = Builds structures to defend the Acropolis core. Repai
lst.read = Read a number from a linked memory cell. lst.read = Read a number from a linked memory cell.
lst.write = Write a number to a linked memory cell. lst.write = Write a number to a linked memory cell.
lst.print = Add text to the print buffer.\nDoes not display anything until [accent]Print Flush[] is used. lst.print = Add text to the print buffer.\nDoes not display anything until [accent]Print Flush[] is used.
lst.format = Replace next placeholder ("[accent]@[]") in text buffer with a value.\nExample:\n[accent]print "test @"\nformat "example" lst.format = Replace next placeholder in text buffer with a value.\nDoes not do anything if placeholder pattern is invalid.\nPlaceholder pattern: "{[accent]number 0-9[]}"\nExample:\n[accent]print "test {0}"\nformat "example"
lst.draw = Add an operation to the drawing buffer.\nDoes not display anything until [accent]Draw Flush[] is used. lst.draw = Add an operation to the drawing buffer.\nDoes not display anything until [accent]Draw Flush[] is used.
lst.drawflush = Flush queued [accent]Draw[] operations to a display. lst.drawflush = Flush queued [accent]Draw[] operations to a display.
lst.printflush = Flush queued [accent]Print[] operations to a message block. lst.printflush = Flush queued [accent]Print[] operations to a message block.
@@ -2266,6 +2300,8 @@ lst.getblock = Get tile data at any location.
lst.setblock = Set tile data at any location. lst.setblock = Set tile data at any location.
lst.spawnunit = Spawn unit at a location. lst.spawnunit = Spawn unit at a location.
lst.applystatus = Apply or clear a status effect from a uniut. lst.applystatus = Apply or clear a status effect from a uniut.
lst.weathersense = Check if a type of weather is active.
lst.weatherset = Set the current state of a type of weather.
lst.spawnwave = Simulate a wave being spawned at a arbitrary location.\nWill not increment the wave counter. lst.spawnwave = Simulate a wave being spawned at a arbitrary location.\nWill not increment the wave counter.
lst.explosion = Create an explosion at a location. lst.explosion = Create an explosion at a location.
lst.setrate = Set processor execution speed in instructions/tick. lst.setrate = Set processor execution speed in instructions/tick.

View File

@@ -606,7 +606,7 @@ filter.option.floor2 = İkincil Duvar
filter.option.threshold2 = İkincil Eşik filter.option.threshold2 = İkincil Eşik
filter.option.radius = Yarıçap filter.option.radius = Yarıçap
filter.option.percentile = Yüzdelik filter.option.percentile = Yüzdelik
locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: @[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable) locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: {0}[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable)
locales.deletelocale = Are you sure you want to delete this locale bundle? locales.deletelocale = Are you sure you want to delete this locale bundle?
locales.applytoall = Apply Changes To All Locales locales.applytoall = Apply Changes To All Locales
locales.addtoother = Add To Other Locales locales.addtoother = Add To Other Locales
@@ -678,6 +678,7 @@ marker.shape.name = Şekil
marker.text.name = Yazı marker.text.name = Yazı
marker.line.name = Line marker.line.name = Line
marker.quad.name = Quad marker.quad.name = Quad
marker.texture.name = Texture
marker.background = Arkaplan marker.background = Arkaplan
marker.outline = Anahat marker.outline = Anahat
objective.research = [accent]Araştır:\n[]{0}[lightgray]{1} objective.research = [accent]Araştır:\n[]{0}[lightgray]{1}
@@ -725,7 +726,7 @@ error.any = Bilinmeyen ağ hatası.
error.bloom = Kamaşma başlatılamadı.\nCihazınız bu özelliği desteklemiyor olabilir. error.bloom = Kamaşma başlatılamadı.\nCihazınız bu özelliği desteklemiyor olabilir.
weather.rain.name = Yağmur weather.rain.name = Yağmur
weather.snow.name = Kar weather.snowing.name = Kar
weather.sandstorm.name = Kum Fırtınası weather.sandstorm.name = Kum Fırtınası
weather.sporestorm.name = Spor Fırtınası weather.sporestorm.name = Spor Fırtınası
weather.fog.name = Sis weather.fog.name = Sis
@@ -982,17 +983,46 @@ stat.immunities = Bağışıklıklar
stat.healing = Tamir Eder stat.healing = Tamir Eder
ability.forcefield = Güç Kalkanı ability.forcefield = Güç Kalkanı
ability.forcefield.description = Projects a force shield that absorbs bullets
ability.repairfield = Onarma Alanı ability.repairfield = Onarma Alanı
ability.repairfield.description = Repairs nearby units
ability.statusfield = Hızlandırma Alanı ability.statusfield = Hızlandırma Alanı
ability.statusfield.description = Applies a status effect to nearby units
ability.unitspawn = Birliği Fabrikası ability.unitspawn = Birliği Fabrikası
ability.unitspawn.description = Constructs units
ability.shieldregenfield = Kalkan Yenileme Alanı ability.shieldregenfield = Kalkan Yenileme Alanı
ability.shieldregenfield.description = Regenerates shields of nearby units
ability.movelightning = Hareket Enerjisi ability.movelightning = Hareket Enerjisi
ability.movelightning.description = Releases lightning while moving
ability.armorplate = Armor Plate
ability.armorplate.description = Reduces damage taken while shooting
ability.shieldarc = Ark Kalkanı ability.shieldarc = Ark Kalkanı
ability.shieldarc.description = Projects a force shield in an arc that absorbs bullets
ability.suppressionfield = Tamir Engelleme Alanı ability.suppressionfield = Tamir Engelleme Alanı
ability.suppressionfield.description = Stops nearby repair buildings
ability.energyfield = Güç Kalkanı ability.energyfield = Güç Kalkanı
ability.energyfield.sametypehealmultiplier = [lightgray]Aynı Türden İyileştirme: [white]{0}% ability.energyfield.description = Zaps nearby enemies
ability.energyfield.maxtargets = [lightgray]Azami Hedefler: [white]{0} ability.energyfield.healdescription = Zaps nearby enemies and heals allies
ability.regen = Yenilenme ability.regen = Yenilenme
ability.regen.description = Regenerates own health over time
ability.liquidregen = Liquid Absorption
ability.liquidregen.description = Absorbs liquid to heal itself
ability.spawndeath = Death Spawns
ability.spawndeath.description = Releases units on death
ability.liquidexplode = Death Spillage
ability.liquidexplode.description = Spills liquid on death
ability.stat.firingrate = [stat]{0}/sec[lightgray] firing rate
ability.stat.regen = [stat]{0}[lightgray] health/sec
ability.stat.shield = [stat]{0}[lightgray] shield
ability.stat.repairspeed = [stat]{0}/sec[lightgray] repair speed
ability.stat.slurpheal = [stat]{0}[lightgray] health/liquid unit
ability.stat.cooldown = [stat]{0} sec[lightgray] cooldown
ability.stat.maxtargets = [stat]{0}[lightgray] max targets
ability.stat.sametypehealmultiplier = [stat]{0}%[lightgray] same type repair amount
ability.stat.damagereduction = [stat]{0}%[lightgray] damage reduction
ability.stat.minspeed = [stat]{0} tiles/sec[lightgray] min speed
ability.stat.duration = [stat]{0} sec[lightgray] duration
ability.stat.buildtime = [stat]{0} sec[lightgray] build time
bar.onlycoredeposit = Sadece Merkeze Aktarım Mümkün bar.onlycoredeposit = Sadece Merkeze Aktarım Mümkün
bar.drilltierreq = Daha Güçlü Matkap Gerekli bar.drilltierreq = Daha Güçlü Matkap Gerekli
@@ -1188,15 +1218,16 @@ keybind.unit_stance_hold_fire.name = Unit Stance: Hold Fire
keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target
keybind.unit_stance_patrol.name = Unit Stance: Patrol keybind.unit_stance_patrol.name = Unit Stance: Patrol
keybind.unit_stance_ram.name = Unit Stance: Ram keybind.unit_stance_ram.name = Unit Stance: Ram
keybind.unit_command_move = Unit Command: Move keybind.unit_command_move.name = Unit Command: Move
keybind.unit_command_repair = Unit Command: Repair keybind.unit_command_repair.name = Unit Command: Repair
keybind.unit_command_rebuild = Unit Command: Rebuild keybind.unit_command_rebuild.name = Unit Command: Rebuild
keybind.unit_command_assist = Unit Command: Assist keybind.unit_command_assist.name = Unit Command: Assist
keybind.unit_command_mine = Unit Command: Mine keybind.unit_command_mine.name = Unit Command: Mine
keybind.unit_command_boost = Unit Command: Boost keybind.unit_command_boost.name = Unit Command: Boost
keybind.unit_command_load_units = Unit Command: Load Units keybind.unit_command_load_units.name = Unit Command: Load Units
keybind.unit_command_load_blocks = Unit Command: Load Blocks keybind.unit_command_load_blocks.name = Unit Command: Load Blocks
keybind.unit_command_unload_payload = Unit Command: Unload Payload keybind.unit_command_unload_payload.name = Unit Command: Unload Payload
keybind.unit_command_enter_payload.name = Unit Command: Enter Payload
keybind.rebuild_select.name = Alanı Geri İşaa Et keybind.rebuild_select.name = Alanı Geri İşaa Et
keybind.schematic_select.name = Bölge Seç keybind.schematic_select.name = Bölge Seç
keybind.schematic_menu.name = Şema Menüsü keybind.schematic_menu.name = Şema Menüsü
@@ -1294,6 +1325,7 @@ rules.unitdamagemultiplier = Birim Hasar Çapanı
rules.unitcrashdamagemultiplier = Birim Çakılma Hasar Çarpanı rules.unitcrashdamagemultiplier = Birim Çakılma Hasar Çarpanı
rules.solarmultiplier = Güneş Paneli Üretim Çarpanı rules.solarmultiplier = Güneş Paneli Üretim Çarpanı
rules.unitcapvariable = Merkezler Birim Sınırını Etkiler rules.unitcapvariable = Merkezler Birim Sınırını Etkiler
rules.unitpayloadsexplode = Carried Payloads Explode With The Unit
rules.unitcap = Sabit Birim Sınırı rules.unitcap = Sabit Birim Sınırı
rules.limitarea = Haritayı Sınırla rules.limitarea = Haritayı Sınırla
rules.enemycorebuildradius = Düşman Merkezi İnşa Yasağı Yarıçapı: [lightgray](kare) rules.enemycorebuildradius = Düşman Merkezi İnşa Yasağı Yarıçapı: [lightgray](kare)
@@ -1326,6 +1358,8 @@ rules.weather = Hava Durumu
rules.weather.frequency = Sıklık: rules.weather.frequency = Sıklık:
rules.weather.always = Her zaman rules.weather.always = Her zaman
rules.weather.duration = Süreklilik: rules.weather.duration = Süreklilik:
rules.placerangecheck.info = Prevents players from placing anything near enemy buildings. When trying to place a turret, the range is increased, so the turret will not be able to reach the enemy.
rules.onlydepositcore.info = Prevents units from depositing items into any buildings except cores.
content.item.name = Malzemeler content.item.name = Malzemeler
content.liquid.name = Sıvılar content.liquid.name = Sıvılar
@@ -2260,7 +2294,7 @@ unit.emanate.description = Akropolis Merkezini korumak için binalar inşa eder.
lst.read = Bağlı hafıza kutusundaki numarayı okur. lst.read = Bağlı hafıza kutusundaki numarayı okur.
lst.write = Bağlı hafıza kutuaundaki numaraya yazar. lst.write = Bağlı hafıza kutuaundaki numaraya yazar.
lst.print = Yazı yazar. lst.print = Yazı yazar.
lst.format = Replace next placeholder ("[accent]@[]") in text buffer with a value.\nExample:\n[accent]print "test @"\nformat "example" lst.format = Replace next placeholder in text buffer with a value.\nDoes not do anything if placeholder pattern is invalid.\nPlaceholder pattern: "{[accent]number 0-9[]}"\nExample:\n[accent]print "test {0}"\nformat "example"
lst.draw = Ekrana Çizer. lst.draw = Ekrana Çizer.
lst.drawflush = Ekrana Çizimi Aktarır. lst.drawflush = Ekrana Çizimi Aktarır.
lst.printflush = Mesaj bloğuna metnini aktarır, lst.printflush = Mesaj bloğuna metnini aktarır,
@@ -2283,6 +2317,8 @@ lst.getblock = Herhangi bir yerdeki blok bilgisini al.
lst.setblock = Herhangi bir yerdeki blok bilgisini değiştir. lst.setblock = Herhangi bir yerdeki blok bilgisini değiştir.
lst.spawnunit = Herhangi bir yerde birim var et. lst.spawnunit = Herhangi bir yerde birim var et.
lst.applystatus = Bir Birime Durum Etkisi ekle. lst.applystatus = Bir Birime Durum Etkisi ekle.
lst.weathersense = Check if a type of weather is active.
lst.weatherset = Set the current state of a type of weather.
lst.spawnwave = Bellir bir noktada dalga başlat.\nDalga Zamanlayıcı Oluşturmaz! lst.spawnwave = Bellir bir noktada dalga başlat.\nDalga Zamanlayıcı Oluşturmaz!
lst.explosion = Bir Noktada Patlama oluştur. lst.explosion = Bir Noktada Patlama oluştur.
lst.setrate = İşlemci Hızını Ayarla (işlem/tick) lst.setrate = İşlemci Hızını Ayarla (işlem/tick)

View File

@@ -609,7 +609,7 @@ filter.option.floor2 = Друга поверхня
filter.option.threshold2 = Вторинний граничний поріг filter.option.threshold2 = Вторинний граничний поріг
filter.option.radius = Радіус filter.option.radius = Радіус
filter.option.percentile = Спад filter.option.percentile = Спад
locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: @[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable) locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: {0}[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable)
locales.deletelocale = Are you sure you want to delete this locale bundle? locales.deletelocale = Are you sure you want to delete this locale bundle?
locales.applytoall = Apply Changes To All Locales locales.applytoall = Apply Changes To All Locales
locales.addtoother = Add To Other Locales locales.addtoother = Add To Other Locales
@@ -683,6 +683,7 @@ marker.shape.name = Форма
marker.text.name = Текст marker.text.name = Текст
marker.line.name = Line marker.line.name = Line
marker.quad.name = Quad marker.quad.name = Quad
marker.texture.name = Texture
marker.background = Фон marker.background = Фон
marker.outline = Контур marker.outline = Контур
@@ -733,7 +734,7 @@ error.any = Невідома мережева помилка
error.bloom = Не вдалося ініціалізувати світіння.\nВаш пристрій, мабуть, не підтримує це. error.bloom = Не вдалося ініціалізувати світіння.\nВаш пристрій, мабуть, не підтримує це.
weather.rain.name = Дощ weather.rain.name = Дощ
weather.snow.name = Сніг weather.snowing.name = Сніг
weather.sandstorm.name = Піщана буря weather.sandstorm.name = Піщана буря
weather.sporestorm.name = Спорова буря weather.sporestorm.name = Спорова буря
weather.fog.name = Туман weather.fog.name = Туман
@@ -993,17 +994,46 @@ stat.immunities = Імунітети
stat.healing = Відновлювання stat.healing = Відновлювання
ability.forcefield = Щитове поле ability.forcefield = Щитове поле
ability.forcefield.description = Projects a force shield that absorbs bullets
ability.repairfield = Ремонтувальне поле ability.repairfield = Ремонтувальне поле
ability.repairfield.description = Repairs nearby units
ability.statusfield = Поле підсилення ability.statusfield = Поле підсилення
ability.statusfield.description = Applies a status effect to nearby units
ability.unitspawn = Завод одиниць <20> ability.unitspawn = Завод одиниць <20>
ability.unitspawn.description = Constructs units
ability.shieldregenfield = Щитовідновлювальне поле ability.shieldregenfield = Щитовідновлювальне поле
ability.shieldregenfield.description = Regenerates shields of nearby units
ability.movelightning = Блискавки під час руху ability.movelightning = Блискавки під час руху
ability.movelightning.description = Releases lightning while moving
ability.armorplate = Armor Plate
ability.armorplate.description = Reduces damage taken while shooting
ability.shieldarc = Щитова дуга ability.shieldarc = Щитова дуга
ability.shieldarc.description = Projects a force shield in an arc that absorbs bullets
ability.suppressionfield = Поле пригнічення відновлення ability.suppressionfield = Поле пригнічення відновлення
ability.suppressionfield.description = Stops nearby repair buildings
ability.energyfield = Енергетичне поле ability.energyfield = Енергетичне поле
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}% ability.energyfield.description = Zaps nearby enemies
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0} ability.energyfield.healdescription = Zaps nearby enemies and heals allies
ability.regen = Regeneration ability.regen = Regeneration
ability.regen.description = Regenerates own health over time
ability.liquidregen = Liquid Absorption
ability.liquidregen.description = Absorbs liquid to heal itself
ability.spawndeath = Death Spawns
ability.spawndeath.description = Releases units on death
ability.liquidexplode = Death Spillage
ability.liquidexplode.description = Spills liquid on death
ability.stat.firingrate = [stat]{0}/sec[lightgray] firing rate
ability.stat.regen = [stat]{0}[lightgray] health/sec
ability.stat.shield = [stat]{0}[lightgray] shield
ability.stat.repairspeed = [stat]{0}/sec[lightgray] repair speed
ability.stat.slurpheal = [stat]{0}[lightgray] health/liquid unit
ability.stat.cooldown = [stat]{0} sec[lightgray] cooldown
ability.stat.maxtargets = [stat]{0}[lightgray] max targets
ability.stat.sametypehealmultiplier = [stat]{0}%[lightgray] same type repair amount
ability.stat.damagereduction = [stat]{0}%[lightgray] damage reduction
ability.stat.minspeed = [stat]{0} tiles/sec[lightgray] min speed
ability.stat.duration = [stat]{0} sec[lightgray] duration
ability.stat.buildtime = [stat]{0} sec[lightgray] build time
bar.onlycoredeposit = Передача предметів дозволена лише до ядра bar.onlycoredeposit = Передача предметів дозволена лише до ядра
bar.drilltierreq = Потрібен ліпший бур bar.drilltierreq = Потрібен ліпший бур
@@ -1199,15 +1229,16 @@ keybind.unit_stance_hold_fire.name = Unit Stance: Hold Fire
keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target
keybind.unit_stance_patrol.name = Unit Stance: Patrol keybind.unit_stance_patrol.name = Unit Stance: Patrol
keybind.unit_stance_ram.name = Unit Stance: Ram keybind.unit_stance_ram.name = Unit Stance: Ram
keybind.unit_command_move = Unit Command: Move keybind.unit_command_move.name = Unit Command: Move
keybind.unit_command_repair = Unit Command: Repair keybind.unit_command_repair.name = Unit Command: Repair
keybind.unit_command_rebuild = Unit Command: Rebuild keybind.unit_command_rebuild.name = Unit Command: Rebuild
keybind.unit_command_assist = Unit Command: Assist keybind.unit_command_assist.name = Unit Command: Assist
keybind.unit_command_mine = Unit Command: Mine keybind.unit_command_mine.name = Unit Command: Mine
keybind.unit_command_boost = Unit Command: Boost keybind.unit_command_boost.name = Unit Command: Boost
keybind.unit_command_load_units = Unit Command: Load Units keybind.unit_command_load_units.name = Unit Command: Load Units
keybind.unit_command_load_blocks = Unit Command: Load Blocks keybind.unit_command_load_blocks.name = Unit Command: Load Blocks
keybind.unit_command_unload_payload = Unit Command: Unload Payload keybind.unit_command_unload_payload.name = Unit Command: Unload Payload
keybind.unit_command_enter_payload.name = Unit Command: Enter Payload
keybind.rebuild_select.name = Відбудувати регіон keybind.rebuild_select.name = Відбудувати регіон
keybind.schematic_select.name = Вибрати ділянку keybind.schematic_select.name = Вибрати ділянку
keybind.schematic_menu.name = Меню схем keybind.schematic_menu.name = Меню схем
@@ -1305,6 +1336,7 @@ rules.unitdamagemultiplier = Множник шкоди бойових одини
rules.unitcrashdamagemultiplier = Множник шкоди одиниці при зіткненні одиниць rules.unitcrashdamagemultiplier = Множник шкоди одиниці при зіткненні одиниць
rules.solarmultiplier = Множник сонячної енергії rules.solarmultiplier = Множник сонячної енергії
rules.unitcapvariable = Ядра збільшують обмеження на кількість одиниць rules.unitcapvariable = Ядра збільшують обмеження на кількість одиниць
rules.unitpayloadsexplode = Carried Payloads Explode With The Unit
rules.unitcap = Початкове обмеження одиниць rules.unitcap = Початкове обмеження одиниць
rules.limitarea = Обмежити територію мапи rules.limitarea = Обмежити територію мапи
rules.enemycorebuildradius = Радіус оборони для ворожого ядра:[lightgray] (плитки) rules.enemycorebuildradius = Радіус оборони для ворожого ядра:[lightgray] (плитки)
@@ -1337,6 +1369,8 @@ rules.weather = Погода
rules.weather.frequency = Повторюваність: rules.weather.frequency = Повторюваність:
rules.weather.always = Завжди rules.weather.always = Завжди
rules.weather.duration = Тривалість: rules.weather.duration = Тривалість:
rules.placerangecheck.info = Prevents players from placing anything near enemy buildings. When trying to place a turret, the range is increased, so the turret will not be able to reach the enemy.
rules.onlydepositcore.info = Prevents units from depositing items into any buildings except cores.
content.item.name = Предмети content.item.name = Предмети
content.liquid.name = Рідини content.liquid.name = Рідини
@@ -2287,7 +2321,7 @@ unit.emanate.description = Англійська назва: Emanate\nБудує
lst.read = Зчитує число із з’єднаної комірки пам’яті. lst.read = Зчитує число із з’єднаної комірки пам’яті.
lst.write = Записує числу у з’єднану комірку пам’яті. lst.write = Записує числу у з’єднану комірку пам’яті.
lst.print = Додайте текст до буфера друку.\nНічого не відображає, поки [accent]Print Flush[] використовується. lst.print = Додайте текст до буфера друку.\nНічого не відображає, поки [accent]Print Flush[] використовується.
lst.format = Replace next placeholder ("[accent]@[]") in text buffer with a value.\nExample:\n[accent]print "test @"\nformat "example" lst.format = Replace next placeholder in text buffer with a value.\nDoes not do anything if placeholder pattern is invalid.\nPlaceholder pattern: "{[accent]number 0-9[]}"\nExample:\n[accent]print "test {0}"\nformat "example"
lst.draw = Додає операцію до буфера рисунка.\nНічого не відображає, поки [accent]Draw Flush[] використовується. lst.draw = Додає операцію до буфера рисунка.\nНічого не відображає, поки [accent]Draw Flush[] використовується.
lst.drawflush = Скидає буфер операцій [accent]Draw[] на дисплей. lst.drawflush = Скидає буфер операцій [accent]Draw[] на дисплей.
lst.printflush = Скидає буфер операцій [accent]Print[] у блок «Повідомлення». lst.printflush = Скидає буфер операцій [accent]Print[] у блок «Повідомлення».
@@ -2310,6 +2344,8 @@ lst.getblock = Отримує дані плитки в будь-якому мі
lst.setblock = Установлює дані плитки в будь-якому місці. lst.setblock = Установлює дані плитки в будь-якому місці.
lst.spawnunit = Породжує одиницю на певному місці. lst.spawnunit = Породжує одиницю на певному місці.
lst.applystatus = Застосовує або видаляє ефект стану з одиниці. lst.applystatus = Застосовує або видаляє ефект стану з одиниці.
lst.weathersense = Check if a type of weather is active.
lst.weatherset = Set the current state of a type of weather.
lst.spawnwave = Змодельовує хвилю, що виникає у довільному місці.\nНе збільшує лічильник хвиль. lst.spawnwave = Змодельовує хвилю, що виникає у довільному місці.\nНе збільшує лічильник хвиль.
lst.explosion = Створює вибух у певному місці. lst.explosion = Створює вибух у певному місці.
lst.setrate = Установлює швидкість виконання процесора в інструкціях за такт. lst.setrate = Установлює швидкість виконання процесора в інструкціях за такт.

View File

@@ -31,8 +31,8 @@ load.map = Bản đồ
load.image = Hình ảnh load.image = Hình ảnh
load.content = Nội dung load.content = Nội dung
load.system = Hệ thống load.system = Hệ thống
load.mod = Mods load.mod = Bản mod
load.scripts = Scripts load.scripts = Ngữ lệnh
be.update = Đã tìm thấy bản cập nhật mới: be.update = Đã tìm thấy bản cập nhật mới:
be.update.confirm = Tải xuống và khởi động lại ngay bây giờ? be.update.confirm = Tải xuống và khởi động lại ngay bây giờ?
@@ -77,9 +77,9 @@ schematic.tags = Thẻ:
schematic.edittags = Chỉnh sửa thẻ schematic.edittags = Chỉnh sửa thẻ
schematic.addtag = Thêm thẻ schematic.addtag = Thêm thẻ
schematic.texttag = Thẻ văn bản schematic.texttag = Thẻ văn bản
schematic.icontag = Thẻ icon schematic.icontag = Thẻ biểu tượng
schematic.renametag = Đổi tên thẻ schematic.renametag = Đổi tên thẻ
schematic.tagged = {0} đã gắn thẻ schematic.tagged = {0} thẻ đã gắn
schematic.tagdelconfirm = Xóa thẻ này? schematic.tagdelconfirm = Xóa thẻ này?
schematic.tagexists = Thẻ đã tồn tại. schematic.tagexists = Thẻ đã tồn tại.
@@ -243,8 +243,8 @@ host.invalid = [scarlet]Không thể kết nối đến máy chủ.
servers.local = Máy chủ cục bộ servers.local = Máy chủ cục bộ
servers.local.steam = Màn chơi hiện có & Máy chủ cục bộ servers.local.steam = Màn chơi hiện có & Máy chủ cục bộ
servers.remote = Máy chủ tùy chỉnh servers.remote = Máy chủ từ xa
servers.global = Máy chủ từ cộng đồng servers.global = Máy chủ cộng đồng
servers.disclaimer = Nhà phát triển [accent]không[] sở hữu và kiểm soát máy chủ cộng đồng.\n\nMáy chủ có thể chứa nội dung do người dùng tạo và không phù hợp với mọi lứa tuổi. servers.disclaimer = Nhà phát triển [accent]không[] sở hữu và kiểm soát máy chủ cộng đồng.\n\nMáy chủ có thể chứa nội dung do người dùng tạo và không phù hợp với mọi lứa tuổi.
servers.showhidden = Hiển thị Máy chủ Ẩn servers.showhidden = Hiển thị Máy chủ Ẩn
@@ -256,7 +256,7 @@ trace = Tìm người chơi
trace.playername = Tên người chơi: [accent]{0} trace.playername = Tên người chơi: [accent]{0}
trace.ip = IP: [accent]{0} trace.ip = IP: [accent]{0}
trace.id = ID: [accent]{0} trace.id = ID: [accent]{0}
trace.language = Language: [accent]{0} trace.language = Ngôn ngữ: [accent]{0}
trace.mobile = Máy khách di động: [accent]{0} trace.mobile = Máy khách di động: [accent]{0}
trace.modclient = Máy khách tùy chỉnh: [accent]{0} trace.modclient = Máy khách tùy chỉnh: [accent]{0}
trace.times.joined = Số lần tham gia: [accent]{0} trace.times.joined = Số lần tham gia: [accent]{0}
@@ -342,23 +342,23 @@ open = Mở
customize = Luật tùy chỉnh customize = Luật tùy chỉnh
cancel = Hủy cancel = Hủy
command = Mệnh lệnh command = Mệnh lệnh
command.queue = [lightgray][Queuing] command.queue = [lightgray][Đang lệnh tuần tự]
command.mine = Đào command.mine = Đào
command.repair = Sửa Chữa command.repair = Sửa Chữa
command.rebuild = Xây Dựng command.rebuild = Xây Dựng
command.assist = Hỗ Trợ Người Chơi command.assist = Hỗ Trợ Người Chơi
command.move = Di Chuyển command.move = Di Chuyển
command.boost = Tăng Cường command.boost = Tăng Cường
command.enterPayload = Enter Payload Block command.enterPayload = Nhập khối hàng vào công trình
command.loadUnits = Load Units command.loadUnits = Nhận đơn vị
command.loadBlocks = Load Blocks command.loadBlocks = Nhận khối công trình
command.unloadPayload = Unload Payload command.unloadPayload = Dỡ khối hàng
stance.stop = Cancel Orders stance.stop = Hủy mệnh lệnh
stance.shoot = Stance: Shoot stance.shoot = Tư thế: Bắn
stance.holdfire = Stance: Hold Fire stance.holdfire = Tư thế: Ngừng bắn
stance.pursuetarget = Stance: Pursue Target stance.pursuetarget = Tư thế: Bám đuổi mục tiêu
stance.patrol = Stance: Patrol Path stance.patrol = Tư thế: Đường tuần tra
stance.ram = Stance: Ram\n[lightgray]Straight line movement, no pathfinding stance.ram = Tư thế: Tông thẳng\n[lightgray]Đi theo đường thẳng, không tìm đường
openlink = Mở liên kết openlink = Mở liên kết
copylink = Sao chép liên kết copylink = Sao chép liên kết
back = Quay lại back = Quay lại
@@ -439,7 +439,7 @@ editor.waves = Lượt:
editor.rules = Luật: editor.rules = Luật:
editor.generation = Cấu trúc: editor.generation = Cấu trúc:
editor.objectives = Mục tiêu editor.objectives = Mục tiêu
editor.locales = Locale Bundles editor.locales = Gói ngôn ngữ
editor.ingame = Chỉnh sửa trong trò chơi editor.ingame = Chỉnh sửa trong trò chơi
editor.playtest = Chơi thử editor.playtest = Chơi thử
editor.publish.workshop = Xuất bản lên Workshop editor.publish.workshop = Xuất bản lên Workshop
@@ -459,7 +459,7 @@ waves.title = Đợt
waves.remove = Xóa waves.remove = Xóa
waves.every = mỗi waves.every = mỗi
waves.waves = đợt waves.waves = đợt
waves.health = health: {0}% waves.health = độ bền: {0}%
waves.perspawn = mỗi lần xuất hiện waves.perspawn = mỗi lần xuất hiện
waves.shields = khiên/đợt waves.shields = khiên/đợt
waves.to = đến waves.to = đến
@@ -480,7 +480,7 @@ waves.none = Không có kẻ thù được xác định.\nLưu ý rằng bố c
waves.sort = Sắp xếp theo waves.sort = Sắp xếp theo
waves.sort.reverse = Đảo ngược sắp xếp waves.sort.reverse = Đảo ngược sắp xếp
waves.sort.begin = Bắt đầu waves.sort.begin = Bắt đầu
waves.sort.health = Máu waves.sort.health = Độ bền
waves.sort.type = Thể loại waves.sort.type = Thể loại
waves.search = Tìm kiếm các lượt... waves.search = Tìm kiếm các lượt...
waves.filter = Bộ lọc đơn vị waves.filter = Bộ lọc đơn vị
@@ -490,13 +490,13 @@ waves.units.show = Hiện tất cả
#these are intentionally in lower case #these are intentionally in lower case
wavemode.counts = số lượng wavemode.counts = số lượng
wavemode.totals = tổng số wavemode.totals = tổng số
wavemode.health = máu wavemode.health = độ bền
editor.default = [lightgray]<Mặc định> editor.default = [lightgray]<Mặc định>
details = Chi tiết... details = Chi tiết...
edit = Chỉnh sửa... edit = Chỉnh sửa...
variables = Thông số variables = Thông số
logic.globals = Built-in Variables logic.globals = Thông số sẵn có
editor.name = Tên: editor.name = Tên:
editor.spawn = Thêm kẻ địch editor.spawn = Thêm kẻ địch
editor.removeunit = Xóa kẻ địch editor.removeunit = Xóa kẻ địch
@@ -508,7 +508,7 @@ editor.errorlegacy = Bản đồ này quá cũ, và sử dụng định dạng b
editor.errornot = Đây không phải là tệp bản đồ. editor.errornot = Đây không phải là tệp bản đồ.
editor.errorheader = Tệp bản đồ này không hợp lệ hoặc bị hỏng. editor.errorheader = Tệp bản đồ này không hợp lệ hoặc bị hỏng.
editor.errorname = Bản đồ không có tên được xác định. Bạn đang cố gắng tải một bản lưu? editor.errorname = Bản đồ không có tên được xác định. Bạn đang cố gắng tải một bản lưu?
editor.errorlocales = Error reading invalid locale bundles. editor.errorlocales = Lỗi đọc gói ngôn ngữ không hợp lệ.
editor.update = Cập nhật editor.update = Cập nhật
editor.randomize = Ngẫu nhiên editor.randomize = Ngẫu nhiên
editor.moveup = Di chuyển lên editor.moveup = Di chuyển lên
@@ -520,7 +520,7 @@ editor.sectorgenerate = Tạo ra khu vực
editor.resize = Thay đổi kích thước editor.resize = Thay đổi kích thước
editor.loadmap = Mở bản đồ editor.loadmap = Mở bản đồ
editor.savemap = Lưu bản đồ editor.savemap = Lưu bản đồ
editor.savechanges = [scarlet]You have unsaved changes!\n\n[]Do you want to save them? editor.savechanges = [scarlet]Bạn có thay đổi chưa lưu!\n\n[]Bạn có muốn lưu chúng không?
editor.saved = Đã lưu! editor.saved = Đã lưu!
editor.save.noname = Bản đồ của bạn không có tên! Hãy đặt một cái tên trong 'Thông tin bản đồ'. editor.save.noname = Bản đồ của bạn không có tên! Hãy đặt một cái tên trong 'Thông tin bản đồ'.
editor.save.overwrite = Bản đồ của bạn ghi đè lên một bản đồ đã có sẵn! Hãy chọn một cái tên khác trong 'Thông tin bản đồ'. editor.save.overwrite = Bản đồ của bạn ghi đè lên một bản đồ đã có sẵn! Hãy chọn một cái tên khác trong 'Thông tin bản đồ'.
@@ -607,23 +607,23 @@ filter.option.floor2 = Nền phụ
filter.option.threshold2 = Ngưỡng phụ filter.option.threshold2 = Ngưỡng phụ
filter.option.radius = Bán kính filter.option.radius = Bán kính
filter.option.percentile = Phần trăm filter.option.percentile = Phần trăm
locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: @[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable) locales.info = Tại đây, bạn có thể thêm gói ngôn ngữ cho ngôn ngữ cụ thể vào bản đồ của bạn. Trong gói ngôn ngữ, mỗi thuộc tính có tên và giá trị. Những thuộc tính này có thể được sử dụng bởi Bộ xử lý thế giới và Mục tiêu nhiệm vụ bằng tên của chúng. Chúng hỗ trợ định dạng văn bản (thay thế kí tự giữ chỗ bằng giá trị thực tế).\n\n[cyan]Ví dụ thuộc tính:\n[]tên: [accent]timer[]\nvalue: [accent]Bộ đếm thời gian ví dụ, thời gian còn lại: {0}[]\n\n[cyan]Cách dùng:\n[]Đặt làm văn bản cho Mục tiêu nhiệm vụ: [accent]@timer\n\n[]In nó trong Bộ xử lý thế giới:\n[accent]localeprint "timer"\nformat time\n[gray](với time là biến được tính toán riêng biệt)
locales.deletelocale = Are you sure you want to delete this locale bundle? locales.deletelocale = Bạn có chắc muốn xóa gói ngôn ngữ này?
locales.applytoall = Apply Changes To All Locales locales.applytoall = Áp dụng thay đổi cho tất cả gói ngôn ngữ
locales.addtoother = Add To Other Locales locales.addtoother = Thêm vào các gói ngôn ngữ khác
locales.rollback = Rollback to last applied locales.rollback = Khôi phục lại lầ áp dụng cuối
locales.filter = Property filter locales.filter = Lọc thuộc tính
locales.searchname = Search name... locales.searchname = Tìm tên...
locales.searchvalue = Search value... locales.searchvalue = Tìm giá trị...
locales.searchlocale = Search locale... locales.searchlocale = Tìm ngôn ngữ...
locales.byname = By name locales.byname = Theo tên
locales.byvalue = By value locales.byvalue = Theo giá trị
locales.showcorrect = Show properties that are present in all locales and have unique values everywhere locales.showcorrect = Hiện thuộc tính có trong tất cả ngôn ngữ và có giá trị riêng biệt mỗi nơi
locales.showmissing = Show properties that are missing in some locales locales.showmissing = Hiện thuộc tính bị mất trong một số ngôn ngữ
locales.showsame = Show properties that have same values in different locales locales.showsame = Hiện thuộc tính có giá trị giống nhau trong các ngôn ngữ khác nhau
locales.viewproperty = View in all locales locales.viewproperty = Xem trong tất cả ngôn ngữ
locales.viewing = Viewing property "{0}" locales.viewing = Đang xem thuộc tính "{0}"
locales.addicon = Add Icon locales.addicon = Thêm biểu tượng
width = Chiều rộng: width = Chiều rộng:
height = Chiều cao: height = Chiều cao:
@@ -674,11 +674,12 @@ objective.destroycore.name = Phá huỷ căn cứ
objective.commandmode.name = Chế độ ra lệnh objective.commandmode.name = Chế độ ra lệnh
objective.flag.name = Cờ objective.flag.name = Cờ
marker.shapetext.name = Hình dạng văn bản marker.shapetext.name = Hình dạng văn bản
marker.point.name = Point marker.point.name = Điểm
marker.shape.name = Hình dạng marker.shape.name = Hình dạng
marker.text.name = Văn bản marker.text.name = Văn bản
marker.line.name = Line marker.line.name = Đường kẻ
marker.quad.name = Quad marker.quad.name = Bốn điểm
marker.texture.name = Texture
marker.background = Nền marker.background = Nền
marker.outline = Đường viền marker.outline = Đường viền
objective.research = [accent]Nghiên cứu:\n[]{0}[lightgray]{1} objective.research = [accent]Nghiên cứu:\n[]{0}[lightgray]{1}
@@ -726,7 +727,7 @@ error.any = Lỗi mạng không xác định.
error.bloom = Không khởi tạo được hiệu ứng phát sáng.\nThiết bị của bạn có thể không hỗ trợ. error.bloom = Không khởi tạo được hiệu ứng phát sáng.\nThiết bị của bạn có thể không hỗ trợ.
weather.rain.name = Mưa weather.rain.name = Mưa
weather.snow.name = Tuyết weather.snowing.name = Tuyết
weather.sandstorm.name = Bão cát weather.sandstorm.name = Bão cát
weather.sporestorm.name = Bão bào tử weather.sporestorm.name = Bão bào tử
weather.fog.name = Sương mù weather.fog.name = Sương mù
@@ -762,8 +763,8 @@ sector.curlost = Khu vực đã mất
sector.missingresources = [scarlet]Không đủ tài nguyên căn cứ sector.missingresources = [scarlet]Không đủ tài nguyên căn cứ
sector.attacked = Khu vực [accent]{0}[white] đang bị tấn công! sector.attacked = Khu vực [accent]{0}[white] đang bị tấn công!
sector.lost = Khu vực [accent]{0}[white] đã mất! sector.lost = Khu vực [accent]{0}[white] đã mất!
sector.capture = Sector [accent]{0}[white]Captured! sector.capture = Khu vực [accent]{0}[white] đã chiếm!
sector.capture.current = Sector Captured! sector.capture.current = Khu vực đã chiếm!
sector.changeicon = Thay đổi biểu tượng sector.changeicon = Thay đổi biểu tượng
sector.noswitch.title = Không thể thay đổi sang khu vực khác sector.noswitch.title = Không thể thay đổi sang khu vực khác
sector.noswitch = Bạn không thể đổi sang khu vực khác khi một khu vực đang bị tấn công.\n\nKhu vực: [accent]{0}[] ở [accent]{1}[] sector.noswitch = Bạn không thể đổi sang khu vực khác khi một khu vực đang bị tấn công.\n\nKhu vực: [accent]{0}[] ở [accent]{1}[]
@@ -986,17 +987,46 @@ stat.immunities = Miễn nhiễm
stat.healing = Sửa chữa stat.healing = Sửa chữa
ability.forcefield = Tạo khiên ability.forcefield = Tạo khiên
ability.forcefield.description = Phát một khiên trường lực hấp thụ các loại đạn
ability.repairfield = Sửa chữa/Xây dựng ability.repairfield = Sửa chữa/Xây dựng
ability.repairfield.description = Sửa chữa các đơn vị gần đó
ability.statusfield = Vùng gia tốc ability.statusfield = Vùng gia tốc
ability.statusfield.description = Áp dụng hiệu ứng trạng thái vào các đơn vị gần đó
ability.unitspawn = Sản xuất ability.unitspawn = Sản xuất
ability.unitspawn.description = Sản xuất đơn vị
ability.shieldregenfield = Tạo khiên nhỏ ability.shieldregenfield = Tạo khiên nhỏ
ability.shieldregenfield.description = Tạo khiên cho các đơn vị gần đó
ability.movelightning = Phóng điện khi di chuyển ability.movelightning = Phóng điện khi di chuyển
ability.shieldarc = Khiên Vòng Cung ability.movelightning.description = Giải phóng tia điện khi di chuyển
ability.suppressionfield = Trường sửa chữa ability.armorplate = Mảnh giáp
ability.armorplate.description = Giảm sát thương gánh chịu trong khi bắn
ability.shieldarc = Khiên vòng cung
ability.shieldarc.description = Phát một khiên trường lực vòng cung hấp thụ các loại đạn
ability.suppressionfield = Ngăn chặn sửa chữa
ability.suppressionfield.description = Ngăn chặn các công trình sửa chữa
ability.energyfield = Trường điện từ ability.energyfield = Trường điện từ
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}% ability.energyfield.description = Giật điện các kẻ thù gần đó
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0} ability.energyfield.healdescription = Giật điện các kẻ thù gần đó và hồi phục đồng minh
ability.regen = Regeneration ability.regen = Hồi phục
ability.regen.description = Tự hồi phục theo thời gian
ability.liquidregen = Hấp thụ chất lỏng
ability.liquidregen.description = Hấp thụ chất lỏng để tự hồi phục
ability.spawndeath = Chết sản sinh
ability.spawndeath.description = Sinh ra đơn vị khi chết
ability.liquidexplode = Chết tràn dịch
ability.liquidexplode.description = Tràn chất lỏng khi chết
ability.stat.firingrate = tốc bắn [stat]{0}/giây[lightgray]
ability.stat.regen = [stat]{0}[lightgray] độ bền/giây
ability.stat.shield = [stat]{0}[lightgray] khiên
ability.stat.repairspeed = [stat]{0}/giây[lightgray] tốc độ sửa chữa
ability.stat.slurpheal = [stat]{0}[lightgray] độ bền/đơn vị chất lỏng
ability.stat.cooldown = [stat]{0} giây[lightgray] hồi chiêu
ability.stat.maxtargets = [stat]{0}[lightgray] mục tiêu tối đa
ability.stat.sametypehealmultiplier = [stat]{0}%[lightgray] số lượng sửa chữa cùng kiểu
ability.stat.damagereduction = [stat]{0}%[lightgray] giảm sát thương
ability.stat.minspeed = tốc độ tối thiểu [stat]{0} ô/giây[lightgray]
ability.stat.duration = thời hạn [stat]{0} giây[lightgray]
ability.stat.buildtime = thời gian xây [stat]{0} giây[lightgray]
bar.onlycoredeposit = Chỉ có thể đưa vào căn cứ bar.onlycoredeposit = Chỉ có thể đưa vào căn cứ
bar.drilltierreq = Cần máy khoan tốt hơn bar.drilltierreq = Cần máy khoan tốt hơn
@@ -1036,7 +1066,7 @@ bullet.splashdamage = [stat]{0}[lightgray] sát thương diện rộng ~[stat] {
bullet.incendiary = [stat]cháy bullet.incendiary = [stat]cháy
bullet.homing = [stat]truy đuổi bullet.homing = [stat]truy đuổi
bullet.armorpierce = [stat]xuyên giáp bullet.armorpierce = [stat]xuyên giáp
bullet.maxdamagefraction = [stat]{0}%[lightgray] damage limit bullet.maxdamagefraction = [stat]{0}%[lightgray] giới hạn sát thương
bullet.suppression = [stat]{0} giây[lightgray] ngăn sửa chữa ~ [stat]{1}[lightgray] ô bullet.suppression = [stat]{0} giây[lightgray] ngăn sửa chữa ~ [stat]{1}[lightgray] ô
bullet.interval = [stat]{0}/giây[lightgray] interval bullets: bullet.interval = [stat]{0}/giây[lightgray] interval bullets:
bullet.frags = [stat]phá mảnh bullet.frags = [stat]phá mảnh
@@ -1091,8 +1121,8 @@ setting.logichints.name = Gợi ý Logic
setting.backgroundpause.name = Tạm dừng trong nền setting.backgroundpause.name = Tạm dừng trong nền
setting.buildautopause.name = Tự động dừng xây dựng setting.buildautopause.name = Tự động dừng xây dựng
setting.doubletapmine.name = Nhấn đúp để Đào setting.doubletapmine.name = Nhấn đúp để Đào
setting.commandmodehold.name = Nhấn giữ để vào chế độ khiển quân setting.commandmodehold.name = Nhấn giữ để vào chế độ khiển đơn vị
setting.distinctcontrolgroups.name = Limit One Control Group Per Unit setting.distinctcontrolgroups.name = Giới hạn một nhóm điều khiển cho mỗi đơn vị
setting.modcrashdisable.name = Tắt các mod khi gặp sự cố trong khởi động setting.modcrashdisable.name = Tắt các mod khi gặp sự cố trong khởi động
setting.animatedwater.name = Hiệu ứng nước setting.animatedwater.name = Hiệu ứng nước
setting.animatedshields.name = Hiệu ứng khiên setting.animatedshields.name = Hiệu ứng khiên
@@ -1139,14 +1169,14 @@ setting.position.name = Hiển thị vị trí người chơi
setting.mouseposition.name = Hiện vị trí trỏ chuột setting.mouseposition.name = Hiện vị trí trỏ chuột
setting.musicvol.name = Âm lượng nhạc setting.musicvol.name = Âm lượng nhạc
setting.atmosphere.name = Hiển thị bầu khí quyển hành tinh setting.atmosphere.name = Hiển thị bầu khí quyển hành tinh
setting.drawlight.name = Draw Darkness/Lighting setting.drawlight.name = Vẽ Bóng tối/Ánh sáng
setting.ambientvol.name = Âm lượng tổng setting.ambientvol.name = Âm lượng tổng
setting.mutemusic.name = Tắt nhạc setting.mutemusic.name = Tắt nhạc
setting.sfxvol.name = Âm lượng SFX setting.sfxvol.name = Âm lượng SFX
setting.mutesound.name = Tắt tiếng setting.mutesound.name = Tắt tiếng
setting.crashreport.name = Gửi báo cáo sự cố setting.crashreport.name = Gửi báo cáo sự cố
setting.savecreate.name = Tự động lưu setting.savecreate.name = Tự động lưu
setting.steampublichost.name = Public Game Visibility setting.steampublichost.name = Hiển thị trò chơi công khai
setting.playerlimit.name = Giới hạn người chơi setting.playerlimit.name = Giới hạn người chơi
setting.chatopacity.name = Độ mờ trò chuyện setting.chatopacity.name = Độ mờ trò chuyện
setting.lasersopacity.name = Độ mờ kết nối năng lượng setting.lasersopacity.name = Độ mờ kết nối năng lượng
@@ -1166,7 +1196,7 @@ keybind.title = Sửa phím
keybinds.mobile = [scarlet]Hầu hết phím ở đây không hoạt động trên thiết bị di động. Chỉ hỗ trợ di chuyển cơ bản. keybinds.mobile = [scarlet]Hầu hết phím ở đây không hoạt động trên thiết bị di động. Chỉ hỗ trợ di chuyển cơ bản.
category.general.name = Chung category.general.name = Chung
category.view.name = Xem category.view.name = Xem
category.command.name = Unit Command category.command.name = Mệnh lệnh đơn vị
category.multiplayer.name = Nhiều người chơi category.multiplayer.name = Nhiều người chơi
category.blocks.name = Chọn khối category.blocks.name = Chọn khối
placement.blockselectkeys = \n[lightgray]Phím: [{0}, placement.blockselectkeys = \n[lightgray]Phím: [{0},
@@ -1183,24 +1213,25 @@ keybind.move_y.name = Di chuyển Y
keybind.mouse_move.name = Theo chuột keybind.mouse_move.name = Theo chuột
keybind.pan.name = Di chuyển góc nhìn keybind.pan.name = Di chuyển góc nhìn
keybind.boost.name = Tăng tốc keybind.boost.name = Tăng tốc
keybind.command_mode.name = Chế độ điều khiển quân keybind.command_mode.name = Chế độ mệnh lệnh
keybind.command_queue.name = Unit Command Queue keybind.command_queue.name = Lệnh tuần tự đơn vị
keybind.create_control_group.name = Create Control Group keybind.create_control_group.name = Tạo nhóm điều khiển
keybind.cancel_orders.name = Cancel Orders keybind.cancel_orders.name = Hủy lệnh
keybind.unit_stance_shoot.name = Unit Stance: Shoot keybind.unit_stance_shoot.name = Tư thế đơn vị: Bắn
keybind.unit_stance_hold_fire.name = Unit Stance: Hold Fire keybind.unit_stance_hold_fire.name = Tư thế đơn vị: Ngừng bắn
keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target keybind.unit_stance_pursue_target.name = Tư thế đơn vị: Bám đuổi mục tiêu
keybind.unit_stance_patrol.name = Unit Stance: Patrol keybind.unit_stance_patrol.name = Tư thế đơn vị: Tuần tra
keybind.unit_stance_ram.name = Unit Stance: Ram keybind.unit_stance_ram.name = Tư thế đơn vị: Tông thẳng
keybind.unit_command_move = Unit Command: Move keybind.unit_command_move.name = Unit Command: Move
keybind.unit_command_repair = Unit Command: Repair keybind.unit_command_repair.name = Unit Command: Repair
keybind.unit_command_rebuild = Unit Command: Rebuild keybind.unit_command_rebuild.name = Unit Command: Rebuild
keybind.unit_command_assist = Unit Command: Assist keybind.unit_command_assist.name = Unit Command: Assist
keybind.unit_command_mine = Unit Command: Mine keybind.unit_command_mine.name = Unit Command: Mine
keybind.unit_command_boost = Unit Command: Boost keybind.unit_command_boost.name = Unit Command: Boost
keybind.unit_command_load_units = Unit Command: Load Units keybind.unit_command_load_units.name = Unit Command: Load Units
keybind.unit_command_load_blocks = Unit Command: Load Blocks keybind.unit_command_load_blocks.name = Unit Command: Load Blocks
keybind.unit_command_unload_payload = Unit Command: Unload Payload keybind.unit_command_unload_payload.name = Unit Command: Unload Payload
keybind.unit_command_enter_payload.name = Unit Command: Enter Payload
keybind.rebuild_select.name = Chọn khu vực xây dựng lại keybind.rebuild_select.name = Chọn khu vực xây dựng lại
keybind.schematic_select.name = Chọn khu vực keybind.schematic_select.name = Chọn khu vực
keybind.schematic_menu.name = Menu bản thiết kế keybind.schematic_menu.name = Menu bản thiết kế
@@ -1264,12 +1295,12 @@ mode.pvp.description = Chiến đấu với những người chơi khác trên c
mode.attack.name = Tấn công mode.attack.name = Tấn công
mode.attack.description = Phá hủy căn cứ của kẻ địch. \n[gray]Cần căn cứ màu đỏ trong bản đồ để chơi. mode.attack.description = Phá hủy căn cứ của kẻ địch. \n[gray]Cần căn cứ màu đỏ trong bản đồ để chơi.
mode.custom = Tùy chỉnh luật mode.custom = Tùy chỉnh luật
rules.invaliddata = Invalid clipboard data. rules.invaliddata = Dữ liệu bộ nhớ tạm không hợp lệ.
rules.hidebannedblocks = Ẩn Các Khối BCấm rules.hidebannedblocks = Ẩn các khối bcấm
rules.infiniteresources = Tài nguyên vô hạn rules.infiniteresources = Tài nguyên vô hạn
rules.onlydepositcore = Chỉ cho phép đưa tài nguyên vào căn cứ rules.onlydepositcore = Chỉ cho phép đưa tài nguyên vào căn cứ
rules.derelictrepair = Allow Derelict Block Repair rules.derelictrepair = Cho phép sửa khối bỏ hoang
rules.reactorexplosions = Nổ lò phản ứng rules.reactorexplosions = Nổ lò phản ứng
rules.coreincinerates = Hủy vật phẩm khi căn cứ đầy rules.coreincinerates = Hủy vật phẩm khi căn cứ đầy
rules.disableworldprocessors = Vô hiệu hoá bộ xử lý thế giới rules.disableworldprocessors = Vô hiệu hoá bộ xử lý thế giới
@@ -1293,11 +1324,12 @@ rules.blockhealthmultiplier = Hệ số độ bền khối
rules.blockdamagemultiplier = Hệ số sát thương của khối rules.blockdamagemultiplier = Hệ số sát thương của khối
rules.unitbuildspeedmultiplier = Hệ số tốc độ sản xuất lính rules.unitbuildspeedmultiplier = Hệ số tốc độ sản xuất lính
rules.unitcostmultiplier = Hệ số yêu cầu tài nguyên sản xuất đơn vị rules.unitcostmultiplier = Hệ số yêu cầu tài nguyên sản xuất đơn vị
rules.unithealthmultiplier = Hệ số máu của đơn vị rules.unithealthmultiplier = Hệ số độ bền của đơn vị
rules.unitdamagemultiplier = Hệ số sát thương của đơn vị rules.unitdamagemultiplier = Hệ số sát thương của đơn vị
rules.unitcrashdamagemultiplier = Hệ số sát thương của đơn vị khi bị bắn rơi rules.unitcrashdamagemultiplier = Hệ số sát thương của đơn vị khi bị bắn rơi
rules.solarmultiplier = Hệ số năng lượng mặt trời rules.solarmultiplier = Hệ số năng lượng mặt trời
rules.unitcapvariable = Căn cứ tăng giới hạn đơn vị rules.unitcapvariable = Căn cứ tăng giới hạn đơn vị
rules.unitpayloadsexplode = Khối hàng mang theo phát nổ cùng đơn vị
rules.unitcap = Giới hạn đơn vị rules.unitcap = Giới hạn đơn vị
rules.limitarea = Giới hạn kích thước bản đồ rules.limitarea = Giới hạn kích thước bản đồ
rules.enemycorebuildradius = Bán kính không xây dựng trong căn cứ của kẻ địch:[lightgray] (ô) rules.enemycorebuildradius = Bán kính không xây dựng trong căn cứ của kẻ địch:[lightgray] (ô)
@@ -1330,6 +1362,8 @@ rules.weather = Thời tiết
rules.weather.frequency = Tần suất: rules.weather.frequency = Tần suất:
rules.weather.always = Luôn luôn rules.weather.always = Luôn luôn
rules.weather.duration = Thời gian: rules.weather.duration = Thời gian:
rules.placerangecheck.info = Prevents players from placing anything near enemy buildings. When trying to place a turret, the range is increased, so the turret will not be able to reach the enemy.
rules.onlydepositcore.info = Prevents units from depositing items into any buildings except cores.
content.item.name = Vật phẩm content.item.name = Vật phẩm
content.liquid.name = Chất lỏng content.liquid.name = Chất lỏng
@@ -1549,7 +1583,7 @@ block.inverted-sorter.name = Bộ lọc ngược
block.message.name = Thông điệp block.message.name = Thông điệp
block.reinforced-message.name = Thông điệp [Gia cố] block.reinforced-message.name = Thông điệp [Gia cố]
block.world-message.name = Thông điệp thế giới block.world-message.name = Thông điệp thế giới
block.world-switch.name = World Switch block.world-switch.name = Công tắc thế giới
block.illuminator.name = Đèn block.illuminator.name = Đèn
block.overflow-gate.name = Cổng tràn block.overflow-gate.name = Cổng tràn
block.underflow-gate.name = Cổng tràn ngược block.underflow-gate.name = Cổng tràn ngược
@@ -1826,7 +1860,7 @@ block.memory-bank.name = Bộ nhớ lớn
team.malis.name = Malis team.malis.name = Malis
team.crux.name = Crux team.crux.name = Crux
team.sharded.name = Sharded team.sharded.name = Sharded
team.derelict.name = Không xác định team.derelict.name = Bỏ hoang
team.green.name = Xanh lá cây team.green.name = Xanh lá cây
team.blue.name = Xanh dương team.blue.name = Xanh dương
@@ -1841,7 +1875,7 @@ hint.desktopPause = Nhấn [accent][[Space][] để tạm dừng và tiếp tụ
hint.breaking = [accent]Chuột phải[] và kéo để phá vỡ các khối. hint.breaking = [accent]Chuột phải[] và kéo để phá vỡ các khối.
hint.breaking.mobile = Kích hoạt \ue817 [accent]Cây búa[] ở phía dưới cùng bên phải và nhấn để phá vỡ các khối.\n\nGiữ ngón tay của bạn trong một giây và kéo để phá khối trong vùng được chọn. hint.breaking.mobile = Kích hoạt \ue817 [accent]Cây búa[] ở phía dưới cùng bên phải và nhấn để phá vỡ các khối.\n\nGiữ ngón tay của bạn trong một giây và kéo để phá khối trong vùng được chọn.
hint.blockInfo = Xem thông tin của một khối bằng cách chọn nó trong [accent]menu xây dựng[], Sau đó chọn nút [accent][[?][] ở bên phải. hint.blockInfo = Xem thông tin của một khối bằng cách chọn nó trong [accent]menu xây dựng[], Sau đó chọn nút [accent][[?][] ở bên phải.
hint.derelict = [accent]Không xác định[] là các công trình bị hỏng của các căn cứ cũ mà không còn hoạt động.\n\nCác công trình này có thể [accent]được tháo dỡ[] để nhận được nguyên liệu. hint.derelict = [accent]Bỏ hoang[] là các công trình bị hỏng của các căn cứ cũ mà không còn hoạt động.\n\nCác công trình này có thể [accent]được tháo dỡ[] để nhận được nguyên liệu.
hint.research = Sử dụng nút \ue875 [accent]Nghiên cứu[] để nghiên cứu công nghệ mới. hint.research = Sử dụng nút \ue875 [accent]Nghiên cứu[] để nghiên cứu công nghệ mới.
hint.research.mobile = Sử dụng nút \ue875 [accent]Nghiên cứu[] trong \ue88c [accent]Trình đơn[] để nghiên cứu công nghệ mới. hint.research.mobile = Sử dụng nút \ue875 [accent]Nghiên cứu[] trong \ue88c [accent]Trình đơn[] để nghiên cứu công nghệ mới.
hint.unitControl = Giữ [accent][[L-ctrl][] và [accent]nhấp chuột[] để điều khiển đơn vị của bạn hoặc súng. hint.unitControl = Giữ [accent][[L-ctrl][] và [accent]nhấp chuột[] để điều khiển đơn vị của bạn hoặc súng.
@@ -1907,13 +1941,13 @@ onset.turrets = Các đơn vị rất tốt, nhưng [accent]súng[] cung cấp k
onset.turretammo = Tiếp đạn cho súng bằng [accent]beryllium[]. onset.turretammo = Tiếp đạn cho súng bằng [accent]beryllium[].
onset.walls = [accent]Tường[] có thể ngăn chặn sát thương đến các công trình.\nĐặt một số \uf6ee [accent]tường beryllium[] xung quanh súng. onset.walls = [accent]Tường[] có thể ngăn chặn sát thương đến các công trình.\nĐặt một số \uf6ee [accent]tường beryllium[] xung quanh súng.
onset.enemies = Quân địch đang đến, hãy chuẩn bị phòng thủ. onset.enemies = Quân địch đang đến, hãy chuẩn bị phòng thủ.
onset.defenses = [accent]Set up defenses:[lightgray] {0} onset.defenses = [accent]Thiết lập phòng thủ:[lightgray] {0}
onset.attack = Quân địch đã suy yếu.\nHãy phản công. onset.attack = Quân địch đã suy yếu.\nHãy phản công.
onset.cores = Các căn cứ có thể được đặt trên [accent]ô căn cứ[].\nCác căn cứ mới có thể được đặt ở bất kỳ đâu trên bản đồ.\nĐặt một \uf725 căn cứ. onset.cores = Các căn cứ có thể được đặt trên [accent]ô căn cứ[].\nCác căn cứ mới có thể được đặt ở bất kỳ đâu trên bản đồ.\nĐặt một \uf725 căn cứ.
onset.detect = Quân địch sẽ phát hiện bạn trong vòng 2 phút.\nHãy chuẩn bị phòng thủ, khai thác và sản xuất. onset.detect = Quân địch sẽ phát hiện bạn trong vòng 2 phút.\nHãy chuẩn bị phòng thủ, khai thác và sản xuất.
onset.commandmode = Giữ [accent]Shift[] để vào [accent]chế độ điều khiển quân[].\n[accent]Nhấp chuột trái và kéo[] để chọn các đơn vị.\n[accent]Chuộc phải[] để điều khiển các đơn vị di chuyển hoặc tấn công. onset.commandmode = Giữ [accent]Shift[] để vào [accent]chế độ điều khiển quân[].\n[accent]Nhấp chuột trái và kéo[] để chọn các đơn vị.\n[accent]Chuộc phải[] để điều khiển các đơn vị di chuyển hoặc tấn công.
onset.commandmode.mobile = Nhấn vào [accent]nút điều khiển[] để vào [accent]chế độ điều khiển quân[].\nGiữ một ngón tay, sau đó [accent]kéo[] để chọn các đơn vị.\n[accent]Nhấp[] để điều khiển các đơn vị di chuyển hoặc tấn công. onset.commandmode.mobile = Nhấn vào [accent]nút điều khiển[] để vào [accent]chế độ điều khiển quân[].\nGiữ một ngón tay, sau đó [accent]kéo[] để chọn các đơn vị.\n[accent]Nhấp[] để điều khiển các đơn vị di chuyển hoặc tấn công.
aegis.tungsten = Tungsten can be mined using an [accent]impact drill[].\nThis structure requires [accent]water[] and [accent]power[]. aegis.tungsten = Tungsten có thể khai thác bằng [accent]khoan thủy lực[].\nCông trình này cần có [accent]nước[] và [accent]năng lượng[].
split.pickup = Một số khối có thể được mang bởi đơn vị.\nNhấp vào [accent]container[] và đặt nó lên [accent]máy nạp vật phẩm[].\n(Phím mặc định là [ và ] để mang và thả) split.pickup = Một số khối có thể được mang bởi đơn vị.\nNhấp vào [accent]container[] và đặt nó lên [accent]máy nạp vật phẩm[].\n(Phím mặc định là [ và ] để mang và thả)
split.pickup.mobile = Một số khối có thể được mang bởi đơn vị.\nNhấp vào [accent]container[] và đặt nó lên [accent]máy nạp vật phẩm[].\n(Để mang hoặc thả một khối, ấn giữ nó một chút.) split.pickup.mobile = Một số khối có thể được mang bởi đơn vị.\nNhấp vào [accent]container[] và đặt nó lên [accent]máy nạp vật phẩm[].\n(Để mang hoặc thả một khối, ấn giữ nó một chút.)
split.acquire = Bạn cần một số tungsten để sản xuất đơn vị. split.acquire = Bạn cần một số tungsten để sản xuất đơn vị.
@@ -1958,7 +1992,7 @@ liquid.nitrogen.description = Được sử dụng trong khai thác tài nguyên
liquid.neoplasm.description = Một sản phẩm phụ sinh học nguy hiểm của lò phản ứng Neoplasia. Lan nhanh sang bất kì khối chứa nước nào mà nó chạm vào và gây hư hại chúng. Nhớt. liquid.neoplasm.description = Một sản phẩm phụ sinh học nguy hiểm của lò phản ứng Neoplasia. Lan nhanh sang bất kì khối chứa nước nào mà nó chạm vào và gây hư hại chúng. Nhớt.
liquid.neoplasm.details = Neoplasm. Một khối lượng các tế bào tổng hợp phân chia nhanh chóng không kiểm soát với độ đặc giống như bùn. Kháng nhiệt. Cực kì nguy hiểm cho bất cứ khối nào có liên quan đến nước.\n\nQuá phức tạp và không ổn định để được phân tích. Chưa rõ được tiềm năng và ứng dụng của nó. Khuyến nghị đốt chúng trong xỉ nóng chảy liquid.neoplasm.details = Neoplasm. Một khối lượng các tế bào tổng hợp phân chia nhanh chóng không kiểm soát với độ đặc giống như bùn. Kháng nhiệt. Cực kì nguy hiểm cho bất cứ khối nào có liên quan đến nước.\n\nQuá phức tạp và không ổn định để được phân tích. Chưa rõ được tiềm năng và ứng dụng của nó. Khuyến nghị đốt chúng trong xỉ nóng chảy
block.derelict = \uf77e [lightgray]Không xác định block.derelict = \uf77e [lightgray]Bỏ hoang
block.armored-conveyor.description = Vận chuyển vật phẩm về phía trước. Không nhận đầu vào từ phía bên cạnh. block.armored-conveyor.description = Vận chuyển vật phẩm về phía trước. Không nhận đầu vào từ phía bên cạnh.
block.illuminator.description = Phát sáng. block.illuminator.description = Phát sáng.
block.message.description = Lưu trữ tin nhắn giao tiếp giữa đồng đội. block.message.description = Lưu trữ tin nhắn giao tiếp giữa đồng đội.
@@ -2098,7 +2132,7 @@ block.additive-reconstructor.description = Nâng cấp quân của bạn lên c
block.multiplicative-reconstructor.description = Nâng cấp quân của bạn lên cấp ba. block.multiplicative-reconstructor.description = Nâng cấp quân của bạn lên cấp ba.
block.exponential-reconstructor.description = Nâng cấp quân của bạn lên cấp bốn. block.exponential-reconstructor.description = Nâng cấp quân của bạn lên cấp bốn.
block.tetrative-reconstructor.description = Nâng cấp quân của bạn lên cấp năm (cuối cùng). block.tetrative-reconstructor.description = Nâng cấp quân của bạn lên cấp năm (cuối cùng).
block.switch.description = Công tắc, trạng thái có thể được đọc và điều khiển với vi xử lý logic. block.switch.description = Công tắc, trạng thái có thể được đọc và điều khiển với xử lý logic.
block.micro-processor.description = Chạy tập hợp các chỉ dẫn trong một vòng lặp, có thể dùng để điều khiển robot và công trình. block.micro-processor.description = Chạy tập hợp các chỉ dẫn trong một vòng lặp, có thể dùng để điều khiển robot và công trình.
block.logic-processor.description = Chạy tập hợp các chỉ dẫn trong một vòng lặp, có thể dùng để điều khiển robot và công trình. Nhanh hơn bộ xử lý nhỏ. block.logic-processor.description = Chạy tập hợp các chỉ dẫn trong một vòng lặp, có thể dùng để điều khiển robot và công trình. Nhanh hơn bộ xử lý nhỏ.
block.hyper-processor.description = Chạy tập hợp các chỉ dẫn trong một vòng lặp, có thể dùng để điều khiển robot và công trình. Nhanh hơn bộ xử lý. block.hyper-processor.description = Chạy tập hợp các chỉ dẫn trong một vòng lặp, có thể dùng để điều khiển robot và công trình. Nhanh hơn bộ xử lý.
@@ -2261,7 +2295,7 @@ unit.emanate.description = Xây công trình để phòng thủ lõi Acropolis.
lst.read = Đọc một số từ bộ nhớ được liên kết. lst.read = Đọc một số từ bộ nhớ được liên kết.
lst.write = Ghi một số vào bộ nhớ được liên kết. lst.write = Ghi một số vào bộ nhớ được liên kết.
lst.print = Thêm văn bản vào bộ nhớ in.\nKhông hiển thị gì cho đến khi sử dụng [accent]Print Flush[]. lst.print = Thêm văn bản vào bộ nhớ in.\nKhông hiển thị gì cho đến khi sử dụng [accent]Print Flush[].
lst.format = Replace next placeholder ("[accent]@[]") in text buffer with a value.\nExample:\n[accent]print "test @"\nformat "example" lst.format = Thay thế kí tự giữ chỗ tiếp theo ("[accent]@[]") trong bộ đệm văn bản bằng giá trị.\nVí dụ:\n[accent]print "test @"\nformat "example"
lst.draw = Thêm một thao tác vào bộ nhớ vẽ.\nKhông hiển thị gì cho đến khi sử dụng [accent]Draw Flush[]. lst.draw = Thêm một thao tác vào bộ nhớ vẽ.\nKhông hiển thị gì cho đến khi sử dụng [accent]Draw Flush[].
lst.drawflush = Chuyển các thao tác [accent]Draw[] đến màn hình. lst.drawflush = Chuyển các thao tác [accent]Draw[] đến màn hình.
lst.printflush = Chuyển các thao tác [accent]Print[] đến khối tin nhắn. lst.printflush = Chuyển các thao tác [accent]Print[] đến khối tin nhắn.
@@ -2284,6 +2318,8 @@ lst.getblock = Lấy dữ liệu từ ô từ vị trí bất kì.
lst.setblock = Chỉnh sửa dữ liệu từ ô từ vị trí bất kì. lst.setblock = Chỉnh sửa dữ liệu từ ô từ vị trí bất kì.
lst.spawnunit = Tạo ra quân từ vị trí. lst.spawnunit = Tạo ra quân từ vị trí.
lst.applystatus = Áp dụng hoặc loại bỏ một hiệu ứng trạng thái cho một đơn vị. lst.applystatus = Áp dụng hoặc loại bỏ một hiệu ứng trạng thái cho một đơn vị.
lst.weathersense = Kiểm tra kiểu thời tiết đang hoạt động.
lst.weatherset = Thiết lập trạng thái hiện tại của kiểu thời tiết.
lst.spawnwave = Mô phỏng một lượt xuất hiện ở vị trí tùy ý.\nSẽ không tăng số đếm lượt. lst.spawnwave = Mô phỏng một lượt xuất hiện ở vị trí tùy ý.\nSẽ không tăng số đếm lượt.
lst.explosion = Tạo ra một vụ nổ tại vị trí đó. lst.explosion = Tạo ra một vụ nổ tại vị trí đó.
lst.setrate = Đặt tốc độ thực thi khối xử lý theo chỉ thị/tíc-tắc. lst.setrate = Đặt tốc độ thực thi khối xử lý theo chỉ thị/tíc-tắc.
@@ -2297,45 +2333,45 @@ lst.getflag = Kiểm tra nếu cờ toàn cục được đặt.
lst.setprop = Đặt một thuộc tính của đơn vị hoặc công trình. lst.setprop = Đặt một thuộc tính của đơn vị hoặc công trình.
lst.effect = Tạo một phần hiệu ứng nhỏ. lst.effect = Tạo một phần hiệu ứng nhỏ.
lst.sync = Đồng bộ giá trị biến qua mạng.\nChỉ gọi tối đa 10 lần mỗi giây. lst.sync = Đồng bộ giá trị biến qua mạng.\nChỉ gọi tối đa 10 lần mỗi giây.
lst.makemarker = Create a new logic marker in the world.\nAn ID to identify this marker must be provided.\nMarkers currently limited to 20,000 per world. lst.makemarker = Tạo mới điểm đánh dấu lô-gic trên thế giới.\n Một định danh cho điểm đánh dấu này phải được cung cấp.\nĐiểm đánh dấu hiện tại bị giới hạn 20,000 trên mỗi thế giới.
lst.setmarker = Set a property for a marker.\nThe ID used must be the same as in the Make Marker instruction. lst.setmarker = Lập một thuộc tính cho một điểm đánh dấu.\n Định danh phải giống như định danh ở chỉ dẫn lệnh Tạo Điểm đánh dấu (Make Marker).\nGiá trị [accent]null [] sẽ bị phớt lờ thay vì chuyển thành 0.
lst.localeprint = Add map locale property value to the text buffer.\nTo set map locale bundles in map editor, check [accent]Map Info > Locale Bundles[].\nIf client is a mobile device, tries to print a property ending in ".mobile" first. lst.localeprint = Thêm một giá trị thuộc tính ngôn ngữ của bản đồ vào bộ đệm văn bản.\nĐể thiết đặt gói ngôn ngữ trong trình chỉnh sửa bản đồ, xem qua [accent]Thông tin bản đồ > Gói ngôn ngữ[].\nNếu máy khách là một thiết bị di động, sẽ cố in thuộc tính kết thúc bằng ".mobile" trước tiên.
lglobal.false = 0 lglobal.false = 0
lglobal.true = 1 lglobal.true = 1
lglobal.null = null lglobal.null = null
lglobal.@pi = The mathematical constant pi (3.141...) lglobal.@pi = Hằng số toán học pi (3.141...)
lglobal.@e = The mathematical constant e (2.718...) lglobal.@e = Hằng số toán học e (2.718...)
lglobal.@degToRad = Multiply by this number to convert degrees to radians lglobal.@degToRad = Nhân với số này để chuyển từ độ (deg) sang radian (rad)
lglobal.@radToDeg = Multiply by this number to convert radians to degrees lglobal.@radToDeg = Nhân với số này để chuyển từ radian (rad) sang độ (deg)
lglobal.@time = Playtime of current save, in milliseconds lglobal.@time = Thời gian chơi của bản lưu hiện tại, tính bằng mili-giây
lglobal.@tick = Playtime of current save, in ticks (1 second = 60 ticks) lglobal.@tick = Thời gian chơi của bản lưu hiện tại, tính bằng tích-tắc (1 giây = 60 tích-tắc)
lglobal.@second = Playtime of current save, in seconds lglobal.@second = Thời gian chơi của bản lưu hiện tại, tính bằng giây
lglobal.@minute = Playtime of current save, in minutes lglobal.@minute = Thời gian chơi của bản lưu hiện tại, tính bằng phút
lglobal.@waveNumber = Current wave number, if waves are enabled lglobal.@waveNumber = Số lượt hiện tại, nếu chế độ lượt được bật
lglobal.@waveTime = Countdown timer for waves, in seconds lglobal.@waveTime = Thời gian đếm ngược của lượt, tính bằng giây
lglobal.@mapw = Map width in tiles lglobal.@mapw = Độ rộng bản đồ, tính bằng ô
lglobal.@maph = Map height in tiles lglobal.@maph = Độ cao bản đồ, tính bằng ô
lglobal.sectionMap = Map lglobal.sectionMap = Bản đồ
lglobal.sectionGeneral = General lglobal.sectionGeneral = Chung
lglobal.sectionNetwork = Network/Clientside [World Processor Only] lglobal.sectionNetwork = Mạng/Máy khách [Chỉ Bộ xử lý thế giới]
lglobal.sectionProcessor = Processor lglobal.sectionProcessor = Bộ xử lý
lglobal.sectionLookup = Lookup lglobal.sectionLookup = Tra cứu
lglobal.@this = The logic block executing the code lglobal.@this = Khối lô-gíc đang thực thi đoạn mã
lglobal.@thisx = X coordinate of block executing the code lglobal.@thisx = Tọa độ x của khối đang thực thi đoạn mã
lglobal.@thisy = Y coordinate of block executing the code lglobal.@thisy = Tọa độ y của khối đang thực thi đoạn mã
lglobal.@links = Total number of blocks linked to this processors lglobal.@links = Tổng số khối đã liên kết đến bộ xử lý này
lglobal.@ipt = Execution speed of the processor in instructions per tick (60 ticks = 1 second) lglobal.@ipt = Tốc độ thực thi của bộ xử lý tính bằng lệnh mỗi tích-tắc (60 tích-tắc = 1 giây)
lglobal.@unitCount = Total number of types of unit content in the game; used with the lookup instruction lglobal.@unitCount = Tổng số kiểu mẫu đơn vị trong trò chơi; được dùng với lệnh tra cứu
lglobal.@blockCount = Total number of types of block content in the game; used with the lookup instruction lglobal.@blockCount = Tổng số kiểu mẫu khối trong trò chơi; được dùng với lệnh tra cứu
lglobal.@itemCount = Total number of types of item content in the game; used with the lookup instruction lglobal.@itemCount = Tổng số kiểu mẫu vật phẩm trong trò chơi; được dùng với lệnh tra cứu
lglobal.@liquidCount = Total number of types of liquid content in the game; used with the lookup instruction lglobal.@liquidCount = Tổng số kiểu mẫu chất lỏng trong trò chơi; được dùng với lệnh tra cứu
lglobal.@server = True if the code is running on a server or in singleplayer, false otherwise lglobal.@server = True nếu đoạn mã chạy trên máy chủ hoặc chơi đơn, ngược lại là false
lglobal.@client = True if the code is running on a client connected to a server lglobal.@client = True nếu đoạn mã chạy trên máy khách được kết nối đến máy chủ
lglobal.@clientLocale = Locale of the client running the code. For example: en_US lglobal.@clientLocale = Ngôn ngữ của máy khách đang chạy đoạn mã. Ví dụ: vi_VN
lglobal.@clientUnit = Unit of client running the code lglobal.@clientUnit = Đơn vị máy khách đang chạy đoạn mã
lglobal.@clientName = Player name of client running the code lglobal.@clientName = Tên người chơi của máy khách đang chạy đoạn mã
lglobal.@clientTeam = Team ID of client running the code lglobal.@clientTeam = Định danh đội của máy khách đang chạy đoạn mã
lglobal.@clientMobile = True is the client running the code is on mobile, false otherwise lglobal.@clientMobile = True nếu máy khách đang chạy đoạn mã trên thiết bị di động, ngược lại là false
logic.nounitbuild = [red]Lô-gíc xây dựng đơn vị không được phép ở đây. logic.nounitbuild = [red]Lô-gíc xây dựng đơn vị không được phép ở đây.
@@ -2378,7 +2414,7 @@ graphicstype.poly = Tô vào đa giác đều.
graphicstype.linepoly = Vẽ đường viền đa giác đều. graphicstype.linepoly = Vẽ đường viền đa giác đều.
graphicstype.triangle = Tô một hình tam giác. graphicstype.triangle = Tô một hình tam giác.
graphicstype.image = Vẽ hình ảnh một số nội dung.\nVí dụ: [accent]@router[] hoặc [accent]@dagger[]. graphicstype.image = Vẽ hình ảnh một số nội dung.\nVí dụ: [accent]@router[] hoặc [accent]@dagger[].
graphicstype.print = Draws text from the print buffer.\nClears the print buffer. graphicstype.print = Vẽ văn bản từ bộ đệm in ra.\nLàm sạch bộ đệm.
lenum.always = Luôn đúng. lenum.always = Luôn đúng.
lenum.idiv = Chia lấy phần nguyên. lenum.idiv = Chia lấy phần nguyên.
@@ -2487,10 +2523,10 @@ lenum.build = Xây công trình.
lenum.getblock = Lấy một cấu trúc và kiểu tại một tọa độ.\nĐơn vị phải nằm trong tầm của vị trí.\nKhối rắn không phải công trình có kiểu [accent]@solid[]. lenum.getblock = Lấy một cấu trúc và kiểu tại một tọa độ.\nĐơn vị phải nằm trong tầm của vị trí.\nKhối rắn không phải công trình có kiểu [accent]@solid[].
lenum.within = Kiểm tra xem đơn vị có gần vị trí không. lenum.within = Kiểm tra xem đơn vị có gần vị trí không.
lenum.boost = Bắt đầu/Dừng tăng tốc. lenum.boost = Bắt đầu/Dừng tăng tốc.
lenum.flushtext = Flush print buffer's content to marker, if applicable.\nIf fetch is set to true, tries to fetch properties from map locale bundle or game's bundle. lenum.flushtext = Lấp đầy nội dung của bộ đệm cho điểm đánh dấu, nếu có thể áp dụng.\n Nếu [accent]fetch[] gắn là [accent]true[], sẽ cố truy vấn các thuộc tính từ gói ngôn ngữ của bản đồ hoặc trò chơi.
lenum.texture = Texture name straight from game's texture atlas (using kebab-case naming style).\nIf printFlush is set to true, consumes text buffer content as text argument. lenum.texture = Tên kết cấu lấy thẳng từ bản khung kết cấu của trò chơi (dùng kiểu tên kebab-case, tên-chữ-thường-chứa-gạch-nối).\nNếu printFlush gán bằng true, sẽ sử dụng nội dung bộ đệm văn bản làm tham số văn bản.
lenum.texturesize = Size of texture in tiles. Zero value scales marker width to original texture's size. lenum.texturesize = Kích thước của kết cấu bằng ô. Giá trị 0 chia tỷ lệ chiều rộng của điểm đánh dấu theo kích thước của kết cấu ban đầu.
lenum.autoscale = Whether to scale marker corresponding to player's zoom level. lenum.autoscale = Có chia tỷ lệ điểm đánh dấu tương ứng với mức thu phóng của người chơi hay không.
lenum.posi = Indexed position, used for line and quad markers with index zero being the first position. lenum.posi = Vị trí theo chỉ số, dùng cho điểm đánh dấu đường kẻ (line) và bốn điểm (quad) với 0 là vị trí đầu tiên.
lenum.uvi = Texture's position ranging from zero to one, used for quad markers. lenum.uvi = Vị trí của kết cấu trong phạm vi từ 0 đến 1, dùng cho đánh dấu bốn điểm (quad).
lenum.colori = Indexed position, used for line and quad markers with index zero being the first color. lenum.colori = Màu theo chỉ số, dùng cho điểm đánh dấu đường kẻ (line) và bốn điểm (quad) với 0 là màu đầu tiên.

View File

@@ -152,17 +152,17 @@ mod.incompatiblemod = [red]不兼容
mod.blacklisted = [red]不支持 mod.blacklisted = [red]不支持
mod.unmetdependencies = [red]缺少前置模组 mod.unmetdependencies = [red]缺少前置模组
mod.erroredcontent = [scarlet]内容错误 mod.erroredcontent = [scarlet]内容错误
mod.circulardependencies = [red]Circular Dependencies mod.circulardependencies = [red]循环依赖
mod.incompletedependencies = [red]Incomplete Dependencies mod.incompletedependencies = [red]缺失依赖
mod.requiresversion.details = 所需的最低游戏版本:[accent]{0}[]\n您的游戏版本过低。 这个模组需要更新的游戏版本通常是beta/alpha版本才能工作。 mod.requiresversion.details = 所需的最低游戏版本:[accent]{0}[]\n您的游戏版本过低。 模组需要更新的游戏版本通常是beta/alpha版本才能工作。
mod.outdatedv7.details = 这个模组与最新版游戏不兼容。 作者必须更新它,并在[accent]mod.json[]文件中写入[accent]minGameVersion: 136[]。 mod.outdatedv7.details = 模组与最新版游戏不兼容。 作者必须更新它,并在[accent]mod.json[]文件中写入[accent]minGameVersion: 136[]。
mod.blacklisted.details = 这个模组由于造成该版本游戏崩溃或其他原因被手动禁用了。 不要使用它。 mod.blacklisted.details = 模组由于造成该版本游戏崩溃或其他原因被手动禁用了。 不要使用它。
mod.missingdependencies.details = 缺少前置模组:{0} mod.missingdependencies.details = 缺少前置模组:{0}
mod.erroredcontent.details = 这个模组在游戏加载时发生了错误。 请通知模组作者修复它。 mod.erroredcontent.details = 模组在游戏加载时发生了错误。 请通知模组作者修复它。
mod.circulardependencies.details = This mod has dependencies that depends on each other. mod.circulardependencies.details = 此模组与其他模组相互依赖。
mod.incompletedependencies.details = This mod is unable to be loaded due to invalid or missing dependencies: {0}. mod.incompletedependencies.details = 由于依赖项无效或缺失,此模组无法加载:{0}.
mod.requiresversion = Requires game version: [red]{0} mod.requiresversion = 需要游戏版本: [red]{0}
mod.errors = 读取内容时发生错误。 mod.errors = 读取内容时发生错误。
mod.noerrorplay = [scarlet]您的模组发生了错误。 []禁用相关模组或修复错误后才能进入游戏。 mod.noerrorplay = [scarlet]您的模组发生了错误。 []禁用相关模组或修复错误后才能进入游戏。
@@ -258,19 +258,19 @@ trace = 跟踪玩家
trace.playername = 玩家名称:[accent]{0} trace.playername = 玩家名称:[accent]{0}
trace.ip = IP地址[accent]{0} trace.ip = IP地址[accent]{0}
trace.id = 玩家 ID[accent]{0} trace.id = 玩家 ID[accent]{0}
trace.language = Language: [accent]{0} trace.language = 语言: [accent]{0}
trace.mobile = 移动客户端:[accent]{0} trace.mobile = 移动客户端:[accent]{0}
trace.modclient = 自定义客户端:[accent]{0} trace.modclient = 自定义客户端:[accent]{0}
trace.times.joined = 进入服务器次数: [accent]{0} trace.times.joined = 进入服务器次数: [accent]{0}
trace.times.kicked = 踢出服务器次数: [accent]{0} trace.times.kicked = 踢出服务器次数: [accent]{0}
trace.ips = IPs: trace.ips = 曾用IP:
trace.names = Names: trace.names = 曾用名:
invalidid = 无效的客户端ID提交一个错误报告。 invalidid = 无效的客户端ID提交一个错误报告。
player.ban = Ban player.ban = 封禁
player.kick = Kick player.kick = 踢出
player.trace = Trace player.trace = 追朔
player.admin = Toggle Admin player.admin = 切换管理员
player.team = Change Team player.team = 改变队伍
server.bans = 黑名单 server.bans = 黑名单
server.bans.none = 没有被封禁的玩家! server.bans.none = 没有被封禁的玩家!
server.admins = 管理员 server.admins = 管理员
@@ -287,8 +287,8 @@ confirmkick = 确定踢出玩家“{0}[white]”?
confirmunban = 确定解封这名玩家? confirmunban = 确定解封这名玩家?
confirmadmin = 确定给予玩家“{0}[white]”管理员权限? confirmadmin = 确定给予玩家“{0}[white]”管理员权限?
confirmunadmin = 确定收回玩家“{0}[white]”的管理员权限? confirmunadmin = 确定收回玩家“{0}[white]”的管理员权限?
votekick.reason = Vote-Kick Reason votekick.reason = 投票踢出理由
votekick.reason.message = Are you sure you want to vote-kick "{0}[white]"?\nIf yes, please enter the reason: votekick.reason.message = 确定投票踢出玩家"{0}[white]"?\n如果是请输入理由
joingame.title = 加入游戏 joingame.title = 加入游戏
joingame.ip = 地址: joingame.ip = 地址:
disconnect = 已断开连接 disconnect = 已断开连接
@@ -306,7 +306,7 @@ server.invalidport = 无效的端口!
server.error = [scarlet]创建服务器错误。 server.error = [scarlet]创建服务器错误。
save.new = 新存档 save.new = 新存档
save.overwrite = 确定要覆盖这个存档吗? save.overwrite = 确定要覆盖这个存档吗?
save.nocampaign = Individual save files from the campaign cannot be imported. save.nocampaign = 无法导入战役中的单个保存文件。
overwrite = 覆盖 overwrite = 覆盖
save.none = 没有找到存档! save.none = 没有找到存档!
savefail = 保存失败! savefail = 保存失败!
@@ -344,23 +344,23 @@ open = 打开
customize = 自定义规则 customize = 自定义规则
cancel = 取消 cancel = 取消
command = 指挥 command = 指挥
command.queue = [lightgray][Queuing] command.queue = [lightgray][排队中]
command.mine = 挖矿 command.mine = 挖矿
command.repair = 维修 command.repair = 维修
command.rebuild = 重建 command.rebuild = 重建
command.assist = 协助建造 command.assist = 协助建造
command.move = 移动 command.move = 移动
command.boost = Boost command.boost = 助推
command.enterPayload = Enter Payload Block command.enterPayload = 进入载荷建筑
command.loadUnits = Load Units command.loadUnits = 拾取单位
command.loadBlocks = Load Blocks command.loadBlocks = 拾取建筑
command.unloadPayload = Unload Payload command.unloadPayload = 卸载载荷
stance.stop = Cancel Orders stance.stop = 取消指令
stance.shoot = Stance: Shoot stance.shoot = 姿态: 射击
stance.holdfire = Stance: Hold Fire stance.holdfire = 姿态: 停火
stance.pursuetarget = Stance: Pursue Target stance.pursuetarget = 姿态: 追逐目标
stance.patrol = Stance: Patrol Path stance.patrol = 姿态: 路径巡逻
stance.ram = Stance: Ram\n[lightgray]Straight line movement, no pathfinding stance.ram = 姿态: 冲锋\n[lightgray]径直移动,不进行寻路。
openlink = 打开链接 openlink = 打开链接
copylink = 复制链接 copylink = 复制链接
back = 返回 back = 返回
@@ -386,8 +386,8 @@ pausebuilding = 按[accent][[{0}][]键暂停建造
resumebuilding = 按[scarlet][[{0}][]键恢复建造 resumebuilding = 按[scarlet][[{0}][]键恢复建造
enablebuilding = 按[scarlet][[{0}][]键启用建造 enablebuilding = 按[scarlet][[{0}][]键启用建造
showui = UI已隐藏\n按[accent][[{0}][]键显示UI showui = UI已隐藏\n按[accent][[{0}][]键显示UI
commandmode.name = [accent]Command Mode commandmode.name = [accent]指挥模式
commandmode.nounits = [no units] commandmode.nounits = [无单位]
wave = [accent]第{0}波 wave = [accent]第{0}波
wave.cap = [accent]波次 {0}/{1} wave.cap = [accent]波次 {0}/{1}
wave.waiting = [lightgray]下一波倒计时:{0}秒 wave.waiting = [lightgray]下一波倒计时:{0}秒
@@ -441,7 +441,7 @@ editor.waves = 波次
editor.rules = 规则 editor.rules = 规则
editor.generation = 生成 editor.generation = 生成
editor.objectives = 目标 editor.objectives = 目标
editor.locales = Locale Bundles editor.locales = 本地化语言包
editor.ingame = 游戏内编辑 editor.ingame = 游戏内编辑
editor.playtest = 游戏内测试 editor.playtest = 游戏内测试
editor.publish.workshop = 上传到创意工坊 editor.publish.workshop = 上传到创意工坊
@@ -473,7 +473,7 @@ waves.max = 最大单位数
waves.guardian = Boss waves.guardian = Boss
waves.preview = 预览 waves.preview = 预览
waves.edit = 编辑… waves.edit = 编辑…
waves.random = Random waves.random = 随机
waves.copy = 复制到剪贴板 waves.copy = 复制到剪贴板
waves.load = 从剪贴板读取 waves.load = 从剪贴板读取
waves.invalid = 剪贴板中的波次信息无效。 waves.invalid = 剪贴板中的波次信息无效。
@@ -484,12 +484,12 @@ waves.sort.reverse = 反向排序
waves.sort.begin = 出场顺序 waves.sort.begin = 出场顺序
waves.sort.health = 生命值 waves.sort.health = 生命值
waves.sort.type = 类型 waves.sort.type = 类型
waves.search = Search waves... waves.search = 搜索波次...
waves.filter = Unit Filter waves.filter = 单位过滤器
waves.units.hide = 全部隐藏 waves.units.hide = 全部隐藏
waves.units.show = 全部显示 waves.units.show = 全部显示
#these are intentionally in lower case(中文无关) #these are intentionally in lower case
wavemode.counts = 数目 wavemode.counts = 数目
wavemode.totals = 总数 wavemode.totals = 总数
wavemode.health = 生命值 wavemode.health = 生命值
@@ -498,7 +498,7 @@ editor.default = [lightgray]<默认>
details = 详情… details = 详情…
edit = 编辑… edit = 编辑…
variables = 变量 variables = 变量
logic.globals = Built-in Variables logic.globals = 内置变量
editor.name = 名称: editor.name = 名称:
editor.spawn = 生成单位 editor.spawn = 生成单位
editor.removeunit = 移除单位 editor.removeunit = 移除单位
@@ -510,7 +510,7 @@ editor.errorlegacy = 此地图太旧了,旧的地图格式已不再支持。
editor.errornot = 这不是地图文件。 editor.errornot = 这不是地图文件。
editor.errorheader = 此地图文件无效或已损坏。 editor.errorheader = 此地图文件无效或已损坏。
editor.errorname = 地图没有定义名称。 加载的可能是存档文件? editor.errorname = 地图没有定义名称。 加载的可能是存档文件?
editor.errorlocales = Error reading invalid locale bundles. editor.errorlocales = 读取无效本地化语言包时出错。
editor.update = 更新 editor.update = 更新
editor.randomize = 重新生成 editor.randomize = 重新生成
editor.moveup = 上移 editor.moveup = 上移
@@ -522,7 +522,7 @@ editor.sectorgenerate = 生成区块
editor.resize = 改变尺寸 editor.resize = 改变尺寸
editor.loadmap = 载入地图 editor.loadmap = 载入地图
editor.savemap = 保存地图 editor.savemap = 保存地图
editor.savechanges = [scarlet]You have unsaved changes!\n\n[]Do you want to save them? editor.savechanges = [scarlet]您有未保存的更改!\n\n[]您想要保存他们吗?
editor.saved = 已保存! editor.saved = 已保存!
editor.save.noname = 您还没有指定地图的名称!在“地图信息”菜单里设置一个名称。 editor.save.noname = 您还没有指定地图的名称!在“地图信息”菜单里设置一个名称。
editor.save.overwrite = 您正试图覆盖一张内置地图!在“地图信息”菜单里重新设置一个其他的名称。 editor.save.overwrite = 您正试图覆盖一张内置地图!在“地图信息”菜单里重新设置一个其他的名称。
@@ -561,8 +561,8 @@ toolmode.eraseores = 擦除矿脉
toolmode.eraseores.description = 仅擦除矿脉,不影响其他物体。 toolmode.eraseores.description = 仅擦除矿脉,不影响其他物体。
toolmode.fillteams = 填充队伍 toolmode.fillteams = 填充队伍
toolmode.fillteams.description = 不再填充方块,而是填充队伍颜色。 toolmode.fillteams.description = 不再填充方块,而是填充队伍颜色。
toolmode.fillerase = Fill Erase toolmode.fillerase = 擦除同类
toolmode.fillerase.description = Erase blocks of the same type. toolmode.fillerase.description = 擦除同种种类的方块。
toolmode.drawteams = 绘制队伍 toolmode.drawteams = 绘制队伍
toolmode.drawteams.description = 不再绘制方块,而是绘制队伍颜色。 toolmode.drawteams.description = 不再绘制方块,而是绘制队伍颜色。
#未使用 #未使用
@@ -610,23 +610,23 @@ filter.option.floor2 = 内层地形
filter.option.threshold2 = 内层比例 filter.option.threshold2 = 内层比例
filter.option.radius = 半径 filter.option.radius = 半径
filter.option.percentile = 百分比 filter.option.percentile = 百分比
locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: @[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable) locales.info = 在这里,您可以为特定语言添加本地化语言包到您的地图中。在本地化语言包中,每个文本属性都有一个名称和一个值。这些文本属性可以由世界处理器和游戏目标使用它们的名称。它们支持文本格式化(用实际值替换占位符)。\n\n[cyan]示例文本属性:\n[]名称: [accent]timer[]: [accent]示例计时器, 剩余时间: {0}[]\n\n[cyan]用法:\n[]将其设置为目标的文本: [accent]@timer\n\n[]在世界处理器中打印它:\n[accent]localeprint "timer"\n格式化时间\n[gray](时间是一个单独计算的变量)
locales.deletelocale = Are you sure you want to delete this locale bundle? locales.deletelocale = 您确定要删除该本地化语言包吗?
locales.applytoall = Apply Changes To All Locales locales.applytoall = 将更改应用于所有本地化语言包
locales.addtoother = Add To Other Locales locales.addtoother = 添加到其他本地化语言包
locales.rollback = Rollback to last applied locales.rollback = 回滚到上次应用的状态
locales.filter = Property filter locales.filter = 文本属性过滤器
locales.searchname = Search name... locales.searchname = 搜索名称...
locales.searchvalue = Search value... locales.searchvalue = 搜索值...
locales.searchlocale = Search locale... locales.searchlocale = 搜索本地化...
locales.byname = By name locales.byname = 按名称
locales.byvalue = By value locales.byvalue = 按值
locales.showcorrect = Show properties that are present in all locales and have unique values everywhere locales.showcorrect = 显示所有本地化语言包中存在并且在所有地方具有唯一值的文本属性
locales.showmissing = Show properties that are missing in some locales locales.showmissing = 显示在某些本地化语言包中缺失的文本属性
locales.showsame = Show properties that have same values in different locales locales.showsame = 显示在不同本地化语言包中具有相同值的文本属性
locales.viewproperty = View in all locales locales.viewproperty = 在所有本地化语言包中查看
locales.viewing = Viewing property "{0}" locales.viewing = 查看文本属性 "{0}"
locales.addicon = Add Icon locales.addicon = 添加图标
width = 宽度: width = 宽度:
height = 高度: height = 高度:
@@ -679,11 +679,12 @@ objective.commandmode.name = 指挥模式
objective.flag.name = 标签 objective.flag.name = 标签
marker.shapetext.name = 带形状文本 marker.shapetext.name = 带形状文本
marker.point.name = Point marker.point.name =
marker.shape.name = 形状 marker.shape.name = 形状
marker.text.name = 文本 marker.text.name = 文本
marker.line.name = Line marker.line.name = 线
marker.quad.name = Quad marker.quad.name = 四边形
marker.texture.name = Texture
marker.background = 背景 marker.background = 背景
marker.outline = 轮廓 marker.outline = 轮廓
@@ -734,7 +735,7 @@ error.any = 未知网络错误。
error.bloom = 未能初始化光效。 \n您的设备可能不支持。 error.bloom = 未能初始化光效。 \n您的设备可能不支持。
weather.rain.name = 降雨 weather.rain.name = 降雨
weather.snow.name = 降雪 weather.snowing.name = 降雪
weather.sandstorm.name = 沙尘暴 weather.sandstorm.name = 沙尘暴
weather.sporestorm.name = 孢子风暴 weather.sporestorm.name = 孢子风暴
weather.fog.name = weather.fog.name =
@@ -771,8 +772,8 @@ sector.curlost = 区块已丢失
sector.missingresources = [scarlet]建造核心所需资源不足 sector.missingresources = [scarlet]建造核心所需资源不足
sector.attacked = 区块[accent]{0}[white]受到攻击! sector.attacked = 区块[accent]{0}[white]受到攻击!
sector.lost = 区块[accent]{0}[white]已丢失! sector.lost = 区块[accent]{0}[white]已丢失!
sector.capture = Sector [accent]{0}[white]Captured! sector.capture = 区块[accent]{0}[white]已占领!
sector.capture.current = Sector Captured! sector.capture.current = 区块已占领!
sector.changeicon = 更改图标 sector.changeicon = 更改图标
sector.noswitch.title = 无法切换区块 sector.noswitch.title = 无法切换区块
sector.noswitch = 你无法在当前区块遭受攻击时切换区块。\n\n区块[accent]{0}[]位于[accent]{1}[] sector.noswitch = 你无法在当前区块遭受攻击时切换区块。\n\n区块[accent]{0}[]位于[accent]{1}[]
@@ -947,7 +948,7 @@ stat.repairspeed = 修理速度
stat.weapons = 武器 stat.weapons = 武器
stat.bullet = 子弹 stat.bullet = 子弹
stat.moduletier = 模块等级 stat.moduletier = 模块等级
stat.unittype = Unit Type stat.unittype = 单位类型
stat.speedincrease = 提速 stat.speedincrease = 提速
stat.range = 范围 stat.range = 范围
stat.drilltier = 可钻探矿物 stat.drilltier = 可钻探矿物
@@ -994,17 +995,47 @@ stat.immunities = 免疫
stat.healing = 治疗 stat.healing = 治疗
ability.forcefield = 力墙场 ability.forcefield = 力墙场
ability.forcefield.description = 投射一个能吸收子弹的力场护盾
ability.repairfield = 修复场 ability.repairfield = 修复场
ability.repairfield.description = 修复附近的单位
ability.statusfield = 状态场 ability.statusfield = 状态场
ability.unitspawn = 单位工厂 ability.statusfield.description = 对附近的单位施加状态效果
ability.unitspawn = 单位生成
ability.unitspawn.description = 建造单位
ability.shieldregenfield = 护盾再生场 ability.shieldregenfield = 护盾再生场
ability.shieldregenfield.description = 再生附近单位的护盾
ability.movelightning = 闪电助推器 ability.movelightning = 闪电助推器
ability.movelightning.description = 移动时释放闪电
ability.armorplate = 装甲板
ability.armorplate.description = 在射击时减少受到的伤害
ability.shieldarc = 弧形护盾 ability.shieldarc = 弧形护盾
ability.shieldarc.description = 投射一个弧形的力场护盾,能吸收子弹
ability.suppressionfield = 修复压制场 ability.suppressionfield = 修复压制场
ability.energyfield = 能量场: ability.suppressionfield.description = 使附近的修复建筑停止工作
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}% ability.energyfield = 能量场
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0} ability.energyfield.description = 对附近的敌人释放电击
ability.regen = Regeneration ability.energyfield.healdescription = 对附近的敌人释放电击,并治疗友方
ability.regen = 再生
ability.regen.description = 随着时间的推移恢复自己的生命值
ability.liquidregen = 液体吸收
ability.liquidregen.description = 吸收液体以治疗自身
ability.spawndeath = 死亡产生单位
ability.spawndeath.description = 死亡时释放单位
ability.liquidexplode = 死亡溢液
ability.liquidexplode.description = 死亡时释放液体
ability.stat.firingrate = [stat]{0}/秒[lightgray] 射速
ability.stat.regen = [stat]{0}/秒[lightgray] 生命恢复速度
ability.stat.shield = [stat]{0}[lightgray] 护盾
ability.stat.repairspeed = [stat]{0}/秒[lightgray] 修复速度
ability.stat.slurpheal = [stat]{0}[lightgray] 生命/液体单位
ability.stat.cooldown = [stat]{0} 秒[lightgray] 冷却时间
ability.stat.maxtargets = [stat]{0}[lightgray] 最大目标数
ability.stat.sametypehealmultiplier = [stat]{0}%[lightgray] 同类型修复量
ability.stat.damagereduction = [stat]{0}%[lightgray] 伤害减免
ability.stat.minspeed = [stat]{0} 格/秒[lightgray] 最低速度
ability.stat.duration = [stat]{0} 秒[lightgray] 持续时间
ability.stat.buildtime = [stat]{0} 秒[lightgray] 建造时间
bar.onlycoredeposit = 仅核心可丢入资源 bar.onlycoredeposit = 仅核心可丢入资源
bar.drilltierreq = 需要更高级的钻头 bar.drilltierreq = 需要更高级的钻头
@@ -1044,9 +1075,9 @@ bullet.splashdamage = [stat]{0}[lightgray]范围伤害~[stat] {1}[lightgray]格
bullet.incendiary = [stat]燃烧 bullet.incendiary = [stat]燃烧
bullet.homing = [stat]追踪 bullet.homing = [stat]追踪
bullet.armorpierce = [stat]穿甲 bullet.armorpierce = [stat]穿甲
bullet.maxdamagefraction = [stat]{0}%[lightgray] damage limit bullet.maxdamagefraction = [stat]{0}%[lightgray] 伤害上限
bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles bullet.suppression = [stat]{0}[lightgray] 修复压制 ~ [stat]{1}[lightgray]
bullet.interval = [stat]{0}/sec[lightgray] interval bullets: bullet.interval = [stat]{0}/[lightgray] 分裂子弹:
bullet.frags = [stat]{0}[lightgray]x分裂子弹 bullet.frags = [stat]{0}[lightgray]x分裂子弹
bullet.lightning = [stat]{0}[lightgray]x闪电~[stat]{1}[lightgray]伤害 bullet.lightning = [stat]{0}[lightgray]x闪电~[stat]{1}[lightgray]伤害
bullet.buildingdamage = [stat]{0}%[lightgray]对建筑伤害 bullet.buildingdamage = [stat]{0}%[lightgray]对建筑伤害
@@ -1100,7 +1131,7 @@ setting.backgroundpause.name = 游戏在后台时自动暂停
setting.buildautopause.name = 自动暂停建造 setting.buildautopause.name = 自动暂停建造
setting.doubletapmine.name = 双击采矿 setting.doubletapmine.name = 双击采矿
setting.commandmodehold.name = 长按保持指挥模式 setting.commandmodehold.name = 长按保持指挥模式
setting.distinctcontrolgroups.name = Limit One Control Group Per Unit setting.distinctcontrolgroups.name = 每单位限制一个编队
setting.modcrashdisable.name = 游戏启动崩溃后禁用模组 setting.modcrashdisable.name = 游戏启动崩溃后禁用模组
setting.animatedwater.name = 动态液体 setting.animatedwater.name = 动态液体
setting.animatedshields.name = 动态力场 setting.animatedshields.name = 动态力场
@@ -1147,14 +1178,14 @@ setting.position.name = 显示玩家坐标
setting.mouseposition.name = 显示鼠标坐标 setting.mouseposition.name = 显示鼠标坐标
setting.musicvol.name = 音乐音量 setting.musicvol.name = 音乐音量
setting.atmosphere.name = 显示行星大气层 setting.atmosphere.name = 显示行星大气层
setting.drawlight.name = Draw Darkness/Lighting setting.drawlight.name = 绘制阴影/光照
setting.ambientvol.name = 环境音量 setting.ambientvol.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 = 发送匿名的崩溃报告
setting.savecreate.name = 自动创建存档 setting.savecreate.name = 自动创建存档
setting.steampublichost.name = Public Game Visibility setting.steampublichost.name = 公共游戏可见性
setting.playerlimit.name = 玩家数量限制 setting.playerlimit.name = 玩家数量限制
setting.chatopacity.name = 聊天界面不透明度 setting.chatopacity.name = 聊天界面不透明度
setting.lasersopacity.name = 电力连接线不透明度 setting.lasersopacity.name = 电力连接线不透明度
@@ -1164,8 +1195,8 @@ setting.showweather.name = 显示天气效果
setting.hidedisplays.name = 不显示逻辑绘图 setting.hidedisplays.name = 不显示逻辑绘图
setting.macnotch.name = 立陶宛語 setting.macnotch.name = 立陶宛語
setting.macnotch.description = 需要重新启动 setting.macnotch.description = 需要重新启动
steam.friendsonly = Friends Only steam.friendsonly = 仅限好友
steam.friendsonly.tooltip = Whether only Steam friends will be able to join your game.\nUnchecking this box will make your game public - anyone can join. steam.friendsonly.tooltip = 是否只有 Steam 好友才能加入您的游戏。\n取消选中此选项将使您的游戏公开 - 任何人都可以加入。
public.beta = 请注意,测试版的游戏不能公开可见。 public.beta = 请注意,测试版的游戏不能公开可见。
uiscale.reset = UI缩放比例已更改。\n点击“确定”接受更改。\n[accent]{0}[]秒后[scarlet]将自动退出并还原设置。 uiscale.reset = UI缩放比例已更改。\n点击“确定”接受更改。\n[accent]{0}[]秒后[scarlet]将自动退出并还原设置。
uiscale.cancel = 取消并退出 uiscale.cancel = 取消并退出
@@ -1174,7 +1205,7 @@ keybind.title = 重新绑定按键
keybinds.mobile = [scarlet]除了基本的移动以外,大多数按键绑定在移动设备上无效。 keybinds.mobile = [scarlet]除了基本的移动以外,大多数按键绑定在移动设备上无效。
category.general.name = 常规 category.general.name = 常规
category.view.name = 视图 category.view.name = 视图
category.command.name = Unit Command category.command.name = 单位指挥
category.multiplayer.name = 多人游戏 category.multiplayer.name = 多人游戏
category.blocks.name = 建筑选择 category.blocks.name = 建筑选择
placement.blockselectkeys = \n[lightgray]按键:[{0}, placement.blockselectkeys = \n[lightgray]按键:[{0},
@@ -1192,23 +1223,24 @@ keybind.mouse_move.name = 单位跟随鼠标
keybind.pan.name = 鼠标控制镜头 keybind.pan.name = 鼠标控制镜头
keybind.boost.name = 启动助推 keybind.boost.name = 启动助推
keybind.command_mode.name = 指挥模式 keybind.command_mode.name = 指挥模式
keybind.command_queue.name = Unit Command Queue keybind.command_queue.name = 单位指挥队列
keybind.create_control_group.name = Create Control Group keybind.create_control_group.name = 创建操控队伍
keybind.cancel_orders.name = Cancel Orders keybind.cancel_orders.name = 取消指令
keybind.unit_stance_shoot.name = Unit Stance: Shoot keybind.unit_stance_shoot.name = 单位姿态:射击
keybind.unit_stance_hold_fire.name = Unit Stance: Hold Fire keybind.unit_stance_hold_fire.name = 单位姿态:停火
keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target keybind.unit_stance_pursue_target.name = 单位姿态:追逐目标
keybind.unit_stance_patrol.name = Unit Stance: Patrol keybind.unit_stance_patrol.name = 单位姿态:巡逻
keybind.unit_stance_ram.name = Unit Stance: Ram keybind.unit_stance_ram.name = 单位姿态:冲锋
keybind.unit_command_move = Unit Command: Move keybind.unit_command_move.name = Unit Command: Move
keybind.unit_command_repair = Unit Command: Repair keybind.unit_command_repair.name = Unit Command: Repair
keybind.unit_command_rebuild = Unit Command: Rebuild keybind.unit_command_rebuild.name = Unit Command: Rebuild
keybind.unit_command_assist = Unit Command: Assist keybind.unit_command_assist.name = Unit Command: Assist
keybind.unit_command_mine = Unit Command: Mine keybind.unit_command_mine.name = Unit Command: Mine
keybind.unit_command_boost = Unit Command: Boost keybind.unit_command_boost.name = Unit Command: Boost
keybind.unit_command_load_units = Unit Command: Load Units keybind.unit_command_load_units.name = Unit Command: Load Units
keybind.unit_command_load_blocks = Unit Command: Load Blocks keybind.unit_command_load_blocks.name = Unit Command: Load Blocks
keybind.unit_command_unload_payload = Unit Command: Unload Payload keybind.unit_command_unload_payload.name = Unit Command: Unload Payload
keybind.unit_command_enter_payload.name = Unit Command: Enter Payload
keybind.rebuild_select.name = 重建建筑 keybind.rebuild_select.name = 重建建筑
keybind.schematic_select.name = 框选建筑 keybind.schematic_select.name = 框选建筑
keybind.schematic_menu.name = 蓝图目录 keybind.schematic_menu.name = 蓝图目录
@@ -1272,12 +1304,12 @@ mode.pvp.description = 与其他玩家对战。 \n[gray]需要地图中有至少
mode.attack.name = 进攻 mode.attack.name = 进攻
mode.attack.description = 摧毁敌人的基地。 \n[gray]需要地图中有敌方队伍的核心。 mode.attack.description = 摧毁敌人的基地。 \n[gray]需要地图中有敌方队伍的核心。
mode.custom = 自定义模式 mode.custom = 自定义模式
rules.invaliddata = Invalid clipboard data. rules.invaliddata = 无效剪贴板数据。
rules.hidebannedblocks = 隐藏禁用的建筑 rules.hidebannedblocks = 隐藏禁用的建筑
rules.infiniteresources = 无限资源 rules.infiniteresources = 无限资源
rules.onlydepositcore = 仅核心可放入资源 rules.onlydepositcore = 仅核心可放入资源
rules.derelictrepair = Allow Derelict Block Repair rules.derelictrepair = 允许修复残骸建筑
rules.reactorexplosions = 反应堆爆炸 rules.reactorexplosions = 反应堆爆炸
rules.coreincinerates = 核心焚烧 rules.coreincinerates = 核心焚烧
rules.disableworldprocessors = 禁用世界处理器 rules.disableworldprocessors = 禁用世界处理器
@@ -1286,8 +1318,8 @@ rules.wavetimer = 波次计时器
rules.wavesending = 波次可跳波 rules.wavesending = 波次可跳波
rules.waves = 波次 rules.waves = 波次
rules.attack = 进攻模式 rules.attack = 进攻模式
rules.buildai = Base Builder AI rules.buildai = 基础建筑者 AI
rules.buildaitier = Builder AI Tier rules.buildaitier = 建筑者 AI 等级
rules.rtsai = RTS AI rules.rtsai = RTS AI
rules.rtsminsquadsize = 最小部队规模 rules.rtsminsquadsize = 最小部队规模
rules.rtsmaxsquadsize = 最大部队规模 rules.rtsmaxsquadsize = 最大部队规模
@@ -1303,9 +1335,10 @@ rules.unitbuildspeedmultiplier = 单位生产速度倍率
rules.unitcostmultiplier = 单位生产花费倍率 rules.unitcostmultiplier = 单位生产花费倍率
rules.unithealthmultiplier = 单位生命倍率 rules.unithealthmultiplier = 单位生命倍率
rules.unitdamagemultiplier = 单位伤害倍率 rules.unitdamagemultiplier = 单位伤害倍率
rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier rules.unitcrashdamagemultiplier = 单位坠毁伤害倍率
rules.solarmultiplier = 太阳能发电倍率 rules.solarmultiplier = 太阳能发电倍率
rules.unitcapvariable = 核心可增加单位上限 rules.unitcapvariable = 核心可增加单位上限
rules.unitpayloadsexplode = 单位携带载荷与单位一起爆炸
rules.unitcap = 基础单位上限 rules.unitcap = 基础单位上限
rules.limitarea = 限制地图有效区域 rules.limitarea = 限制地图有效区域
rules.enemycorebuildradius = 敌方核心不可建造区域半径:[lightgray](格) rules.enemycorebuildradius = 敌方核心不可建造区域半径:[lightgray](格)
@@ -1315,7 +1348,7 @@ rules.buildcostmultiplier = 建造花费倍率
rules.buildspeedmultiplier = 建造速度倍率 rules.buildspeedmultiplier = 建造速度倍率
rules.deconstructrefundmultiplier = 拆除返还倍率 rules.deconstructrefundmultiplier = 拆除返还倍率
rules.waitForWaveToEnd = 等待波次结束 rules.waitForWaveToEnd = 等待波次结束
rules.wavelimit = Map Ends After Wave rules.wavelimit = 地图在有限波次后结束
rules.dropzoneradius = 敌人出生点禁区大小:[lightgray](格) rules.dropzoneradius = 敌人出生点禁区大小:[lightgray](格)
rules.unitammo = 单位有弹药限制 rules.unitammo = 单位有弹药限制
rules.enemyteam = 敌方队伍 rules.enemyteam = 敌方队伍
@@ -1338,6 +1371,8 @@ rules.weather = 天气
rules.weather.frequency = 周期: rules.weather.frequency = 周期:
rules.weather.always = 永久 rules.weather.always = 永久
rules.weather.duration = 时长: rules.weather.duration = 时长:
rules.placerangecheck.info = Prevents players from placing anything near enemy buildings. When trying to place a turret, the range is increased, so the turret will not be able to reach the enemy.
rules.onlydepositcore.info = Prevents units from depositing items into any buildings except cores.
content.item.name = 物品 content.item.name = 物品
content.liquid.name = 液体 content.liquid.name = 液体
@@ -2286,7 +2321,7 @@ unit.emanate.description = 保护卫城核心,可建造建筑。 使用一对
lst.read = 从连接的内存读取数字 lst.read = 从连接的内存读取数字
lst.write = 向连接的内存写入数字 lst.write = 向连接的内存写入数字
lst.print = 添加文字到打印缓存\n使用[accent]Print Flush[]后才会真正显示 lst.print = 添加文字到打印缓存\n使用[accent]Print Flush[]后才会真正显示
lst.format = Replace next placeholder ("[accent]@[]") in text buffer with a value.\nExample:\n[accent]print "test @"\nformat "example" lst.format = Replace next placeholder in text buffer with a value.\nDoes not do anything if placeholder pattern is invalid.\nPlaceholder pattern: "{[accent]number 0-9[]}"\nExample:\n[accent]print "test {0}"\nformat "example"
lst.draw = 添加绘图操作到绘图缓存\n使用[accent]Draw Flush[]后才会真正显示 lst.draw = 添加绘图操作到绘图缓存\n使用[accent]Draw Flush[]后才会真正显示
lst.drawflush = 将绘图缓存中的[accent]Draw[]队列刷新到显示屏 lst.drawflush = 将绘图缓存中的[accent]Draw[]队列刷新到显示屏
lst.printflush = 将打印缓存中的[accent]Print[]队列刷新到信息板 lst.printflush = 将打印缓存中的[accent]Print[]队列刷新到信息板
@@ -2309,6 +2344,8 @@ lst.getblock = 获取任意位置的地块数据
lst.setblock = 设置任意位置的地块数据 lst.setblock = 设置任意位置的地块数据
lst.spawnunit = 在指定位置生成单位 lst.spawnunit = 在指定位置生成单位
lst.applystatus = 添加或清除单位的一个状态效果 lst.applystatus = 添加或清除单位的一个状态效果
lst.weathersense = 检查特定种类的天气当前是否启用。
lst.weatherset = 设置当前状态为特定类型天气。
lst.spawnwave = 在任意位置生成一波敌人\n并不记录在波数计数器中 lst.spawnwave = 在任意位置生成一波敌人\n并不记录在波数计数器中
lst.explosion = 在某个位置生成爆炸 lst.explosion = 在某个位置生成爆炸
lst.setrate = 在指令/时间刻的时间下设置处理器处理速度 lst.setrate = 在指令/时间刻的时间下设置处理器处理速度
@@ -2317,50 +2354,51 @@ lst.packcolor = 将[0,1]范围内的RGBA分量整合成单个数字用于绘
lst.setrule = 设置地图规则 lst.setrule = 设置地图规则
lst.flushmessage = 在屏幕中央投影文字缓存区的内容\n会等待上一个文字显示结束 lst.flushmessage = 在屏幕中央投影文字缓存区的内容\n会等待上一个文字显示结束
lst.cutscene = 控制玩家游戏视角 lst.cutscene = 控制玩家游戏视角
lst.setflag = 设置一个可以被所有处理器读取的全局flag lst.setflag = 设置一个可以被所有处理器读取的全局标志。
lst.getflag = 检查是否设置了全局flag lst.getflag = 检查是否设置了全局标志。
lst.setprop = Sets a property of a unit or building. lst.setprop = 设置单位或建筑物的属性。
lst.effect = Create a particle effect. lst.effect = 创建一个粒子效果。
lst.sync = Sync a variable across the network.\nOnly invoked 10 times a second at most. lst.sync = 在网络中同步一个变量。\n最多每秒调用10次。
lst.makemarker = Create a new logic marker in the world.\nAn ID to identify this marker must be provided.\nMarkers currently limited to 20,000 per world. lst.makemarker = 在世界中创建一个新的逻辑标记。\n必须提供一个用于标识此标记的ID。\n目前每个世界限制最多20000个标记。
lst.setmarker = Set a property for a marker.\nThe ID used must be the same as in the Make Marker instruction. lst.setmarker = 为标记设置属性。\n使用的ID必须与制作标记指令中的相同。
lst.localeprint = Add map locale property value to the text buffer.\nTo set map locale bundles in map editor, check [accent]Map Info > Locale Bundles[].\nIf client is a mobile device, tries to print a property ending in ".mobile" first. lst.localeprint = 将地图本地化文本属性值添加到文本缓冲区中。\n要在地图编辑器中设置地图本地化包请检查 [accent]地图信息 > 本地化包[]\n如果客户端是移动设备,则尝试首先打印以 ".mobile" 结尾的属性。
lglobal.false = 0 lglobal.false = 0
lglobal.true = 1 lglobal.true = 1
lglobal.null = null lglobal.null = null
lglobal.@pi = The mathematical constant pi (3.141...) lglobal.@pi = 数学常数 pi (3.141...)
lglobal.@e = The mathematical constant e (2.718...) lglobal.@e = 数学常数 e (2.718...)
lglobal.@degToRad = Multiply by this number to convert degrees to radians lglobal.@degToRad = 将角度制转换为弧度制
lglobal.@radToDeg = Multiply by this number to convert radians to degrees lglobal.@radToDeg = 将弧度制转换为角度制
lglobal.@time = Playtime of current save, in milliseconds lglobal.@time = 当前保存的游戏时间,以毫秒为单位
lglobal.@tick = Playtime of current save, in ticks (1 second = 60 ticks) lglobal.@tick = 当前保存的游戏时间以tick为单位1秒 = 60 tick
lglobal.@second = Playtime of current save, in seconds lglobal.@second = 当前保存的游戏时间,以秒为单位
lglobal.@minute = Playtime of current save, in minutes lglobal.@minute = 当前保存的游戏时间,以分钟为单位
lglobal.@waveNumber = Current wave number, if waves are enabled lglobal.@waveNumber = 如果启用了波次,则为当前波次编号
lglobal.@waveTime = Countdown timer for waves, in seconds lglobal.@waveTime = 波次的倒计时计时器,以秒为单位
lglobal.@mapw = Map width in tiles lglobal.@mapw = 地图宽度(单位:格)
lglobal.@maph = Map height in tiles lglobal.@maph = 地图高度(单位:格)
lglobal.sectionMap = Map lglobal.sectionMap = 地图
lglobal.sectionGeneral = General lglobal.sectionGeneral = 通用
lglobal.sectionNetwork = Network/Clientside [World Processor Only] lglobal.sectionNetwork = 网络/客户端 [仅限世界处理器]
lglobal.sectionProcessor = Processor lglobal.sectionProcessor = 处理器
lglobal.sectionLookup = Lookup lglobal.sectionLookup = 查找
lglobal.@this = The logic block executing the code lglobal.@this = 执行代码的逻辑块
lglobal.@thisx = X coordinate of block executing the code lglobal.@thisx = 执行代码的逻辑块的 X 坐标
lglobal.@thisy = Y coordinate of block executing the code lglobal.@thisy = 执行代码的逻辑块的 Y 坐标
lglobal.@links = Total number of blocks linked to this processors lglobal.@links = 连接到此处理器的总块数
lglobal.@ipt = Execution speed of the processor in instructions per tick (60 ticks = 1 second) lglobal.@ipt = 处理器每 tick 的执行速度(每秒 60 tick
lglobal.@unitCount = Total number of types of unit content in the game; used with the lookup instruction lglobal.@unitCount = 游戏中单位内容的类型总数;与查找指令一起使用
lglobal.@blockCount = Total number of types of block content in the game; used with the lookup instruction lglobal.@blockCount = 游戏中块内容的类型总数;与查找指令一起使用
lglobal.@itemCount = Total number of types of item content in the game; used with the lookup instruction lglobal.@itemCount = 游戏中物品内容的类型总数;与查找指令一起使用
lglobal.@liquidCount = Total number of types of liquid content in the game; used with the lookup instruction lglobal.@liquidCount = 游戏中液体内容的类型总数;与查找指令一起使用
lglobal.@server = True if the code is running on a server or in singleplayer, false otherwise lglobal.@server = 如果代码正在服务器上运行或单人游戏中运行,则为真,否则为假
lglobal.@client = True if the code is running on a client connected to a server lglobal.@client = 如果代码正在连接到服务器的客户端上运行,则为真
lglobal.@clientLocale = Locale of the client running the code. For example: en_US lglobal.@clientLocale = 运行代码的客户端的区域设置。例如:en_US
lglobal.@clientUnit = Unit of client running the code lglobal.@clientUnit = 运行代码的客户端的单位
lglobal.@clientName = Player name of client running the code lglobal.@clientName = 运行代码的客户端的玩家名称
lglobal.@clientTeam = Team ID of client running the code lglobal.@clientTeam = 运行代码的客户端的团队 ID
lglobal.@clientMobile = True is the client running the code is on mobile, false otherwise lglobal.@clientMobile = 如果运行代码的客户端在移动设备上,则为真,否则为假
logic.nounitbuild = [red]此处不允许处理器操控单位去建设 logic.nounitbuild = [red]此处不允许处理器操控单位去建设
@@ -2376,7 +2414,7 @@ laccess.dead = 单位或建筑是否已被摧毁或者已失效
laccess.controlled = 若单位的控制方是处理器,返回[accent]@ctrlProcessor[]\n若单位/建筑由玩家控制,返回[accent]@ctrlPlayer[]\n若单位在编队中返回[accent]@ctrlFormation[]\n其他情况返回0 laccess.controlled = 若单位的控制方是处理器,返回[accent]@ctrlProcessor[]\n若单位/建筑由玩家控制,返回[accent]@ctrlPlayer[]\n若单位在编队中返回[accent]@ctrlFormation[]\n其他情况返回0
laccess.progress = 进度0到1之间的数值。 \n返回工厂生产、 炮塔装填,或者建筑建造的进度 laccess.progress = 进度0到1之间的数值。 \n返回工厂生产、 炮塔装填,或者建筑建造的进度
laccess.speed = 单位的最高速度(格/秒) laccess.speed = 单位的最高速度(格/秒)
laccess.id = ID of a unit/block/item/liquid.\nThis is the inverse of the lookup operation. laccess.id = 单位/块/物品/液体的ID。\n这是 Lookup 的反向操作。
lcategory.unknown = 未知 lcategory.unknown = 未知
lcategory.unknown.description = 未分类的指令 lcategory.unknown.description = 未分类的指令
@@ -2404,7 +2442,7 @@ graphicstype.poly = 绘制实心正多边形
graphicstype.linepoly = 绘制正多边形轮廓 graphicstype.linepoly = 绘制正多边形轮廓
graphicstype.triangle = 绘制实心三角形 graphicstype.triangle = 绘制实心三角形
graphicstype.image = 画出某个游戏内容的图像\n例如[accent]@router[]或者[accent]@dagger[] graphicstype.image = 画出某个游戏内容的图像\n例如[accent]@router[]或者[accent]@dagger[]
graphicstype.print = Draws text from the print buffer.\nClears the print buffer. graphicstype.print = 从打印缓冲区绘制文本。\n清除打印缓冲区。
lenum.always = 无条件跳转 lenum.always = 无条件跳转
lenum.idiv = 整数除法,返回不带小数的商 lenum.idiv = 整数除法,返回不带小数的商
@@ -2424,7 +2462,7 @@ lenum.xor = 按位异或
lenum.min = 取较小值 lenum.min = 取较小值
lenum.max = 取较大值 lenum.max = 取较大值
lenum.angle = 返回向量的辐角(角度制) lenum.angle = 返回向量的辐角(角度制)
lenum.anglediff = Absolute distance between two angles in degrees. lenum.anglediff = 返回两个角度之间的绝对距离(角度制)。
lenum.len = 返回向量的长度 lenum.len = 返回向量的长度
lenum.sin = 正弦(角度制) lenum.sin = 正弦(角度制)
@@ -2499,7 +2537,7 @@ lenum.unbind = 停用单位的逻辑控制\n恢复常规AI
lenum.move = 移动到某个位置 lenum.move = 移动到某个位置
lenum.approach = 靠近某个位置至一定的距离内 lenum.approach = 靠近某个位置至一定的距离内
lenum.pathfind = 寻路移动至敌人出生点 lenum.pathfind = 寻路移动至敌人出生点
lenum.autopathfind = Automatically pathfinds to the nearest enemy core or drop point.\nThis is the same as standard wave enemy pathfinding. lenum.autopathfind = "自动寻找最近的敌方核心或敌人生成点。\n这与波次中的敌人寻路相同。"
lenum.target = 向某个位置瞄准/射击 lenum.target = 向某个位置瞄准/射击
lenum.targetp = 根据提前量向某个目标瞄准/射击 lenum.targetp = 根据提前量向某个目标瞄准/射击
lenum.itemdrop = 将携带的物品放入一座建筑 lenum.itemdrop = 将携带的物品放入一座建筑
@@ -2513,10 +2551,10 @@ lenum.build = 建造建筑
lenum.getblock = 获取某个坐标处的建筑及其类型\n坐标需要在单位的感知范围内\n无建筑的地面返回[accent]@air[],墙壁返回[accent]@solid[] lenum.getblock = 获取某个坐标处的建筑及其类型\n坐标需要在单位的感知范围内\n无建筑的地面返回[accent]@air[],墙壁返回[accent]@solid[]
lenum.within = 检查单位是否接近了某个位置 lenum.within = 检查单位是否接近了某个位置
lenum.boost = 开始/停止助推 lenum.boost = 开始/停止助推
lenum.flushtext = Flush print buffer's content to marker, if applicable.\nIf fetch is set to true, tries to fetch properties from map locale bundle or game's bundle. lenum.flushtext = 如果适用的话,将打印缓冲区的内容刷新到标记。\n如果 fetch 设置为 true则尝试从地图本地化包或游戏的包中获取属性。
lenum.texture = Texture name straight from game's texture atlas (using kebab-case naming style).\nIf printFlush is set to true, consumes text buffer content as text argument. lenum.texture = 直接来自游戏纹理图集的纹理名称(使用 kebab-case 命名风格)。\n如果 printFlush 设置为 true则将文本缓冲区内容作为文本参数消耗。
lenum.texturesize = Size of texture in tiles. Zero value scales marker width to original texture's size. lenum.texturesize = 纹理的大小(格)。零值将标记宽度缩放为原始纹理的大小。
lenum.autoscale = Whether to scale marker corresponding to player's zoom level. lenum.autoscale = 是否根据玩家的缩放级别缩放标记。
lenum.posi = Indexed position, used for line and quad markers with index zero being the first position. lenum.posi = 索引位置,用于线和四边形标记,索引零表示第一个位置。
lenum.uvi = Texture's position ranging from zero to one, used for quad markers. lenum.uvi = 纹理的位置范围从零到一,用于四边形标记。
lenum.colori = Indexed position, used for line and quad markers with index zero being the first color. lenum.colori = 索引位置,用于线和四边形标记,索引零表示第一个颜色。

View File

@@ -607,7 +607,7 @@ filter.option.floor2 = 次要地板
filter.option.threshold2 = 次要閾值 filter.option.threshold2 = 次要閾值
filter.option.radius = 半徑 filter.option.radius = 半徑
filter.option.percentile = 百分比 filter.option.percentile = 百分比
locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: @[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable) locales.info = Here, you can add locale bundles for specific languages to your map. In locale bundles, each property has a name and a value. These properties can be used by world processors and objectives using their names. They support text formatting (replacing placeholders with actual values).\n\n[cyan]Example property:\n[]name: [accent]timer[]\nvalue: [accent]Example timer, time left: {0}[]\n\n[cyan]Usage:\n[]Set it as objective's text: [accent]@timer\n\n[]Print it in a world processor:\n[accent]localeprint "timer"\nformat time\n[gray](where time is a separately calculated variable)
locales.deletelocale = Are you sure you want to delete this locale bundle? locales.deletelocale = Are you sure you want to delete this locale bundle?
locales.applytoall = Apply Changes To All Locales locales.applytoall = Apply Changes To All Locales
locales.addtoother = Add To Other Locales locales.addtoother = Add To Other Locales
@@ -681,6 +681,7 @@ marker.shape.name = 稜框標示
marker.text.name = 文字標示 marker.text.name = 文字標示
marker.line.name = Line marker.line.name = Line
marker.quad.name = Quad marker.quad.name = Quad
marker.texture.name = Texture
marker.background = 反黑背景 marker.background = 反黑背景
marker.outline = 描邊 marker.outline = 描邊
@@ -731,7 +732,7 @@ error.any = 未知網路錯誤。
error.bloom = 初始化特效失敗。\n您的裝置可能不支援 error.bloom = 初始化特效失敗。\n您的裝置可能不支援
weather.rain.name = weather.rain.name =
weather.snow.name = weather.snowing.name =
weather.sandstorm.name = 沙塵暴 weather.sandstorm.name = 沙塵暴
weather.sporestorm.name = 孢子風暴 weather.sporestorm.name = 孢子風暴
weather.fog.name = weather.fog.name =
@@ -990,17 +991,46 @@ stat.immunities = Immunities
stat.healing = 治癒 stat.healing = 治癒
ability.forcefield = 防護罩 ability.forcefield = 防護罩
ability.forcefield.description = Projects a force shield that absorbs bullets
ability.repairfield = 維修力場 ability.repairfield = 維修力場
ability.repairfield.description = Repairs nearby units
ability.statusfield = 狀態力場 ability.statusfield = 狀態力場
ability.statusfield.description = Applies a status effect to nearby units
ability.unitspawn = 工廠 ability.unitspawn = 工廠
ability.unitspawn.description = Constructs units
ability.shieldregenfield = 護盾充能力場 ability.shieldregenfield = 護盾充能力場
ability.shieldregenfield.description = Regenerates shields of nearby units
ability.movelightning = 移動閃電 ability.movelightning = 移動閃電
ability.movelightning.description = Releases lightning while moving
ability.armorplate = Armor Plate
ability.armorplate.description = Reduces damage taken while shooting
ability.shieldarc = Shield Arc ability.shieldarc = Shield Arc
ability.shieldarc.description = Projects a force shield in an arc that absorbs bullets
ability.suppressionfield = Regen Suppression Field ability.suppressionfield = Regen Suppression Field
ability.suppressionfield.description = Stops nearby repair buildings
ability.energyfield = 能量場: ability.energyfield = 能量場:
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}% ability.energyfield.description = Zaps nearby enemies
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0} ability.energyfield.healdescription = Zaps nearby enemies and heals allies
ability.regen = Regeneration ability.regen = Regeneration
ability.regen.description = Regenerates own health over time
ability.liquidregen = Liquid Absorption
ability.liquidregen.description = Absorbs liquid to heal itself
ability.spawndeath = Death Spawns
ability.spawndeath.description = Releases units on death
ability.liquidexplode = Death Spillage
ability.liquidexplode.description = Spills liquid on death
ability.stat.firingrate = [stat]{0}/sec[lightgray] firing rate
ability.stat.regen = [stat]{0}[lightgray] health/sec
ability.stat.shield = [stat]{0}[lightgray] shield
ability.stat.repairspeed = [stat]{0}/sec[lightgray] repair speed
ability.stat.slurpheal = [stat]{0}[lightgray] health/liquid unit
ability.stat.cooldown = [stat]{0} sec[lightgray] cooldown
ability.stat.maxtargets = [stat]{0}[lightgray] max targets
ability.stat.sametypehealmultiplier = [stat]{0}%[lightgray] same type repair amount
ability.stat.damagereduction = [stat]{0}%[lightgray] damage reduction
ability.stat.minspeed = [stat]{0} tiles/sec[lightgray] min speed
ability.stat.duration = [stat]{0} sec[lightgray] duration
ability.stat.buildtime = [stat]{0} sec[lightgray] build time
bar.onlycoredeposit = 僅允許向核心放置物品 bar.onlycoredeposit = 僅允許向核心放置物品
bar.drilltierreq = 需要更好的鑽頭 bar.drilltierreq = 需要更好的鑽頭
@@ -1196,15 +1226,16 @@ keybind.unit_stance_hold_fire.name = Unit Stance: Hold Fire
keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target
keybind.unit_stance_patrol.name = Unit Stance: Patrol keybind.unit_stance_patrol.name = Unit Stance: Patrol
keybind.unit_stance_ram.name = Unit Stance: Ram keybind.unit_stance_ram.name = Unit Stance: Ram
keybind.unit_command_move = Unit Command: Move keybind.unit_command_move.name = Unit Command: Move
keybind.unit_command_repair = Unit Command: Repair keybind.unit_command_repair.name = Unit Command: Repair
keybind.unit_command_rebuild = Unit Command: Rebuild keybind.unit_command_rebuild.name = Unit Command: Rebuild
keybind.unit_command_assist = Unit Command: Assist keybind.unit_command_assist.name = Unit Command: Assist
keybind.unit_command_mine = Unit Command: Mine keybind.unit_command_mine.name = Unit Command: Mine
keybind.unit_command_boost = Unit Command: Boost keybind.unit_command_boost.name = Unit Command: Boost
keybind.unit_command_load_units = Unit Command: Load Units keybind.unit_command_load_units.name = Unit Command: Load Units
keybind.unit_command_load_blocks = Unit Command: Load Blocks keybind.unit_command_load_blocks.name = Unit Command: Load Blocks
keybind.unit_command_unload_payload = Unit Command: Unload Payload keybind.unit_command_unload_payload.name = Unit Command: Unload Payload
keybind.unit_command_enter_payload.name = Unit Command: Enter Payload
keybind.rebuild_select.name = Rebuild Region keybind.rebuild_select.name = Rebuild Region
keybind.schematic_select.name = 選擇區域 keybind.schematic_select.name = 選擇區域
keybind.schematic_menu.name = 藍圖目錄 keybind.schematic_menu.name = 藍圖目錄
@@ -1302,6 +1333,7 @@ rules.unitdamagemultiplier = 單位傷害加成
rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier
rules.solarmultiplier = 太陽能電加成 rules.solarmultiplier = 太陽能電加成
rules.unitcapvariable = 核心限制單位上限 rules.unitcapvariable = 核心限制單位上限
rules.unitpayloadsexplode = Carried Payloads Explode With The Unit
rules.unitcap = 基礎單位上限 rules.unitcap = 基礎單位上限
rules.limitarea = 限制地圖區域 rules.limitarea = 限制地圖區域
rules.enemycorebuildradius = 敵人核心禁止建設半徑︰[lightgray](格) rules.enemycorebuildradius = 敵人核心禁止建設半徑︰[lightgray](格)
@@ -1334,6 +1366,8 @@ rules.weather = 天氣
rules.weather.frequency = 頻率: rules.weather.frequency = 頻率:
rules.weather.always = 永遠 rules.weather.always = 永遠
rules.weather.duration = 持續時間: rules.weather.duration = 持續時間:
rules.placerangecheck.info = Prevents players from placing anything near enemy buildings. When trying to place a turret, the range is increased, so the turret will not be able to reach the enemy.
rules.onlydepositcore.info = Prevents units from depositing items into any buildings except cores.
content.item.name = 物品 content.item.name = 物品
content.liquid.name = 液體 content.liquid.name = 液體
@@ -2272,7 +2306,7 @@ unit.emanate.description = Builds structures to defend the Acropolis core. Repai
lst.read = [accent]讀取[]記憶體中的一項數值 lst.read = [accent]讀取[]記憶體中的一項數值
lst.write = [accent]寫入[]一項數值到記憶體中 lst.write = [accent]寫入[]一項數值到記憶體中
lst.print = 將文字加入輸出的暫存中,搭配[accent]Print Flush[], [accent]Flush message[]使用 lst.print = 將文字加入輸出的暫存中,搭配[accent]Print Flush[], [accent]Flush message[]使用
lst.format = Replace next placeholder ("[accent]@[]") in text buffer with a value.\nExample:\n[accent]print "test @"\nformat "example" lst.format = Replace next placeholder in text buffer with a value.\nDoes not do anything if placeholder pattern is invalid.\nPlaceholder pattern: "{[accent]number 0-9[]}"\nExample:\n[accent]print "test {0}"\nformat "example"
lst.draw = 將圖形加入顯示的暫存中,搭配[accent]Draw Flush[]使用 lst.draw = 將圖形加入顯示的暫存中,搭配[accent]Draw Flush[]使用
lst.drawflush = 將所有暫存的[accent]Draw[]指令推到顯示器上 lst.drawflush = 將所有暫存的[accent]Draw[]指令推到顯示器上
lst.printflush = 將所有暫存的[accent]Print[]指令推到訊息板上 lst.printflush = 將所有暫存的[accent]Print[]指令推到訊息板上
@@ -2295,6 +2329,8 @@ lst.getblock = 由位置取方塊數據
lst.setblock = 由位置設置方塊數據 lst.setblock = 由位置設置方塊數據
lst.spawnunit = 在某一位置生成單位 lst.spawnunit = 在某一位置生成單位
lst.applystatus = 爲單位添加或移除狀態效果 lst.applystatus = 爲單位添加或移除狀態效果
lst.weathersense = Check if a type of weather is active.
lst.weatherset = Set the current state of a type of weather.
lst.spawnwave = 在某一位置生成一波敵人\n不計入波數 lst.spawnwave = 在某一位置生成一波敵人\n不計入波數
lst.explosion = 在某一位置製造爆炸 lst.explosion = 在某一位置製造爆炸
lst.setrate = 以指令/每時刻設置處理器速度 lst.setrate = 以指令/每時刻設置處理器速度

View File

@@ -28,6 +28,7 @@ import mindustry.net.*;
import mindustry.service.*; import mindustry.service.*;
import mindustry.ui.dialogs.*; import mindustry.ui.dialogs.*;
import mindustry.world.*; import mindustry.world.*;
import mindustry.world.blocks.storage.*;
import mindustry.world.meta.*; import mindustry.world.meta.*;
import java.io.*; import java.io.*;
@@ -105,8 +106,8 @@ public class Vars implements Loadable{
public static final float invasionGracePeriod = 20; public static final float invasionGracePeriod = 20;
/** min armor fraction damage; e.g. 0.05 = at least 5% damage */ /** min armor fraction damage; e.g. 0.05 = at least 5% damage */
public static final float minArmorDamage = 0.1f; public static final float minArmorDamage = 0.1f;
/** land/launch animation duration */ /** @deprecated see {@link CoreBlock#landDuration} instead! */
public static final float coreLandDuration = 160f; public static final @Deprecated float coreLandDuration = 160f;
/** size of tiles in units */ /** size of tiles in units */
public static final int tilesize = 8; public static final int tilesize = 8;
/** size of one tile payload (^2) */ /** size of one tile payload (^2) */

View File

@@ -12,30 +12,12 @@ import mindustry.async.*;
import mindustry.content.*; import mindustry.content.*;
import mindustry.core.*; import mindustry.core.*;
import mindustry.gen.*; import mindustry.gen.*;
import mindustry.world.blocks.environment.*;
public class UnitGroup{ public class UnitGroup{
public Seq<Unit> units = new Seq<>(); public Seq<Unit> units = new Seq<>();
public int collisionLayer; public int collisionLayer;
public volatile float[] positions, originalPositions; public volatile float[] positions, originalPositions;
public volatile boolean valid; public volatile boolean valid;
public long lastSpeedUpdate = -1;
public float minSpeed = 999999f;
public void updateMinSpeed(){
if(lastSpeedUpdate == Vars.state.updateId) return;
lastSpeedUpdate = Vars.state.updateId;
minSpeed = 999999f;
for(Unit unit : units){
//don't factor in the floor speed multiplier
Floor on = unit.isFlying() ? Blocks.air.asFloor() : unit.floorOn();
minSpeed = Math.min(unit.speed() / on.speedMultiplier, minSpeed);
}
if(Float.isInfinite(minSpeed) || Float.isNaN(minSpeed)) minSpeed = 999999f;
}
public void calculateFormation(Vec2 dest, int collisionLayer){ public void calculateFormation(Vec2 dest, int collisionLayer){
this.collisionLayer = collisionLayer; this.collisionLayer = collisionLayer;
@@ -58,8 +40,6 @@ public class UnitGroup{
unit.command().groupIndex = i; unit.command().groupIndex = i;
} }
updateMinSpeed();
//run on new thread to prevent stutter //run on new thread to prevent stutter
Vars.mainExecutor.submit(() -> { Vars.mainExecutor.submit(() -> {
//unused space between circles that needs to be reached for compression to end //unused space between circles that needs to be reached for compression to end

View File

@@ -148,10 +148,6 @@ public class CommandAI extends AIController{
} }
} }
if(group != null){
group.updateMinSpeed();
}
if(!net.client() && command == UnitCommand.enterPayloadCommand && unit.buildOn() != null && (targetPos == null || (world.buildWorld(targetPos.x, targetPos.y) != null && world.buildWorld(targetPos.x, targetPos.y) == unit.buildOn()))){ if(!net.client() && command == UnitCommand.enterPayloadCommand && unit.buildOn() != null && (targetPos == null || (world.buildWorld(targetPos.x, targetPos.y) != null && world.buildWorld(targetPos.x, targetPos.y) == unit.buildOn()))){
var build = unit.buildOn(); var build = unit.buildOn();
tmpPayload.unit = unit; tmpPayload.unit = unit;
@@ -363,11 +359,6 @@ public class CommandAI extends AIController{
} }
} }
@Override
public float prefSpeed(){
return group == null ? super.prefSpeed() : Math.min(group.minSpeed, unit.speed());
}
@Override @Override
public boolean shouldFire(){ public boolean shouldFire(){
return stance != UnitStance.holdFire; return stance != UnitStance.holdFire;

View File

@@ -1181,6 +1181,7 @@ public class Blocks{
rotate = true; rotate = true;
invertFlip = true; invertFlip = true;
group = BlockGroup.liquids; group = BlockGroup.liquids;
itemCapacity = 0;
liquidCapacity = 50f; liquidCapacity = 50f;
@@ -1231,6 +1232,7 @@ public class Blocks{
}}); }});
researchCostMultiplier = 1.1f; researchCostMultiplier = 1.1f;
itemCapacity = 0;
liquidCapacity = 40f; liquidCapacity = 40f;
consumePower(2f); consumePower(2f);
ambientSound = Sounds.extractLoop; ambientSound = Sounds.extractLoop;
@@ -2782,6 +2784,7 @@ public class Blocks{
ambientSoundVolume = 0.06f; ambientSoundVolume = 0.06f;
hasLiquids = true; hasLiquids = true;
boostScale = 1f / 9f; boostScale = 1f / 9f;
itemCapacity = 0;
outputLiquid = new LiquidStack(Liquids.water, 30f / 60f); outputLiquid = new LiquidStack(Liquids.water, 30f / 60f);
consumePower(0.5f); consumePower(0.5f);
liquidCapacity = 60f; liquidCapacity = 60f;
@@ -5791,6 +5794,8 @@ public class Blocks{
heatOutput = 1000f; heatOutput = 1000f;
warmupRate = 1000f; warmupRate = 1000f;
regionRotated1 = 1; regionRotated1 = 1;
itemCapacity = 0;
alwaysUnlocked = true;
ambientSound = Sounds.none; ambientSound = Sounds.none;
}}; }};

View File

@@ -1318,6 +1318,7 @@ public class UnitTypes{
healPercent = 5.5f; healPercent = 5.5f;
collidesTeam = true; collidesTeam = true;
reflectable = false;
backColor = Pal.heal; backColor = Pal.heal;
trailColor = Pal.heal; trailColor = Pal.heal;
}}; }};
@@ -3894,7 +3895,7 @@ public class UnitTypes{
x = 43f * i / 4f; x = 43f * i / 4f;
particles = parts; particles = parts;
//visual only, the middle one does the actual suppressing //visual only, the middle one does the actual suppressing
display = active = false; active = false;
}}); }});
} }

View File

@@ -17,7 +17,7 @@ public class Weathers{
suspendParticles; suspendParticles;
public static void load(){ public static void load(){
snow = new ParticleWeather("snow"){{ snow = new ParticleWeather("snowing"){{
particleRegion = "particle"; particleRegion = "particle";
sizeMax = 13f; sizeMax = 13f;
sizeMin = 2.6f; sizeMin = 2.6f;

View File

@@ -314,6 +314,14 @@ public class ContentLoader{
return getByName(ContentType.planet, name); return getByName(ContentType.planet, name);
} }
public Seq<Weather> weathers(){
return getBy(ContentType.weather);
}
public Weather weather(String name){
return getByName(ContentType.weather, name);
}
public Seq<UnitStance> unitStances(){ public Seq<UnitStance> unitStances(){
return getBy(ContentType.unitStance); return getBy(ContentType.unitStance);
} }

View File

@@ -30,6 +30,7 @@ import mindustry.net.*;
import mindustry.type.*; import mindustry.type.*;
import mindustry.ui.dialogs.*; import mindustry.ui.dialogs.*;
import mindustry.world.*; import mindustry.world.*;
import mindustry.world.blocks.storage.*;
import mindustry.world.blocks.storage.CoreBlock.*; import mindustry.world.blocks.storage.CoreBlock.*;
import java.io.*; import java.io.*;
@@ -191,43 +192,29 @@ public class Control implements ApplicationListener, Loadable{
Events.run(Trigger.newGame, () -> { Events.run(Trigger.newGame, () -> {
var core = player.bestCore(); var core = player.bestCore();
if(core == null) return; if(core == null) return;
camera.position.set(core); camera.position.set(core);
player.set(core); player.set(core);
float coreDelay = 0f; float coreDelay = 0f;
if(!settings.getBool("skipcoreanimation") && !state.rules.pvp){ if(!settings.getBool("skipcoreanimation") && !state.rules.pvp){
coreDelay = coreLandDuration; coreDelay = core.landDuration();
//delay player respawn so animation can play. //delay player respawn so animation can play.
player.deathTimer = Player.deathDelay - coreLandDuration; player.deathTimer = Player.deathDelay - core.landDuration();
//TODO this sounds pretty bad due to conflict //TODO this sounds pretty bad due to conflict
if(settings.getInt("musicvol") > 0){ if(settings.getInt("musicvol") > 0){
Musics.land.stop(); //TODO what to do if another core with different music is already playing?
Musics.land.play(); Music music = core.landMusic();
Musics.land.setVolume(settings.getInt("musicvol") / 100f); music.stop();
music.play();
music.setVolume(settings.getInt("musicvol") / 100f);
} }
app.post(() -> ui.hudfrag.showLand()); renderer.showLanding(core);
renderer.showLanding();
Time.run(coreLandDuration, () -> {
Fx.launch.at(core);
Effect.shake(5f, 5f, core);
core.thrusterTime = 1f;
if(state.isCampaign() && Vars.showSectorLandInfo && (state.rules.sector.preset == null || state.rules.sector.preset.showSectorLandInfo)){
ui.announce("[accent]" + state.rules.sector.name() + "\n" +
(state.rules.sector.info.resources.any() ? "[lightgray]" + bundle.get("sectors.resources") + "[white] " +
state.rules.sector.info.resources.toString(" ", u -> u.emoji()) : ""), 5);
}
});
} }
if(state.isCampaign()){ if(state.isCampaign()){
//don't run when hosting, that doesn't really work. //don't run when hosting, that doesn't really work.
if(state.rules.sector.planet.prebuildBase){ if(state.rules.sector.planet.prebuildBase){
toBePlaced.clear(); toBePlaced.clear();

View File

@@ -13,7 +13,6 @@ import arc.scene.ui.layout.*;
import arc.struct.*; import arc.struct.*;
import arc.util.*; import arc.util.*;
import mindustry.*; import mindustry.*;
import mindustry.content.*;
import mindustry.game.EventType.*; import mindustry.game.EventType.*;
import mindustry.gen.*; import mindustry.gen.*;
import mindustry.graphics.*; import mindustry.graphics.*;
@@ -30,11 +29,6 @@ public class Renderer implements ApplicationListener{
/** These are global variables, for headless access. Cached. */ /** These are global variables, for headless access. Cached. */
public static float laserOpacity = 0.5f, bridgeOpacity = 0.75f; public static float laserOpacity = 0.5f, bridgeOpacity = 0.75f;
private static final float cloudScaling = 1700f, cfinScl = -2f, cfinOffset = 0.3f, calphaFinOffset = 0.25f;
private static final float[] cloudAlphas = {0, 0.5f, 1f, 0.1f, 0, 0f};
private static final float cloudAlpha = 0.81f;
private static final Interp landInterp = Interp.pow3;
public final BlockRenderer blocks = new BlockRenderer(); public final BlockRenderer blocks = new BlockRenderer();
public final FogRenderer fog = new FogRenderer(); public final FogRenderer fog = new FogRenderer();
public final MinimapRenderer minimap = new MinimapRenderer(); public final MinimapRenderer minimap = new MinimapRenderer();
@@ -55,18 +49,15 @@ public class Renderer implements ApplicationListener{
public TextureRegion[] bubbles = new TextureRegion[16], splashes = new TextureRegion[12]; public TextureRegion[] bubbles = new TextureRegion[16], splashes = new TextureRegion[12];
public TextureRegion[][] fluidFrames; public TextureRegion[][] fluidFrames;
//currently landing core, null if there are no cores or it has finished landing.
private @Nullable CoreBuild landCore; private @Nullable CoreBuild landCore;
private @Nullable CoreBlock launchCoreType; private @Nullable CoreBlock launchCoreType;
private Color clearColor = new Color(0f, 0f, 0f, 1f); private Color clearColor = new Color(0f, 0f, 0f, 1f);
private float private float
//seed for cloud visuals, 0-1
cloudSeed = 0f,
//target camera scale that is lerp-ed to //target camera scale that is lerp-ed to
targetscale = Scl.scl(4), targetscale = Scl.scl(4),
//current actual camera scale //current actual camera scale
camerascale = targetscale, camerascale = targetscale,
//minimum camera zoom value for landing/launching; constant TODO make larger?
minZoomScl = Scl.scl(0.02f),
//starts at coreLandDuration, ends at 0. if positive, core is landing. //starts at coreLandDuration, ends at 0. if positive, core is landing.
landTime, landTime,
//timer for core landing particles //timer for core landing particles
@@ -113,10 +104,6 @@ public class Renderer implements ApplicationListener{
setupBloom(); setupBloom();
} }
Events.run(Trigger.newGame, () -> {
landCore = player.bestCore();
});
EnvRenderers.init(); EnvRenderers.init();
for(int i = 0; i < bubbles.length; i++) bubbles[i] = atlas.find("bubble-" + i); for(int i = 0; i < bubbles.length; i++) bubbles[i] = atlas.find("bubble-" + i);
for(int i = 0; i < splashes.length; i++) splashes[i] = atlas.find("splash-" + i); for(int i = 0; i < splashes.length; i++) splashes[i] = atlas.find("splash-" + i);
@@ -181,32 +168,26 @@ public class Renderer implements ApplicationListener{
enableEffects = settings.getBool("effects"); enableEffects = settings.getBool("effects");
drawDisplays = !settings.getBool("hidedisplays"); drawDisplays = !settings.getBool("hidedisplays");
drawLight = settings.getBool("drawlight", true); drawLight = settings.getBool("drawlight", true);
pixelate = Core.settings.getBool("pixelate"); pixelate = settings.getBool("pixelate");
//don't bother drawing landing animation if core is null
if(landCore == null) landTime = 0f;
if(landTime > 0){ if(landTime > 0){
if(!state.isPaused()){ if(!state.isPaused()) landCore.updateLaunching();
CoreBuild build = landCore == null ? player.bestCore() : landCore;
if(build != null){
build.updateLandParticles();
}
}
if(!state.isPaused()){
landTime -= Time.delta;
}
float fin = landTime / coreLandDuration;
if(!launching) fin = 1f - fin;
camerascale = landInterp.apply(minZoomScl, Scl.scl(4f), fin);
weatherAlpha = 0f; weatherAlpha = 0f;
camerascale = landCore.zoomLaunching();
//snap camera to cutscene core regardless of player input if(!state.isPaused()) landTime -= Time.delta;
if(landCore != null){
camera.position.set(landCore);
}
}else{ }else{
weatherAlpha = Mathf.lerpDelta(weatherAlpha, 1f, 0.08f); weatherAlpha = Mathf.lerpDelta(weatherAlpha, 1f, 0.08f);
} }
if(landCore != null && landTime <= 0f){
landCore.endLaunch();
landCore = null;
}
camera.width = graphics.getWidth() / camerascale; camera.width = graphics.getWidth() / camerascale;
camera.height = graphics.getHeight() / camerascale; camera.height = graphics.getHeight() / camerascale;
@@ -304,7 +285,7 @@ public class Renderer implements ApplicationListener{
graphics.clear(clearColor); graphics.clear(clearColor);
Draw.reset(); Draw.reset();
if(Core.settings.getBool("animatedwater") || animateShields){ if(settings.getBool("animatedwater") || animateShields){
effectBuffer.resize(graphics.getWidth(), graphics.getHeight()); effectBuffer.resize(graphics.getWidth(), graphics.getHeight());
} }
@@ -393,7 +374,10 @@ public class Renderer implements ApplicationListener{
Draw.draw(Layer.overlayUI, overlays::drawTop); Draw.draw(Layer.overlayUI, overlays::drawTop);
if(state.rules.fog) Draw.draw(Layer.fogOfWar, fog::drawFog); if(state.rules.fog) Draw.draw(Layer.fogOfWar, fog::drawFog);
Draw.draw(Layer.space, this::drawLanding); Draw.draw(Layer.space, () -> {
if(landCore == null || landTime <= 0f) return;
landCore.drawLanding(launching && launchCoreType != null ? launchCoreType : (CoreBlock)landCore.block);
});
Events.fire(Trigger.drawOver); Events.fire(Trigger.drawOver);
blocks.drawBlocks(); blocks.drawBlocks();
@@ -481,61 +465,6 @@ public class Renderer implements ApplicationListener{
if(state.rules.customBackgroundCallback != null && customBackgrounds.containsKey(state.rules.customBackgroundCallback)){ if(state.rules.customBackgroundCallback != null && customBackgrounds.containsKey(state.rules.customBackgroundCallback)){
customBackgrounds.get(state.rules.customBackgroundCallback).run(); customBackgrounds.get(state.rules.customBackgroundCallback).run();
} }
}
void drawLanding(){
CoreBuild build = landCore == null ? player.bestCore() : landCore;
var clouds = assets.get("sprites/clouds.png", Texture.class);
if(landTime > 0 && build != null){
float fout = landTime / coreLandDuration;
if(launching) fout = 1f - fout;
float fin = 1f - fout;
float scl = Scl.scl(4f) / camerascale;
float pfin = Interp.pow3Out.apply(fin), pf = Interp.pow2In.apply(fout);
//draw particles
Draw.color(Pal.lightTrail);
Angles.randLenVectors(1, pfin, 100, 800f * scl * pfin, (ax, ay, ffin, ffout) -> {
Lines.stroke(scl * ffin * pf * 3f);
Lines.lineAngle(build.x + ax, build.y + ay, Mathf.angle(ax, ay), (ffin * 20 + 1f) * scl);
});
Draw.color();
CoreBlock block = launching && launchCoreType != null ? launchCoreType : (CoreBlock)build.block;
block.drawLanding(build, build.x, build.y);
Draw.color();
Draw.mixcol(Color.white, Interp.pow5In.apply(fout));
//accent tint indicating that the core was just constructed
if(launching){
float f = Mathf.clamp(1f - fout * 12f);
if(f > 0.001f){
Draw.mixcol(Pal.accent, f);
}
}
//draw clouds
if(state.rules.cloudColor.a > 0.0001f){
float scaling = cloudScaling;
float sscl = Math.max(1f + Mathf.clamp(fin + cfinOffset)* cfinScl, 0f) * camerascale;
Tmp.tr1.set(clouds);
Tmp.tr1.set(
(camera.position.x - camera.width/2f * sscl) / scaling,
(camera.position.y - camera.height/2f * sscl) / scaling,
(camera.position.x + camera.width/2f * sscl) / scaling,
(camera.position.y + camera.height/2f * sscl) / scaling);
Tmp.tr1.scroll(10f * cloudSeed, 10f * cloudSeed);
Draw.alpha(Mathf.sample(cloudAlphas, fin + calphaFinOffset) * cloudAlpha);
Draw.mixcol(state.rules.cloudColor, state.rules.cloudColor.a);
Draw.rect(Tmp.tr1, camera.position.x, camera.position.y, camera.width, camera.height);
Draw.reset();
}
}
} }
public void scaleCamera(float amount){ public void scaleCamera(float amount){
@@ -580,6 +509,13 @@ public class Renderer implements ApplicationListener{
return landTime; return landTime;
} }
public float getLandTimeIn(){
if(landCore == null) return 0f;
float fin = landTime / landCore.landDuration();
if(!launching) fin = 1f - fin;
return fin;
}
public float getLandPTimer(){ public float getLandPTimer(){
return landPTimer; return landPTimer;
} }
@@ -588,25 +524,37 @@ public class Renderer implements ApplicationListener{
this.landPTimer = landPTimer; this.landPTimer = landPTimer;
} }
@Deprecated
public void showLanding(){ public void showLanding(){
launching = false; var core = player.bestCore();
camerascale = minZoomScl; if(core != null) showLanding(core);
landTime = coreLandDuration;
cloudSeed = Mathf.random(1f);
} }
public void showLanding(CoreBuild landCore){
this.landCore = landCore;
launching = false;
landTime = landCore.landDuration();
landCore.beginLaunch(null);
camerascale = landCore.zoomLaunching();
}
@Deprecated
public void showLaunch(CoreBlock coreType){ public void showLaunch(CoreBlock coreType){
Vars.ui.hudfrag.showLaunch(); var core = player.team().core();
Vars.control.input.config.hideConfig(); if(core != null) showLaunch(core, coreType);
Vars.control.input.inv.hide(); }
launchCoreType = coreType;
public void showLaunch(CoreBuild landCore, CoreBlock coreType){
control.input.config.hideConfig();
control.input.inv.hide();
this.landCore = landCore;
launching = true; launching = true;
landCore = player.team().core(); landTime = landCore.landDuration();
cloudSeed = Mathf.random(1f); launchCoreType = coreType;
landTime = coreLandDuration;
if(landCore != null){ landCore.beginLaunch(coreType);
Fx.coreLaunchConstruct.at(landCore.x, landCore.y, coreType.size);
}
} }
public void takeMapScreenshot(){ public void takeMapScreenshot(){
@@ -648,7 +596,7 @@ public class Renderer implements ApplicationListener{
Fi file = screenshotDirectory.child("screenshot-" + Time.millis() + ".png"); Fi file = screenshotDirectory.child("screenshot-" + Time.millis() + ".png");
PixmapIO.writePng(file, fullPixmap); PixmapIO.writePng(file, fullPixmap);
fullPixmap.dispose(); fullPixmap.dispose();
app.post(() -> ui.showInfoFade(Core.bundle.format("screenshot", file.toString()))); app.post(() -> ui.showInfoFade(bundle.format("screenshot", file.toString())));
}); });
} }

View File

@@ -43,6 +43,8 @@ public abstract class UnlockableContent extends MappableContent{
public TextureRegion uiIcon; public TextureRegion uiIcon;
/** Icon of the full content. Unscaled.*/ /** Icon of the full content. Unscaled.*/
public TextureRegion fullIcon; public TextureRegion fullIcon;
/** Override for the full icon. Useful for mod content with duplicate icons. Overrides any other full icon.*/
public String fullOverride = "";
/** The tech tree node for this content, if applicable. Null if not part of a tech tree. */ /** The tech tree node for this content, if applicable. Null if not part of a tech tree. */
public @Nullable TechNode techNode; public @Nullable TechNode techNode;
/** Tech nodes for all trees that this content is part of. */ /** Tech nodes for all trees that this content is part of. */
@@ -62,11 +64,12 @@ public abstract class UnlockableContent extends MappableContent{
@Override @Override
public void loadIcon(){ public void loadIcon(){
fullIcon = fullIcon =
Core.atlas.find(fullOverride,
Core.atlas.find(getContentType().name() + "-" + name + "-full", Core.atlas.find(getContentType().name() + "-" + name + "-full",
Core.atlas.find(name + "-full", Core.atlas.find(name + "-full",
Core.atlas.find(name, Core.atlas.find(name,
Core.atlas.find(getContentType().name() + "-" + name, Core.atlas.find(getContentType().name() + "-" + name,
Core.atlas.find(name + "1"))))); Core.atlas.find(name + "1"))))));
uiIcon = Core.atlas.find(getContentType().name() + "-" + name + "-ui", fullIcon); uiIcon = Core.atlas.find(getContentType().name() + "-" + name + "-ui", fullIcon);
} }

View File

@@ -74,7 +74,7 @@ public class MapEditor{
for(int i = 0; i < tiles.width * tiles.height; i++){ for(int i = 0; i < tiles.width * tiles.height; i++){
Tile tile = tiles.geti(i); Tile tile = tiles.geti(i);
var build = tile.build; var build = tile.build;
if(build != null){ if(build != null && tile.isCenter()){
builds.add(build); builds.add(build);
} }
tiles.seti(i, new EditorTile(tile.x, tile.y, tile.floorID(), tile.overlayID(), build == null ? tile.blockID() : 0)); tiles.seti(i, new EditorTile(tile.x, tile.y, tile.floorID(), tile.overlayID(), build == null ? tile.blockID() : 0));

View File

@@ -5,7 +5,6 @@ import arc.func.*;
import arc.graphics.*; import arc.graphics.*;
import arc.scene.style.*; import arc.scene.style.*;
import arc.scene.ui.*; import arc.scene.ui.*;
import arc.scene.ui.Button.*;
import arc.scene.ui.TextButton.*; import arc.scene.ui.TextButton.*;
import arc.scene.ui.layout.*; import arc.scene.ui.layout.*;
import arc.scene.utils.*; import arc.scene.utils.*;

View File

@@ -293,7 +293,6 @@ public class Damage{
collided.each(c -> { collided.each(c -> {
if(hitter.damage > 0 && (pierceCap <= 0 || collideCount[0] < pierceCap)){ if(hitter.damage > 0 && (pierceCap <= 0 || collideCount[0] < pierceCap)){
if(c.target instanceof Unit u){ if(c.target instanceof Unit u){
effect.at(c.x, c.y);
u.collision(hitter, c.x, c.y); u.collision(hitter, c.x, c.y);
hitter.collision(u, c.x, c.y); hitter.collision(u, c.x, c.y);
collideCount[0]++; collideCount[0]++;
@@ -344,7 +343,6 @@ public class Damage{
Units.nearbyEnemies(team, rect.setCentered(x, y, 1f), u -> { Units.nearbyEnemies(team, rect.setCentered(x, y, 1f), u -> {
if(u.checkTarget(hitter.type.collidesAir, hitter.type.collidesGround) && u.hittable()){ if(u.checkTarget(hitter.type.collidesAir, hitter.type.collidesGround) && u.hittable()){
effect.at(x, y);
u.collision(hitter, x, y); u.collision(hitter, x, y);
hitter.collision(u, x, y); hitter.collision(u, x, y);
} }

View File

@@ -74,7 +74,7 @@ public class Puddles{
Puddle puddle = Puddle.create(); Puddle puddle = Puddle.create();
puddle.tile = tile; puddle.tile = tile;
puddle.liquid = liquid; puddle.liquid = liquid;
puddle.amount = amount; puddle.amount = Math.min(amount, maxLiquid);
puddle.set(ax, ay); puddle.set(ax, ay);
register(puddle); register(puddle);
puddle.add(); puddle.add();

View File

@@ -6,6 +6,7 @@ import mindustry.gen.*;
import mindustry.type.*; import mindustry.type.*;
public abstract class Ability implements Cloneable{ public abstract class Ability implements Cloneable{
protected static final float descriptionWidth = 350f;
/** If false, this ability does not show in unit stats. */ /** If false, this ability does not show in unit stats. */
public boolean display = true; public boolean display = true;
//the one and only data variable that is synced. //the one and only data variable that is synced.
@@ -16,7 +17,16 @@ public abstract class Ability implements Cloneable{
public void death(Unit unit){} public void death(Unit unit){}
public void init(UnitType type){} public void init(UnitType type){}
public void displayBars(Unit unit, Table bars){} public void displayBars(Unit unit, Table bars){}
public void addStats(Table t){} public void addStats(Table t){
if(Core.bundle.has(getBundle() + ".description")){
t.add(Core.bundle.get(getBundle() + ".description")).wrap().width(descriptionWidth);
t.row();
}
}
public String abilityStat(String stat, Object... values){
return Core.bundle.format("ability.stat." + stat, values);
}
public Ability copy(){ public Ability copy(){
try{ try{
@@ -29,7 +39,11 @@ public abstract class Ability implements Cloneable{
/** @return localized ability name; mods should override this. */ /** @return localized ability name; mods should override this. */
public String localized(){ public String localized(){
return Core.bundle.get(getBundle());
}
public String getBundle(){
var type = getClass(); var type = getClass();
return Core.bundle.get("ability." + (type.isAnonymousClass() ? type.getSuperclass() : type).getSimpleName().replace("Ability", "").toLowerCase()); return "ability." + (type.isAnonymousClass() ? type.getSuperclass() : type).getSimpleName().replace("Ability", "").toLowerCase();
} }
} }

View File

@@ -4,11 +4,10 @@ import arc.*;
import arc.graphics.*; import arc.graphics.*;
import arc.graphics.g2d.*; import arc.graphics.g2d.*;
import arc.math.*; import arc.math.*;
import arc.scene.ui.layout.Table; import arc.scene.ui.layout.*;
import arc.util.*; import arc.util.*;
import mindustry.gen.*; import mindustry.gen.*;
import mindustry.graphics.*; import mindustry.graphics.*;
import mindustry.world.meta.*;
public class ArmorPlateAbility extends Ability{ public class ArmorPlateAbility extends Ability{
public TextureRegion plateRegion; public TextureRegion plateRegion;
@@ -39,7 +38,8 @@ public class ArmorPlateAbility extends Ability{
@Override @Override
public void addStats(Table t){ public void addStats(Table t){
t.add("[lightgray]" + Stat.healthMultiplier.localized() + ": [white]" + Math.round(healthMultiplier * 100f) + 100 + "%"); super.addStats(t);
t.add(abilityStat("damagereduction", Strings.autoFixed(-healthMultiplier * 100f, 1)));
} }
@Override @Override

View File

@@ -14,7 +14,6 @@ import mindustry.game.*;
import mindustry.gen.*; import mindustry.gen.*;
import mindustry.graphics.*; import mindustry.graphics.*;
import mindustry.type.*; import mindustry.type.*;
import mindustry.world.meta.*;
import static mindustry.Vars.*; import static mindustry.Vars.*;
@@ -53,23 +52,29 @@ public class EnergyFieldAbility extends Ability{
@Override @Override
public void addStats(Table t){ public void addStats(Table t){
t.add(Core.bundle.format("bullet.damage", damage)); if(displayHeal){
t.add(Core.bundle.get(getBundle() + ".healdescription")).wrap().width(descriptionWidth);
}else{
t.add(Core.bundle.get(getBundle() + ".description")).wrap().width(descriptionWidth);
}
t.row(); t.row();
t.add("[lightgray]" + Stat.reload.localized() + ": [white]" + Strings.autoFixed(60f / reload, 2) + " " + StatUnit.perSecond.localized());
t.row();
t.add("[lightgray]" + Stat.shootRange.localized() + ": [white]" + Strings.autoFixed(range / tilesize, 2) + " " + StatUnit.blocks.localized());
t.row();
t.add(Core.bundle.format("ability.energyfield.maxtargets", maxTargets));
t.add(Core.bundle.format("bullet.range", Strings.autoFixed(range / tilesize, 2)));
t.row();
t.add(abilityStat("firingrate", Strings.autoFixed(60f / reload, 2)));
t.row();
t.add(abilityStat("maxtargets", maxTargets));
t.row();
t.add(Core.bundle.format("bullet.damage", damage));
if(status != StatusEffects.none){
t.row();
t.add((status.hasEmoji() ? status.emoji() : "") + "[stat]" + status.localizedName);
}
if(displayHeal){ if(displayHeal){
t.row(); t.row();
t.add(Core.bundle.format("bullet.healpercent", Strings.autoFixed(healPercent, 2))); t.add(Core.bundle.format("bullet.healpercent", Strings.autoFixed(healPercent, 2)));
t.row(); t.row();
t.add(Core.bundle.format("ability.energyfield.sametypehealmultiplier", Math.round(sameTypeHealMult * 100f))); t.add(abilityStat("sametypehealmultiplier", (sameTypeHealMult < 1f ? "[negstat]" : "") + Strings.autoFixed(sameTypeHealMult * 100f, 2)));
}
if(status != StatusEffects.none){
t.row();
t.add(status.emoji() + " " + status.localizedName);
} }
} }

View File

@@ -1,5 +1,6 @@
package mindustry.entities.abilities; package mindustry.entities.abilities;
import arc.*;
import arc.func.*; import arc.func.*;
import arc.graphics.*; import arc.graphics.*;
import arc.graphics.g2d.*; import arc.graphics.g2d.*;
@@ -12,7 +13,6 @@ import mindustry.content.*;
import mindustry.gen.*; import mindustry.gen.*;
import mindustry.graphics.*; import mindustry.graphics.*;
import mindustry.ui.*; import mindustry.ui.*;
import mindustry.world.meta.*;
import static mindustry.Vars.*; import static mindustry.Vars.*;
@@ -73,14 +73,14 @@ public class ForceFieldAbility extends Ability{
@Override @Override
public void addStats(Table t){ public void addStats(Table t){
t.add("[lightgray]" + Stat.health.localized() + ": [white]" + Math.round(max)); super.addStats(t);
t.add(Core.bundle.format("bullet.range", Strings.autoFixed(radius / tilesize, 2)));
t.row(); t.row();
t.add("[lightgray]" + Stat.shootRange.localized() + ": [white]" + Strings.autoFixed(radius / tilesize, 2) + " " + StatUnit.blocks.localized()); t.add(abilityStat("shield", Strings.autoFixed(max, 2)));
t.row(); t.row();
t.add("[lightgray]" + Stat.repairSpeed.localized() + ": [white]" + Strings.autoFixed(regen * 60f, 2) + StatUnit.perSecond.localized()); t.add(abilityStat("repairspeed", Strings.autoFixed(regen * 60f, 2)));
t.row();
t.add("[lightgray]" + Stat.cooldownTime.localized() + ": [white]" + Strings.autoFixed(cooldown / 60f, 2) + " " + StatUnit.seconds.localized());
t.row(); t.row();
t.add(abilityStat("cooldown", Strings.autoFixed(cooldown / 60f, 2)));
} }
@Override @Override

View File

@@ -1,6 +1,7 @@
package mindustry.entities.abilities; package mindustry.entities.abilities;
import arc.math.*; import arc.math.*;
import arc.scene.ui.layout.*;
import arc.util.noise.*; import arc.util.noise.*;
import mindustry.content.*; import mindustry.content.*;
import mindustry.entities.*; import mindustry.entities.*;
@@ -16,6 +17,12 @@ public class LiquidExplodeAbility extends Ability{
public float radAmountScale = 5f, radScale = 1f; public float radAmountScale = 5f, radScale = 1f;
public float noiseMag = 6.5f, noiseScl = 5f; public float noiseMag = 6.5f, noiseScl = 5f;
@Override
public void addStats(Table t){
super.addStats(t);
t.add((liquid.hasEmoji() ? liquid.emoji() : "") + "[stat]" + liquid.localizedName);
}
@Override @Override
public void death(Unit unit){ public void death(Unit unit){
//TODO what if noise is radial, so it looks like a splat? //TODO what if noise is radial, so it looks like a splat?

View File

@@ -1,6 +1,7 @@
package mindustry.entities.abilities; package mindustry.entities.abilities;
import arc.math.*; import arc.math.*;
import arc.scene.ui.layout.*;
import arc.util.*; import arc.util.*;
import mindustry.content.*; import mindustry.content.*;
import mindustry.entities.*; import mindustry.entities.*;
@@ -17,6 +18,14 @@ public class LiquidRegenAbility extends Ability{
public float slurpEffectChance = 0.4f; public float slurpEffectChance = 0.4f;
public Effect slurpEffect = Fx.heal; public Effect slurpEffect = Fx.heal;
@Override
public void addStats(Table t){
super.addStats(t);
t.add((liquid.hasEmoji() ? liquid.emoji() : "") + "[stat]" + liquid.localizedName);
t.row();
t.add(abilityStat("slurpheal", Strings.autoFixed(regenPerSlurp, 2)));
}
@Override @Override
public void update(Unit unit){ public void update(Unit unit){
//TODO timer? //TODO timer?

View File

@@ -5,12 +5,15 @@ import arc.audio.*;
import arc.graphics.*; import arc.graphics.*;
import arc.graphics.g2d.*; import arc.graphics.g2d.*;
import arc.math.*; import arc.math.*;
import arc.scene.ui.layout.*;
import arc.util.*; import arc.util.*;
import mindustry.content.*; import mindustry.content.*;
import mindustry.entities.*; import mindustry.entities.*;
import mindustry.entities.bullet.*; import mindustry.entities.bullet.*;
import mindustry.gen.*; import mindustry.gen.*;
import static mindustry.Vars.*;
public class MoveLightningAbility extends Ability{ public class MoveLightningAbility extends Ability{
/** Lightning damage */ /** Lightning damage */
public float damage = 35f; public float damage = 35f;
@@ -63,7 +66,15 @@ public class MoveLightningAbility extends Ability{
this.maxSpeed = maxSpeed; this.maxSpeed = maxSpeed;
this.color = color; this.color = color;
} }
@Override
public void addStats(Table t){
super.addStats(t);
t.add(abilityStat("minspeed", Strings.autoFixed(minSpeed * 60f / tilesize, 2)));
t.row();
t.add(Core.bundle.format("bullet.damage", damage));
}
@Override @Override
public void update(Unit unit){ public void update(Unit unit){
float scl = Mathf.clamp((unit.vel().len() - minSpeed) / (maxSpeed - minSpeed)); float scl = Mathf.clamp((unit.vel().len() - minSpeed) / (maxSpeed - minSpeed));

View File

@@ -1,10 +1,8 @@
package mindustry.entities.abilities; package mindustry.entities.abilities;
import arc.Core;
import arc.scene.ui.layout.*; import arc.scene.ui.layout.*;
import arc.util.*; import arc.util.*;
import mindustry.gen.*; import mindustry.gen.*;
import mindustry.world.meta.*;
public class RegenAbility extends Ability{ public class RegenAbility extends Ability{
/** Amount healed as percent per tick. */ /** Amount healed as percent per tick. */
@@ -14,13 +12,16 @@ public class RegenAbility extends Ability{
@Override @Override
public void addStats(Table t){ public void addStats(Table t){
if(amount > 0.01f){ super.addStats(t);
t.add("[lightgray]" + Stat.repairSpeed.localized() + ": [white]" + Strings.autoFixed(amount * 60f, 2) + StatUnit.perSecond.localized());
t.row();
}
if(percentAmount > 0.01f){ boolean flat = amount >= 0.001f;
t.add(Core.bundle.format("bullet.healpercent", Strings.autoFixed(percentAmount * 60f, 2)) + StatUnit.perSecond.localized()); //stupid but works boolean percent = percentAmount >= 0.001f;
if(flat || percent){
t.add(abilityStat("regen",
(flat ? Strings.autoFixed(amount * 60f, 2) + (percent ? " [lightgray]+[stat] " : "") : "")
+ (percent ? Strings.autoFixed(percentAmount * 60f, 2) + "%" : "")
));
} }
} }

View File

@@ -1,13 +1,13 @@
package mindustry.entities.abilities; package mindustry.entities.abilities;
import arc.*;
import arc.scene.ui.layout.*; import arc.scene.ui.layout.*;
import arc.util.*; import arc.util.*;
import mindustry.content.*; import mindustry.content.*;
import mindustry.entities.*; import mindustry.entities.*;
import mindustry.gen.*; import mindustry.gen.*;
import mindustry.world.meta.*;
import static mindustry.Vars.tilesize; import static mindustry.Vars.*;
public class RepairFieldAbility extends Ability{ public class RepairFieldAbility extends Ability{
public float amount = 1, reload = 100, range = 60; public float amount = 1, reload = 100, range = 60;
@@ -28,9 +28,10 @@ public class RepairFieldAbility extends Ability{
@Override @Override
public void addStats(Table t){ public void addStats(Table t){
t.add("[lightgray]" + Stat.repairSpeed.localized() + ": [white]" + Strings.autoFixed(amount * 60f / reload, 2) + StatUnit.perSecond.localized()); super.addStats(t);
t.add(Core.bundle.format("bullet.range", Strings.autoFixed(range / tilesize, 2)));
t.row(); t.row();
t.add("[lightgray]" + Stat.shootRange.localized() + ": [white]" + Strings.autoFixed(range / tilesize, 2) + " " + StatUnit.blocks.localized()); t.add(abilityStat("repairspeed", Strings.autoFixed(amount * 60f / reload, 2)));
} }
@Override @Override

View File

@@ -13,7 +13,6 @@ import mindustry.gen.*;
import mindustry.graphics.*; import mindustry.graphics.*;
import mindustry.type.*; import mindustry.type.*;
import mindustry.ui.*; import mindustry.ui.*;
import mindustry.world.meta.*;
public class ShieldArcAbility extends Ability{ public class ShieldArcAbility extends Ability{
private static Unit paramUnit; private static Unit paramUnit;
@@ -69,12 +68,12 @@ public class ShieldArcAbility extends Ability{
@Override @Override
public void addStats(Table t){ public void addStats(Table t){
t.add("[lightgray]" + Stat.health.localized() + ": [white]" + Math.round(max)); super.addStats(t);
t.add(abilityStat("shield", Strings.autoFixed(max, 2)));
t.row(); t.row();
t.add("[lightgray]" + Stat.repairSpeed.localized() + ": [white]" + Strings.autoFixed(regen * 60f, 2) + StatUnit.perSecond.localized()); t.add(abilityStat("repairspeed", Strings.autoFixed(regen * 60f, 2)));
t.row();
t.add("[lightgray]" + Stat.cooldownTime.localized() + ": [white]" + Strings.autoFixed(cooldown / 60f, 2) + " " + StatUnit.seconds.localized());
t.row(); t.row();
t.add(abilityStat("cooldown", Strings.autoFixed(cooldown / 60f, 2)));
} }
@Override @Override

View File

@@ -1,14 +1,13 @@
package mindustry.entities.abilities; package mindustry.entities.abilities;
import arc.Core; import arc.*;
import arc.scene.ui.layout.*; import arc.scene.ui.layout.*;
import arc.util.*; import arc.util.*;
import mindustry.content.*; import mindustry.content.*;
import mindustry.entities.*; import mindustry.entities.*;
import mindustry.gen.*; import mindustry.gen.*;
import mindustry.world.meta.*;
import static mindustry.Vars.tilesize; import static mindustry.Vars.*;
public class ShieldRegenFieldAbility extends Ability{ public class ShieldRegenFieldAbility extends Ability{
public float amount = 1, max = 100f, reload = 100, range = 60; public float amount = 1, max = 100f, reload = 100, range = 60;
@@ -30,12 +29,12 @@ public class ShieldRegenFieldAbility extends Ability{
@Override @Override
public void addStats(Table t){ public void addStats(Table t){
t.add("[lightgray]" + Core.bundle.get("waves.shields") + ": [white]" + Math.round(max)); //extremely stupid usage super.addStats(t);
t.add(Core.bundle.format("bullet.range", Strings.autoFixed(range / tilesize, 2)));
t.row(); t.row();
t.add("[lightgray]" + Stat.shootRange.localized() + ": [white]" + Strings.autoFixed(range / tilesize, 2) + " " + StatUnit.blocks.localized()); t.add(abilityStat("firingrate", Strings.autoFixed(60f / reload, 2)));
t.row();
t.add("[lightgray]" + Stat.reload.localized() + ": [white]" + Strings.autoFixed(60f / reload, 2) + " " + StatUnit.perSecond.localized());
t.row(); t.row();
t.add(abilityStat("shield", Strings.autoFixed(max, 2)));
} }
@Override @Override

View File

@@ -27,7 +27,8 @@ public class SpawnDeathAbility extends Ability{
@Override @Override
public void addStats(Table t){ public void addStats(Table t){
t.add((randAmount > 0 ? amount + "-" + (amount + randAmount) : amount) + " " + unit.emoji() + " " + unit.localizedName); super.addStats(t);
t.add("[stat]" + (randAmount > 0 ? amount + "x-" + (amount + randAmount) : amount) + "x[] " + (unit.hasEmoji() ? unit.emoji() : "") + "[stat]" + unit.localizedName);
} }
@Override @Override

View File

@@ -1,15 +1,15 @@
package mindustry.entities.abilities; package mindustry.entities.abilities;
import arc.*;
import arc.math.*; import arc.math.*;
import arc.scene.ui.layout.Table; import arc.scene.ui.layout.*;
import arc.util.*; import arc.util.*;
import mindustry.content.*; import mindustry.content.*;
import mindustry.entities.*; import mindustry.entities.*;
import mindustry.gen.*; import mindustry.gen.*;
import mindustry.type.*; import mindustry.type.*;
import mindustry.world.meta.*;
import static mindustry.Vars.tilesize; import static mindustry.Vars.*;
public class StatusFieldAbility extends Ability{ public class StatusFieldAbility extends Ability{
public StatusEffect effect; public StatusEffect effect;
@@ -33,11 +33,12 @@ public class StatusFieldAbility extends Ability{
@Override @Override
public void addStats(Table t){ public void addStats(Table t){
t.add("[lightgray]" + Stat.reload.localized() + ": [white]" + Strings.autoFixed(60f / reload, 2) + " " + StatUnit.perSecond.localized()); super.addStats(t);
t.add(Core.bundle.format("bullet.range", Strings.autoFixed(range / tilesize, 2)));
t.row(); t.row();
t.add("[lightgray]" + Stat.shootRange.localized() + ": [white]" + Strings.autoFixed(range / tilesize, 2) + " " + StatUnit.blocks.localized()); t.add(abilityStat("firingrate", Strings.autoFixed(60f / reload, 2)));
t.row(); t.row();
t.add(effect.emoji() + " " + effect.localizedName); t.add((effect.hasEmoji() ? effect.emoji() : "") + "[stat]" + effect.localizedName);
} }
@Override @Override

View File

@@ -1,12 +1,17 @@
package mindustry.entities.abilities; package mindustry.entities.abilities;
import arc.*;
import arc.graphics.*; import arc.graphics.*;
import arc.graphics.g2d.*; import arc.graphics.g2d.*;
import arc.math.*; import arc.math.*;
import arc.scene.ui.layout.*;
import arc.util.*; import arc.util.*;
import mindustry.entities.*; import mindustry.entities.*;
import mindustry.gen.*; import mindustry.gen.*;
import mindustry.graphics.*; import mindustry.graphics.*;
import mindustry.type.*;
import static mindustry.Vars.*;
public class SuppressionFieldAbility extends Ability{ public class SuppressionFieldAbility extends Ability{
protected static Rand rand = new Rand(); protected static Rand rand = new Rand();
@@ -33,6 +38,19 @@ public class SuppressionFieldAbility extends Ability{
protected float timer; protected float timer;
@Override
public void init(UnitType type){
if(!active) display = false;
}
@Override
public void addStats(Table t){
super.addStats(t);
t.add(Core.bundle.format("bullet.range", Strings.autoFixed(range / tilesize, 2)));
t.row();
t.add(abilityStat("duration", Strings.autoFixed(reload / 60f, 2)));
}
@Override @Override
public void update(Unit unit){ public void update(Unit unit){
if(!active) return; if(!active) return;

View File

@@ -12,7 +12,6 @@ import mindustry.game.EventType.*;
import mindustry.gen.*; import mindustry.gen.*;
import mindustry.graphics.*; import mindustry.graphics.*;
import mindustry.type.*; import mindustry.type.*;
import mindustry.world.meta.*;
import static mindustry.Vars.*; import static mindustry.Vars.*;
@@ -36,9 +35,10 @@ public class UnitSpawnAbility extends Ability{
@Override @Override
public void addStats(Table t){ public void addStats(Table t){
t.add("[lightgray]" + Stat.buildTime.localized() + ": [white]" + Strings.autoFixed(spawnTime / 60f, 2) + " " + StatUnit.seconds.localized()); super.addStats(t);
t.add(abilityStat("buildtime", Strings.autoFixed(spawnTime / 60f, 2)));
t.row(); t.row();
t.add(unit.emoji() + " " + unit.localizedName); t.add((unit.hasEmoji() ? unit.emoji() : "") + "[stat]" + unit.localizedName);
} }
@Override @Override

View File

@@ -176,6 +176,8 @@ public class BulletType extends Content implements Cloneable{
public float fragLifeMin = 1f, fragLifeMax = 1f; public float fragLifeMin = 1f, fragLifeMax = 1f;
/** Random offset of frag bullets from the parent bullet. */ /** Random offset of frag bullets from the parent bullet. */
public float fragOffsetMin = 1f, fragOffsetMax = 7f; public float fragOffsetMin = 1f, fragOffsetMax = 7f;
/** How many times this bullet can release frag bullets, if pierce = true. */
public int pierceFragCap = -1;
/** Bullet that is created at a fixed interval. */ /** Bullet that is created at a fixed interval. */
public @Nullable BulletType intervalBullet; public @Nullable BulletType intervalBullet;
@@ -509,12 +511,13 @@ public class BulletType extends Content implements Cloneable{
} }
public void createFrags(Bullet b, float x, float y){ public void createFrags(Bullet b, float x, float y){
if(fragBullet != null && (fragOnAbsorb || !b.absorbed)){ if(fragBullet != null && (fragOnAbsorb || !b.absorbed) && !(b.frags >= pierceFragCap && pierceFragCap > 0)){
for(int i = 0; i < fragBullets; i++){ for(int i = 0; i < fragBullets; i++){
float len = Mathf.random(fragOffsetMin, fragOffsetMax); float len = Mathf.random(fragOffsetMin, fragOffsetMax);
float a = b.rotation() + Mathf.range(fragRandomSpread / 2) + fragAngle + ((i - fragBullets/2) * fragSpread); float a = b.rotation() + Mathf.range(fragRandomSpread / 2) + fragAngle + ((i - fragBullets/2) * fragSpread);
fragBullet.create(b, x + Angles.trnsx(a, len), y + Angles.trnsy(a, len), a, Mathf.random(fragVelocityMin, fragVelocityMax), Mathf.random(fragLifeMin, fragLifeMax)); fragBullet.create(b, x + Angles.trnsx(a, len), y + Angles.trnsy(a, len), a, Mathf.random(fragVelocityMin, fragVelocityMax), Mathf.random(fragLifeMin, fragLifeMax));
} }
b.frags++;
} }
} }

View File

@@ -49,6 +49,7 @@ public class ContinuousFlameBulletType extends ContinuousBulletType{
lifetime = 16f; lifetime = 16f;
hitColor = colors[1].cpy().a(1f); hitColor = colors[1].cpy().a(1f);
lightColor = hitColor; lightColor = hitColor;
lightOpacity = 0.7f;
laserAbsorb = false; laserAbsorb = false;
ammoMultiplier = 1f; ammoMultiplier = 1f;
pierceArmor = true; pierceArmor = true;
@@ -87,7 +88,7 @@ public class ContinuousFlameBulletType extends ContinuousBulletType{
} }
Tmp.v1.trns(b.rotation(), realLength * 1.1f); Tmp.v1.trns(b.rotation(), realLength * 1.1f);
Drawf.light(b.x, b.y, b.x + Tmp.v1.x, b.y + Tmp.v1.y, lightStroke, lightColor, 0.7f); Drawf.light(b.x, b.y, b.x + Tmp.v1.x, b.y + Tmp.v1.y, lightStroke, lightColor, lightOpacity);
Draw.reset(); Draw.reset();
} }

View File

@@ -45,6 +45,7 @@ abstract class BulletComp implements Timedc, Damagec, Hitboxc, Teamc, Posc, Draw
transient @Nullable Mover mover; transient @Nullable Mover mover;
transient boolean absorbed, hit; transient boolean absorbed, hit;
transient @Nullable Trail trail; transient @Nullable Trail trail;
transient int frags;
@Override @Override
public void getCollisions(Cons<QuadTree> consumer){ public void getCollisions(Cons<QuadTree> consumer){

View File

@@ -4,6 +4,7 @@ import arc.math.*;
import arc.util.*; import arc.util.*;
import mindustry.annotations.Annotations.*; import mindustry.annotations.Annotations.*;
import mindustry.gen.*; import mindustry.gen.*;
import mindustry.world.blocks.*;
@Component @Component
abstract class ChildComp implements Posc, Rotc{ abstract class ChildComp implements Posc, Rotc{
@@ -18,9 +19,14 @@ abstract class ChildComp implements Posc, Rotc{
if(parent != null){ if(parent != null){
offsetX = x - parent.getX(); offsetX = x - parent.getX();
offsetY = y - parent.getY(); offsetY = y - parent.getY();
if(rotWithParent && parent instanceof Rotc r){ if(rotWithParent){
offsetPos = -r.rotation(); if(parent instanceof Rotc r){
offsetRot = rotation - r.rotation(); offsetPos = -r.rotation();
offsetRot = rotation - r.rotation();
}else if(parent instanceof RotBlock rot){
offsetPos = -rot.buildRotation();
offsetRot = rotation - rot.buildRotation();
}
} }
} }
} }
@@ -28,10 +34,16 @@ abstract class ChildComp implements Posc, Rotc{
@Override @Override
public void update(){ public void update(){
if(parent != null){ if(parent != null){
if(rotWithParent && parent instanceof Rotc r){ if(rotWithParent){
x = parent.getX() + Angles.trnsx(r.rotation() + offsetPos, offsetX, offsetY); if(parent instanceof Rotc r){
y = parent.getY() + Angles.trnsy(r.rotation() + offsetPos, offsetX, offsetY); x = parent.getX() + Angles.trnsx(r.rotation() + offsetPos, offsetX, offsetY);
rotation = r.rotation() + offsetRot; y = parent.getY() + Angles.trnsy(r.rotation() + offsetPos, offsetX, offsetY);
rotation = r.rotation() + offsetRot;
}else if(parent instanceof RotBlock rot){
x = parent.getX() + Angles.trnsx(rot.buildRotation() + offsetPos, offsetX, offsetY);
y = parent.getY() + Angles.trnsy(rot.buildRotation() + offsetPos, offsetX, offsetY);
rotation = rot.buildRotation() + offsetRot;
}
}else{ }else{
x = parent.getX() + offsetX; x = parent.getX() + offsetX;
y = parent.getY() + offsetY; y = parent.getY() + offsetY;

View File

@@ -60,6 +60,11 @@ abstract class PayloadComp implements Posc, Rotc, Hitboxc, Unitc{
} }
} }
@Override
public void destroy(){
if(Vars.state.rules.unitPayloadsExplode) payloads.each(Payload::destroyed);
}
float payloadUsed(){ float payloadUsed(){
return payloads.sumf(p -> p.size() * p.size()); return payloads.sumf(p -> p.size() * p.size());
} }

View File

@@ -59,6 +59,7 @@ abstract class PuddleComp implements Posc, Puddlec, Drawc, Syncc{
amount -= Time.delta * (1f - liquid.viscosity) / (5f + addSpeed); amount -= Time.delta * (1f - liquid.viscosity) / (5f + addSpeed);
amount += accepting; amount += accepting;
amount = Math.min(amount, maxLiquid);
accepting = 0f; accepting = 0f;
if(amount >= maxLiquid / 1.5f){ if(amount >= maxLiquid / 1.5f){

View File

@@ -39,6 +39,7 @@ public class EventType{
socketConfigChanged, socketConfigChanged,
update, update,
unitCommandChange, unitCommandChange,
unitCommandPosition,
unitCommandAttack, unitCommandAttack,
importMod, importMod,
draw, draw,

View File

@@ -851,7 +851,7 @@ public class MapObjectives implements Iterable<MapObjective>, Eachable<MapObject
/** Displays a shape with an outline and color. */ /** Displays a shape with an outline and color. */
public static class ShapeMarker extends PosMarker{ public static class ShapeMarker extends PosMarker{
public float radius = 8f, rotation = 0f, stroke = 1f; public float radius = 8f, rotation = 0f, stroke = 1f, startAngle = 0f, endAngle = 360f;
public boolean fill = false, outline = true; public boolean fill = false, outline = true;
public int sides = 4; public int sides = 4;
public Color color = Color.valueOf("ffd37f"); public Color color = Color.valueOf("ffd37f");
@@ -877,14 +877,18 @@ public class MapObjectives implements Iterable<MapObjective>, Eachable<MapObject
if(!fill){ if(!fill){
if(outline){ if(outline){
Lines.stroke((stroke + 2f) * scaleFactor, Pal.gray); Lines.stroke((stroke + 2f) * scaleFactor, Pal.gray);
Lines.poly(pos.x, pos.y, sides, (radius + 1f) * scaleFactor, rotation); Lines.poly(pos.x, pos.y, sides, (radius + 1f) * scaleFactor, rotation + startAngle, rotation + endAngle);
} }
Lines.stroke(stroke * scaleFactor, color); Lines.stroke(stroke * scaleFactor, color);
Lines.poly(pos.x, pos.y, sides, (radius + 1f) * scaleFactor, rotation); Lines.poly(pos.x, pos.y, sides, (radius + 1f) * scaleFactor, rotation + startAngle, rotation + endAngle);
}else{ }else{
Draw.color(color); Draw.color(color);
Fill.poly(pos.x, pos.y, sides, radius * scaleFactor, rotation); if (startAngle < endAngle){
Fill.arc(pos.x, pos.y, radius * scaleFactor, (endAngle - startAngle) / 360f, rotation + startAngle, sides);
}else{
Fill.arc(pos.x, pos.y, radius * scaleFactor, (startAngle - endAngle) / 360f, rotation + endAngle, sides);
}
} }
Draw.reset(); Draw.reset();
@@ -901,12 +905,14 @@ public class MapObjectives implements Iterable<MapObjective>, Eachable<MapObject
case rotation -> rotation = (float)p1; case rotation -> rotation = (float)p1;
case color -> color.fromDouble(p1); case color -> color.fromDouble(p1);
case shape -> sides = (int)p1; case shape -> sides = (int)p1;
case arc -> startAngle = (float)p1;
} }
} }
if(!Double.isNaN(p2)){ if(!Double.isNaN(p2)){
switch(type){ switch(type){
case shape -> fill = !Mathf.equal((float)p2, 0f); case shape -> fill = !Mathf.equal((float)p2, 0f);
case arc -> endAngle = (float)p2;
} }
} }

View File

@@ -59,6 +59,8 @@ public class Rules{
public boolean unitAmmo = false; public boolean unitAmmo = false;
/** EXPERIMENTAL! If true, blocks will update in units and share power. */ /** EXPERIMENTAL! If true, blocks will update in units and share power. */
public boolean unitPayloadUpdate = false; public boolean unitPayloadUpdate = false;
/** If true, units' payloads are destroy()ed when the unit is destroyed. */
public boolean unitPayloadsExplode = false;
/** Whether cores add to unit limit */ /** Whether cores add to unit limit */
public boolean unitCapVariable = true; public boolean unitCapVariable = true;
/** If true, unit spawn points are shown. */ /** If true, unit spawn points are shown. */

View File

@@ -176,10 +176,7 @@ public class MinimapRenderer{
if(fullView && net.active()){ if(fullView && net.active()){
for(Player player : Groups.player){ for(Player player : Groups.player){
if(!player.dead()){ if(!player.dead()){
float rx = player.x / (world.width() * tilesize) * w; drawLabel(player.x, player.y, player.name, player.color);
float ry = player.y / (world.height() * tilesize) * h;
drawLabel(x + rx, y + ry, player.name, player.color);
} }
} }
} }

View File

@@ -65,6 +65,12 @@ public class Trail{
x2 = items[i + 3]; x2 = items[i + 3];
y2 = items[i + 4]; y2 = items[i + 4];
w2 = items[i + 5]; w2 = items[i + 5];
if(i == 0 && points.size >= (length - 1) * 3){
x1 = Mathf.lerp(x1, x2, counter);
y1 = Mathf.lerp(y1, y2, counter);
w1 = Mathf.lerp(w1, w2, counter);
}
}else{ }else{
x2 = lastX; x2 = lastX;
y2 = lastY; y2 = lastY;
@@ -97,12 +103,11 @@ public class Trail{
/** Removes the last point from the trail at intervals. */ /** Removes the last point from the trail at intervals. */
public void shorten(){ public void shorten(){
if((counter += Time.delta) >= 1f){ int count = (int)(counter += Time.delta);
if(points.size >= 3){ counter -= count;
points.removeRange(0, 2);
}
counter %= 1f; if(points.size + ((count - 1) * 3) > length * 3 && points.size > 0){
points.removeRange(0, Math.min(3 * count - 1, points.size - 1));
} }
} }
@@ -113,18 +118,27 @@ public class Trail{
/** Adds a new point to the trail at intervals. */ /** Adds a new point to the trail at intervals. */
public void update(float x, float y, float width){ public void update(float x, float y, float width){
//TODO fix longer trails at low FPS int count = (int)(counter += Time.delta);
if((counter += Time.delta) >= 1f){ counter -= count;
if(points.size > length*3){
points.removeRange(0, 2); if(count > 0){
int toRemove = points.size + (count - 1 - length) * 3;
if(toRemove > 0 && points.size > 0){
points.removeRange(0, Math.min(toRemove - 1, points.size - 1));
} }
points.add(x, y, width); //if lastX is -1, this trail has never updated, so only add one point - there is nothing to interpolate with
if(count == 1 || lastX == -1f){
counter %= 1f; points.add(x, y, width);
}else{
for(int i = 0; i < count; i++){
float f = (i + 1f) / count;
points.add(Mathf.lerp(lastX, x, f), Mathf.lerp(lastY, y, f), Mathf.lerp(lastW, width, f));
}
}
} }
//update last position regardless, so it joins //update last position regardless, so it joins at the origin
lastAngle = -Angles.angleRad(x, y, lastX, lastY); lastAngle = -Angles.angleRad(x, y, lastX, lastY);
lastX = x; lastX = x;
lastY = y; lastY = y;

View File

@@ -451,7 +451,7 @@ public class DesktopInput extends InputHandler{
cursorType = cursor.build.getCursor(); cursorType = cursor.build.getCursor();
} }
if(cursor.build != null && cursor.build.team == Team.derelict && Build.validPlace(cursor.block(), player.team(), cursor.build.tileX(), cursor.build.tileY(), cursor.build.rotation)){ if(cursor.build != null && player.team() != Team.derelict && cursor.build.team == Team.derelict && Build.validPlace(cursor.block(), player.team(), cursor.build.tileX(), cursor.build.tileY(), cursor.build.rotation)){
cursorType = ui.repairCursor; cursorType = ui.repairCursor;
} }
@@ -568,7 +568,7 @@ public class DesktopInput extends InputHandler{
schematicY += shiftY; schematicY += shiftY;
} }
if(Core.input.keyTap(Binding.deselect) && !isPlacing() && player.unit().plans.isEmpty() && !commandMode){ if(Core.input.keyTap(Binding.deselect) && !ui.minimapfrag.shown() && !isPlacing() && player.unit().plans.isEmpty() && !commandMode){
player.unit().mineTile = null; player.unit().mineTile = null;
} }

View File

@@ -311,18 +311,10 @@ public abstract class InputHandler implements InputProcessor, GestureListener{
} }
} }
float minSpeed = 100000000f;
for(int i = 0; i < groups.length; i ++){ for(int i = 0; i < groups.length; i ++){
var group = groups[i]; var group = groups[i];
if(group != null && group.units.size > 0){ if(group != null && group.units.size > 0){
group.calculateFormation(targetAsVec, i); group.calculateFormation(targetAsVec, i);
minSpeed = Math.min(group.minSpeed, minSpeed);
}
}
for(var group : groups){
if(group != null){
group.minSpeed = minSpeed;
} }
} }
} }
@@ -1012,6 +1004,8 @@ public abstract class InputHandler implements InputProcessor, GestureListener{
if(attack != null){ if(attack != null){
Events.fire(Trigger.unitCommandAttack); Events.fire(Trigger.unitCommandAttack);
}else{
Events.fire(Trigger.unitCommandPosition);
} }
int maxChunkSize = 200; int maxChunkSize = 200;
@@ -1661,7 +1655,7 @@ public abstract class InputHandler implements InputProcessor, GestureListener{
} }
boolean tryRepairDerelict(Tile selected){ boolean tryRepairDerelict(Tile selected){
if(selected != null && selected.build != null && selected.build.block.unlockedNow() && selected.build.team == Team.derelict && Build.validPlace(selected.block(), player.team(), selected.build.tileX(), selected.build.tileY(), selected.build.rotation)){ if(selected != null && player.team() != Team.derelict && selected.build != null && selected.build.block.unlockedNow() && selected.build.team == Team.derelict && Build.validPlace(selected.block(), player.team(), selected.build.tileX(), selected.build.tileY(), selected.build.rotation)){
player.unit().addBuild(new BuildPlan(selected.build.tileX(), selected.build.tileY(), selected.build.rotation, selected.block(), selected.build.config())); player.unit().addBuild(new BuildPlan(selected.build.tileX(), selected.build.tileY(), selected.build.rotation, selected.block(), selected.build.config()));
return true; return true;
} }

View File

@@ -125,6 +125,10 @@ public class GlobalVars{
put("@" + type.name, type); put("@" + type.name, type);
} }
for(Weather weather : Vars.content.weathers()){
put("@" + weather.name, weather);
}
//store sensor constants //store sensor constants
for(LAccess sensor : LAccess.all){ for(LAccess sensor : LAccess.all){
put("@" + sensor.name(), sensor); put("@" + sensor.name(), sensor);

View File

@@ -13,8 +13,8 @@ import mindustry.content.*;
import mindustry.core.*; import mindustry.core.*;
import mindustry.ctype.*; import mindustry.ctype.*;
import mindustry.entities.*; import mindustry.entities.*;
import mindustry.game.*;
import mindustry.game.EventType.*; import mindustry.game.EventType.*;
import mindustry.game.*;
import mindustry.game.MapObjectives.*; import mindustry.game.MapObjectives.*;
import mindustry.game.Teams.*; import mindustry.game.Teams.*;
import mindustry.gen.*; import mindustry.gen.*;
@@ -1363,13 +1363,21 @@ public class LExecutor{
TeamData data = t.data(); TeamData data = t.data();
switch(type){ switch(type){
case unit -> exec.setobj(result, i < 0 || i >= data.units.size ? null : data.units.get(i)); case unit -> {
UnitType type = exec.obj(extra) instanceof UnitType u ? u : null;
if(type == null){
exec.setobj(result, i < 0 || i >= data.units.size ? null : data.units.get(i));
}else{
var units = data.unitCache(type);
exec.setobj(result, units == null || i < 0 || i >= units.size ? null : units.get(i));
}
}
case player -> exec.setobj(result, i < 0 || i >= data.players.size || data.players.get(i).unit().isNull() ? null : data.players.get(i).unit()); case player -> exec.setobj(result, i < 0 || i >= data.players.size || data.players.get(i).unit().isNull() ? null : data.players.get(i).unit());
case core -> exec.setobj(result, i < 0 || i >= data.cores.size ? null : data.cores.get(i)); case core -> exec.setobj(result, i < 0 || i >= data.cores.size ? null : data.cores.get(i));
case build -> { case build -> {
Block block = exec.obj(extra) instanceof Block b ? b : null; Block block = exec.obj(extra) instanceof Block b ? b : null;
if(block == null){ if(block == null){
exec.setobj(result, null); exec.setobj(result, i < 0 || i >= data.buildings.size ? null : data.buildings.get(i));
}else{ }else{
var builds = data.getBuildings(block); var builds = data.getBuildings(block);
exec.setobj(result, i < 0 || i >= builds.size ? null : builds.get(i)); exec.setobj(result, i < 0 || i >= builds.size ? null : builds.get(i));
@@ -1380,7 +1388,7 @@ public class LExecutor{
if(type == null){ if(type == null){
exec.setnum(result, data.units.size); exec.setnum(result, data.units.size);
}else{ }else{
exec.setnum(result, data.unitsByType[type.id].size); exec.setnum(result, data.unitCache(type) == null ? 0 : data.unitCache(type).size);
} }
} }
case coreCount -> exec.setnum(result, data.cores.size); case coreCount -> exec.setnum(result, data.cores.size);
@@ -1511,6 +1519,47 @@ public class LExecutor{
} }
} }
public static class SenseWeatherI implements LInstruction{
public int type, to;
public SenseWeatherI(int type, int to){
this.type = type;
this.to = to;
}
@Override
public void run(LExecutor exec){
exec.setbool(to, exec.obj(type) instanceof Weather weather && weather.isActive());
}
}
public static class SetWeatherI implements LInstruction{
public int type, state;
public SetWeatherI(int type, int state){
this.type = type;
this.state = state;
}
@Override
public void run(LExecutor exec){
if(exec.obj(type) instanceof Weather weather){
if(exec.bool(state)){
if(!weather.isActive()){ //Create is not already active
Tmp.v1.setToRandomDirection();
Call.createWeather(weather, 1f, WeatherState.fadeTime, Tmp.v1.x, Tmp.v1.y);
}else{
weather.instance().life(WeatherState.fadeTime);
}
}else{
if(weather.isActive() && weather.instance().life > WeatherState.fadeTime){
weather.instance().life(WeatherState.fadeTime);
}
}
}
}
}
public static class ApplyEffectI implements LInstruction{ public static class ApplyEffectI implements LInstruction{
public boolean clear; public boolean clear;
public String effect; public String effect;

View File

@@ -13,6 +13,7 @@ public enum LMarkerControl{
stroke("stroke"), stroke("stroke"),
rotation("rotation"), rotation("rotation"),
shape("sides", "fill", "outline"), shape("sides", "fill", "outline"),
arc("start", "end"),
flushText("fetch"), flushText("fetch"),
fontSize("size"), fontSize("size"),
textHeight("height"), textHeight("height"),

View File

@@ -16,7 +16,7 @@ import mindustry.logic.LCanvas.*;
import mindustry.logic.LExecutor.*; import mindustry.logic.LExecutor.*;
import mindustry.ui.*; import mindustry.ui.*;
import static mindustry.Vars.ui; import static mindustry.Vars.*;
import static mindustry.logic.LCanvas.*; import static mindustry.logic.LCanvas.*;
/** /**

View File

@@ -1380,6 +1380,115 @@ public class LStatements{
} }
} }
@RegisterStatement("weathersense")
public static class WeatherSenseStatement extends LStatement{
public String to = "result";
public String weather = "@rain";
private transient TextField tfield;
@Override
public void build(Table table){
field(table, to, str -> to = str);
table.add(" = weather ");
row(table);
tfield = field(table, weather, str -> weather = str).padRight(0f).get();
table.button(b -> {
b.image(Icon.pencilSmall);
b.clicked(() -> showSelectTable(b, (t, hide) -> {
t.row();
t.table(i -> {
i.left();
int c = 0;
for(Weather w : Vars.content.weathers()){
i.button(w.name, Styles.flatt, () -> {
weather = "@" + w.name;
tfield.setText(weather);
hide.run();
}).height(40f).uniformX().wrapLabel(false).growX();
if(++c % 2 == 0) i.row();
}
}).left();
}));
}, Styles.logict, () -> {}).size(40f).padLeft(-1).color(table.color);
}
@Override
public boolean privileged(){
return true;
}
@Override
public LInstruction build(LAssembler builder){
return new SenseWeatherI(builder.var(weather), builder.var(to));
}
@Override
public LCategory category(){
return LCategory.world;
}
}
@RegisterStatement("weatherset")
public static class WeatherSetStatement extends LStatement{
public String weather = "@rain", state = "true";
private transient TextField tfield;
@Override
public void build(Table table){
table.add(" set weather ");
tfield = field(table, weather, str -> weather = str).padRight(0f).get();
table.button(b -> {
b.image(Icon.pencilSmall);
b.clicked(() -> showSelectTable(b, (t, hide) -> {
t.row();
t.table(i -> {
i.left();
int c = 0;
for(Weather w : Vars.content.weathers()){
i.button(w.name, Styles.flatt, () -> {
weather = "@" + w.name;
tfield.setText(weather);
hide.run();
}).height(40f).uniformX().wrapLabel(false).growX();
if(++c % 2 == 0) i.row();
}
}).left();
}));
}, Styles.logict, () -> {}).size(40f).padLeft(-1).color(table.color);
table.add(" state ");
fields(table, state, str -> state = str);
}
@Override
public boolean privileged(){
return true;
}
@Override
public LInstruction build(LAssembler builder){
return new SetWeatherI(builder.var(weather), builder.var(state));
}
@Override
public LCategory category(){
return LCategory.world;
}
}
@RegisterStatement("spawnwave") @RegisterStatement("spawnwave")
public static class SpawnWaveStatement extends LStatement{ public static class SpawnWaveStatement extends LStatement{
public String x = "10", y = "10", natural = "false"; public String x = "10", y = "10", natural = "false";
@@ -1747,11 +1856,17 @@ public class LStatements{
fields(table, index, i -> index = i); fields(table, index, i -> index = i);
} }
if(type == FetchType.buildCount || type == FetchType.build || type == FetchType.unitCount){ if(type == FetchType.buildCount || type == FetchType.build){
row(table); row(table);
fields(table, "block", extra, i -> extra = i); fields(table, "block", extra, i -> extra = i);
} }
if(type == FetchType.unitCount || type == FetchType.unit){
row(table);
fields(table, "unit", extra, i -> extra = i);
}
} }
@Override @Override

View File

@@ -47,20 +47,20 @@ public class BaseGenerator{
if(bases.cores.isEmpty()) return; if(bases.cores.isEmpty()) return;
Mathf.rand.setSeed(sector.id); Mathf.rand.setSeed(sector.id);
Mathf.rand.nextDouble();
float bracketRange = 0.17f; float bracketRange = 0.17f;
float baseChance = Mathf.lerp(0.7f, 2.1f, difficulty); float baseChance = Mathf.lerp(0.7f, 2.1f, difficulty);
int wallAngle = 70; //180 for full coverage int wallAngle = 70; //180 for full coverage
double resourceChance = 0.5 * baseChance; double resourceChance = 0.5 * baseChance;
double nonResourceChance = 0.002 * baseChance; double nonResourceChance = 0.002 * baseChance;
BasePart coreschem = bases.cores.getFrac(difficulty);
int passes = difficulty < 0.4 ? 1 : difficulty < 0.8 ? 3 : 5; int passes = difficulty < 0.4 ? 1 : difficulty < 0.8 ? 3 : 5;
Block wall = getDifficultyWall(1, difficulty), wallLarge = getDifficultyWall(2, difficulty); Block wall = getDifficultyWall(1, difficulty), wallLarge = getDifficultyWall(2, difficulty);
for(Tile tile : cores){ for(Tile tile : cores){
tile.clearOverlay(); tile.clearOverlay();
Schematics.placeLoadout(coreschem.schematic, tile.x, tile.y, team, false); Schematics.placeLoadout(bases.cores.getFrac((difficulty + Mathf.rand.range(0.4f)) / 1.4f).schematic, tile.x, tile.y, team, false);
//fill core with every type of item (even non-material) //fill core with every type of item (even non-material)
Building entity = tile.build; Building entity = tile.build;
@@ -81,7 +81,7 @@ public class BaseGenerator{
tryPlace(parts.getFrac(difficulty + Mathf.range(bracketRange)), tile.x, tile.y, team); tryPlace(parts.getFrac(difficulty + Mathf.range(bracketRange)), tile.x, tile.y, team);
} }
}else if(Mathf.chance(nonResourceChance)){ }else if(Mathf.chance(nonResourceChance)){
tryPlace(bases.parts.getFrac(Mathf.random(1f)), tile.x, tile.y, team); tryPlace(bases.parts.getFrac(Mathf.rand.random(1f)), tile.x, tile.y, team);
} }
}); });
} }
@@ -235,7 +235,7 @@ public class BaseGenerator{
set(placed, item); set(placed, item);
} }
Tile rand = world.tiles.getc(ex + Mathf.range(1), ey + Mathf.range(1)); Tile rand = world.tiles.getc(ex + Mathf.rand.range(1), ey + Mathf.rand.range(1));
if(rand.floor().hasSurface()){ if(rand.floor().hasSurface()){
//random ores nearby to make it look more natural //random ores nearby to make it look more natural
set(rand, item); set(rand, item);

View File

@@ -1054,7 +1054,21 @@ public class ContentParser{
} }
Field field = metadata.field; Field field = metadata.field;
try{ try{
field.set(object, parser.readValue(field.getType(), metadata.elementType, child, metadata.keyType)); boolean mergeMap = ObjectMap.class.isAssignableFrom(field.getType()) && child.has("add") && child.get("add").isBoolean() && child.getBoolean("add", false);
if(mergeMap){
child.remove("add");
}
Object readField = parser.readValue(field.getType(), metadata.elementType, child, metadata.keyType);
//if a map has add: true, add its contents to the map instead
if(mergeMap && field.get(object) instanceof ObjectMap<?,?> baseMap){
baseMap.putAll((ObjectMap)readField);
}else{
field.set(object, readField);
}
}catch(IllegalAccessException ex){ }catch(IllegalAccessException ex){
throw new SerializationException("Error accessing field: " + field.getName() + " (" + type.getName() + ")", ex); throw new SerializationException("Error accessing field: " + field.getName() + " (" + type.getName() + ")", ex);
}catch(SerializationException ex){ }catch(SerializationException ex){
@@ -1102,8 +1116,8 @@ public class ContentParser{
} }
//all items have a produce requirement unless already specified //all items have a produce requirement unless already specified
if(object instanceof Item i && !node.objectives.contains(o -> o instanceof Produce p && p.content == i)){ if((unlock instanceof Item || unlock instanceof Liquid) && !node.objectives.contains(o -> o instanceof Produce p && p.content == unlock)){
node.objectives.add(new Produce(i)); node.objectives.add(new Produce(unlock));
} }
//remove old node from parent //remove old node from parent

View File

@@ -218,7 +218,10 @@ public class Mods implements Loadable{
} }
//this returns a *runnable* which actually packs the resulting pixmap; this has to be done synchronously outside the method //this returns a *runnable* which actually packs the resulting pixmap; this has to be done synchronously outside the method
return () -> { return () -> {
String fullName = (prefix ? mod.name + "-" : "") + baseName; //don't prefix with mod name if it's already prefixed by a category, e.g. `block-modname-content-full`.
int hyphen = baseName.indexOf('-');
String fullName = ((prefix && !(hyphen != -1 && baseName.substring(hyphen + 1).startsWith(mod.name + "-"))) ? mod.name + "-" : "") + baseName;
packer.add(getPage(file), fullName, new PixmapRegion(pix)); packer.add(getPage(file), fullName, new PixmapRegion(pix));
if(textureScale != 1.0f){ if(textureScale != 1.0f){
textureResize.put(fullName, textureScale); textureResize.put(fullName, textureScale);
@@ -358,7 +361,24 @@ public class Mods implements Loadable{
Log.debug("Time to generate icons: @", Time.elapsed()); Log.debug("Time to generate icons: @", Time.elapsed());
//dispose old atlas data //dispose old atlas data
Core.atlas = packer.flush(filter, new TextureAtlas()); Core.atlas = packer.flush(filter, new TextureAtlas(){
PixmapRegion fake = new PixmapRegion(new Pixmap(1, 1));
boolean didWarn = false;
@Override
public PixmapRegion getPixmap(AtlasRegion region){
var other = super.getPixmap(region);
if(other.pixmap.isDisposed()){
if(!didWarn){
Log.err(new RuntimeException("Calling getPixmap outside of createIcons is not supported! This will be a crash in the future."));
didWarn = true;
}
return fake;
}
return other;
}
});
textureResize.each(e -> Core.atlas.find(e.key).scale = e.value); textureResize.each(e -> Core.atlas.find(e.key).scale = e.value);
@@ -856,7 +876,7 @@ public class Mods implements Loadable{
return false; return false;
// If dependency present, resolve it, or if it's not required, ignore it // If dependency present, resolve it, or if it's not required, ignore it
}else if(context.dependencies.containsKey(dependency.name)){ }else if(context.dependencies.containsKey(dependency.name)){
if(!context.ordered.contains(dependency.name) && !resolve(dependency.name, context) && dependency.required){ if(((!context.ordered.contains(dependency.name) && !resolve(dependency.name, context)) || !Core.settings.getBool("mod-" + dependency.name + "-enabled", true)) && dependency.required){
context.invalid.put(element, ModState.incompleteDependencies); context.invalid.put(element, ModState.incompleteDependencies);
return false; return false;
} }

View File

@@ -146,6 +146,7 @@ public class Item extends UnlockableContent implements Senseable{
Pixmap res = Pixmaps.blend(pixmaps[i], pixmaps[(i + 1) % frames], f); Pixmap res = Pixmaps.blend(pixmaps[i], pixmaps[(i + 1) % frames], f);
packer.add(PageType.main, name + "-t" + index, res); packer.add(PageType.main, name + "-t" + index, res);
res.dispose();
} }
} }
} }

View File

@@ -39,8 +39,10 @@ public class SectorPreset extends UnlockableContent{
/** Internal use only! */ /** Internal use only! */
public SectorPreset(String name, LoadedMod mod){ public SectorPreset(String name, LoadedMod mod){
super(name); super(name);
this.minfo.mod = mod; if(mod != null){
this.generator = new FileMapGenerator(name, this); this.minfo.mod = mod;
}
this.generator = new FileMapGenerator(this.name, this);
} }
/** Internal use only! */ /** Internal use only! */

View File

@@ -1270,6 +1270,7 @@ public class UnitType extends UnlockableContent implements Senseable{
DrawPart.params.life = s.fin(); DrawPart.params.life = s.fin();
} }
applyColor(unit);
part.draw(DrawPart.params); part.draw(DrawPart.params);
} }
} }

View File

@@ -228,6 +228,7 @@ public class Weapon implements Cloneable{
var part = parts.get(i); var part = parts.get(i);
DrawPart.params.setRecoil(part.recoilIndex >= 0 && mount.recoils != null ? mount.recoils[part.recoilIndex] : mount.recoil); DrawPart.params.setRecoil(part.recoilIndex >= 0 && mount.recoils != null ? mount.recoils[part.recoilIndex] : mount.recoil);
if(part.under){ if(part.under){
unit.type.applyColor(unit);
part.draw(DrawPart.params); part.draw(DrawPart.params);
} }
} }
@@ -262,6 +263,7 @@ public class Weapon implements Cloneable{
var part = parts.get(i); var part = parts.get(i);
DrawPart.params.setRecoil(part.recoilIndex >= 0 && mount.recoils != null ? mount.recoils[part.recoilIndex] : mount.recoil); DrawPart.params.setRecoil(part.recoilIndex >= 0 && mount.recoils != null ? mount.recoils[part.recoilIndex] : mount.recoil);
if(!part.under){ if(!part.under){
unit.type.applyColor(unit);
part.draw(DrawPart.params); part.draw(DrawPart.params);
} }
} }
@@ -297,31 +299,9 @@ public class Weapon implements Cloneable{
mount.warmup = Mathf.lerpDelta(mount.warmup, warmupTarget, shootWarmupSpeed); mount.warmup = Mathf.lerpDelta(mount.warmup, warmupTarget, shootWarmupSpeed);
} }
//rotate if applicable
if(rotate && (mount.rotate || mount.shoot) && can){
float axisX = unit.x + Angles.trnsx(unit.rotation - 90, x, y),
axisY = unit.y + Angles.trnsy(unit.rotation - 90, x, y);
mount.targetRotation = Angles.angle(axisX, axisY, mount.aimX, mount.aimY) - unit.rotation;
mount.rotation = Angles.moveToward(mount.rotation, mount.targetRotation, rotateSpeed * Time.delta);
if(rotationLimit < 360){
float dst = Angles.angleDist(mount.rotation, baseRotation);
if(dst > rotationLimit/2f){
mount.rotation = Angles.moveToward(mount.rotation, baseRotation, dst - rotationLimit/2f);
}
}
}else if(!rotate){
mount.rotation = baseRotation;
mount.targetRotation = unit.angleTo(mount.aimX, mount.aimY);
}
float float
weaponRotation = unit.rotation - 90 + (rotate ? mount.rotation : baseRotation),
mountX = unit.x + Angles.trnsx(unit.rotation - 90, x, y), mountX = unit.x + Angles.trnsx(unit.rotation - 90, x, y),
mountY = unit.y + Angles.trnsy(unit.rotation - 90, x, y), mountY = unit.y + Angles.trnsy(unit.rotation - 90, x, y);
bulletX = mountX + Angles.trnsx(weaponRotation, this.shootX, this.shootY),
bulletY = mountY + Angles.trnsy(weaponRotation, this.shootX, this.shootY),
shootAngle = bulletRotation(unit, mount, bulletX, bulletY);
//find a new target //find a new target
if(!controllable && autoTarget){ if(!controllable && autoTarget){
@@ -355,6 +335,30 @@ public class Weapon implements Cloneable{
//logic will return shooting as false even if these return true, which is fine //logic will return shooting as false even if these return true, which is fine
} }
//rotate if applicable
if(rotate && (mount.rotate || mount.shoot) && can){
float axisX = unit.x + Angles.trnsx(unit.rotation - 90, x, y),
axisY = unit.y + Angles.trnsy(unit.rotation - 90, x, y);
mount.targetRotation = Angles.angle(axisX, axisY, mount.aimX, mount.aimY) - unit.rotation;
mount.rotation = Angles.moveToward(mount.rotation, mount.targetRotation, rotateSpeed * Time.delta);
if(rotationLimit < 360){
float dst = Angles.angleDist(mount.rotation, baseRotation);
if(dst > rotationLimit/2f){
mount.rotation = Angles.moveToward(mount.rotation, baseRotation, dst - rotationLimit/2f);
}
}
}else if(!rotate){
mount.rotation = baseRotation;
mount.targetRotation = unit.angleTo(mount.aimX, mount.aimY);
}
float
weaponRotation = unit.rotation - 90 + (rotate ? mount.rotation : baseRotation),
bulletX = mountX + Angles.trnsx(weaponRotation, this.shootX, this.shootY),
bulletY = mountY + Angles.trnsy(weaponRotation, this.shootX, this.shootY),
shootAngle = bulletRotation(unit, mount, bulletX, bulletY);
if(alwaysShooting) mount.shoot = true; if(alwaysShooting) mount.shoot = true;
//update continuous state //update continuous state

View File

@@ -314,7 +314,7 @@ public class Weather extends UnlockableContent{
@EntityDef(value = {WeatherStatec.class}, pooled = true, isFinal = false) @EntityDef(value = {WeatherStatec.class}, pooled = true, isFinal = false)
@Component(base = true) @Component(base = true)
abstract static class WeatherStateComp implements Drawc, Syncc{ abstract static class WeatherStateComp implements Drawc, Syncc{
private static final float fadeTime = 60 * 4; public static final float fadeTime = 60 * 4;
Weather weather; Weather weather;
float intensity = 1f, opacity = 0f, life, effectTimer; float intensity = 1f, opacity = 0f, life, effectTimer;

View File

@@ -3,6 +3,7 @@ package mindustry.ui.dialogs;
import arc.*; import arc.*;
import arc.func.*; import arc.func.*;
import arc.graphics.*; import arc.graphics.*;
import arc.input.KeyCode;
import arc.scene.style.*; import arc.scene.style.*;
import arc.scene.ui.*; import arc.scene.ui.*;
import arc.scene.ui.ImageButton.*; import arc.scene.ui.ImageButton.*;
@@ -30,6 +31,12 @@ public class CustomRulesDialog extends BaseDialog{
private Table main; private Table main;
private Prov<Rules> resetter; private Prov<Rules> resetter;
private LoadoutDialog loadoutDialog; private LoadoutDialog loadoutDialog;
public Seq<Table> categories;
public Table current;
public Seq<String> categoryNames;
public String currentName;
public String ruleSearch = "";
public Seq<Runnable> additionalSetup; // for modding to easily add new rules
public CustomRulesDialog(){ public CustomRulesDialog(){
super("@mode.custom"); super("@mode.custom");
@@ -40,6 +47,12 @@ public class CustomRulesDialog extends BaseDialog{
shown(this::setup); shown(this::setup);
addCloseButton(); addCloseButton();
additionalSetup = new Seq<>();
categories = new Seq<>();
categoryNames = new Seq<>();
currentName = "";
ruleSearch = "";
buttons.button("@edit", Icon.pencil, () -> { buttons.button("@edit", Icon.pencil, () -> {
BaseDialog dialog = new BaseDialog("@waves.edit"); BaseDialog dialog = new BaseDialog("@waves.edit");
dialog.addCloseButton(); dialog.addCloseButton();
@@ -176,13 +189,26 @@ public class CustomRulesDialog extends BaseDialog{
} }
void setup(){ void setup(){
categories.clear();
cont.clear(); cont.clear();
cont.table(t -> {
t.add("@search").padRight(10);
t.field(ruleSearch, text ->
ruleSearch = text.trim().replaceAll(" +", " ").toLowerCase()
).grow().pad(8).get().keyDown(KeyCode.enter, this::setup);
t.button(Icon.cancel, Styles.emptyi, () -> {
ruleSearch = "";
setup();
}).padLeft(10f).size(35f);
t.button(Icon.zoom, Styles.emptyi, this::setup).size(54f);
}).row();
cont.pane(m -> main = m).scrollX(false); cont.pane(m -> main = m).scrollX(false);
main.margin(10f); main.margin(10f);
main.left().defaults().fillX().left().pad(5); main.left().defaults().fillX().left();
main.row(); main.row();
title("@rules.title.waves");
category("waves");
check("@rules.waves", b -> rules.waves = b, () -> rules.waves); check("@rules.waves", b -> rules.waves = b, () -> rules.waves);
check("@rules.wavesending", b -> rules.waveSending = b, () -> rules.waveSending, () -> rules.waves); check("@rules.wavesending", b -> rules.waveSending = b, () -> rules.waveSending, () -> rules.waves);
check("@rules.wavetimer", b -> rules.waveTimer = b, () -> rules.waveTimer, () -> rules.waves); check("@rules.wavetimer", b -> rules.waveTimer = b, () -> rules.waveTimer, () -> rules.waves);
@@ -195,7 +221,8 @@ public class CustomRulesDialog extends BaseDialog{
} }
number("@rules.dropzoneradius", false, f -> rules.dropZoneRadius = f * tilesize, () -> rules.dropZoneRadius / tilesize, () -> rules.waves); number("@rules.dropzoneradius", false, f -> rules.dropZoneRadius = f * tilesize, () -> rules.dropZoneRadius / tilesize, () -> rules.waves);
title("@rules.title.resourcesbuilding");
category("resourcesbuilding");
check("@rules.infiniteresources", b -> { check("@rules.infiniteresources", b -> {
rules.infiniteResources = b; rules.infiniteResources = b;
@@ -207,7 +234,7 @@ public class CustomRulesDialog extends BaseDialog{
setup(); setup();
} }
}, () -> rules.infiniteResources); }, () -> rules.infiniteResources);
check("@rules.onlydepositcore", b -> rules.onlyDepositCore = b, () -> rules.onlyDepositCore); withInfo("@rules.onlydepositcore.info", () -> check("@rules.onlydepositcore", b -> rules.onlyDepositCore = b, () -> rules.onlyDepositCore));
check("@rules.derelictrepair", b -> rules.derelictRepair = b, () -> rules.derelictRepair); check("@rules.derelictrepair", b -> rules.derelictRepair = b, () -> rules.derelictRepair);
check("@rules.reactorexplosions", b -> rules.reactorExplosions = b, () -> rules.reactorExplosions); check("@rules.reactorexplosions", b -> rules.reactorExplosions = b, () -> rules.reactorExplosions);
check("@rules.schematic", b -> rules.schematicsAllowed = b, () -> rules.schematicsAllowed); check("@rules.schematic", b -> rules.schematicsAllowed = b, () -> rules.schematicsAllowed);
@@ -220,19 +247,25 @@ public class CustomRulesDialog extends BaseDialog{
number("@rules.blockhealthmultiplier", f -> rules.blockHealthMultiplier = f, () -> rules.blockHealthMultiplier); number("@rules.blockhealthmultiplier", f -> rules.blockHealthMultiplier = f, () -> rules.blockHealthMultiplier);
number("@rules.blockdamagemultiplier", f -> rules.blockDamageMultiplier = f, () -> rules.blockDamageMultiplier); number("@rules.blockdamagemultiplier", f -> rules.blockDamageMultiplier = f, () -> rules.blockDamageMultiplier);
main.button("@configure", if(Core.bundle.get("configure").toLowerCase().contains(ruleSearch)){
() -> loadoutDialog.show(999999, rules.loadout, current.button("@configure",
i -> true, () -> loadoutDialog.show(999999, rules.loadout,
() -> rules.loadout.clear().add(new ItemStack(Items.copper, 100)), i -> true,
() -> {}, () -> {} () -> rules.loadout.clear().add(new ItemStack(Items.copper, 100)),
)).left().width(300f).row(); () -> {}, () -> {}
)).left().width(300f).row();
}
main.button("@bannedblocks", () -> showBanned("@bannedblocks", ContentType.block, rules.bannedBlocks, Block::canBeBuilt)).left().width(300f).row(); if(Core.bundle.get("bannedblocks").toLowerCase().contains(ruleSearch)){
current.button("@bannedblocks", () -> showBanned("@bannedblocks", ContentType.block, rules.bannedBlocks, Block::canBeBuilt)).left().width(300f).row();
}
check("@rules.hidebannedblocks", b -> rules.hideBannedBlocks = b, () -> rules.hideBannedBlocks); check("@rules.hidebannedblocks", b -> rules.hideBannedBlocks = b, () -> rules.hideBannedBlocks);
check("@bannedblocks.whitelist", b -> rules.blockWhitelist = b, () -> rules.blockWhitelist); check("@bannedblocks.whitelist", b -> rules.blockWhitelist = b, () -> rules.blockWhitelist);
title("@rules.title.unit");
category("unit");
check("@rules.unitcapvariable", b -> rules.unitCapVariable = b, () -> rules.unitCapVariable); check("@rules.unitcapvariable", b -> rules.unitCapVariable = b, () -> rules.unitCapVariable);
check("@rules.unitpayloadsexplode", b -> rules.unitPayloadsExplode = b, () -> rules.unitPayloadsExplode);
numberi("@rules.unitcap", f -> rules.unitCap = f, () -> rules.unitCap, -999, 999); numberi("@rules.unitcap", f -> rules.unitCap = f, () -> rules.unitCap, -999, 999);
number("@rules.unitdamagemultiplier", f -> rules.unitDamageMultiplier = f, () -> rules.unitDamageMultiplier); number("@rules.unitdamagemultiplier", f -> rules.unitDamageMultiplier = f, () -> rules.unitDamageMultiplier);
number("@rules.unitcrashdamagemultiplier", f -> rules.unitCrashDamageMultiplier = f, () -> rules.unitCrashDamageMultiplier); number("@rules.unitcrashdamagemultiplier", f -> rules.unitCrashDamageMultiplier = f, () -> rules.unitCrashDamageMultiplier);
@@ -240,17 +273,21 @@ public class CustomRulesDialog extends BaseDialog{
number("@rules.unitcostmultiplier", f -> rules.unitCostMultiplier = f, () -> rules.unitCostMultiplier); number("@rules.unitcostmultiplier", f -> rules.unitCostMultiplier = f, () -> rules.unitCostMultiplier);
number("@rules.unithealthmultiplier", f -> rules.unitHealthMultiplier = f, () -> rules.unitHealthMultiplier); number("@rules.unithealthmultiplier", f -> rules.unitHealthMultiplier = f, () -> rules.unitHealthMultiplier);
main.button("@bannedunits", () -> showBanned("@bannedunits", ContentType.unit, rules.bannedUnits, u -> !u.isHidden())).left().width(300f).row(); if(Core.bundle.get("bannedunits").toLowerCase().contains(ruleSearch)){
current.button("@bannedunits", () -> showBanned("@bannedunits", ContentType.unit, rules.bannedUnits, u -> !u.isHidden())).left().width(300f).row();
}
check("@bannedunits.whitelist", b -> rules.unitWhitelist = b, () -> rules.unitWhitelist); check("@bannedunits.whitelist", b -> rules.unitWhitelist = b, () -> rules.unitWhitelist);
title("@rules.title.enemy");
category("enemy");
check("@rules.attack", b -> rules.attackMode = b, () -> rules.attackMode); check("@rules.attack", b -> rules.attackMode = b, () -> rules.attackMode);
check("@rules.corecapture", b -> rules.coreCapture = b, () -> rules.coreCapture); check("@rules.corecapture", b -> rules.coreCapture = b, () -> rules.coreCapture);
check("@rules.placerangecheck", b -> rules.placeRangeCheck = b, () -> rules.placeRangeCheck); withInfo("@rules.placerangecheck.info",() -> check("@rules.placerangecheck", b -> rules.placeRangeCheck = b, () -> rules.placeRangeCheck));
check("@rules.polygoncoreprotection", b -> rules.polygonCoreProtection = b, () -> rules.polygonCoreProtection); check("@rules.polygoncoreprotection", b -> rules.polygonCoreProtection = b, () -> rules.polygonCoreProtection);
number("@rules.enemycorebuildradius", f -> rules.enemyCoreBuildRadius = f * tilesize, () -> Math.min(rules.enemyCoreBuildRadius / tilesize, 200), () -> !rules.polygonCoreProtection); number("@rules.enemycorebuildradius", f -> rules.enemyCoreBuildRadius = f * tilesize, () -> Math.min(rules.enemyCoreBuildRadius / tilesize, 200), () -> !rules.polygonCoreProtection);
title("@rules.title.environment");
category("environment");
check("@rules.explosions", b -> rules.damageExplosions = b, () -> rules.damageExplosions); check("@rules.explosions", b -> rules.damageExplosions = b, () -> rules.damageExplosions);
check("@rules.fire", b -> rules.fire = b, () -> rules.fire); check("@rules.fire", b -> rules.fire = b, () -> rules.fire);
check("@rules.fog", b -> rules.fog = b, () -> rules.fog); check("@rules.fog", b -> rules.fog = b, () -> rules.fog);
@@ -266,63 +303,70 @@ public class CustomRulesDialog extends BaseDialog{
number("@rules.solarmultiplier", f -> rules.solarMultiplier = f, () -> rules.solarMultiplier); number("@rules.solarmultiplier", f -> rules.solarMultiplier = f, () -> rules.solarMultiplier);
main.button(b -> { if(Core.bundle.get("rules.ambientlight").toLowerCase().contains(ruleSearch)){
b.left(); current.button(b -> {
b.table(Tex.pane, in -> { b.left();
in.stack(new Image(Tex.alphaBg), new Image(Tex.whiteui){{ b.table(Tex.pane, in -> {
update(() -> setColor(rules.ambientLight)); in.stack(new Image(Tex.alphaBg), new Image(Tex.whiteui){{
}}).grow(); update(() -> setColor(rules.ambientLight));
}).margin(4).size(50f).padRight(10); }}).grow();
b.add("@rules.ambientlight"); }).margin(4).size(50f).padRight(10);
}, () -> ui.picker.show(rules.ambientLight, rules.ambientLight::set)).left().width(250f).row(); b.add("@rules.ambientlight");
}, () -> ui.picker.show(rules.ambientLight, rules.ambientLight::set)).left().width(250f).row();
}
main.button("@rules.weather", this::weatherDialog).width(250f).left().row(); if(Core.bundle.get("rules.weather").toLowerCase().contains(ruleSearch)){
current.button("@rules.weather", this::weatherDialog).width(250f).left().row();
}
title("@rules.title.planet");
main.table(Tex.button, t -> { category("planet");
t.margin(10f); if(Core.bundle.get("rules.title.planet").toLowerCase().contains(ruleSearch)){
var group = new ButtonGroup<>(); current.table(Tex.button, t -> {
var style = Styles.flatTogglet; t.margin(10f);
var group = new ButtonGroup<>();
var style = Styles.flatTogglet;
t.defaults().size(140f, 50f); t.defaults().size(140f, 50f);
for(Planet planet : content.planets().select(p -> p.accessible && p.visible && p.isLandable())){ for(Planet planet : content.planets().select(p -> p.accessible && p.visible && p.isLandable())){
t.button(planet.localizedName, style, () -> { t.button(planet.localizedName, style, () -> {
planet.applyRules(rules); planet.applyRules(rules);
}).group(group).checked(b -> rules.planet == planet); }).group(group).checked(b -> rules.planet == planet);
if(t.getChildren().size % 3 == 0){ if(t.getChildren().size % 3 == 0){
t.row(); t.row();
}
} }
}
t.button("@rules.anyenv", style, () -> { t.button("@rules.anyenv", style, () -> {
rules.env = Vars.defaultEnv; rules.env = Vars.defaultEnv;
rules.hiddenBuildItems.clear(); rules.hiddenBuildItems.clear();
rules.planet = Planets.sun; rules.planet = Planets.sun;
}).group(group).checked(b -> rules.planet == Planets.sun); }).group(group).checked(b -> rules.planet == Planets.sun);
}).left().fill(false).expand(false, false).row(); }).left().fill(false).expand(false, false).row();
}
title("@rules.title.teams");
category("teams");
team("@rules.playerteam", t -> rules.defaultTeam = t, () -> rules.defaultTeam); team("@rules.playerteam", t -> rules.defaultTeam = t, () -> rules.defaultTeam);
team("@rules.enemyteam", t -> rules.waveTeam = t, () -> rules.waveTeam); team("@rules.enemyteam", t -> rules.waveTeam = t, () -> rules.waveTeam);
for(Team team : Team.baseTeams){ for(Team team : Team.baseTeams){
boolean[] shown = {false}; boolean[] shown = {false};
Table wasMain = main; Table wasCurrent = current;
main.button(team.coloredName(), Icon.downOpen, Styles.togglet, () -> { Table teamRules = new Table(); // just button and collapser in one table
teamRules.button(team.coloredName(), Icon.downOpen, Styles.togglet, () -> {
shown[0] = !shown[0]; shown[0] = !shown[0];
}).marginLeft(14f).width(260f).height(55f).update(t -> { }).marginLeft(14f).width(260f).height(55f).update(t -> {
((Image)t.getChildren().get(1)).setDrawable(shown[0] ? Icon.upOpen : Icon.downOpen); ((Image)t.getChildren().get(1)).setDrawable(shown[0] ? Icon.upOpen : Icon.downOpen);
t.setChecked(shown[0]); t.setChecked(shown[0]);
}).row(); }).left().padBottom(2f).row();
main.collapser(t -> { teamRules.collapser(c -> {
t.left().defaults().fillX().left().pad(5); c.left().defaults().fillX().left().pad(5);
main = t; current = c;
TeamRule teams = rules.teams.get(team); TeamRule teams = rules.teams.get(team);
number("@rules.blockhealthmultiplier", f -> teams.blockHealthMultiplier = f, () -> teams.blockHealthMultiplier); number("@rules.blockhealthmultiplier", f -> teams.blockHealthMultiplier = f, () -> teams.blockHealthMultiplier);
@@ -346,13 +390,42 @@ public class CustomRulesDialog extends BaseDialog{
number("@rules.unitcostmultiplier", f -> teams.unitCostMultiplier = f, () -> teams.unitCostMultiplier); number("@rules.unitcostmultiplier", f -> teams.unitCostMultiplier = f, () -> teams.unitCostMultiplier);
number("@rules.unithealthmultiplier", f -> teams.unitHealthMultiplier = f, () -> teams.unitHealthMultiplier); number("@rules.unithealthmultiplier", f -> teams.unitHealthMultiplier = f, () -> teams.unitHealthMultiplier);
main = wasMain; if(!current.hasChildren()){
}, () -> shown[0]).growX().row(); teamRules.clear();
}else{
wasCurrent.add(teamRules).row();
}
current = wasCurrent;
}, () -> shown[0]).left().growX().row();
}
additionalSetup.each(Runnable::run);
for(var i = 0; i < categories.size; i++){
addToMain(categories.get(i), Core.bundle.get("rules.title." + categoryNames.get(i)));
} }
} }
void team(String text, Cons<Team> cons, Prov<Team> prov){ public void category(String name){
main.table(t -> { current = new Table();
current.left().defaults().fillX().left().pad(5);
currentName = name;
categories.add(current);
categoryNames.add(currentName);
}
void addToMain(Table category, String title){
if(category.hasChildren()){
main.add(title).color(Pal.accent).padTop(20).padRight(100f).padBottom(-3).fillX().left().pad(5).row();
main.image().color(Pal.accent).height(3f).padRight(100f).padBottom(20).fillX().left().pad(5).row();
main.add(category).row();
}
}
public void team(String text, Cons<Team> cons, Prov<Team> prov){
if(!Core.bundle.get(text.substring(1)).toLowerCase().contains(ruleSearch)) return;
current.table(t -> {
t.left(); t.left();
t.add(text).left().padRight(5); t.add(text).left().padRight(5);
@@ -364,28 +437,29 @@ public class CustomRulesDialog extends BaseDialog{
}).padTop(0).row(); }).padTop(0).row();
} }
void number(String text, Floatc cons, Floatp prov){ public void number(String text, Floatc cons, Floatp prov){
number(text, false, cons, prov, () -> true, 0, Float.MAX_VALUE); number(text, false, cons, prov, () -> true, 0, Float.MAX_VALUE);
} }
void number(String text, Floatc cons, Floatp prov, float min, float max){ public void number(String text, Floatc cons, Floatp prov, float min, float max){
number(text, false, cons, prov, () -> true, min, max); number(text, false, cons, prov, () -> true, min, max);
} }
void number(String text, boolean integer, Floatc cons, Floatp prov, Boolp condition){ public void number(String text, boolean integer, Floatc cons, Floatp prov, Boolp condition){
number(text, integer, cons, prov, condition, 0, Float.MAX_VALUE); number(text, integer, cons, prov, condition, 0, Float.MAX_VALUE);
} }
void number(String text, Floatc cons, Floatp prov, Boolp condition){ public void number(String text, Floatc cons, Floatp prov, Boolp condition){
number(text, false, cons, prov, condition, 0, Float.MAX_VALUE); number(text, false, cons, prov, condition, 0, Float.MAX_VALUE);
} }
void numberi(String text, Intc cons, Intp prov, int min, int max){ public void numberi(String text, Intc cons, Intp prov, int min, int max){
numberi(text, cons, prov, () -> true, min, max); numberi(text, cons, prov, () -> true, min, max);
} }
void numberi(String text, Intc cons, Intp prov, Boolp condition, int min, int max){ public void numberi(String text, Intc cons, Intp prov, Boolp condition, int min, int max){
main.table(t -> { if(!Core.bundle.get(text.substring(1)).toLowerCase().contains(ruleSearch)) return;
current.table(t -> {
t.left(); t.left();
t.add(text).left().padRight(5) t.add(text).left().padRight(5)
.update(a -> a.setColor(condition.get() ? Color.white : Color.gray)); .update(a -> a.setColor(condition.get() ? Color.white : Color.gray));
@@ -396,8 +470,9 @@ public class CustomRulesDialog extends BaseDialog{
}).padTop(0).row(); }).padTop(0).row();
} }
void number(String text, boolean integer, Floatc cons, Floatp prov, Boolp condition, float min, float max){ public void number(String text, boolean integer, Floatc cons, Floatp prov, Boolp condition, float min, float max){
main.table(t -> { if(!Core.bundle.get(text.substring(1)).toLowerCase().contains(ruleSearch)) return;
current.table(t -> {
t.left(); t.left();
t.add(text).left().padRight(5) t.add(text).left().padRight(5)
.update(a -> a.setColor(condition.get() ? Color.white : Color.gray)); .update(a -> a.setColor(condition.get() ? Color.white : Color.gray));
@@ -406,23 +481,34 @@ public class CustomRulesDialog extends BaseDialog{
.update(a -> a.setDisabled(!condition.get())) .update(a -> a.setDisabled(!condition.get()))
.valid(f -> Strings.canParsePositiveFloat(f) && Strings.parseFloat(f) >= min && Strings.parseFloat(f) <= max).width(120f).left(); .valid(f -> Strings.canParsePositiveFloat(f) && Strings.parseFloat(f) >= min && Strings.parseFloat(f) <= max).width(120f).left();
}).padTop(0); }).padTop(0);
main.row(); current.row();
} }
void check(String text, Boolc cons, Boolp prov){ public void check(String text, Boolc cons, Boolp prov){
check(text, cons, prov, () -> true); check(text, cons, prov, () -> true);
} }
void check(String text, Boolc cons, Boolp prov, Boolp condition){ public void check(String text, Boolc cons, Boolp prov, Boolp condition){
main.check(text, cons).checked(prov.get()).update(a -> a.setDisabled(!condition.get())).padRight(100f).get().left(); if(!Core.bundle.get(text.substring(1)).toLowerCase().contains(ruleSearch)) return;
main.row(); current.check(text, cons).checked(prov.get()).update(a -> a.setDisabled(!condition.get())).padRight(100f).get().left();
current.row();
} }
void title(String text){ public void withInfo(String info, Runnable add){
main.add(text).color(Pal.accent).padTop(20).padRight(100f).padBottom(-3); Table wasCurrent = current;
main.row(); current = new Table();
main.image().color(Pal.accent).height(3f).padRight(100f).padBottom(20); current.left().defaults().fillX().left();
main.row();
current.button(Icon.infoSmall, () -> ui.showInfo(info)).size(32f).padRight(10f);
add.run();
// rule does not match search pattern (runnable returned without adding anything)
if(current.getCells().size < 2){
current.clear();
}else{
wasCurrent.add(current).row();
}
current = wasCurrent;
} }
Cell<TextField> field(Table table, float value, Floatc setter){ Cell<TextField> field(Table table, float value, Floatc setter){

View File

@@ -35,6 +35,7 @@ import mindustry.maps.*;
import mindustry.type.*; import mindustry.type.*;
import mindustry.ui.*; import mindustry.ui.*;
import mindustry.world.blocks.storage.*; import mindustry.world.blocks.storage.*;
import mindustry.world.blocks.storage.CoreBlock.*;
import static arc.Core.*; import static arc.Core.*;
import static mindustry.Vars.*; import static mindustry.Vars.*;
@@ -1244,7 +1245,8 @@ public class PlanetDialog extends BaseDialog implements PlanetInterfaceRenderer{
Events.fire(new SectorLaunchLoadoutEvent(sector, from, loadout)); Events.fire(new SectorLaunchLoadoutEvent(sector, from, loadout));
if(settings.getBool("skipcoreanimation")){ CoreBuild core = player.team().core();
if(core == null || settings.getBool("skipcoreanimation")){
//just... go there //just... go there
control.playSector(from, sector); control.playSector(from, sector);
//hide only after load screen is shown //hide only after load screen is shown
@@ -1256,9 +1258,9 @@ public class PlanetDialog extends BaseDialog implements PlanetInterfaceRenderer{
//allow planet dialog to finish hiding before actually launching //allow planet dialog to finish hiding before actually launching
Time.runTask(5f, () -> { Time.runTask(5f, () -> {
Runnable doLaunch = () -> { Runnable doLaunch = () -> {
renderer.showLaunch(schemCore); renderer.showLaunch(core, schemCore);
//run with less delay, as the loading animation is delayed by several frames //run with less delay, as the loading animation is delayed by several frames
Time.runTask(coreLandDuration - 8f, () -> control.playSector(from, sector)); Time.runTask(core.landDuration() - 8f, () -> control.playSector(from, sector));
}; };
//load launchFrom sector right before launching so animation is correct //load launchFrom sector right before launching so animation is correct
@@ -1276,7 +1278,6 @@ public class PlanetDialog extends BaseDialog implements PlanetInterfaceRenderer{
}else if(mode == select){ }else if(mode == select){
listener.get(sector); listener.get(sector);
}else if(mode == planetLaunch){ //TODO make sure it doesn't have a base already. }else if(mode == planetLaunch){ //TODO make sure it doesn't have a base already.
//TODO animation //TODO animation
//schematic selection and cost handled by listener //schematic selection and cost handled by listener
listener.get(sector); listener.get(sector);

View File

@@ -11,6 +11,7 @@ import arc.scene.ui.layout.*;
import arc.struct.*; import arc.struct.*;
import arc.util.*; import arc.util.*;
import mindustry.*; import mindustry.*;
import mindustry.ai.types.*;
import mindustry.content.*; import mindustry.content.*;
import mindustry.game.EventType.*; import mindustry.game.EventType.*;
import mindustry.game.*; import mindustry.game.*;
@@ -169,7 +170,8 @@ public class HintsFragment{
depositItems(() -> player.unit().hasItem(), () -> !player.unit().hasItem()), depositItems(() -> player.unit().hasItem(), () -> !player.unit().hasItem()),
desktopPause(visibleDesktop, () -> isTutorial.get() && !Vars.net.active() && state.wave >= 2, () -> Core.input.keyTap(Binding.pause)), desktopPause(visibleDesktop, () -> isTutorial.get() && !Vars.net.active() && state.wave >= 2, () -> Core.input.keyTap(Binding.pause)),
unitControl(() -> isSerpulo() && state.rules.defaultTeam.data().units.size > 2 && !net.active() && !player.dead(), () -> !player.dead() && !player.unit().spawnedByCore), unitControl(() -> isSerpulo() && state.rules.defaultTeam.data().units.size > 2 && !net.active() && !player.dead(), () -> !player.dead() && !player.unit().spawnedByCore),
unitSelectControl(() -> isSerpulo() && state.rules.defaultTeam.data().units.size > 3 && !net.active() && !player.dead(), () -> control.input.commandMode && control.input.selectedUnits.size > 0), unitSelectControl(() -> isSerpulo() && state.rules.defaultTeam.data().units.size > 3 && !net.active() && !player.dead(),
() -> control.input.commandMode && control.input.selectedUnits.size > 0 && control.input.selectedUnits.first().controller() instanceof CommandAI ai && ai.targetPos != null),
respawn(visibleMobile, () -> !player.dead() && !player.unit().spawnedByCore, () -> !player.dead() && player.unit().spawnedByCore), respawn(visibleMobile, () -> !player.dead() && !player.unit().spawnedByCore, () -> !player.dead() && player.unit().spawnedByCore),
launch(() -> (isTutorial.get() || Vars.state.rules.sector == SectorPresets.onset.sector) && state.rules.sector.isCaptured(), () -> ui.planet.isShown()), launch(() -> (isTutorial.get() || Vars.state.rules.sector == SectorPresets.onset.sector) && state.rules.sector.isCaptured(), () -> ui.planet.isShown()),
schematicSelect(visibleDesktop, () -> ui.hints.placedBlocks.contains(Blocks.router) || ui.hints.placedBlocks.contains(Blocks.ductRouter), () -> Core.input.keyRelease(Binding.schematic_select) || Core.input.keyTap(Binding.pick)), schematicSelect(visibleDesktop, () -> ui.hints.placedBlocks.contains(Blocks.router) || ui.hints.placedBlocks.contains(Blocks.ductRouter), () -> Core.input.keyRelease(Binding.schematic_select) || Core.input.keyTap(Binding.pick)),

View File

@@ -27,6 +27,8 @@ import mindustry.input.*;
import mindustry.net.Packets.*; import mindustry.net.Packets.*;
import mindustry.type.*; import mindustry.type.*;
import mindustry.ui.*; import mindustry.ui.*;
import mindustry.world.blocks.storage.*;
import mindustry.world.blocks.storage.CoreBlock.*;
import static mindustry.Vars.*; import static mindustry.Vars.*;
import static mindustry.gen.Tex.*; import static mindustry.gen.Tex.*;
@@ -584,6 +586,8 @@ public class HudFragment{
} }
} }
/** @deprecated see {@link CoreBuild#beginLaunch(CoreBlock)} */
@Deprecated
public void showLaunch(){ public void showLaunch(){
float margin = 30f; float margin = 30f;
@@ -602,6 +606,8 @@ public class HudFragment{
Core.scene.add(image); Core.scene.add(image);
} }
/** @deprecated see {@link CoreBuild#beginLaunch(CoreBlock)} */
@Deprecated
public void showLand(){ public void showLand(){
Image image = new Image(); Image image = new Image();
image.color.a = 1f; image.color.a = 1f;

View File

@@ -993,6 +993,11 @@ public class Block extends UnlockableContent implements Senseable{
return consume(new ConsumePowerDynamic((Floatf<Building>)usage)); return consume(new ConsumePowerDynamic((Floatf<Building>)usage));
} }
/** Creates a consumer that consumes a dynamic amount of power. */
public <T extends Building> ConsumePower consumePowerDynamic(float displayed, Floatf<T> usage){
return consume(new ConsumePowerDynamic(displayed, (Floatf<Building>)usage));
}
/** /**
* Creates a consumer which stores power. * Creates a consumer which stores power.
* @param powerCapacity The maximum capacity in power units. * @param powerCapacity The maximum capacity in power units.

View File

@@ -164,8 +164,9 @@ public class ConstructBlock extends Block{
public boolean wasConstructing, activeDeconstruct; public boolean wasConstructing, activeDeconstruct;
public float constructColor; public float constructColor;
private float[] accumulator; private @Nullable float[] accumulator;
private float[] totalAccumulator; private @Nullable float[] totalAccumulator;
private @Nullable int[] itemsLeft;
@Override @Override
public String getDisplayName(){ public String getDisplayName(){
@@ -270,7 +271,7 @@ public class ConstructBlock extends Block{
for(int i = 0; i < current.requirements.length; i++){ for(int i = 0; i < current.requirements.length; i++){
int reqamount = Math.round(state.rules.buildCostMultiplier * current.requirements[i].amount); int reqamount = Math.round(state.rules.buildCostMultiplier * current.requirements[i].amount);
accumulator[i] += Math.min(reqamount * maxProgress, reqamount - totalAccumulator[i] + 0.00001f); //add min amount progressed to the accumulator accumulator[i] += Math.min(reqamount * maxProgress, reqamount - totalAccumulator[i]); //add min amount progressed to the accumulator
totalAccumulator[i] = Math.min(totalAccumulator[i] + reqamount * maxProgress, reqamount); totalAccumulator[i] = Math.min(totalAccumulator[i] + reqamount * maxProgress, reqamount);
} }
@@ -279,9 +280,28 @@ public class ConstructBlock extends Block{
progress = Mathf.clamp(progress + maxProgress); progress = Mathf.clamp(progress + maxProgress);
if(progress >= 1f || state.rules.infiniteResources){ if(progress >= 1f || state.rules.infiniteResources){
if(lastBuilder == null) lastBuilder = builder; boolean canFinish = true;
if(!net.client()){
constructed(tile, current, lastBuilder, (byte)rotation, builder.team, config); //look at leftover resources to consume, get them from the core if necessary, delay building if not
if(!state.rules.infiniteResources){
for(int i = 0; i < itemsLeft.length; i++){
if(itemsLeft[i] > 0){
if(core != null && core.items.has(current.requirements[i].item, itemsLeft[i])){
core.items.remove(current.requirements[i].item, itemsLeft[i]);
itemsLeft[i] = 0;
}else{
canFinish = false;
break;
}
}
}
}
if(canFinish){
if(lastBuilder == null) lastBuilder = builder;
if(!net.client()){
constructed(tile, current, lastBuilder, (byte)rotation, builder.team, config);
}
} }
} }
} }
@@ -321,6 +341,7 @@ public class ConstructBlock extends Block{
int accepting = Math.min(accumulated, core.storageCapacity - core.items.get(requirements[i].item)); int accepting = Math.min(accumulated, core.storageCapacity - core.items.get(requirements[i].item));
//transfer items directly, as this is not production. //transfer items directly, as this is not production.
core.items.add(requirements[i].item, accepting); core.items.add(requirements[i].item, accepting);
itemsLeft[i] += accepting;
accumulator[i] -= accepting; accumulator[i] -= accepting;
}else{ }else{
accumulator[i] -= accumulated; accumulator[i] -= accumulated;
@@ -331,6 +352,17 @@ public class ConstructBlock extends Block{
progress = Mathf.clamp(progress - amount); progress = Mathf.clamp(progress - amount);
if(progress <= current.deconstructThreshold || state.rules.infiniteResources){ if(progress <= current.deconstructThreshold || state.rules.infiniteResources){
//add any leftover items that weren't obtained due to rounding errors
if(core != null){
for(int i = 0; i < itemsLeft.length; i++){
int target = Mathf.round(requirements[i].amount * state.rules.buildCostMultiplier * state.rules.deconstructRefundMultiplier);
int remaining = target - itemsLeft[i];
core.items.add(current.requirements[i].item, Mathf.clamp(remaining, 0, core.storageCapacity - core.items.get(current.requirements[i].item)));
itemsLeft[i] = target;
}
}
if(lastBuilder == null) lastBuilder = builder; if(lastBuilder == null) lastBuilder = builder;
Call.deconstructFinish(tile, this.current, lastBuilder); Call.deconstructFinish(tile, this.current, lastBuilder);
} }
@@ -341,6 +373,11 @@ public class ConstructBlock extends Block{
boolean infinite = team.rules().infiniteResources || state.rules.infiniteResources; boolean infinite = team.rules().infiniteResources || state.rules.infiniteResources;
for(int i = 0; i < current.requirements.length; i++){ for(int i = 0; i < current.requirements.length; i++){
//there is no need to remove items that have already been fully taken out
if(itemsLeft[i] == 0){
continue;
}
int sclamount = Math.round(state.rules.buildCostMultiplier * current.requirements[i].amount); int sclamount = Math.round(state.rules.buildCostMultiplier * current.requirements[i].amount);
int required = (int)(accumulator[i]); //calculate items that are required now int required = (int)(accumulator[i]); //calculate items that are required now
@@ -360,6 +397,7 @@ public class ConstructBlock extends Block{
//remove stuff that is actually used //remove stuff that is actually used
if(remove && !infinite){ if(remove && !infinite){
inventory.remove(current.requirements[i].item, maxUse); inventory.remove(current.requirements[i].item, maxUse);
itemsLeft[i] -= maxUse;
} }
} }
//else, no items are required yet, so just keep going //else, no items are required yet, so just keep going
@@ -368,6 +406,7 @@ public class ConstructBlock extends Block{
return maxProgress; return maxProgress;
} }
@Override
public float progress(){ public float progress(){
return progress; return progress;
} }
@@ -380,8 +419,14 @@ public class ConstructBlock extends Block{
this.current = block; this.current = block;
this.previous = previous; this.previous = previous;
this.buildCost = block.buildCost * state.rules.buildCostMultiplier; this.buildCost = block.buildCost * state.rules.buildCostMultiplier;
this.itemsLeft = new int[block.requirements.length];
this.accumulator = new float[block.requirements.length]; this.accumulator = new float[block.requirements.length];
this.totalAccumulator = new float[block.requirements.length]; this.totalAccumulator = new float[block.requirements.length];
ItemStack[] requirements = current.requirements;
for(int i = 0; i < requirements.length; i++){
this.itemsLeft[i] = Mathf.round(requirements[i].amount * state.rules.buildCostMultiplier);
}
pathfinder.updateTile(tile); pathfinder.updateTile(tile);
} }
@@ -394,11 +439,17 @@ public class ConstructBlock extends Block{
this.progress = 1f; this.progress = 1f;
this.current = previous; this.current = previous;
this.buildCost = previous.buildCost * state.rules.buildCostMultiplier; this.buildCost = previous.buildCost * state.rules.buildCostMultiplier;
this.itemsLeft = new int[previous.requirements.length];
this.accumulator = new float[previous.requirements.length]; this.accumulator = new float[previous.requirements.length];
this.totalAccumulator = new float[previous.requirements.length]; this.totalAccumulator = new float[previous.requirements.length];
pathfinder.updateTile(tile); pathfinder.updateTile(tile);
} }
@Override
public byte version(){
return 1;
}
@Override @Override
public void write(Writes write){ public void write(Writes write){
super.write(write); super.write(write);
@@ -413,6 +464,7 @@ public class ConstructBlock extends Block{
for(int i = 0; i < accumulator.length; i++){ for(int i = 0; i < accumulator.length; i++){
write.f(accumulator[i]); write.f(accumulator[i]);
write.f(totalAccumulator[i]); write.f(totalAccumulator[i]);
write.i(itemsLeft[i]);
} }
} }
} }
@@ -428,9 +480,13 @@ public class ConstructBlock extends Block{
if(acsize != -1){ if(acsize != -1){
accumulator = new float[acsize]; accumulator = new float[acsize];
totalAccumulator = new float[acsize]; totalAccumulator = new float[acsize];
itemsLeft = new int[acsize];
for(int i = 0; i < acsize; i++){ for(int i = 0; i < acsize; i++){
accumulator[i] = read.f(); accumulator[i] = read.f();
totalAccumulator[i] = read.f(); totalAccumulator[i] = read.f();
if(revision >= 1){
itemsLeft[i] = read.i();
}
} }
} }

View File

@@ -0,0 +1,6 @@
package mindustry.world.blocks;
/** Any block that has 360-degree rotation */
public interface RotBlock{
float buildRotation();
}

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