From 3f6aeac33d4dc83d661c1e4fd004c71f44f70240 Mon Sep 17 00:00:00 2001 From: Anuken Date: Tue, 2 Apr 2019 17:18:55 -0400 Subject: [PATCH] Cleanup of new graphical options --- core/assets/bundles/bundle_cs.properties | 1 + core/assets/bundles/bundle_de.properties | 1 + core/assets/bundles/bundle_es.properties | 1 + core/assets/bundles/bundle_fr.properties | 1 + core/assets/bundles/bundle_fr_BE.properties | 1 + core/assets/bundles/bundle_in_ID.properties | 1 + core/assets/bundles/bundle_it.properties | 1 + core/assets/bundles/bundle_ja.properties | 1 + core/assets/bundles/bundle_ko.properties | 1 + core/assets/bundles/bundle_nl.properties | 1 + core/assets/bundles/bundle_pl.properties | 1 + core/assets/bundles/bundle_pt_BR.properties | 1 + core/assets/bundles/bundle_ru.properties | 1 + core/assets/bundles/bundle_tk.properties | 1 + core/assets/bundles/bundle_tr.properties | 1 + core/assets/bundles/bundle_uk_UA.properties | 1 + core/assets/bundles/bundle_zh_CN.properties | 1 + core/assets/bundles/bundle_zh_TW.properties | 1 + core/src/io/anuke/mindustry/core/Renderer.java | 5 ++--- core/src/io/anuke/mindustry/graphics/CacheLayer.java | 4 ++-- core/src/io/anuke/mindustry/graphics/Pixelator.java | 6 ++++++ .../io/anuke/mindustry/ui/dialogs/SettingsMenuDialog.java | 2 +- .../mindustry/world/blocks/defense/ForceProjector.java | 3 ++- 23 files changed, 31 insertions(+), 7 deletions(-) diff --git a/core/assets/bundles/bundle_cs.properties b/core/assets/bundles/bundle_cs.properties index ecc81c2686..378ef6dcef 100644 --- a/core/assets/bundles/bundle_cs.properties +++ b/core/assets/bundles/bundle_cs.properties @@ -410,6 +410,7 @@ category.optional = Volitelné vylepšení setting.landscape.name = Lock Landscape setting.shadows.name = Shadows setting.animatedwater.name = Animated Water +setting.animatedshields.name = Animated Shields setting.antialias.name = Antialias[LIGHT_GRAY] (requires restart)[] setting.indicators.name = Indikátor pro spojence setting.autotarget.name = Automaticky zaměřuje diff --git a/core/assets/bundles/bundle_de.properties b/core/assets/bundles/bundle_de.properties index c275b9005d..1687c6bb64 100644 --- a/core/assets/bundles/bundle_de.properties +++ b/core/assets/bundles/bundle_de.properties @@ -410,6 +410,7 @@ category.optional = Optional Enhancements setting.landscape.name = Lock Landscape setting.shadows.name = Shadows setting.animatedwater.name = Animated Water +setting.animatedshields.name = Animated Shields setting.antialias.name = Antialias[LIGHT_GRAY] (requires restart)[] setting.indicators.name = Ally Indicators setting.autotarget.name = Auto-Zielauswahl diff --git a/core/assets/bundles/bundle_es.properties b/core/assets/bundles/bundle_es.properties index 802bda3a38..fd72b0552d 100644 --- a/core/assets/bundles/bundle_es.properties +++ b/core/assets/bundles/bundle_es.properties @@ -410,6 +410,7 @@ category.optional = Mejoras Opcionales setting.landscape.name = Lock Landscape setting.shadows.name = Shadows setting.animatedwater.name = Animated Water +setting.animatedshields.name = Animated Shields setting.antialias.name = Antialias[LIGHT_GRAY] (requires restart)[] setting.indicators.name = Ally Indicators setting.autotarget.name = Auto apuntado diff --git a/core/assets/bundles/bundle_fr.properties b/core/assets/bundles/bundle_fr.properties index 65dbf1cb0f..96df16db0e 100644 --- a/core/assets/bundles/bundle_fr.properties +++ b/core/assets/bundles/bundle_fr.properties @@ -410,6 +410,7 @@ category.optional = Optional Enhancements setting.landscape.name = Lock Landscape setting.shadows.name = Shadows setting.animatedwater.name = Animated Water +setting.animatedshields.name = Animated Shields setting.antialias.name = Antialias[LIGHT_GRAY] (requires restart)[] setting.indicators.name = Ally Indicators setting.autotarget.name = Visée automatique diff --git a/core/assets/bundles/bundle_fr_BE.properties b/core/assets/bundles/bundle_fr_BE.properties index 81c03b851a..508925e2ea 100644 --- a/core/assets/bundles/bundle_fr_BE.properties +++ b/core/assets/bundles/bundle_fr_BE.properties @@ -410,6 +410,7 @@ category.optional = Améliorations facultatives setting.landscape.name = Lock Landscape setting.shadows.name = Shadows setting.animatedwater.name = Animated Water +setting.animatedshields.name = Animated Shields setting.antialias.name = Antialias[LIGHT_GRAY] (requires restart)[] setting.indicators.name = Indicateurs d'alliés setting.autotarget.name = Visée automatique diff --git a/core/assets/bundles/bundle_in_ID.properties b/core/assets/bundles/bundle_in_ID.properties index d7c1be85cb..dac20cb287 100644 --- a/core/assets/bundles/bundle_in_ID.properties +++ b/core/assets/bundles/bundle_in_ID.properties @@ -410,6 +410,7 @@ category.optional = Optional Enhancements setting.landscape.name = Lock Landscape setting.shadows.name = Shadows setting.animatedwater.name = Animated Water +setting.animatedshields.name = Animated Shields setting.antialias.name = Antialias[LIGHT_GRAY] (requires restart)[] setting.indicators.name = Ally Indicators setting.autotarget.name = Auto-Target diff --git a/core/assets/bundles/bundle_it.properties b/core/assets/bundles/bundle_it.properties index b349429198..413743c606 100644 --- a/core/assets/bundles/bundle_it.properties +++ b/core/assets/bundles/bundle_it.properties @@ -410,6 +410,7 @@ category.optional = Optional Enhancements setting.landscape.name = Lock Landscape setting.shadows.name = Shadows setting.animatedwater.name = Animated Water +setting.animatedshields.name = Animated Shields setting.antialias.name = Antialias[LIGHT_GRAY] (requires restart)[] setting.indicators.name = Ally Indicators setting.autotarget.name = Auto-Target diff --git a/core/assets/bundles/bundle_ja.properties b/core/assets/bundles/bundle_ja.properties index af973b2a6c..843968548d 100644 --- a/core/assets/bundles/bundle_ja.properties +++ b/core/assets/bundles/bundle_ja.properties @@ -410,6 +410,7 @@ category.optional = 機能強化オプション setting.landscape.name = Lock Landscape setting.shadows.name = Shadows setting.animatedwater.name = 水のアニメーション +setting.animatedshields.name = Animated Shields setting.antialias.name = Antialias[LIGHT_GRAY] (requires restart)[] setting.indicators.name = 味方の方角表示 setting.autotarget.name = 自動ターゲット diff --git a/core/assets/bundles/bundle_ko.properties b/core/assets/bundles/bundle_ko.properties index 6311480ca8..05ea2dad12 100644 --- a/core/assets/bundles/bundle_ko.properties +++ b/core/assets/bundles/bundle_ko.properties @@ -410,6 +410,7 @@ category.optional = 보조 아이템 setting.landscape.name = 가로화면으로 고정 setting.shadows.name = 그림자 setting.animatedwater.name = 움직이는 물 +setting.animatedshields.name = Animated Shields setting.antialias.name = 안티에일리어싱[LIGHT_GRAY] (재시작 필요)[] setting.indicators.name = 아군/적 인디게이터 표시 setting.autotarget.name = 자동 조준 diff --git a/core/assets/bundles/bundle_nl.properties b/core/assets/bundles/bundle_nl.properties index 912db21b76..e344ef4297 100644 --- a/core/assets/bundles/bundle_nl.properties +++ b/core/assets/bundles/bundle_nl.properties @@ -410,6 +410,7 @@ category.optional = Optional Enhancements setting.landscape.name = Lock Landscape setting.shadows.name = Shadows setting.animatedwater.name = Animated Water +setting.animatedshields.name = Animated Shields setting.antialias.name = Antialias[LIGHT_GRAY] (requires restart)[] setting.indicators.name = Ally Indicators setting.autotarget.name = Auto-Target diff --git a/core/assets/bundles/bundle_pl.properties b/core/assets/bundles/bundle_pl.properties index e47ce3b23d..c015d10d4b 100644 --- a/core/assets/bundles/bundle_pl.properties +++ b/core/assets/bundles/bundle_pl.properties @@ -410,6 +410,7 @@ category.optional = Ulepszenia Nieobowiąskowe setting.landscape.name = Lock Landscape setting.shadows.name = Shadows setting.animatedwater.name = Animated Water +setting.animatedshields.name = Animated Shields setting.antialias.name = Antialias[LIGHT_GRAY] (requires restart)[] setting.indicators.name = Wskaźniki Przyjaciół setting.autotarget.name = Automatyczne Celowanie diff --git a/core/assets/bundles/bundle_pt_BR.properties b/core/assets/bundles/bundle_pt_BR.properties index 9ba538c2fd..dc6b3eac3c 100644 --- a/core/assets/bundles/bundle_pt_BR.properties +++ b/core/assets/bundles/bundle_pt_BR.properties @@ -410,6 +410,7 @@ category.optional = Melhoras opcionais setting.landscape.name = Lock Landscape setting.shadows.name = Shadows setting.animatedwater.name = Animated Water +setting.animatedshields.name = Animated Shields setting.antialias.name = Antialias[LIGHT_GRAY] (requires restart)[] setting.indicators.name = Ally Indicators setting.autotarget.name = Alvo automatico diff --git a/core/assets/bundles/bundle_ru.properties b/core/assets/bundles/bundle_ru.properties index 1208b1d799..51f5362c08 100644 --- a/core/assets/bundles/bundle_ru.properties +++ b/core/assets/bundles/bundle_ru.properties @@ -410,6 +410,7 @@ category.optional = Дополнительные улучшения setting.landscape.name = Lock Landscape setting.shadows.name = Shadows setting.animatedwater.name = Анимированная вода +setting.animatedshields.name = Animated Shields setting.antialias.name = Сглаживание[LIGHT_GRAY] (требует перезапуска)[] setting.indicators.name = Показывать в сторону союзников и врагов setting.autotarget.name = Авто-стрельба diff --git a/core/assets/bundles/bundle_tk.properties b/core/assets/bundles/bundle_tk.properties index fc3b424bb9..267af6cb95 100644 --- a/core/assets/bundles/bundle_tk.properties +++ b/core/assets/bundles/bundle_tk.properties @@ -410,6 +410,7 @@ category.optional = Optional Enhancements setting.landscape.name = Lock Landscape setting.shadows.name = Shadows setting.animatedwater.name = Animated Water +setting.animatedshields.name = Animated Shields setting.antialias.name = Antialias[LIGHT_GRAY] (requires restart)[] setting.indicators.name = Ally Indicators setting.autotarget.name = Auto-Target diff --git a/core/assets/bundles/bundle_tr.properties b/core/assets/bundles/bundle_tr.properties index 69a3176f88..ba5b0333b5 100644 --- a/core/assets/bundles/bundle_tr.properties +++ b/core/assets/bundles/bundle_tr.properties @@ -410,6 +410,7 @@ category.optional = Optional Enhancements setting.landscape.name = Lock Landscape setting.shadows.name = Shadows setting.animatedwater.name = Animated Water +setting.animatedshields.name = Animated Shields setting.antialias.name = Antialias[LIGHT_GRAY] (requires restart)[] setting.indicators.name = Ally Indicators setting.autotarget.name = Auto-Target diff --git a/core/assets/bundles/bundle_uk_UA.properties b/core/assets/bundles/bundle_uk_UA.properties index 9703c7e5b2..ab99a57923 100644 --- a/core/assets/bundles/bundle_uk_UA.properties +++ b/core/assets/bundles/bundle_uk_UA.properties @@ -410,6 +410,7 @@ category.optional = Додаткові поліпшення setting.landscape.name = Заблокований пейхаж setting.shadows.name = Тіні setting.animatedwater.name = Анімована вода +setting.animatedshields.name = Animated Shields setting.antialias.name = Згладжування[LIGHT_GRAY] (потребує перезапуску)[] setting.indicators.name = Показувати у сторону ворогів та союзників setting.autotarget.name = Авто-стрільба diff --git a/core/assets/bundles/bundle_zh_CN.properties b/core/assets/bundles/bundle_zh_CN.properties index 70d0b78175..d3a931b05d 100644 --- a/core/assets/bundles/bundle_zh_CN.properties +++ b/core/assets/bundles/bundle_zh_CN.properties @@ -410,6 +410,7 @@ category.optional = 可选的增强物品 setting.landscape.name = 锁定地形 setting.shadows.name = 影子 setting.animatedwater.name = 流动的水 +setting.animatedshields.name = Animated Shields setting.antialias.name = Antialias[LIGHT_GRAY] (requires restart)[] setting.indicators.name = 队友指示器 setting.autotarget.name = 自动发射 diff --git a/core/assets/bundles/bundle_zh_TW.properties b/core/assets/bundles/bundle_zh_TW.properties index a6f935211b..0025325b3b 100644 --- a/core/assets/bundles/bundle_zh_TW.properties +++ b/core/assets/bundles/bundle_zh_TW.properties @@ -410,6 +410,7 @@ category.optional = 可選的強化 setting.landscape.name = Lock Landscape setting.shadows.name = Shadows setting.animatedwater.name = 動畫水 +setting.animatedshields.name = Animated Shields setting.antialias.name = 消除鋸齒[LIGHT_GRAY](需要重啟)[] setting.indicators.name = 盟友指標 setting.autotarget.name = 自動射擊 diff --git a/core/src/io/anuke/mindustry/core/Renderer.java b/core/src/io/anuke/mindustry/core/Renderer.java index 44a9412b39..e5a73d79c9 100644 --- a/core/src/io/anuke/mindustry/core/Renderer.java +++ b/core/src/io/anuke/mindustry/core/Renderer.java @@ -163,9 +163,8 @@ public class Renderer implements ApplicationListener{ graphics.clear(clearColor); - if(!graphics.isHidden() && (shieldBuffer.getWidth() != graphics.getWidth() || shieldBuffer.getHeight() != graphics.getHeight())){ + if(!graphics.isHidden() && (Core.settings.getBool("animatedwater") || Core.settings.getBool("animatedshields")) && shieldBuffer.getWidth() != graphics.getWidth() || shieldBuffer.getHeight() != graphics.getHeight()){ shieldBuffer.resize(graphics.getWidth(), graphics.getHeight()); - pixelator.rebind(); } Draw.proj(camera.projection()); @@ -212,7 +211,7 @@ public class Renderer implements ApplicationListener{ drawAndInterpolate(playerGroup, p -> true, Player::drawBuildRequests); if(EntityDraw.countInBounds(shieldGroup) > 0){ - if(settings.getBool("animatedshields") && !pixelator.enabled()){ + if(settings.getBool("animatedshields")){ Draw.flush(); shieldBuffer.begin(); graphics.clear(Color.CLEAR); diff --git a/core/src/io/anuke/mindustry/graphics/CacheLayer.java b/core/src/io/anuke/mindustry/graphics/CacheLayer.java index acc8af2d5c..9c96f4d3c5 100644 --- a/core/src/io/anuke/mindustry/graphics/CacheLayer.java +++ b/core/src/io/anuke/mindustry/graphics/CacheLayer.java @@ -43,7 +43,7 @@ public enum CacheLayer{ } void beginShader(){ - if(!Core.settings.getBool("animatedwater") || renderer.pixelator.enabled()) return; + if(!Core.settings.getBool("animatedwater")) return; renderer.blocks.floor.endc(); renderer.shieldBuffer.begin(); @@ -52,7 +52,7 @@ public enum CacheLayer{ } void endShader(Shader shader){ - if(!Core.settings.getBool("animatedwater") || renderer.pixelator.enabled()) return; + if(!Core.settings.getBool("animatedwater")) return; renderer.blocks.floor.endc(); renderer.shieldBuffer.end(); diff --git a/core/src/io/anuke/mindustry/graphics/Pixelator.java b/core/src/io/anuke/mindustry/graphics/Pixelator.java index 1800696011..ff68c23600 100644 --- a/core/src/io/anuke/mindustry/graphics/Pixelator.java +++ b/core/src/io/anuke/mindustry/graphics/Pixelator.java @@ -14,6 +14,10 @@ public class Pixelator implements Disposable{ private FrameBuffer buffer = new FrameBuffer(2, 2); public void drawPixelate(){ + boolean hadShields = Core.settings.getBool("animatedshields"); + boolean hadWater = Core.settings.getBool("animatedwater"); + Core.settings.put("animatedwater", false); + Core.settings.put("animatedshields", false); graphics.clear(0f, 0f, 0f, 1f); float px = Core.camera.position.x, py = Core.camera.position.y; @@ -38,6 +42,8 @@ public class Pixelator implements Disposable{ Draw.blend(); Core.camera.position.set(px, py); + Core.settings.put("animatedwater", hadWater); + Core.settings.put("animatedshields", hadShields); } public void rebind(){ diff --git a/core/src/io/anuke/mindustry/ui/dialogs/SettingsMenuDialog.java b/core/src/io/anuke/mindustry/ui/dialogs/SettingsMenuDialog.java index 3d0c5fd035..a8c35f5eaf 100644 --- a/core/src/io/anuke/mindustry/ui/dialogs/SettingsMenuDialog.java +++ b/core/src/io/anuke/mindustry/ui/dialogs/SettingsMenuDialog.java @@ -213,7 +213,7 @@ public class SettingsMenuDialog extends SettingsDialog{ graphics.checkPref("fps", false); graphics.checkPref("indicators", true); graphics.checkPref("animatedwater", false); - graphics.checkPref("animatedshields", false); + graphics.checkPref("animatedshields", !mobile); graphics.checkPref("lasers", true); graphics.checkPref("pixelate", false); } diff --git a/core/src/io/anuke/mindustry/world/blocks/defense/ForceProjector.java b/core/src/io/anuke/mindustry/world/blocks/defense/ForceProjector.java index 94e566adae..fe6de3f581 100644 --- a/core/src/io/anuke/mindustry/world/blocks/defense/ForceProjector.java +++ b/core/src/io/anuke/mindustry/world/blocks/defense/ForceProjector.java @@ -277,11 +277,12 @@ public class ForceProjector extends Block { float rad = realRadius(entity); Draw.color(Pal.accent); + Lines.stroke(1.5f); Draw.alpha(0.09f + 0.08f * entity.hit); Fill.poly(x, y, 6, rad); Draw.alpha(1f); Lines.poly(x, y, 6, rad); - Draw.color(); + Draw.reset(); } @Override