v0.3.4: moved some functionality from Utils in prep for removing it.

This commit is contained in:
Evan Debenham 2016-01-26 15:08:41 -05:00
parent 17bb42f7f7
commit d9d6e45d04
14 changed files with 103 additions and 109 deletions

View File

@ -52,11 +52,11 @@ import com.shatteredpixel.shatteredpixeldungeon.levels.PrisonLevel;
import com.shatteredpixel.shatteredpixeldungeon.levels.Room; import com.shatteredpixel.shatteredpixeldungeon.levels.Room;
import com.shatteredpixel.shatteredpixeldungeon.levels.SewerBossLevel; import com.shatteredpixel.shatteredpixeldungeon.levels.SewerBossLevel;
import com.shatteredpixel.shatteredpixeldungeon.levels.SewerLevel; import com.shatteredpixel.shatteredpixeldungeon.levels.SewerLevel;
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene; import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
import com.shatteredpixel.shatteredpixeldungeon.scenes.StartScene; import com.shatteredpixel.shatteredpixeldungeon.scenes.StartScene;
import com.shatteredpixel.shatteredpixeldungeon.ui.QuickSlotButton; import com.shatteredpixel.shatteredpixeldungeon.ui.QuickSlotButton;
import com.shatteredpixel.shatteredpixeldungeon.utils.BArray; import com.shatteredpixel.shatteredpixeldungeon.utils.BArray;
import com.shatteredpixel.shatteredpixeldungeon.utils.Utils;
import com.shatteredpixel.shatteredpixeldungeon.windows.WndResurrect; import com.shatteredpixel.shatteredpixeldungeon.windows.WndResurrect;
import com.watabou.noosa.Game; import com.watabou.noosa.Game;
import com.watabou.utils.Bundlable; import com.watabou.utils.Bundlable;
@ -488,7 +488,7 @@ public class Dungeon {
bundle.put( LEVEL, level ); bundle.put( LEVEL, level );
OutputStream output = Game.instance.openFileOutput( OutputStream output = Game.instance.openFileOutput(
Utils.format( depthFile( hero.heroClass ), depth ), Game.MODE_PRIVATE ); Messages.format( depthFile( hero.heroClass ), depth ), Game.MODE_PRIVATE );
Bundle.write( bundle, output ); Bundle.write( bundle, output );
output.close(); output.close();
} }
@ -631,7 +631,7 @@ public class Dungeon {
Dungeon.level = null; Dungeon.level = null;
Actor.clear(); Actor.clear();
InputStream input = Game.instance.openFileInput( Utils.format( depthFile( cl ), depth ) ) ; InputStream input = Game.instance.openFileInput( Messages.format( depthFile( cl ), depth ) ) ;
Bundle bundle = Bundle.read( input ); Bundle bundle = Bundle.read( input );
input.close(); input.close();
@ -644,7 +644,7 @@ public class Dungeon {
if (deleteLevels) { if (deleteLevels) {
int depth = 1; int depth = 1;
while (Game.instance.deleteFile( Utils.format( depthFile( cl ), depth ) )) { while (Game.instance.deleteFile( Messages.format( depthFile( cl ), depth ) )) {
depth++; depth++;
} }
} }

View File

@ -20,6 +20,13 @@
*/ */
package com.shatteredpixel.shatteredpixeldungeon; package com.shatteredpixel.shatteredpixeldungeon;
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.HeroClass;
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
import com.watabou.noosa.Game;
import com.watabou.utils.Bundlable;
import com.watabou.utils.Bundle;
import com.watabou.utils.SystemTime;
import java.io.IOException; import java.io.IOException;
import java.io.InputStream; import java.io.InputStream;
import java.io.OutputStream; import java.io.OutputStream;
@ -27,15 +34,6 @@ import java.util.ArrayList;
import java.util.Collections; import java.util.Collections;
import java.util.Comparator; import java.util.Comparator;
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Mob;
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
import com.watabou.noosa.Game;
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.HeroClass;
import com.shatteredpixel.shatteredpixeldungeon.utils.Utils;
import com.watabou.utils.Bundlable;
import com.watabou.utils.Bundle;
import com.watabou.utils.SystemTime;
public enum Rankings { public enum Rankings {
INSTANCE; INSTANCE;
@ -64,7 +62,7 @@ public enum Rankings {
rec.depth = Dungeon.depth; rec.depth = Dungeon.depth;
rec.score = score( win ); rec.score = score( win );
String gameFile = Utils.format( DETAILS_FILE, SystemTime.now ); String gameFile = Messages.format( DETAILS_FILE, SystemTime.now );
try { try {
Dungeon.saveGame( gameFile ); Dungeon.saveGame( gameFile );
rec.gameFile = gameFile; rec.gameFile = gameFile;

View File

@ -20,21 +20,20 @@
*/ */
package com.shatteredpixel.shatteredpixeldungeon.items; package com.shatteredpixel.shatteredpixeldungeon.items;
import java.util.ArrayList;
import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.HeroClass;
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
import com.watabou.noosa.audio.Sample;
import com.shatteredpixel.shatteredpixeldungeon.Assets; import com.shatteredpixel.shatteredpixeldungeon.Assets;
import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero; import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.HeroClass;
import com.shatteredpixel.shatteredpixeldungeon.effects.Speck; import com.shatteredpixel.shatteredpixeldungeon.effects.Speck;
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
import com.shatteredpixel.shatteredpixeldungeon.sprites.CharSprite; import com.shatteredpixel.shatteredpixeldungeon.sprites.CharSprite;
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet; import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog; import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
import com.shatteredpixel.shatteredpixeldungeon.utils.Utils; import com.watabou.noosa.audio.Sample;
import com.watabou.utils.Bundle; import com.watabou.utils.Bundle;
import java.util.ArrayList;
public class DewVial extends Item { public class DewVial extends Item {
private static final int MAX_VOLUME = 10; private static final int MAX_VOLUME = 10;
@ -154,7 +153,7 @@ public class DewVial extends Item {
@Override @Override
public String status() { public String status() {
return Utils.format( TXT_STATUS, volume, MAX_VOLUME ); return Messages.format( TXT_STATUS, volume, MAX_VOLUME );
} }
@Override @Override

View File

@ -39,7 +39,6 @@ import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSprite;
import com.shatteredpixel.shatteredpixeldungeon.sprites.MissileSprite; import com.shatteredpixel.shatteredpixeldungeon.sprites.MissileSprite;
import com.shatteredpixel.shatteredpixeldungeon.ui.QuickSlotButton; import com.shatteredpixel.shatteredpixeldungeon.ui.QuickSlotButton;
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog; import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
import com.shatteredpixel.shatteredpixeldungeon.utils.Utils;
import com.watabou.noosa.audio.Sample; import com.watabou.noosa.audio.Sample;
import com.watabou.noosa.particles.Emitter; import com.watabou.noosa.particles.Emitter;
import com.watabou.utils.Bundlable; import com.watabou.utils.Bundlable;
@ -345,15 +344,15 @@ public class Item implements Bundlable {
if (levelKnown && level != 0) { if (levelKnown && level != 0) {
if (quantity > 1) { if (quantity > 1) {
return Utils.format( TXT_TO_STRING_LVL_X, name(), level, quantity ); return Messages.format( TXT_TO_STRING_LVL_X, name(), level, quantity );
} else { } else {
return Utils.format( TXT_TO_STRING_LVL, name(), level ); return Messages.format( TXT_TO_STRING_LVL, name(), level );
} }
} else { } else {
if (quantity > 1) { if (quantity > 1) {
return Utils.format( TXT_TO_STRING_X, name(), quantity ); return Messages.format( TXT_TO_STRING_X, name(), quantity );
} else { } else {
return Utils.format( TXT_TO_STRING, name() ); return Messages.format( TXT_TO_STRING, name() );
} }
} }
} }

View File

@ -26,12 +26,20 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.Char;
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero; import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
import com.shatteredpixel.shatteredpixeldungeon.items.EquipableItem; import com.shatteredpixel.shatteredpixeldungeon.items.EquipableItem;
import com.shatteredpixel.shatteredpixeldungeon.items.Item; import com.shatteredpixel.shatteredpixeldungeon.items.Item;
import com.shatteredpixel.shatteredpixeldungeon.items.armor.glyphs.*; import com.shatteredpixel.shatteredpixeldungeon.items.armor.glyphs.Affection;
import com.shatteredpixel.shatteredpixeldungeon.items.armor.glyphs.AntiEntropy;
import com.shatteredpixel.shatteredpixeldungeon.items.armor.glyphs.Bounce;
import com.shatteredpixel.shatteredpixeldungeon.items.armor.glyphs.Displacement;
import com.shatteredpixel.shatteredpixeldungeon.items.armor.glyphs.Entanglement;
import com.shatteredpixel.shatteredpixeldungeon.items.armor.glyphs.Metabolism;
import com.shatteredpixel.shatteredpixeldungeon.items.armor.glyphs.Multiplicity;
import com.shatteredpixel.shatteredpixeldungeon.items.armor.glyphs.Potential;
import com.shatteredpixel.shatteredpixeldungeon.items.armor.glyphs.Stench;
import com.shatteredpixel.shatteredpixeldungeon.items.armor.glyphs.Viscosity;
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages; import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
import com.shatteredpixel.shatteredpixeldungeon.sprites.HeroSprite; import com.shatteredpixel.shatteredpixeldungeon.sprites.HeroSprite;
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSprite; import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSprite;
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog; import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
import com.shatteredpixel.shatteredpixeldungeon.utils.Utils;
import com.watabou.utils.Bundlable; import com.watabou.utils.Bundlable;
import com.watabou.utils.Bundle; import com.watabou.utils.Bundle;
import com.watabou.utils.Random; import com.watabou.utils.Random;
@ -182,7 +190,7 @@ public class Armor extends EquipableItem {
@Override @Override
public String toString() { public String toString() {
return levelKnown ? Utils.format( TXT_TO_STRING, super.toString(), STR ) : super.toString(); return levelKnown ? Messages.format( TXT_TO_STRING, super.toString(), STR ) : super.toString();
} }
@Override @Override

View File

@ -34,8 +34,6 @@ import com.shatteredpixel.shatteredpixeldungeon.windows.WndOptions;
import com.watabou.utils.Bundle; import com.watabou.utils.Bundle;
import com.watabou.utils.Random; import com.watabou.utils.Random;
import java.util.ArrayList;
public class Artifact extends KindofMisc { public class Artifact extends KindofMisc {
private static final float TIME_TO_EQUIP = 1f; private static final float TIME_TO_EQUIP = 1f;
@ -204,15 +202,15 @@ public class Artifact extends KindofMisc {
if (levelKnown && level()/levelCap != 0) { if (levelKnown && level()/levelCap != 0) {
if (chargeCap > 0) { if (chargeCap > 0) {
return Utils.format( TXT_TO_STRING_LVL_CHARGE, name(), visiblyUpgraded(), charge, chargeCap ); return Messages.format( TXT_TO_STRING_LVL_CHARGE, name(), visiblyUpgraded(), charge, chargeCap );
} else { } else {
return Utils.format( TXT_TO_STRING_LVL, name(), visiblyUpgraded() ); return Messages.format( TXT_TO_STRING_LVL, name(), visiblyUpgraded() );
} }
} else { } else {
if (chargeCap > 0) { if (chargeCap > 0) {
return Utils.format( TXT_TO_STRING_CHARGE, name(), charge, chargeCap ); return Messages.format( TXT_TO_STRING_CHARGE, name(), charge, chargeCap );
} else { } else {
return Utils.format( TXT_TO_STRING, name() ); return Messages.format( TXT_TO_STRING, name() );
} }
} }
} }
@ -222,20 +220,20 @@ public class Artifact extends KindofMisc {
//display the current cooldown //display the current cooldown
if (cooldown != 0) if (cooldown != 0)
return Utils.format( "%d", cooldown ); return Messages.format( "%d", cooldown );
//display as percent //display as percent
if (chargeCap == 100) if (chargeCap == 100)
return Utils.format( "%d%%", charge ); return Messages.format( "%d%%", charge );
//display as #/# //display as #/#
if (chargeCap > 0) if (chargeCap > 0)
return Utils.format( "%d/%d", charge, chargeCap ); return Messages.format( "%d/%d", charge, chargeCap );
//if there's no cap - //if there's no cap -
//- but there is charge anyway, display that charge //- but there is charge anyway, display that charge
if (charge != 0) if (charge != 0)
return Utils.format( "%d", charge ); return Messages.format( "%d", charge );
//otherwise, if there's no charge, return null. //otherwise, if there's no charge, return null.
return null; return null;

View File

@ -29,13 +29,21 @@ import com.shatteredpixel.shatteredpixeldungeon.items.Item;
import com.shatteredpixel.shatteredpixeldungeon.items.KindOfWeapon; import com.shatteredpixel.shatteredpixeldungeon.items.KindOfWeapon;
import com.shatteredpixel.shatteredpixeldungeon.items.rings.RingOfFuror; import com.shatteredpixel.shatteredpixeldungeon.items.rings.RingOfFuror;
import com.shatteredpixel.shatteredpixeldungeon.items.rings.RingOfSharpshooting; import com.shatteredpixel.shatteredpixeldungeon.items.rings.RingOfSharpshooting;
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.enchantments.*; import com.shatteredpixel.shatteredpixeldungeon.items.weapon.enchantments.Death;
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.enchantments.Fire;
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.enchantments.Horror;
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.enchantments.Instability;
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.enchantments.Leech;
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.enchantments.Luck;
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.enchantments.Paralysis;
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.enchantments.Poison;
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.enchantments.Shock;
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.enchantments.Slow;
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.MeleeWeapon; import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.MeleeWeapon;
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.missiles.MissileWeapon; import com.shatteredpixel.shatteredpixeldungeon.items.weapon.missiles.MissileWeapon;
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages; import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSprite; import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSprite;
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog; import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
import com.shatteredpixel.shatteredpixeldungeon.utils.Utils;
import com.watabou.utils.Bundlable; import com.watabou.utils.Bundlable;
import com.watabou.utils.Bundle; import com.watabou.utils.Bundle;
import com.watabou.utils.Random; import com.watabou.utils.Random;
@ -177,7 +185,7 @@ abstract public class Weapon extends KindOfWeapon {
@Override @Override
public String toString() { public String toString() {
return levelKnown ? Utils.format( TXT_TO_STRING, super.toString(), STR ) : super.toString(); return levelKnown ? Messages.format( TXT_TO_STRING, super.toString(), STR ) : super.toString();
} }
@Override @Override

View File

@ -81,6 +81,10 @@ public class Messages {
} }
} }
public static String format( String format, Object...args ) {
return String.format( Locale.ENGLISH, format, args );
}
public static String get(String key, Object...args){ public static String get(String key, Object...args){
return get(null, key, args); return get(null, key, args);
} }
@ -109,7 +113,7 @@ public class Messages {
return "!!!NO TEXT FOUND!!!"; return "!!!NO TEXT FOUND!!!";
} }
} else { } else {
if (args.length > 0) return String.format(Locale.ENGLISH, strings.get(key.toLowerCase()), args); if (args.length > 0) return format(strings.get(key.toLowerCase()), args);
else return strings.get(key.toLowerCase()); else return strings.get(key.toLowerCase());
} }
} }

View File

@ -20,9 +20,24 @@
*/ */
package com.shatteredpixel.shatteredpixeldungeon.scenes; package com.shatteredpixel.shatteredpixeldungeon.scenes;
import java.util.HashMap; import com.shatteredpixel.shatteredpixeldungeon.Assets;
import com.shatteredpixel.shatteredpixeldungeon.Badges;
import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
import com.shatteredpixel.shatteredpixeldungeon.GamesInProgress;
import com.shatteredpixel.shatteredpixeldungeon.ShatteredPixelDungeon;
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.HeroClass;
import com.shatteredpixel.shatteredpixeldungeon.effects.BannerSprites;
import com.shatteredpixel.shatteredpixeldungeon.effects.BannerSprites.Type;
import com.shatteredpixel.shatteredpixeldungeon.effects.Speck;
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages; import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
import com.shatteredpixel.shatteredpixeldungeon.ui.Archs;
import com.shatteredpixel.shatteredpixeldungeon.ui.ExitButton;
import com.shatteredpixel.shatteredpixeldungeon.ui.Icons;
import com.shatteredpixel.shatteredpixeldungeon.ui.RedButton;
import com.shatteredpixel.shatteredpixeldungeon.windows.WndChallenges;
import com.shatteredpixel.shatteredpixeldungeon.windows.WndClass;
import com.shatteredpixel.shatteredpixeldungeon.windows.WndMessage;
import com.shatteredpixel.shatteredpixeldungeon.windows.WndOptions;
import com.watabou.noosa.Camera; import com.watabou.noosa.Camera;
import com.watabou.noosa.Game; import com.watabou.noosa.Game;
import com.watabou.noosa.Group; import com.watabou.noosa.Group;
@ -33,26 +48,10 @@ import com.watabou.noosa.audio.Sample;
import com.watabou.noosa.particles.BitmaskEmitter; import com.watabou.noosa.particles.BitmaskEmitter;
import com.watabou.noosa.particles.Emitter; import com.watabou.noosa.particles.Emitter;
import com.watabou.noosa.ui.Button; import com.watabou.noosa.ui.Button;
import com.shatteredpixel.shatteredpixeldungeon.Assets;
import com.shatteredpixel.shatteredpixeldungeon.Badges;
import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
import com.shatteredpixel.shatteredpixeldungeon.GamesInProgress;
import com.shatteredpixel.shatteredpixeldungeon.ShatteredPixelDungeon;
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.HeroClass;
import com.shatteredpixel.shatteredpixeldungeon.effects.BannerSprites;
import com.shatteredpixel.shatteredpixeldungeon.effects.Speck;
import com.shatteredpixel.shatteredpixeldungeon.effects.BannerSprites.Type;
import com.shatteredpixel.shatteredpixeldungeon.ui.Archs;
import com.shatteredpixel.shatteredpixeldungeon.ui.ExitButton;
import com.shatteredpixel.shatteredpixeldungeon.ui.Icons;
import com.shatteredpixel.shatteredpixeldungeon.ui.RedButton;
import com.shatteredpixel.shatteredpixeldungeon.utils.Utils;
import com.shatteredpixel.shatteredpixeldungeon.windows.WndChallenges;
import com.shatteredpixel.shatteredpixeldungeon.windows.WndClass;
import com.shatteredpixel.shatteredpixeldungeon.windows.WndMessage;
import com.shatteredpixel.shatteredpixeldungeon.windows.WndOptions;
import com.watabou.utils.Callback; import com.watabou.utils.Callback;
import java.util.HashMap;
public class StartScene extends PixelScene { public class StartScene extends PixelScene {
private static final float BUTTON_HEIGHT = 24; private static final float BUTTON_HEIGHT = 24;
@ -254,7 +253,7 @@ public class StartScene extends PixelScene {
if (info != null) { if (info != null) {
btnLoad.visible = true; btnLoad.visible = true;
btnLoad.secondary( Utils.format( Messages.get(this, "depth_level"), info.depth, info.level ), info.challenges ); btnLoad.secondary( Messages.format( Messages.get(this, "depth_level"), info.depth, info.level ), info.challenges );
btnNewGame.visible = true; btnNewGame.visible = true;
btnNewGame.secondary( Messages.get(this, "erase"), false ); btnNewGame.secondary( Messages.get(this, "erase"), false );

View File

@ -20,19 +20,10 @@
*/ */
package com.shatteredpixel.shatteredpixeldungeon.sprites; package com.shatteredpixel.shatteredpixeldungeon.sprites;
import com.shatteredpixel.shatteredpixeldungeon.effects.DarkBlock;
import com.shatteredpixel.shatteredpixeldungeon.effects.particles.ShadowParticle;
import com.shatteredpixel.shatteredpixeldungeon.effects.particles.SnowParticle;
import com.watabou.noosa.Game;
import com.watabou.noosa.MovieClip;
import com.watabou.noosa.Visual;
import com.watabou.noosa.audio.Sample;
import com.watabou.noosa.particles.Emitter;
import com.watabou.noosa.tweeners.PosTweener;
import com.watabou.noosa.tweeners.Tweener;
import com.shatteredpixel.shatteredpixeldungeon.Assets; import com.shatteredpixel.shatteredpixeldungeon.Assets;
import com.shatteredpixel.shatteredpixeldungeon.DungeonTilemap; import com.shatteredpixel.shatteredpixeldungeon.DungeonTilemap;
import com.shatteredpixel.shatteredpixeldungeon.actors.Char; import com.shatteredpixel.shatteredpixeldungeon.actors.Char;
import com.shatteredpixel.shatteredpixeldungeon.effects.DarkBlock;
import com.shatteredpixel.shatteredpixeldungeon.effects.EmoIcon; import com.shatteredpixel.shatteredpixeldungeon.effects.EmoIcon;
import com.shatteredpixel.shatteredpixeldungeon.effects.FloatingText; import com.shatteredpixel.shatteredpixeldungeon.effects.FloatingText;
import com.shatteredpixel.shatteredpixeldungeon.effects.IceBlock; import com.shatteredpixel.shatteredpixeldungeon.effects.IceBlock;
@ -40,10 +31,19 @@ import com.shatteredpixel.shatteredpixeldungeon.effects.Speck;
import com.shatteredpixel.shatteredpixeldungeon.effects.Splash; import com.shatteredpixel.shatteredpixeldungeon.effects.Splash;
import com.shatteredpixel.shatteredpixeldungeon.effects.TorchHalo; import com.shatteredpixel.shatteredpixeldungeon.effects.TorchHalo;
import com.shatteredpixel.shatteredpixeldungeon.effects.particles.FlameParticle; import com.shatteredpixel.shatteredpixeldungeon.effects.particles.FlameParticle;
import com.shatteredpixel.shatteredpixeldungeon.effects.particles.ShadowParticle;
import com.shatteredpixel.shatteredpixeldungeon.effects.particles.SnowParticle;
import com.shatteredpixel.shatteredpixeldungeon.items.potions.PotionOfInvisibility; import com.shatteredpixel.shatteredpixeldungeon.items.potions.PotionOfInvisibility;
import com.shatteredpixel.shatteredpixeldungeon.levels.Level; import com.shatteredpixel.shatteredpixeldungeon.levels.Level;
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene; import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
import com.shatteredpixel.shatteredpixeldungeon.utils.Utils; import com.watabou.noosa.Game;
import com.watabou.noosa.MovieClip;
import com.watabou.noosa.Visual;
import com.watabou.noosa.audio.Sample;
import com.watabou.noosa.particles.Emitter;
import com.watabou.noosa.tweeners.PosTweener;
import com.watabou.noosa.tweeners.Tweener;
import com.watabou.utils.Callback; import com.watabou.utils.Callback;
import com.watabou.utils.PointF; import com.watabou.utils.PointF;
import com.watabou.utils.Random; import com.watabou.utils.Random;
@ -129,7 +129,7 @@ public class CharSprite extends MovieClip implements Tweener.Listener, MovieClip
public void showStatus( int color, String text, Object... args ) { public void showStatus( int color, String text, Object... args ) {
if (visible) { if (visible) {
if (args.length > 0) { if (args.length > 0) {
text = Utils.format( text, args ); text = Messages.format( text, args );
} }
if (ch != null) { if (ch != null) {
PointF tile = DungeonTilemap.tileCenterToWorld(ch.pos); PointF tile = DungeonTilemap.tileCenterToWorld(ch.pos);

View File

@ -27,17 +27,13 @@ import com.shatteredpixel.shatteredpixeldungeon.items.armor.Armor;
import com.shatteredpixel.shatteredpixeldungeon.items.keys.Key; import com.shatteredpixel.shatteredpixeldungeon.items.keys.Key;
import com.shatteredpixel.shatteredpixeldungeon.items.keys.SkeletonKey; import com.shatteredpixel.shatteredpixeldungeon.items.keys.SkeletonKey;
import com.shatteredpixel.shatteredpixeldungeon.items.potions.Potion; import com.shatteredpixel.shatteredpixeldungeon.items.potions.Potion;
import com.shatteredpixel.shatteredpixeldungeon.items.potions.PotionOfMight;
import com.shatteredpixel.shatteredpixeldungeon.items.potions.PotionOfStrength;
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.Scroll; import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.Scroll;
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.ScrollOfMagicalInfusion;
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.ScrollOfUpgrade;
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.Weapon; import com.shatteredpixel.shatteredpixeldungeon.items.weapon.Weapon;
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.MeleeWeapon; import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.MeleeWeapon;
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
import com.shatteredpixel.shatteredpixeldungeon.scenes.PixelScene; import com.shatteredpixel.shatteredpixeldungeon.scenes.PixelScene;
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSprite; import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSprite;
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet; import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
import com.shatteredpixel.shatteredpixeldungeon.utils.Utils;
import com.watabou.noosa.BitmapText; import com.watabou.noosa.BitmapText;
import com.watabou.noosa.Image; import com.watabou.noosa.Image;
import com.watabou.noosa.ui.Button; import com.watabou.noosa.ui.Button;
@ -170,7 +166,7 @@ public class ItemSlot extends Button {
if (item.levelKnown || (isWeapon && !(item instanceof MeleeWeapon))) { if (item.levelKnown || (isWeapon && !(item instanceof MeleeWeapon))) {
int str = isArmor ? ((Armor)item).STR : ((Weapon)item).STR; int str = isArmor ? ((Armor)item).STR : ((Weapon)item).STR;
topRight.text( Utils.format( TXT_STRENGTH, str ) ); topRight.text( Messages.format( TXT_STRENGTH, str ) );
if (str > Dungeon.hero.STR()) { if (str > Dungeon.hero.STR()) {
topRight.hardlight( DEGRADED ); topRight.hardlight( DEGRADED );
} else { } else {
@ -179,7 +175,7 @@ public class ItemSlot extends Button {
} else { } else {
topRight.text( Utils.format( TXT_TYPICAL_STR, isArmor ? topRight.text( Messages.format( TXT_TYPICAL_STR, isArmor ?
((Armor)item).typicalSTR() : ((Armor)item).typicalSTR() :
((MeleeWeapon)item).typicalSTR() ) ); ((MeleeWeapon)item).typicalSTR() ) );
topRight.hardlight( WARNING ); topRight.hardlight( WARNING );
@ -188,7 +184,7 @@ public class ItemSlot extends Button {
topRight.measure(); topRight.measure();
} else if (item instanceof Key && !(item instanceof SkeletonKey)) { } else if (item instanceof Key && !(item instanceof SkeletonKey)) {
topRight.text(Utils.format(TXT_KEY_DEPTH, ((Key) item).depth)); topRight.text(Messages.format(TXT_KEY_DEPTH, ((Key) item).depth));
topRight.measure(); topRight.measure();
} else { } else {
@ -199,7 +195,7 @@ public class ItemSlot extends Button {
int level = item.visiblyUpgraded(); int level = item.visiblyUpgraded();
if (level != 0) { if (level != 0) {
bottomRight.text( item.levelKnown ? Utils.format( TXT_LEVEL, level ) : TXT_CURSED ); bottomRight.text( item.levelKnown ? Messages.format( TXT_LEVEL, level ) : TXT_CURSED );
bottomRight.measure(); bottomRight.measure();
bottomRight.hardlight( level > 0 ? UPGRADED : DEGRADED ); bottomRight.hardlight( level > 0 ? UPGRADED : DEGRADED );
} else if (item instanceof Scroll || item instanceof Potion) { } else if (item instanceof Scroll || item instanceof Potion) {

View File

@ -20,9 +20,9 @@
*/ */
package com.shatteredpixel.shatteredpixeldungeon.utils; package com.shatteredpixel.shatteredpixeldungeon.utils;
import com.watabou.utils.Signal;
import android.util.Log; import android.util.Log;
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
import com.watabou.utils.Signal;
public class GLog { public class GLog {
@ -38,7 +38,7 @@ public class GLog {
public static void i( String text, Object... args ) { public static void i( String text, Object... args ) {
if (args.length > 0) { if (args.length > 0) {
text = Utils.format( text, args ); text = Messages.format( text, args );
} }
Log.i( TAG, text ); Log.i( TAG, text );

View File

@ -20,25 +20,10 @@
*/ */
package com.shatteredpixel.shatteredpixeldungeon.utils; package com.shatteredpixel.shatteredpixeldungeon.utils;
import java.util.Locale;
public class Utils { public class Utils {
public static String capitalize( String str ) { public static String capitalize( String str ) {
return Character.toUpperCase( str.charAt( 0 ) ) + str.substring( 1 ); return Character.toUpperCase( str.charAt( 0 ) ) + str.substring( 1 );
} }
public static String format( String format, Object...args ) {
return String.format( Locale.ENGLISH, format, args );
}
public static String VOWELS = "aoeiu";
public static String indefinite( String noun ) {
if (noun.length() == 0) {
return "a";
} else {
return (VOWELS.indexOf( Character.toLowerCase( noun.charAt( 0 ) ) ) != -1 ? "an " : "a ") + noun;
}
}
} }

View File

@ -21,13 +21,13 @@
package com.shatteredpixel.shatteredpixeldungeon.windows; package com.shatteredpixel.shatteredpixeldungeon.windows;
import com.shatteredpixel.shatteredpixeldungeon.ShatteredPixelDungeon; import com.shatteredpixel.shatteredpixeldungeon.ShatteredPixelDungeon;
import com.shatteredpixel.shatteredpixeldungeon.items.Heap;
import com.shatteredpixel.shatteredpixeldungeon.items.Heap.Type;
import com.shatteredpixel.shatteredpixeldungeon.items.Item;
import com.shatteredpixel.shatteredpixeldungeon.items.artifacts.Artifact; import com.shatteredpixel.shatteredpixeldungeon.items.artifacts.Artifact;
import com.shatteredpixel.shatteredpixeldungeon.items.rings.Ring; import com.shatteredpixel.shatteredpixeldungeon.items.rings.Ring;
import com.shatteredpixel.shatteredpixeldungeon.items.wands.Wand; import com.shatteredpixel.shatteredpixeldungeon.items.wands.Wand;
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages; import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
import com.shatteredpixel.shatteredpixeldungeon.items.Heap;
import com.shatteredpixel.shatteredpixeldungeon.items.Heap.Type;
import com.shatteredpixel.shatteredpixeldungeon.items.Item;
import com.shatteredpixel.shatteredpixeldungeon.scenes.PixelScene; import com.shatteredpixel.shatteredpixeldungeon.scenes.PixelScene;
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSprite; import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSprite;
import com.shatteredpixel.shatteredpixeldungeon.ui.ItemSlot; import com.shatteredpixel.shatteredpixeldungeon.ui.ItemSlot;
@ -84,7 +84,7 @@ public class WndInfoItem extends Window {
else if (heap.peek() instanceof Ring) else if (heap.peek() instanceof Ring)
info = Messages.get(this, "inside", Messages.get(this, "ring") ); info = Messages.get(this, "inside", Messages.get(this, "ring") );
else else
info = Messages.get(this, "inside", Utils.indefinite( heap.peek().name() ) ); info = ""; //This shouldn't happen
} else { } else {
title = Messages.get(this, "locked_chest"); title = Messages.get(this, "locked_chest");
info = Messages.get(this, "need_key"); info = Messages.get(this, "need_key");