rename package

This commit is contained in:
sharlottes
2022-05-22 23:58:18 +09:00
parent c94de34331
commit 45e7b84790
46 changed files with 272 additions and 257 deletions

View File

@@ -1,11 +1,11 @@
# Unit Information
[![GitHub all releases](https://img.shields.io/github/downloads/sharlottes/unitinfo/total?color=ffd700&label=UnitInfo&style=flat-square)](https://github.com/Sharlottes/unitinfo/)
# Informatis
[![GitHub all releases](https://img.shields.io/github/downloads/sharlottes/informatis/total?color=ffd700&label=informatis&style=flat-square)](https://github.com/Sharlottes/informatis/)
[![Java CI with Gradle](https://github.com/sharlottes/unitinfo/workflows/Java%20CI%20with%20Gradle/badge.svg)](https://github.com/sharlottes/unitinfo/actions)
[![Java CI with Gradle](https://github.com/sharlottes/informatis/workflows/Java%20CI%20with%20Gradle/badge.svg)](https://github.com/sharlottes/informatis/actions)
[![Discord](https://img.shields.io/discord/704355237246402721.svg?logo=discord&logoColor=white&logoWidth=20&labelColor=7289DA&label=_de_Discord)](https://discord.gg/RCCVQFW)
[![Discord](https://img.shields.io/discord/715883181215055874.svg?logo=discord&logoColor=white&logoWidth=20&labelColor=7289DA&label=my_Discord)](https://discord.gg/cGVae6gwdW)
[![GitHub all releases](https://img.shields.io/github/downloads/anuken/mindustry/total?label=Made%20on%20Mindustry&style=flat-square)](https://github.com/Anuken/Mindustry/)
[![GitHub Repo stars](https://img.shields.io/github/stars/sharlottes/unitinfo?label=Please%20star%20me%21&style=social)](https://github.com/sharlottes/unitinfo/stargazers)
[![GitHub Repo stars](https://img.shields.io/github/stars/sharlottes/informatis?label=Please%20star%20me%21&style=social)](https://github.com/sharlottes/informatis/stargazers)
This mod displays some extra information about units, waves, cores, and tiles.

View File

@@ -72,7 +72,7 @@ setting.elementdebug.description = Show all Element outline
setting.hiddenElem.name = Display hidden element
setting.hiddenElem.description = display hidden element outline too.
setting.shar-title = unitinfo Settings
setting.shar-title = Informatis Settings
setting.shar-ui = Overlay UI Settings
setting.shar-draw = Overdrawing Settings

View File

@@ -89,7 +89,7 @@ setting.hiddenElem.description = 숨겨진 요소의 외곽선도 표시합니
setting.autoShooting.name = 자동 사격 활성화
setting.autoShooting.description =
setting.shar-title = unitinfo 설정
setting.shar-title = Informatis 설정
setting.shar-ui = 정보UI 설정
setting.shar-range = 자동 사거리 설정
setting.shar-opacity = 투명도 설정

View File

@@ -77,7 +77,7 @@ setting.distanceLine.description = display dotted lines and numbers how far away
setting.autoShooting.name = Включить автострельбу.
setting.autoShooting.description = [red]не читери, не будь какахой
setting.shar-title = Настройки unitinfo
setting.shar-title = Настройки informatis
setting.shar-wave = InfoTap Setting
setting.shar-range = AutoRange Setting
setting.shar-opacity = Opacity Setting

View File

@@ -83,7 +83,7 @@ setting.spawnerarrow.description =
setting.autoShooting.name = Enable Auto Shooting
setting.autoShooting.description = no don't do hack
setting.shar-title = unitinfo Ayarları
setting.shar-title = informatis Ayarları
setting.shar-ui = Arayüz Ayarları
setting.shar-range = Oto-Uzaklık Ayarları
setting.shar-opacity = Opaklık Ayarları

View File

@@ -86,7 +86,7 @@ setting.spawnerarrow.description = Показує стрілку, направл
setting.autoShooting.name = Увімкнути автострільбу
setting.autoShooting.description = Не треба, ти ж не гакер.
setting.shar-title = Налаштування unitinfo
setting.shar-title = Налаштування informatis
setting.shar-ui = Налаштування накладання інтерфейсу
setting.shar-range = Налаштування автоматичного діапазону
setting.shar-opacity = Налаштування прозорості

View File

@@ -1,11 +1,11 @@
{
"name": "unitinfo",
"displayName": "Unit Information",
"name": "informatis",
"displayName": "Informatis",
"author": "Sharlotte",
"description": "The mod displays more information in-game, such as unit/building, wave, core, tile, item/unit total info etc",
"version": "1.5.5",
"main": "unitinfo.core.Main",
"minGameVersion": "135",
"version": "1.6",
"main": "informatis.core.Main",
"minGameVersion": "136",
"dependencies": [],
"hidden": true,
"java": true

View File

@@ -1,10 +1,10 @@
@rem put this project path into PATH_FROM
setlocal
set PATH_FROM=C:\Users\user\Documents\GitHub\UnitInfo
set PATH_FROM=C:\Users\user\Documents\GitHub\Informatis
@rem put your mindustry local path into PATH_TO
setlocal
set PATH_TO=C:\Users\user\AppData\Roaming\Mindustry
if exist %PATH_TO%\mods\UnitInfo.jar del %PATH_TO%\mods\UnitInfo.jar
xcopy %PATH_FROM%\build\libs\UnitInfo.jar %PATH_TO%\mods\ /k /y
del %PATH_FROM%\build\libs\UnitInfo.jar
if exist %PATH_TO%\mods\UnitInfo.jar del %PATH_TO%\mods\Informatis.jar
xcopy %PATH_FROM%\build\libs\Informatis.jar %PATH_TO%\mods\ /k /y
del %PATH_FROM%\build\libs\Informatis.jar

View File

@@ -3,7 +3,6 @@ plugins {
}
group pGroup
version '1.0'
sourceSets.main {
@@ -29,13 +28,12 @@ jar {
dependencies {
annotationProcessor 'com.github.Anuken:jabel:34e4c172e65b3928cd9eabe1993654ea79c409cd'
compileOnly "com.github.Anuken.Arc:arc-core:$pMindustryVersion"
compileOnly "com.github.Anuken.Mindustry:core:$pMindustryVersion"
implementation 'org.hjson:hjson:3.0.0'
compileOnly "com.github.Anuken.MindustryJitpack:core:3ffa59efb6"
compileOnly "com.github.Anuken.Arc:arc-core:dfcb21ce56"
}
task dexify(type: Jar) {
archiveName "dexed-$pArtifactFilename"
archiveName "$pArtifactFilename"
final File jarArtifact = new File(tasks.jar.archiveFile.get().asFile.parent, pArtifactFilename),
dexedArtifact = new File(tasks.dexify.getTemporaryDir(), "dexed.jar")
@@ -59,7 +57,7 @@ task buildDex dependsOn "build", "dexify"
task buildMove(dependsOn: build) {
doLast {
copy {
from "build/libs/UnitInfo.jar"
from "build/libs/Informatis.jar"
into System.getenv("destination")
}
}

View File

@@ -1,8 +1,8 @@
# Filename of output file (dexify prepends 'dexed-') (people will hate you if it isn't .jar)
pArtifactFilename = unitinfo.jar
pArtifactFilename = Informatis.jar
# Group of project (should line up with dirs in src/)
pGroup = sharlotte
# Version of Mindustry to use (if not working, consult jitpack.io)
pMindustryVersion = v135
pMindustryVersion = v136
# Minimum API level for d8 (if you don't know what this is, leave it unless d8 yells at you)
pMinApi = 26

View File

@@ -1,4 +1,4 @@
package unitinfo;
package informatis;
import arc.graphics.g2d.*;
import arc.math.Mathf;
@@ -15,7 +15,7 @@ import mindustry.world.Tile;
import java.lang.reflect.*;
import static unitinfo.SVars.*;
import static informatis.SVars.*;
import static arc.Core.*;
import static mindustry.Vars.player;
@@ -80,7 +80,7 @@ public class SUtils {
final float[] mrng = {0};
u.weapons.each(w -> w.bullet != null, w -> {
mrng[0] = Math.max(mrng[0], (w instanceof RepairBeamWeapon || w instanceof PointDefenseWeapon) ? 0 : bulletRange(w.bullet));
if(mrng[0] == 0) mrng[0] = w.bullet.range();
if(mrng[0] == 0) mrng[0] = w.bullet.range;
});
return mrng[0];
}

View File

@@ -1,6 +1,6 @@
package unitinfo;
package informatis;
import unitinfo.shaders.*;
import informatis.shaders.*;
import arc.graphics.g2d.TextureRegion;
import mindustry.gen.Teamc;

View File

@@ -1,11 +1,10 @@
package unitinfo.core;
package informatis.core;
import arc.graphics.*;
import arc.graphics.g2d.TextureRegion;
import arc.math.*;
import arc.struct.*;
import arc.util.*;
import mindustry.ai.types.*;
import mindustry.ctype.*;
import mindustry.entities.*;
import mindustry.entities.abilities.*;
@@ -26,11 +25,11 @@ import mindustry.world.consumers.*;
import java.lang.reflect.*;
import static unitinfo.SUtils.*;
import static informatis.SUtils.*;
import static arc.Core.*;
import static mindustry.Vars.*;
import static unitinfo.SVars.*;
import static unitinfo.ui.SIcons.*;
import static informatis.SVars.*;
import static informatis.ui.SIcons.*;
public class BarInfo {
public static Seq<BarData> data = new Seq<>();
@@ -38,7 +37,8 @@ public class BarInfo {
public static <T extends Teamc> void getInfo(T target) throws IllegalAccessException, NoSuchFieldException {
data.clear();
if(target instanceof Healthc healthc){
if(target instanceof Healthc){
Healthc healthc = (Healthc) target;
float pro = healthc.health();
data.add(new BarData(bundle.format("shar-stat.health", formatNumber(pro)), Pal.health, pro, health));
}
@@ -49,11 +49,11 @@ public class BarInfo {
if(ability == null) return 0;
return ability.max;
}).abilities.find(abil -> abil instanceof ShieldRegenFieldAbility)).max;
float commands = Groups.unit.count(u -> u.controller() instanceof FormationAI && ((FormationAI)u.controller()).leader == target);
//float commands = Groups.unit.count(u -> u.controller() instanceof FormationAI && ((FormationAI)u.controller()).leader == target);
data.add(new BarData(bundle.format("shar-stat.shield", formatNumber(unit.shield())), Pal.surge, unit.shield() / max, shield));
data.add(new BarData(bundle.format("shar-stat.capacity", unit.stack.item.localizedName, formatNumber(unit.stack.amount), formatNumber(unit.type.itemCapacity)), unit.stack.amount > 0 && unit.stack().item != null ? unit.stack.item.color.cpy().lerp(Color.white, 0.15f) : Color.white, unit.stack.amount / (unit.type.itemCapacity * 1f), item));
data.add(new BarData(bundle.format("shar-stat.commandUnits", formatNumber(commands), formatNumber(unit.type().commandLimit)), Pal.powerBar.cpy().lerp(Pal.surge.cpy().mul(Pal.lighterOrange), Mathf.absin(Time.time, 7f / (1f + Mathf.clamp(commands / (unit.type().commandLimit * 1f))), 1f)), commands / (unit.type().commandLimit * 1f)));
//data.add(new BarData(bundle.format("shar-stat.commandUnits", formatNumber(commands), formatNumber(unit.type().commandLimit)), Pal.powerBar.cpy().lerp(Pal.surge.cpy().mul(Pal.lighterOrange), Mathf.absin(Time.time, 7f / (1f + Mathf.clamp(commands / (unit.type().commandLimit * 1f))), 1f)), commands / (unit.type().commandLimit * 1f)));
if(target instanceof Payloadc pay) data.add(new BarData(bundle.format("shar-stat.payloadCapacity", formatNumber(Mathf.round(Mathf.sqrt(pay.payloadUsed()))), formatNumber(Mathf.round(Mathf.sqrt(unit.type().payloadCapacity)))), Pal.items, pay.payloadUsed() / unit.type().payloadCapacity));
if(state.rules.unitAmmo) data.add(new BarData(bundle.format("shar-stat.ammos", formatNumber(unit.ammo()), formatNumber(unit.type().ammoCapacity)), unit.type().ammoType.color(), unit.ammof()));
}
@@ -61,8 +61,8 @@ public class BarInfo {
else if(target instanceof Building build){
if(build.block.hasLiquids) data.add(new BarData(bundle.format("shar-stat.capacity", build.liquids.currentAmount() < 0.01f ? build.liquids.current().localizedName : bundle.get("bar.liquid"), formatNumber(build.liquids.currentAmount()), formatNumber(build.block.liquidCapacity)), build.liquids.current().color, build.liquids.currentAmount() / build.block.liquidCapacity, liquid));
if(build.block.hasPower && build.block.consumes.hasPower()){
ConsumePower cons = build.block.consumes.getPower();
if(build.block.hasPower && build.block.consumesPower){
ConsumePower cons = build.block.consPower;
data.add(new BarData(bundle.format("shar-stat.power", formatNumber(build.power.status * 60f * (cons.buffered ? cons.capacity : cons.usage)), formatNumber(60f * (cons.buffered ? cons.capacity : cons.usage))), Pal.powerBar, Mathf.zero(cons.requestedPower(build)) && build.power.graph.getPowerProduced() + build.power.graph.getBatteryStored() > 0f ? 1f : build.power.status, power));
}
if(build.block.hasItems) {
@@ -76,10 +76,10 @@ public class BarInfo {
if(target instanceof ReloadTurret.ReloadTurretBuild || target instanceof MassDriver.MassDriverBuild){
float pro;
if(target instanceof ReloadTurret.ReloadTurretBuild turret) pro = turret.reload / ((Turret)turret.block).reloadTime;
if(target instanceof ReloadTurret.ReloadTurretBuild turret) pro = turret.reloadCounter / ((Turret)turret.block).reload;
else {
MassDriver.MassDriverBuild mass = (MassDriver.MassDriverBuild) target;
pro = mass.reload;
pro = mass.reloadCounter;
}
data.add(new BarData(bundle.format("shar-stat.reload", formatNumber(pro * 100f)), Pal.accent.cpy().lerp(Color.orange, pro), pro, reload));
}
@@ -134,7 +134,7 @@ public class BarInfo {
pro = (float) drill.sense(LAccess.progress);
Tmp.c1.set(drill.dominantItem == null ? Pal.items : drill.dominantItem.color);
data.add(new BarData(bundle.format("bar.drillspeed", formatNumber(drill.lastDrillSpeed * 60 * drill.timeScale)), Pal.ammo, drill.warmup));
data.add(new BarData(bundle.format("bar.drillspeed", formatNumber(drill.lastDrillSpeed * 60 * drill.timeScale())), Pal.ammo, drill.warmup));
}
else {
GenericCrafter.GenericCrafterBuild crafter = (GenericCrafter.GenericCrafterBuild) target;
@@ -166,7 +166,7 @@ public class BarInfo {
}
else { //TODO: why is this different
PowerTurret.PowerTurretBuild turret = (PowerTurret.PowerTurretBuild) target;
max = turret.block.consumes.getPower().usage;
max = turret.block.consPower.usage;
value = turret.power.status * turret.power.graph.getLastScaledPowerIn();
}

View File

@@ -1,4 +1,4 @@
package unitinfo.core;
package informatis.core;
import arc.func.Boolf;
import arc.func.Cons;
@@ -12,10 +12,10 @@ import mindustry.content.Blocks;
import mindustry.game.Team;
import mindustry.world.Block;
import mindustry.world.Tile;
import unitinfo.ui.window.*;
import informatis.ui.window.*;
import static unitinfo.ui.window.MapEditorWindow.*;
import static unitinfo.ui.window.Windows.editorTable;
import static informatis.ui.window.MapEditorWindow.*;
import static informatis.ui.window.Windows.editorTable;
import static mindustry.Vars.world;
public enum EditorTool{

View File

@@ -1,25 +1,25 @@
package unitinfo.core;
package informatis.core;
import arc.input.KeyCode;
import unitinfo.ui.*;
import unitinfo.ui.draws.OverDraws;
import unitinfo.ui.window.*;
import informatis.ui.*;
import informatis.ui.draws.OverDraws;
import informatis.ui.window.*;
import arc.*;
import mindustry.*;
import mindustry.game.EventType.*;
import mindustry.mod.*;
import static unitinfo.SVars.*;
import static informatis.SVars.*;
import static arc.Core.*;
import static unitinfo.SUtils.*;
import static unitinfo.ui.WindowManager.windows;
import static informatis.SUtils.*;
import static informatis.ui.WindowManager.windows;
public class Main extends Mod {
@Override
public void init(){
Core.app.post(() -> {
Mods.ModMeta meta = Vars.mods.locateMod("unitinfo").meta;
meta.displayName = "[#B5FFD9]Unit Information[]";
Mods.ModMeta meta = Vars.mods.locateMod("informatis").meta;
meta.displayName = "[#B5FFD9]Informatis[]";
meta.author = "[#B5FFD9]Sharlotte[lightgray]#0018[][]";
meta.description = bundle.get("shar-description");
});

View File

@@ -1,6 +1,6 @@
package unitinfo.core;
package informatis.core;
import unitinfo.ui.draws.*;
import informatis.ui.draws.*;
import arc.*;
import arc.graphics.*;
import arc.graphics.g2d.*;
@@ -12,7 +12,7 @@ import mindustry.gen.*;
import mindustry.graphics.*;
import mindustry.ui.*;
import static unitinfo.SVars.*;
import static informatis.SVars.*;
import static arc.Core.*;
import static mindustry.Vars.*;

View File

@@ -1,4 +1,4 @@
package unitinfo.core;
package informatis.core;
import arc.*;
import arc.func.*;
@@ -122,8 +122,8 @@ public class SettingS {
sharset.table(t -> {
Seq<TextButton> buttons = new Seq<>();
buttons.add(new TextButton(bundle.get("setting.shar-ui"), Styles.clearToggleMenut));
buttons.add(new TextButton(bundle.get("setting.shar-draw"), Styles.clearToggleMenut));
buttons.add(new TextButton(bundle.get("setting.shar-ui"), Styles.cleart));
buttons.add(new TextButton(bundle.get("setting.shar-draw"), Styles.cleart));
buttons.each(b -> b.clicked(() -> buttons.each(b1 -> b1.setChecked(b1 == b))));
t.table(Styles.black8, bt -> {
bt.top().align(Align.top);

View File

@@ -1,4 +1,4 @@
package unitinfo.core;
package informatis.core;
import arc.Core;
import arc.scene.ui.layout.Table;

View File

@@ -1,4 +1,4 @@
package unitinfo.shaders;
package informatis.shaders;
import arc.Core;
import arc.graphics.gl.Shader;

View File

@@ -1,10 +1,10 @@
package unitinfo.ui;
package informatis.ui;
import arc.scene.ui.layout.Table;
import arc.struct.Seq;
import unitinfo.ui.display.ElementDisplay;
import unitinfo.ui.display.SchemDisplay;
import unitinfo.ui.display.WaveInfoDisplay;
import informatis.ui.display.ElementDisplay;
import informatis.ui.display.SchemDisplay;
import informatis.ui.display.WaveInfoDisplay;
import static arc.Core.scene;
import static mindustry.Vars.ui;

View File

@@ -1,4 +1,4 @@
package unitinfo.ui;
package informatis.ui;
import arc.graphics.g2d.*;
import arc.math.*;

View File

@@ -1,9 +1,8 @@
package unitinfo.ui;
package informatis.ui;
import arc.math.geom.Vec2;
import arc.scene.Element;
import arc.scene.ui.ScrollPane;
import mindustry.ui.Styles;
import static arc.Core.input;
import static arc.Core.scene;

View File

@@ -1,6 +1,6 @@
package unitinfo.ui;
package informatis.ui;
import unitinfo.SUtils;
import informatis.SUtils;
import arc.*;
import arc.func.*;
import arc.graphics.*;
@@ -54,38 +54,38 @@ public class SBar extends Element{
int h = Core.settings.getInt("barstyle");
bar = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("unitinfo-barS"), 10, 10, 9, 9);
top = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("unitinfo-barS-top"), 10, 10, 9, 9);
spriteWidth = Core.atlas.find("unitinfo-barS").width;
bar = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("informatis-barS"), 10, 10, 9, 9);
top = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("informatis-barS-top"), 10, 10, 9, 9);
spriteWidth = Core.atlas.find("informatis-barS").width;
if(onedot){
bar = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("unitinfo-1dotbar"), 0,0,0,0);
top = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("unitinfo-1dotbar-top"),0,0,0,0);
spriteWidth = Core.atlas.find("unitinfo-1dotbar").width;
bar = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("informatis-1dotbar"), 0,0,0,0);
top = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("informatis-1dotbar-top"),0,0,0,0);
spriteWidth = Core.atlas.find("informatis-1dotbar").width;
}
else if(h == 1){
bar = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("unitinfo-barSS"), 14, 14, 19, 19);
top = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("unitinfo-barSS-top"), 14, 14, 19, 19);
spriteWidth = Core.atlas.find("unitinfo-barSS").width;
bar = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("informatis-barSS"), 14, 14, 19, 19);
top = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("informatis-barSS-top"), 14, 14, 19, 19);
spriteWidth = Core.atlas.find("informatis-barSS").width;
}
else if(h == 2){
bar = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("unitinfo-barSSS"), 25, 25, 17, 17);
top = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("unitinfo-barSSS-top"), 25, 25, 17, 17);
spriteWidth = Core.atlas.find("unitinfo-barSSS").width;
bar = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("informatis-barSSS"), 25, 25, 17, 17);
top = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("informatis-barSSS-top"), 25, 25, 17, 17);
spriteWidth = Core.atlas.find("informatis-barSSS").width;
}
else if(h == 3){
bar = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("unitinfo-barSSSS"), 25, 25, 17, 17);
top = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("unitinfo-barSSSS-top"), 25, 25, 17, 17);
spriteWidth = Core.atlas.find("unitinfo-barSSSS").width;
bar = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("informatis-barSSSS"), 25, 25, 17, 17);
top = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("informatis-barSSSS-top"), 25, 25, 17, 17);
spriteWidth = Core.atlas.find("informatis-barSSSS").width;
}
else if(h == 4){
bar = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("unitinfo-barSSSSS"), 27, 27, 16, 16);
top = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("unitinfo-barSSSSS-top"), 27, 27, 16, 16);
spriteWidth = Core.atlas.find("unitinfo-barSSSSS").width;
bar = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("informatis-barSSSSS"), 27, 27, 16, 16);
top = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("informatis-barSSSSS-top"), 27, 27, 16, 16);
spriteWidth = Core.atlas.find("informatis-barSSSSS").width;
}
else if(h == 5){
bar = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("unitinfo-barSSSSSS"), 32, 32, 16, 16);
top = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("unitinfo-barSSSSSS-top"), 32, 32, 16, 16);
spriteWidth = Core.atlas.find("unitinfo-barSSSSSS").width;
bar = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("informatis-barSSSSSS"), 32, 32, 16, 16);
top = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("informatis-barSSSSSS-top"), 32, 32, 16, 16);
spriteWidth = Core.atlas.find("informatis-barSSSSSS").width;
}
return this;
}

View File

@@ -0,0 +1,14 @@
package informatis.ui;
import arc.Core;
import arc.graphics.g2d.TextureRegion;
public class SIcons {
public static TextureRegion health = Core.atlas.find("informatis-health");
public static TextureRegion shield = Core.atlas.find("informatis-shield");
public static TextureRegion item = Core.atlas.find("informatis-item");
public static TextureRegion liquid = Core.atlas.find("informatis-liquid");
public static TextureRegion power = Core.atlas.find("informatis-power");
public static TextureRegion ammo = Core.atlas.find("informatis-ammo");
public static TextureRegion reload = Core.atlas.find("informatis-reload");
}

View File

@@ -1,4 +1,4 @@
package unitinfo.ui;
package informatis.ui;
public interface Updatable {
void update();

View File

@@ -1,11 +1,11 @@
package unitinfo.ui;
package informatis.ui;
import arc.*;
import arc.struct.*;
import arc.util.*;
import mindustry.*;
import mindustry.ui.*;
import unitinfo.ui.window.Window;
import informatis.ui.window.Window;
public class WindowManager {
public static Seq<Window> windows = new Seq<>();
@@ -22,7 +22,7 @@ public class WindowManager {
Vars.ui.hudGroup.fill(t -> {
t.center().left();
t.table(Core.atlas.drawable("unitinfo-sidebar"), b -> {
t.table(Core.atlas.drawable("informatis-sidebar"), b -> {
b.name = "Window Buttons";
b.left();

View File

@@ -1,4 +1,4 @@
package unitinfo.ui.display;
package informatis.ui.display;
import arc.graphics.g2d.Draw;
import arc.graphics.g2d.Lines;

View File

@@ -1,6 +1,6 @@
package unitinfo.ui.display;
package informatis.ui.display;
import unitinfo.SUtils;
import informatis.SUtils;
import arc.Core;
import arc.func.Cons;
import arc.func.Floatf;
@@ -20,7 +20,7 @@ import mindustry.gen.*;
import mindustry.graphics.Pal;
import mindustry.ui.Styles;
import mindustry.ui.dialogs.*;
import unitinfo.ui.Updatable;
import informatis.ui.Updatable;
import static arc.Core.*;
import static mindustry.Vars.*;
@@ -60,7 +60,7 @@ public class SchemDisplay extends Table implements Updatable {
t.background(Styles.black8).defaults().maxHeight(72 * 8f).maxWidth(160f);
rebuildList = () -> {
t.clearChildren();
ScrollPane pane1 = t.pane(Styles.nonePane, p -> {
ScrollPane pane1 = t.pane(Styles.noBarPane, p -> {
p.left().defaults().pad(2).height(42f);
try {
for(String tag : (Seq<String>)SUtils.invoke(ui.schematics, "tags")){
@@ -90,7 +90,7 @@ public class SchemDisplay extends Table implements Updatable {
t.row();
ScrollPane pane = t.pane(Styles.nonePane, p -> {
ScrollPane pane = t.pane(Styles.noBarPane, p -> {
p.table(tt -> {
firstSchematic = null;
@@ -107,7 +107,7 @@ public class SchemDisplay extends Table implements Updatable {
buttons.left();
buttons.defaults().size(162/4f);
ImageButton.ImageButtonStyle style = Styles.clearPartiali;
ImageButton.ImageButtonStyle style = Styles.clearNonei;
buttons.button(Icon.info, style, () -> showInfo(s));
buttons.button(Icon.upload, style, () -> showExport(s));

View File

@@ -1,4 +1,4 @@
package unitinfo.ui.display;
package informatis.ui.display;
import arc.scene.ui.layout.*;
import arc.util.*;
@@ -9,8 +9,8 @@ import mindustry.world.Block;
import mindustry.world.Tile;
import mindustry.world.blocks.environment.Floor;
import static unitinfo.SUtils.*;
import static unitinfo.SVars.*;
import static informatis.SUtils.*;
import static informatis.SVars.*;
import static arc.Core.*;
import static mindustry.Vars.*;
@@ -107,7 +107,7 @@ public class WaveInfoDisplay {
waveTable.row();
waveTable.stack(
new Table(tt -> tt.collapser(t -> t.stack(waveInfoTable, infoTable).growX(), true, () -> waveShown).growX()).top(),
new Table(tt -> tt.button(Icon.downOpen, Styles.clearToggleTransi, () -> waveShown = !waveShown).size(4 * 8f).checked(b -> {
new Table(tt -> tt.button(Icon.downOpen, Styles.clearTogglei, () -> waveShown = !waveShown).size(4 * 8f).checked(b -> {
b.getImage().setDrawable(waveShown ? Icon.upOpen : Icon.downOpen);
return waveShown;
})).left().top()).fillX();

View File

@@ -0,0 +1,37 @@
package informatis.ui.draws;
import arc.graphics.g2d.Draw;
import arc.graphics.g2d.Fill;
import arc.scene.style.TextureRegionDrawable;
import mindustry.gen.Groups;
import mindustry.graphics.Pal;
import static informatis.SUtils.*;
import static arc.Core.settings;
public class BlockDraw extends OverDraw {
BlockDraw(String name, TextureRegionDrawable icon) {
super(name, icon);
registerOption("blockStatus");
}
@Override
public void draw() {
super.draw();
Groups.build.each(b->{
if(isInCamera(b.x, b.y, b.block.size/2f) && settings.getBool("blockStatus") && enabled) {
if(b.block.consumers.length > 0) {
float multiplier = b.block.size > 1 ? 1.0F : 0.64F;
float brcx = b.x + (float)(b.block.size * 8) / 2.0F - 8.0F * multiplier / 2.0F;
float brcy = b.y - (float)(b.block.size * 8) / 2.0F + 8.0F * multiplier / 2.0F;
Draw.z(71.0F);
Draw.color(Pal.gray);
Fill.square(brcx, brcy, 2.5F * multiplier, 45.0F);
Draw.color(b.status().color);
Fill.square(brcx, brcy, 1.5F * multiplier, 45.0F);
Draw.color();
}
};
});
}
}

View File

@@ -1,4 +1,4 @@
package unitinfo.ui.draws;
package informatis.ui.draws;
import arc.graphics.Color;
import arc.graphics.g2d.Draw;
@@ -22,7 +22,7 @@ import mindustry.world.blocks.payloads.PayloadMassDriver;
import static arc.Core.atlas;
import static arc.Core.settings;
import static mindustry.Vars.*;
import static unitinfo.SVars.*;
import static informatis.SVars.*;
public class LinkDraw extends OverDraw {
Seq<MassDriver.MassDriverBuild> linkedMasses = new Seq<>();
@@ -150,7 +150,7 @@ public class LinkDraw extends OverDraw {
len1 = node.block.size * tilesize / 2f - 1.5f, len2 = other.block.size * tilesize / 2f - 1.5f;
Draw.color(Color.white, Color.valueOf("98ff98"), (1f - node.power.graph.getSatisfaction()) * 0.86f + Mathf.absin(3f, 0.1f));
Draw.alpha(Renderer.laserOpacity);
Drawf.laser(node.team, atlas.find("unitinfo-Slaser"), atlas.find("unitinfo-Slaser-end"), node.x + vx * len1, node.y + vy * len1, other.x - vx * len2, other.y - vy * len2, 0.25f);
Drawf.laser(atlas.find("informatis-Slaser"), atlas.find("informatis-Slaser"), atlas.find("informatis-Slaser-end"), node.x + vx * len1, node.y + vy * len1, other.x - vx * len2, other.y - vy * len2, 0.25f);
drawNodeLink(other);
}

View File

@@ -1,4 +1,4 @@
package unitinfo.ui.draws;
package informatis.ui.draws;
import arc.scene.Element;
import arc.scene.style.TextureRegionDrawable;
@@ -24,7 +24,7 @@ public class OverDraw {
public void displayStats(Table parent) {
if(options.isEmpty()) return;
parent.background(Styles.squaret.up);
parent.background(Styles.squarei.up);
options.each(name-> parent.check(bundle.get("setting."+name+".name"), settings.getBool(name), b->settings.put(name, b)).tooltip(t->t.background(Styles.black8).add(bundle.get("setting."+name+".description"))).disabled(!enabled).row());
}

View File

@@ -1,4 +1,4 @@
package unitinfo.ui.draws;
package informatis.ui.draws;
import mindustry.gen.Icon;

View File

@@ -1,4 +1,4 @@
package unitinfo.ui.draws;
package informatis.ui.draws;
import arc.graphics.Color;
import arc.graphics.g2d.*;
@@ -13,8 +13,8 @@ import mindustry.world.blocks.defense.turrets.BaseTurret;
import mindustry.world.blocks.defense.turrets.TractorBeamTurret;
import mindustry.world.blocks.defense.turrets.Turret;
import static unitinfo.SVars.turretRange;
import static unitinfo.SUtils.*;
import static informatis.SVars.turretRange;
import static informatis.SUtils.*;
import static arc.Core.*;
import static mindustry.Vars.player;
@@ -58,11 +58,11 @@ public class RangeDraw extends OverDraw {
else if (b instanceof Turret.TurretBuild build) {
Turret t = (Turret) build.block;
if(t.targetAir&&!air||t.targetGround&&!ground) return;
if((unit.isFlying() ? t.targetAir : t.targetGround) && build.hasAmmo() && build.cons.valid()) valid = true;
if((unit.isFlying() ? t.targetAir : t.targetGround) && build.hasAmmo() && build.canConsume()) valid = true;
} else if (b instanceof TractorBeamTurret.TractorBeamBuild build) {
TractorBeamTurret t = (TractorBeamTurret) build.block;
if(t.targetAir&&!air||t.targetGround&&!ground) return;
if((unit.isFlying() ? t.targetAir : t.targetGround) && build.cons.valid()) valid = true;
if((unit.isFlying() ? t.targetAir : t.targetGround) && build.canConsume()) valid = true;
}
if(!valid) index = 0;

View File

@@ -1,6 +1,6 @@
package unitinfo.ui.draws;
package informatis.ui.draws;
import unitinfo.ui.FreeBar;
import informatis.ui.FreeBar;
import arc.graphics.g2d.Lines;
import arc.math.Angles;
import arc.math.Mathf;
@@ -11,8 +11,8 @@ import arc.util.Align;
import arc.util.Tmp;
import mindustry.Vars;
import mindustry.ai.Pathfinder;
import mindustry.ai.RtsAI;
import mindustry.ai.types.*;
import mindustry.entities.units.UnitCommand;
import mindustry.entities.units.UnitController;
import mindustry.game.Team;
import mindustry.gen.Groups;
@@ -21,11 +21,10 @@ import mindustry.logic.LUnitControl;
import mindustry.ui.Fonts;
import mindustry.world.Tile;
import mindustry.world.blocks.storage.CoreBlock;
import mindustry.world.blocks.units.CommandCenter;
import java.util.Objects;
import static unitinfo.SUtils.*;
import static informatis.SUtils.*;
import static arc.Core.settings;
import static mindustry.Vars.*;
@@ -48,7 +47,7 @@ public class UnitDraw extends OverDraw {
Groups.unit.each(u-> isInCamera(u.x, u.y, u.hitSize), u -> {
UnitController c = u.controller();
UnitCommand com = u.team.data().command;
RtsAI rts = u.team.data().rtsAi;
if(settings.getBool("logicLine") && c instanceof LogicAI ai && (ai.control == LUnitControl.approach || ai.control == LUnitControl.move)) {
Lines.stroke(1, u.team.color);
@@ -57,12 +56,12 @@ public class UnitDraw extends OverDraw {
Lines.line(u.x(), u.y(), ai.controller.x, ai.controller.y);
}
if(settings.getBool("unitLine") && !u.type.flying && com != UnitCommand.idle && !(c instanceof MinerAI || c instanceof BuilderAI || c instanceof RepairAI || c instanceof DefenderAI || c instanceof FormationAI || c instanceof FlyingAI)) {
if(settings.getBool("unitLine") && !u.type.flying && !(c instanceof MinerAI || c instanceof BuilderAI || c instanceof RepairAI || c instanceof DefenderAI || c instanceof FlyingAI)) {
Lines.stroke(1, u.team.color);
otherCores = Groups.build.count(b -> b instanceof CoreBlock.CoreBuild && b.team != u.team);
pathTiles.clear();
getNextTile(u.tileOn(), u.controller() instanceof SuicideAI ? 0 : u.pathType(), u.team, com.ordinal());
getNextTile(u.tileOn(), u.controller() instanceof SuicideAI ? 0 : u.pathType(), u.team, u.pathType());
pathTiles.filter(Objects::nonNull);
for(int i = 0; i < pathTiles.size-1; i++) {
Tile from = pathTiles.get(i);
@@ -101,12 +100,11 @@ public class UnitDraw extends OverDraw {
}
Tile getNextTile(Tile tile, int cost, Team team, int finder) {
Pathfinder.Flowfield field = pathfinder.getField(team, cost, Mathf.clamp(finder, 0, 1));
Pathfinder.Flowfield field = pathfinder.getField(team, cost, Mathf.clamp(finder, 0, 0));
Tile tile1 = pathfinder.getTargetTile(tile, field);
pathTiles.add(tile1);
if(tile1 == tile || tile1 == null ||
(finder == 0 && (otherCores != Groups.build.count(b -> b instanceof CoreBlock.CoreBuild && b.team != team) || tile1.build instanceof CoreBlock.CoreBuild)) ||
(finder == 1 && tile1.build instanceof CommandCenter.CommandBuild))
(finder == 0 && (otherCores != Groups.build.count(b -> b instanceof CoreBlock.CoreBuild && b.team != team) || tile1.build instanceof CoreBlock.CoreBuild)))
return tile1;
return getNextTile(tile1, cost, team, finder);
}

View File

@@ -1,4 +1,4 @@
package unitinfo.ui.draws;
package informatis.ui.draws;
import arc.input.KeyCode;
import arc.math.Angles;
@@ -39,7 +39,7 @@ public class UtilDraw extends OverDraw {
}
float mouseAngle = unit.angleTo(unit.aimX(), unit.aimY());
boolean aimCursor = omni && player.shooting && unit.type.hasWeapons() && unit.type.faceTarget && !boosted && unit.type.rotateShooting;
boolean aimCursor = omni && player.shooting && unit.type.hasWeapons() && unit.type.faceTarget && !boosted && unit.type.rotateToBuilding;
unit.lookAt(aimCursor ? mouseAngle : unit.prefRotation());
//update shooting if not building + not mining

View File

@@ -1,8 +1,8 @@
package unitinfo.ui.window;
package informatis.ui.window;
import arc.Events;
import mindustry.game.EventType;
import unitinfo.ui.*;
import informatis.ui.*;
import arc.Core;
import arc.graphics.Color;
import arc.math.Mathf;
@@ -43,7 +43,7 @@ public class CoreWindow extends Window implements Updatable {
scrollPos = new Vec2(0, 0);
table.background(Styles.black8).top();
table.add(new OverScrollPane(rebuild(), Styles.nonePane, scrollPos).disableScroll(true, false)).grow().name("core-pane");
table.add(new OverScrollPane(rebuild(), Styles.noBarPane, scrollPos).disableScroll(true, false)).grow().name("core-pane");
Events.on(EventType.WorldLoadEvent.class, e -> resetUsed());
}

View File

@@ -1,4 +1,4 @@
package unitinfo.ui.window;
package informatis.ui.window;
import arc.Events;
import arc.graphics.g2d.*;
@@ -9,8 +9,8 @@ import arc.struct.ObjectMap;
import mindustry.editor.MapEditor;
import mindustry.game.EventType;
import mindustry.graphics.Layer;
import unitinfo.core.EditorTool;
import unitinfo.ui.*;
import informatis.core.EditorTool;
import informatis.ui.*;
import arc.Core;
import arc.func.*;
import arc.graphics.Color;
@@ -32,7 +32,6 @@ import mindustry.graphics.Pal;
import mindustry.ui.Styles;
import mindustry.world.*;
import static arc.Core.settings;
import static mindustry.Vars.*;
public class MapEditorWindow extends Window implements Updatable {
@@ -132,10 +131,10 @@ public class MapEditorWindow extends Window implements Updatable {
t.label(()-> drawBlock == null ? "[gray]None[]" : "[accent]" + drawBlock.localizedName + "[] "+ drawBlock.emoji());
t.add(search).growX().pad(8).name("search");
}).growX().row();
display.add(new OverScrollPane(rebuildEditor(), Styles.nonePane, scrollPos).disableScroll(true, false)).grow().name("editor-pane").row();
display.add(new OverScrollPane(rebuildEditor(), Styles.noBarPane, scrollPos).disableScroll(true, false)).grow().name("editor-pane").row();
}));
displays.put(Icon.settings, new Table(display -> {
display.add(new OverScrollPane(rebuildRule(), Styles.nonePane, scrollPos).disableScroll(true, false)).grow().name("rule-pane").row();
display.add(new OverScrollPane(rebuildRule(), Styles.noBarPane, scrollPos).disableScroll(true, false)).grow().name("rule-pane").row();
}));
table.table(buttons -> {
@@ -180,7 +179,6 @@ public class MapEditorWindow extends Window implements Updatable {
}
void resetPane() {
Log.info("reseted");
ScrollPane pane = find("editor-pane");
if(pane != null) pane.setWidget(rebuildEditor());
}
@@ -279,7 +277,7 @@ public class MapEditorWindow extends Window implements Updatable {
option.button(b -> {
b.left().marginLeft(6);
b.setStyle(Styles.clearTogglet);
b.setStyle(Styles.clearTogglei);
b.add(Core.bundle.get("toolmode." + name)).left().row();
b.add(Core.bundle.get("toolmode." + name + ".description")).color(Color.lightGray).left();
}, () -> tool.mode = (tool.mode == mode ? -1 : mode)).update(b -> b.setChecked(tool.mode == mode)).margin(12f).growX().row();
@@ -303,8 +301,8 @@ public class MapEditorWindow extends Window implements Updatable {
for(T item : items){
if(!item.unlockedNow()) continue;
ImageButton button = cont.button(Tex.whiteui, Styles.clearToggleTransi, 24, () -> {
if(closeSelect) control.input.frag.config.hideConfig();
ImageButton button = cont.button(Tex.whiteui, Styles.clearTogglei, 24, () -> {
if(closeSelect) control.input.config.hideConfig();
}).group(group).tooltip(t->t.background(Styles.black8).add(item.localizedName.replace(search.getText(), "[accent]"+search.getText()+"[]"))).get();
button.changed(() -> consumer.get(button.isChecked() ? item : null));
button.getStyle().imageUp = new TextureRegionDrawable(item.uiIcon);
@@ -343,8 +341,8 @@ public class MapEditorWindow extends Window implements Updatable {
int max = Math.max(row, Math.round(getDisplayWidth()/2/8/row/2));
for(T item : items){
ImageButton button = cont.button(Tex.whiteui, Styles.clearToggleTransi, 24, () -> {
if(closeSelect) control.input.frag.config.hideConfig();
ImageButton button = cont.button(Tex.whiteui, Styles.clearTogglei, 24, () -> {
if(closeSelect) control.input.config.hideConfig();
}).group(group).tooltip(t->t.background(Styles.black8).add(item.localized().replace(search.getText(), "[accent]"+search.getText()+"[]"))).with(img -> img.getStyle().imageUpColor = item.color).get();
button.changed(() -> consumer.get(button.isChecked() ? item : null));
button.update(() -> button.setChecked(holder.get() == item));

View File

@@ -1,7 +1,7 @@
package unitinfo.ui.window;
package informatis.ui.window;
import unitinfo.ui.OverScrollPane;
import unitinfo.ui.Updatable;
import informatis.ui.OverScrollPane;
import informatis.ui.Updatable;
import arc.Core;
import arc.graphics.Color;
import arc.graphics.g2d.Draw;
@@ -48,7 +48,7 @@ public class PlayerWindow extends Window implements Updatable {
table.background(Styles.black8).top();
table.label(()-> Core.bundle.format(Groups.player.size() == 1 ? "players.single" : "players", Groups.player.size())).row();
table.add(search).growX().pad(8).name("search").maxTextLength(maxNameLength).row();
table.add(new OverScrollPane(rebuild(), Styles.nonePane, scrollPos).disableScroll(true, false)).grow().name("player-pane");
table.add(new OverScrollPane(rebuild(), Styles.noBarPane, scrollPos).disableScroll(true, false)).grow().name("player-pane");
}
@Override

View File

@@ -1,9 +1,9 @@
package unitinfo.ui.window;
package informatis.ui.window;
import unitinfo.ui.OverScrollPane;
import unitinfo.ui.Updatable;
import unitinfo.ui.draws.OverDraw;
import unitinfo.ui.draws.OverDraws;
import informatis.ui.OverScrollPane;
import informatis.ui.Updatable;
import informatis.ui.draws.OverDraw;
import informatis.ui.draws.OverDraws;
import arc.math.geom.Vec2;
import arc.scene.ui.ScrollPane;
import arc.scene.ui.layout.Table;
@@ -28,7 +28,7 @@ public class ToolWindow extends Window implements Updatable {
table.background(Styles.black8).top().left();
table.table(pane->{
pane.add(new OverScrollPane(rebuild(), Styles.nonePane, scrollPos).disableScroll(true, false)).name("tool-pane");
pane.add(new OverScrollPane(rebuild(), Styles.noBarPane, scrollPos).disableScroll(true, false)).name("tool-pane");
}).top().marginLeft(4f).marginRight(12f);
table.table(stats->{
stats.top();

View File

@@ -1,8 +1,8 @@
package unitinfo.ui.window;
package informatis.ui.window;
import arc.Core;
import unitinfo.core.*;
import unitinfo.ui.*;
import arc.math.Mathf;
import informatis.core.*;
import informatis.ui.*;
import arc.graphics.Color;
import arc.graphics.g2d.*;
import arc.math.geom.*;
@@ -23,18 +23,19 @@ import mindustry.ui.Styles;
import mindustry.world.blocks.ConstructBlock;
import mindustry.world.blocks.payloads.Payload;
import static unitinfo.SVars.*;
import static unitinfo.SUtils.*;
import static informatis.SVars.*;
import static informatis.SUtils.*;
import static mindustry.Vars.*;
class UnitWindow extends Window {
final Seq<Color> lastColors = Seq.with(Color.clear,Color.clear,Color.clear,Color.clear,Color.clear,Color.clear);
final Rect scissor = new Rect();
int bars = 6; //temp
Seq<Table> bars = new Seq<>(); //temp
Vec2 scrollPos = new Vec2(0, 0);
public UnitWindow() {
super(Icon.units, "unit");
for(int i = 0; i < 6; i++) addBar();
}
//TODO: add new UnitInfoDisplay(), new WeaponDisplay();
@@ -89,9 +90,20 @@ class UnitWindow extends Window {
table.image().height(4f).color((target==null?player.unit():target).team().color).growX().row();
table.add(new OverScrollPane(new Table(bars -> {
bars.top();
for (int i = 0; i < this.bars; i++) {
int index = i;
bars.table(bar -> {
bars.table().update(t->{
t.clear();
this.bars.clear();
for(int i = 0; i < 6; i++) addBar();
for (Table bar : this.bars) {
t.add(bar).growX().row();
}
}).growX();
}), Styles.noBarPane, scrollPos).disableScroll(true, false)).growX().padTop(12f);
}
void addBar() {
int index = this.bars.size;
bars.add(new Table(bar -> {
bar.add(new SBar(
() -> {
BarInfo.BarData data = index >= BarInfo.data.size ? null : BarInfo.data.get(index);
@@ -130,9 +142,7 @@ class UnitWindow extends Window {
}
}
}).size(iconMed * 0.75f).padLeft(8f);
}).growX().row();
}
}), Styles.nonePane, scrollPos).disableScroll(true, false)).growX().padTop(12f);
}));
}
static class WeaponDisplay extends Table {

View File

@@ -1,8 +1,8 @@
package unitinfo.ui.window;
package informatis.ui.window;
import mindustry.Vars;
import mindustry.type.UnitType;
import unitinfo.ui.OverScrollPane;
import informatis.ui.OverScrollPane;
import arc.Events;
import arc.graphics.Color;
import arc.math.Mathf;
@@ -18,7 +18,7 @@ import mindustry.game.SpawnGroup;
import mindustry.gen.*;
import mindustry.graphics.Pal;
import mindustry.ui.*;
import unitinfo.ui.Updatable;
import informatis.ui.Updatable;
import static arc.Core.*;
import static arc.Core.settings;
@@ -39,7 +39,7 @@ public class WaveWindow extends Window implements Updatable {
window = table;
table.top().background(Styles.black8);
ScrollPane pane = new OverScrollPane(rebuild(), Styles.nonePane, scrollPos).disableScroll(true, false);
ScrollPane pane = new OverScrollPane(rebuild(), Styles.noBarPane, scrollPos).disableScroll(true, false);
table.add(pane).grow().name("wave-pane").row();
table.table(total -> {
total.left();

View File

@@ -1,4 +1,4 @@
package unitinfo.ui.window;
package informatis.ui.window;
import arc.*;
import arc.func.*;
@@ -10,7 +10,7 @@ import arc.scene.ui.layout.*;
import arc.util.*;
import mindustry.gen.*;
import mindustry.ui.*;
import unitinfo.ui.WindowManager;
import informatis.ui.WindowManager;
public class Window extends Table{
public TextureRegionDrawable icon;
@@ -54,7 +54,7 @@ public class Window extends Table{
t.table(Tex.buttonEdge1, b -> {
b.top().left();
b.image(() -> icon == null ? Icon.none.getRegion() : icon.getRegion()).size(20f).padLeft(15).top().left();
b.pane(Styles.nonePane, p -> {
b.pane(Styles.noBarPane, p -> {
p.top().left();
p.labelWrap(() -> Core.bundle.get("window."+name+".name")).padLeft(20).top().left().get().setAlignment(Align.topLeft);
}).left().height(40f).growX().get().setScrollingDisabled(true, true);

View File

@@ -1,4 +1,4 @@
package unitinfo.ui.window;
package informatis.ui.window;
public class Windows {
public static MapEditorWindow editorTable;

View File

@@ -1,14 +0,0 @@
package unitinfo.ui;
import arc.Core;
import arc.graphics.g2d.TextureRegion;
public class SIcons {
public static TextureRegion health = Core.atlas.find("unitinfo-health");
public static TextureRegion shield = Core.atlas.find("unitinfo-shield");
public static TextureRegion item = Core.atlas.find("unitinfo-item");
public static TextureRegion liquid = Core.atlas.find("unitinfo-liquid");
public static TextureRegion power = Core.atlas.find("unitinfo-power");
public static TextureRegion ammo = Core.atlas.find("unitinfo-ammo");
public static TextureRegion reload = Core.atlas.find("unitinfo-reload");
}

View File

@@ -1,25 +0,0 @@
package unitinfo.ui.draws;
import arc.scene.style.TextureRegionDrawable;
import mindustry.gen.Groups;
import static unitinfo.SUtils.*;
import static arc.Core.settings;
public class BlockDraw extends OverDraw {
boolean status = false;
BlockDraw(String name, TextureRegionDrawable icon) {
super(name, icon);
registerOption("blockStatus");
}
@Override
public void draw() {
super.draw();
Groups.build.each(b->{
//this is shit.. VERY SHIT OH GOD
if(isInCamera(b.x, b.y, b.block.size/2f) && settings.getBool("blockStatus") && enabled) b.drawStatus();
});
}
}