Merge remote-tracking branch 'origin/master'

This commit is contained in:
Anuken
2021-09-14 21:28:39 -04:00
4 changed files with 14 additions and 5 deletions

View File

@@ -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 = Медь. Аномально широко распространённый металл на Серпуло. Структурно слабый, если не укреплён.

View File

@@ -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);

View File

@@ -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;

View File

@@ -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, () -> {