/* * Copyright (c) 2012. HappyDroids LLC, All rights reserved. */ package com.happydroids.droidtowers.gui; import com.badlogic.gdx.scenes.scene2d.ui.Image; import com.badlogic.gdx.scenes.scene2d.ui.Label; import com.badlogic.gdx.scenes.scene2d.ui.Table; import com.badlogic.gdx.scenes.scene2d.utils.TextureRegionDrawable; import com.badlogic.gdx.utils.Scaling; import com.happydroids.droidtowers.entities.Avatar; import com.happydroids.droidtowers.entities.GridObject; import com.happydroids.droidtowers.platform.Display; public class AvatarInfoRow extends Table { private final ProgressBar hungerBar; private final ProgressBar restaurantsSatsifaction; private float timeUntilUpdate; private final Avatar avatar; private final Label movingToLabel; public AvatarInfoRow(Avatar avatar) { super(); this.avatar = avatar; hungerBar = new ProgressBar((int) (avatar.getHungerLevel() * 100)); restaurantsSatsifaction = new ProgressBar((int) (avatar.getSatisfactionFood() * 100)); movingToLabel = FontManager.Roboto12.makeLabel(""); row().fillX().space(Display.devicePixel(8)); Image avatarImage = new Image(new TextureRegionDrawable(avatar), Scaling.none); avatarImage.setColor(avatar.getColor()); add(avatarImage); add(FontManager.Default.makeLabel(avatar.getName())).expandX(); add(hungerBar); add(restaurantsSatsifaction); add(movingToLabel).width(200); } @Override public void act(float delta) { super.act(delta); timeUntilUpdate -= delta; if (timeUntilUpdate <= 0) { timeUntilUpdate = 2f; hungerBar.setValue((int) (avatar.getHungerLevel() * 100)); restaurantsSatsifaction.setValue((int) (avatar.getSatisfactionFood() * 100)); GridObject target = avatar.getMovementTarget(); if (target != null) { movingToLabel.setText(target.getName()); } else { movingToLabel.setText(""); } } } }