Merge remote-tracking branch 'origin/master'
This commit is contained in:
@@ -78,13 +78,12 @@ schematic.tagexists = Такой тег уже существует.
|
|||||||
|
|
||||||
stats = Статистика
|
stats = Статистика
|
||||||
stat.wave = Волн отражено:[accent] {0}
|
stat.wave = Волн отражено:[accent] {0}
|
||||||
|
stat.unitsCreated = Единиц создано:[accent] {0}
|
||||||
stat.enemiesDestroyed = Врагов уничтожено:[accent] {0}
|
stat.enemiesDestroyed = Врагов уничтожено:[accent] {0}
|
||||||
stat.built = Строений построено:[accent] {0}
|
stat.built = Строений построено:[accent] {0}
|
||||||
stat.destroyed = Строений уничтожено:[accent] {0}
|
stat.destroyed = Строений уничтожено:[accent] {0}
|
||||||
stat.deconstructed = Строений разобрано:[accent] {0}
|
stat.deconstructed = Строений разобрано:[accent] {0}
|
||||||
stat.delivered = Ресурсов запущено:
|
|
||||||
stat.playtime = Время игры:[accent] {0}
|
stat.playtime = Время игры:[accent] {0}
|
||||||
stat.rank = Финальный ранг: [accent]{0}
|
|
||||||
|
|
||||||
globalitems = [accent]Общие предметы
|
globalitems = [accent]Общие предметы
|
||||||
map.delete = Вы действительно хотите удалить карту «[accent]{0}[]»?
|
map.delete = Вы действительно хотите удалить карту «[accent]{0}[]»?
|
||||||
@@ -392,6 +391,8 @@ waves.load = Загрузить из буфера обмена
|
|||||||
waves.invalid = Неверные волны в буфере обмена.
|
waves.invalid = Неверные волны в буфере обмена.
|
||||||
waves.copied = Волны скопированы.
|
waves.copied = Волны скопированы.
|
||||||
waves.none = Враги не были определены.\nОбратите внимание, что пустые волны будут автоматически заменены обычной волной.
|
waves.none = Враги не были определены.\nОбратите внимание, что пустые волны будут автоматически заменены обычной волной.
|
||||||
|
waves.units.hide = Скрыть все
|
||||||
|
waves.units.show = Показать все
|
||||||
|
|
||||||
#these are intentionally in lower case
|
#these are intentionally in lower case
|
||||||
wavemode.counts = количество единиц
|
wavemode.counts = количество единиц
|
||||||
@@ -444,6 +445,7 @@ editor.overwrite = [accent]Внимание!\nЭто перезапишет уж
|
|||||||
editor.overwrite.confirm = [scarlet]Осторожно![] Карта с таким названием уже существует. Вы действительно хотите её перезаписать?\n«[accent]{0}[]»
|
editor.overwrite.confirm = [scarlet]Осторожно![] Карта с таким названием уже существует. Вы действительно хотите её перезаписать?\n«[accent]{0}[]»
|
||||||
editor.exists = Карта с таким именем уже существует.
|
editor.exists = Карта с таким именем уже существует.
|
||||||
editor.selectmap = Выберите карту для загрузки:
|
editor.selectmap = Выберите карту для загрузки:
|
||||||
|
editor.cliffs = Стены на скалы
|
||||||
|
|
||||||
toolmode.replace = Заменить
|
toolmode.replace = Заменить
|
||||||
toolmode.replace.description = Рисует только\nна сплошных блоках.
|
toolmode.replace.description = Рисует только\nна сплошных блоках.
|
||||||
@@ -649,6 +651,7 @@ status.overclock.name = Разгон
|
|||||||
status.shocked.name = Шок
|
status.shocked.name = Шок
|
||||||
status.blasted.name = Разрыв
|
status.blasted.name = Разрыв
|
||||||
status.unmoving.name = Обездвиживание
|
status.unmoving.name = Обездвиживание
|
||||||
|
status.boss.name = Страж
|
||||||
|
|
||||||
settings.language = Язык
|
settings.language = Язык
|
||||||
settings.data = Игровые данные
|
settings.data = Игровые данные
|
||||||
@@ -1137,6 +1140,7 @@ block.core-shard.name = Ядро: «Осколок»
|
|||||||
block.core-foundation.name = Ядро: «Штаб»
|
block.core-foundation.name = Ядро: «Штаб»
|
||||||
block.core-nucleus.name = Ядро: «Атом»
|
block.core-nucleus.name = Ядро: «Атом»
|
||||||
block.deep-water.name = Глубоководье
|
block.deep-water.name = Глубоководье
|
||||||
|
block.deep-tainted-water.name = Загрязнённое глубоководье
|
||||||
block.shallow-water.name = Вода
|
block.shallow-water.name = Вода
|
||||||
block.tainted-water.name = Загрязнённая вода
|
block.tainted-water.name = Загрязнённая вода
|
||||||
block.darksand-tainted-water.name = Тёмный песок с загрязнённой водой
|
block.darksand-tainted-water.name = Тёмный песок с загрязнённой водой
|
||||||
@@ -1374,6 +1378,7 @@ hint.coreUpgrade = Ядра могут быть улучшены путем [acc
|
|||||||
hint.presetLaunch = В серые [accent]секторы с посадочными зонами[], такие как [accent]Ледяной лес[], можно запускаться из любого места. Они не требуют захвата близлежащей территории.\n\n[accent]Нумерованные секторы[], такие как этот, [accent]не обязательны[] для прохождения.
|
hint.presetLaunch = В серые [accent]секторы с посадочными зонами[], такие как [accent]Ледяной лес[], можно запускаться из любого места. Они не требуют захвата близлежащей территории.\n\n[accent]Нумерованные секторы[], такие как этот, [accent]не обязательны[] для прохождения.
|
||||||
hint.coreIncinerate = После того, как ядро будет заполнено предметом до отказа, любые лишние входящие предметы этого типа будут [accent]сожжены[].
|
hint.coreIncinerate = После того, как ядро будет заполнено предметом до отказа, любые лишние входящие предметы этого типа будут [accent]сожжены[].
|
||||||
hint.coopCampaign = Во время игры в [accent]кампанию по сети[], произведённые на текущей карте предметы будут также отправлены [accent]на ваши локальные секторы[].\n\nЛюбое исследование со стороны хоста также будет перенесено.
|
hint.coopCampaign = Во время игры в [accent]кампанию по сети[], произведённые на текущей карте предметы будут также отправлены [accent]на ваши локальные секторы[].\n\nЛюбое исследование со стороны хоста также будет перенесено.
|
||||||
|
hint.presetDifficulty = У этого сектора [scarlet]высокий уровень угрозы[].\nЗапуск на такие сектора [accent]не рекомендуется[] без достаточных технологий и подготовки.
|
||||||
|
|
||||||
item.copper.description = Используется во всех типах построек и боеприпасов.
|
item.copper.description = Используется во всех типах построек и боеприпасов.
|
||||||
item.copper.details = Медь. Аномально широко распространённый металл на Серпуло. Структурно слабый, если не укреплён.
|
item.copper.details = Медь. Аномально широко распространённый металл на Серпуло. Структурно слабый, если не укреплён.
|
||||||
|
|||||||
@@ -362,13 +362,13 @@ public class Fx{
|
|||||||
|
|
||||||
Fill.circle(e.x, e.y, e.fin() * 10);
|
Fill.circle(e.x, e.y, e.fin() * 10);
|
||||||
Drawf.light(e.x, e.y, e.fin() * 20f, Pal.heal, 0.7f);
|
Drawf.light(e.x, e.y, e.fin() * 20f, Pal.heal, 0.7f);
|
||||||
}),
|
}).followParent(true),
|
||||||
|
|
||||||
greenLaserChargeSmall = new Effect(40f, 100f, e -> {
|
greenLaserChargeSmall = new Effect(40f, 100f, e -> {
|
||||||
color(Pal.heal);
|
color(Pal.heal);
|
||||||
stroke(e.fin() * 2f);
|
stroke(e.fin() * 2f);
|
||||||
Lines.circle(e.x, e.y, e.fout() * 50f);
|
Lines.circle(e.x, e.y, e.fout() * 50f);
|
||||||
}),
|
}).followParent(true),
|
||||||
|
|
||||||
greenCloud = new Effect(80f, e -> {
|
greenCloud = new Effect(80f, e -> {
|
||||||
color(Pal.heal);
|
color(Pal.heal);
|
||||||
|
|||||||
@@ -446,6 +446,7 @@ public class UnitTypes implements ContentList{
|
|||||||
x = y = 0f;
|
x = y = 0f;
|
||||||
|
|
||||||
firstShotDelay = Fx.greenLaserChargeSmall.lifetime - 1f;
|
firstShotDelay = Fx.greenLaserChargeSmall.lifetime - 1f;
|
||||||
|
parentizeEffects = true;
|
||||||
|
|
||||||
reload = 155f;
|
reload = 155f;
|
||||||
recoil = 0f;
|
recoil = 0f;
|
||||||
@@ -535,6 +536,7 @@ public class UnitTypes implements ContentList{
|
|||||||
shootStatusDuration = 60f * 2f;
|
shootStatusDuration = 60f * 2f;
|
||||||
shootStatus = StatusEffects.unmoving;
|
shootStatus = StatusEffects.unmoving;
|
||||||
firstShotDelay = Fx.greenLaserCharge.lifetime;
|
firstShotDelay = Fx.greenLaserCharge.lifetime;
|
||||||
|
parentizeEffects = true;
|
||||||
|
|
||||||
bullet = new LaserBulletType(){{
|
bullet = new LaserBulletType(){{
|
||||||
length = 460f;
|
length = 460f;
|
||||||
|
|||||||
@@ -91,6 +91,8 @@ public class Weapon implements Cloneable{
|
|||||||
public boolean ignoreRotation = false;
|
public boolean ignoreRotation = false;
|
||||||
/** min velocity required for this weapon to shoot */
|
/** min velocity required for this weapon to shoot */
|
||||||
public float minShootVelocity = -1f;
|
public float minShootVelocity = -1f;
|
||||||
|
/** should the shoot effects follow the unit (effects need followParent set to true for this to work) */
|
||||||
|
public boolean parentizeEffects;
|
||||||
/** internal value used for alternation - do not change! */
|
/** internal value used for alternation - do not change! */
|
||||||
public int otherSide = -1;
|
public int otherSide = -1;
|
||||||
/** sound used for shooting */
|
/** sound used for shooting */
|
||||||
@@ -333,7 +335,7 @@ public class Weapon implements Cloneable{
|
|||||||
Angles.shotgun(shots, spacing, rotation, f -> mount.bullet = bullet(unit, shootX, shootY, f + Mathf.range(inaccuracy), lifeScl));
|
Angles.shotgun(shots, spacing, rotation, f -> mount.bullet = bullet(unit, shootX, shootY, f + Mathf.range(inaccuracy), lifeScl));
|
||||||
}
|
}
|
||||||
|
|
||||||
boolean parentize = ammo.keepVelocity;
|
boolean parentize = ammo.keepVelocity || parentizeEffects;
|
||||||
|
|
||||||
if(delay){
|
if(delay){
|
||||||
Time.run(firstShotDelay, () -> {
|
Time.run(firstShotDelay, () -> {
|
||||||
|
|||||||
Reference in New Issue
Block a user