Изменён способ доступа к спрайтам

This commit is contained in:
Victor 2015-04-06 17:07:18 +03:00
parent a2249d130a
commit 59fc1e68dd
3 changed files with 9 additions and 10 deletions

View File

@ -146,16 +146,17 @@ public final class Parser {
private boolean show() {
final String whoid = consume(TokenType.WORD).getText();
final String emotion = lookMatch(0, TokenType.WORD) ? consume(TokenType.WORD).getText() : "";
final String cloth = lookMatch(0, TokenType.WORD) ? consume(TokenType.WORD).getText() : "";
final String distance = lookMatch(0, TokenType.WORD) ? consume(TokenType.WORD).getText() : "";
String params = ""; // emotion? cloth? distance?
while (lookMatch(0, TokenType.WORD)) {
params += consume(TokenType.WORD).getText();
}
// Положение (left, cleft, ...)
String position = "";
if (match(TokenType.AT)) {
position = consume(TokenType.WORD).getText();
}
matchWithEffect();
ViewActivity.getInstance().sprite(whoid, emotion, cloth, distance, position);
ViewActivity.getInstance().sprite(whoid, params, position);
return false;
}

View File

@ -22,13 +22,11 @@ public final class PathResolver {
return SCRIPT_ASSETS + "/" + name;
}
public static String sprite(String whoid, String emotion, String cloth, String distance) {
public static String sprite(String whoid, String params) {
final StringBuilder sb = new StringBuilder();
sb.append(SPRITE);
sb.append(TextUtils.isEmpty(distance) ? "normal" : distance).append('/');
sb.append(whoid.toLowerCase(Locale.ENGLISH)).append('/');
sb.append(emotion);
sb.append(cloth);
sb.append(TextUtils.isEmpty(params) ? "normal" : params);
sb.append(PNG);
return sb.toString();
}

View File

@ -160,7 +160,7 @@ public final class ViewActivity extends Activity {
spriteInContainer.clear();
}
public void sprite(String whoid, String emotion, String cloth, String distance, String position) {
public void sprite(String whoid, String params, String position) {
ImageView img;
if (spriteInContainer.containsKey(whoid)) {
img = spriteInContainer.get(whoid);
@ -171,7 +171,7 @@ public final class ViewActivity extends Activity {
final FrameLayout.LayoutParams flp = new FrameLayout.LayoutParams(
FrameLayout.LayoutParams.WRAP_CONTENT, FrameLayout.LayoutParams.MATCH_PARENT);
setSpritePosition(img, flp, position);
final String path = PathResolver.sprite(whoid, emotion, cloth, distance);;
final String path = PathResolver.sprite(whoid, params);
try {
img.setImageBitmap(IOUtil.readBitmap(path));
container.addView(img, flp);