Android Open Source - DivisionByZero Statbar From Project Back to project page DivisionByZero .
License The source code is released under:
Apache License
If you think the Android project DivisionByZero listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.
Java Source Code package com.ggstudios.divisionbyzero;
/ / f r o m w w w . j a v a 2 s . c o m
class StatBar extends Drawable {
public float x, y, w, h;
private float max, val, val2;
private float percent;
private float percent2;
private Rectangle bg, fill, fill2;
private boolean showValue = false;
private DrawableString dsVal;
public StatBar(float x, float y, float w, float h) {
this.x = x;
this.y = y;
this.w = w;
this.h = h;
build();
}
private void build() {
bg = new Rectangle(x, y, w, h, 0xFF505050);
fill = new Rectangle(x, y, w, h, 0xFFFFFFFF);
fill2 = new Rectangle(x, y, w, h, 0xFFB1B1B1);
}
public void showValue(FontManager fm, float fontSize) {
dsVal = new DrawableString(x, y, fm, "0" );
dsVal.setTextSize(fontSize);
showValue = true;
}
private void recalculatePercent() {
percent = val / max;
if (percent > 1f) percent = 1f;
fill.setScaleWidth(percent);
}
private void recalculateSecondary() {
percent2 = val2 / max;
if (percent2 > 1f) percent2 = 1f;
fill2.setScaleWidth(percent2);
}
public void setMaxValue(float max) {
this.max = max;
recalculatePercent();
}
public void setValue(float val) {
this.val = val;
recalculatePercent();
if (showValue) {
dsVal.setText(String.valueOf(val));
dsVal.x = this.x + fill.w * percent;
}
}
public void setSecondaryValue(float val) {
this.val2 = val;
recalculateSecondary();
}
@Override
public void draw(float offX, float offY) {
if (showValue) {
dsVal.draw(offX, offY);
} else {
bg.draw(offX, offY);
}
if (percent2 > percent)
fill2.draw(offX, offY);
fill.draw(offX, offY);
}
@Override
public void refresh() {
bg.refresh();
fill.refresh();
fill2.refresh();
if (showValue)
dsVal.refresh();
}
public float getValue() {
return val;
}
}
Java Source Code List com.ggstudios.divisionbyzero.ActivityAbout.java com.ggstudios.divisionbyzero.ActivityLevelSelection.java com.ggstudios.divisionbyzero.ActivityMainMenu.java com.ggstudios.divisionbyzero.ActivitySettings.java com.ggstudios.divisionbyzero.ActivitySplashScreen.java com.ggstudios.divisionbyzero.ApplicationMain.java com.ggstudios.divisionbyzero.BaseActivity.java com.ggstudios.divisionbyzero.BaseDialog.java com.ggstudios.divisionbyzero.BulletManager.java com.ggstudios.divisionbyzero.Bullet.java com.ggstudios.divisionbyzero.Button.java com.ggstudios.divisionbyzero.Circle.java com.ggstudios.divisionbyzero.ClickableCollection.java com.ggstudios.divisionbyzero.Clickable.java com.ggstudios.divisionbyzero.ConfirmDialog.java com.ggstudios.divisionbyzero.Core.java com.ggstudios.divisionbyzero.CustomGLSurfaceView.java com.ggstudios.divisionbyzero.DialogManager.java com.ggstudios.divisionbyzero.DrawableCollection.java com.ggstudios.divisionbyzero.DrawableString.java com.ggstudios.divisionbyzero.Drawable.java com.ggstudios.divisionbyzero.EndDialog.java com.ggstudios.divisionbyzero.Event.java com.ggstudios.divisionbyzero.ExplosionGenerator.java com.ggstudios.divisionbyzero.ExtrasManager.java com.ggstudios.divisionbyzero.FontManager.java com.ggstudios.divisionbyzero.GameRenderer.java com.ggstudios.divisionbyzero.GameUpdater.java com.ggstudios.divisionbyzero.Game.java com.ggstudios.divisionbyzero.Grid.java com.ggstudios.divisionbyzero.Hud.java com.ggstudios.divisionbyzero.InGameMenu.java com.ggstudios.divisionbyzero.InfoDialog.java com.ggstudios.divisionbyzero.Label.java com.ggstudios.divisionbyzero.LevelManager.java com.ggstudios.divisionbyzero.LevelMap.java com.ggstudios.divisionbyzero.LineGuide.java com.ggstudios.divisionbyzero.MainActivity.java com.ggstudios.divisionbyzero.Map.java com.ggstudios.divisionbyzero.MessageDialog.java com.ggstudios.divisionbyzero.ParticleEngine.java com.ggstudios.divisionbyzero.PathFinder.java com.ggstudios.divisionbyzero.PauseMenu.java com.ggstudios.divisionbyzero.PictureBox.java com.ggstudios.divisionbyzero.Player.java com.ggstudios.divisionbyzero.PopupMenu.java com.ggstudios.divisionbyzero.Rectangle.java com.ggstudios.divisionbyzero.Shader.java com.ggstudios.divisionbyzero.SpawnManager.java com.ggstudios.divisionbyzero.SpriteAnimation.java com.ggstudios.divisionbyzero.SpriteManager.java com.ggstudios.divisionbyzero.Sprite.java com.ggstudios.divisionbyzero.Statbar.java com.ggstudios.divisionbyzero.StateManager.java com.ggstudios.divisionbyzero.TargetRectangle.java com.ggstudios.divisionbyzero.TextureManager.java com.ggstudios.divisionbyzero.TowerInfoDialog.java com.ggstudios.divisionbyzero.TowerLibrary.java com.ggstudios.divisionbyzero.TowerManager.java com.ggstudios.divisionbyzero.TowerMenu.java com.ggstudios.divisionbyzero.Tower.java com.ggstudios.divisionbyzero.UpdatableCollection.java com.ggstudios.divisionbyzero.Updatable.java com.ggstudios.divisionbyzero.UpgradeDialog.java com.ggstudios.divisionbyzero.Utils.java com.ggstudios.divisionbyzero.VBO.java com.ggstudios.divisionbyzero.WaveControlDialog.java com.ggstudios.divisionbyzero.WaveControlHud.java com.ggstudios.divisionbyzero.ZoomControl.java com.ggstudios.utils.BitmapUtils.java com.ggstudios.utils.BufferUtils.java com.ggstudios.utils.DebugLog.java com.ggstudios.utils.ShaderUtils.java com.ggstudios.widget.LevelMapBackground.java fix.android.opengl.GLES20.java