package com.rebelkeithy.ftl.view;
import com.badlogic.gdx.graphics.Color;
import com.badlogic.gdx.graphics.Pixmap;
import com.badlogic.gdx.graphics.Texture;
import com.badlogic.gdx.graphics.Pixmap.Format;
import com.badlogic.gdx.graphics.g2d.SpriteBatch;
import com.rebelkeithy.ftl.systems.AbstractShipSystem;
public class SystemInfoRenderer
{
private Texture details;
private Texture detailsOn;
private Texture detailsOff;
private Texture bar;
public SystemInfoRenderer()
{
details = TextureRegistry.registerSprite("system_details", "upgradeUI/details_base");
detailsOn = TextureRegistry.registerSprite("details_bar_on", "UpgradeUI/details_bar_on");
detailsOff = TextureRegistry.registerSprite("details_bar_off", "UpgradeUI/details_bar_off");
bar = TextureRegistry.getTexture("white");
}
public void render(SpriteBatch batch, AbstractShipSystem system, int upgradeAmount, int offsetX, int offsetY)
{
Window.drawWindow(batch, offsetX, offsetY + 238, 337, 135);
Fonts.ccNewFont.setColor(Color.WHITE);
Fonts.ccNewBigFont.draw(batch, system.getDisplayName(), offsetX + 18, offsetY + 350);
Fonts.font10.drawMultiLine(batch, system.getDescription(),offsetX + 18, offsetY + 323);
for(int i = 0; i < 8; i++)
{
if(i < system.getMaxUpgradeLevel() || !system.getUpgradeDescription(i).equals(""))
batch.draw(detailsOn, offsetX + 75, offsetY + 17 + i * 26);
else
batch.draw(detailsOff, offsetX + 75, offsetY + 17 + i * 26);
}
batch.draw(details, offsetX, offsetY);
for(int i = 0; i < system.getMaxUpgradeLevel(); i++)
{
if(system.getMaxPower() <= i)
Fonts.numFont.draw(batch, "" + system.getUpgradeCost(i), offsetX + 105, offsetY + 36 + i * 26);
if(system.getMaxPower() + upgradeAmount <= i)
batch.setColor(104/256f, 97/256f, 58/256f, 1);
else if(system.getMaxPower() <= i)
batch.setColor(1, 1, 100/256f, 1);
else
batch.setColor(100/256f, 1, 100/256f, 1);
batch.draw(bar, offsetX + 27, offsetY + 20 + i * 26, 28, 18);
}
batch.setColor(Color.WHITE);
for(int i = 0; i < 8; i++)
{
if(i >= system.getMaxUpgradeLevel() && !system.getUpgradeDescription(i).equals(""))
Fonts.numFont.draw(batch, "-", offsetX + 111, offsetY + 36 + i * 26);
Fonts.font10.draw(batch, system.getUpgradeDescription(i), offsetX + 149, offsetY + 34 + i * 26);
}
}
}