コード例 #1
0
  private float createCommonStuff(TomeOfMastery tome, String text) {
    IconTitle titlebar = new IconTitle();
    titlebar.icon(new ItemSprite(tome.image(), null));
    titlebar.label(tome.name());
    titlebar.setRect(0, 0, WIDTH, 0);
    add(titlebar);

    HighlightedText hl = new HighlightedText(6);
    hl.text(text, WIDTH);
    hl.setPos(titlebar.left(), titlebar.bottom() + GAP);
    add(hl);

    return hl.bottom();
  }
コード例 #2
0
ファイル: WndInfoCell.java プロジェクト: udawos/pioneer
  public WndInfoCell(int cell) {

    super();

    int tile = Dungeon.level.map[cell];
    if (Level.water[cell]) {
      tile = Terrain.WATER;
    } else if (Level.pit[cell]) {
      tile = Terrain.CHASM;
    }

    IconTitle titlebar = new IconTitle();
    if (tile == Terrain.WATER) {
      Image water = new Image(Dungeon.level.waterTex());
      water.frame(0, 0, DungeonTilemap.SIZE, DungeonTilemap.SIZE);
      titlebar.icon(water);
    } else {
      titlebar.icon(DungeonTilemap.tile(tile));
    }
    titlebar.label(Dungeon.level.tileName(tile));
    titlebar.setRect(0, 0, WIDTH, 0);
    add(titlebar);

    BitmapTextMultiline info = PixelScene.createMultiline(6);
    add(info);

    StringBuilder desc = new StringBuilder(Dungeon.level.tileDesc(tile));

    final char newLine = '\n';
    for (Blob blob : Dungeon.level.blobs.values()) {
      if (blob.cur[cell] > 0 && blob.tileDesc() != null) {
        if (desc.length() > 0) {
          desc.append(newLine);
        }
        desc.append(blob.tileDesc());
      }
    }

    info.text(desc.length() > 0 ? desc.toString() : TXT_NOTHING);
    info.maxWidth = WIDTH;
    info.measure();
    info.x = titlebar.left();
    info.y = titlebar.bottom() + GAP;

    resize(WIDTH, (int) (info.y + info.height()));
  }
コード例 #3
0
  public WndInfoPlant(Plant plant) {

    super();

    IconTitle titlebar = new IconTitle();
    titlebar.icon(new PlantSprite(plant.image));
    titlebar.label(plant.plantName);
    titlebar.setRect(0, 0, WIDTH, 0);
    add(titlebar);

    BitmapTextMultiline info = PixelScene.createMultiline(6);
    add(info);

    info.text(plant.desc());
    info.maxWidth = WIDTH;
    info.measure();
    info.x = titlebar.left();
    info.y = titlebar.bottom() + GAP;

    resize(WIDTH, (int) (info.y + info.height()));
  }
コード例 #4
0
  public WndInfoBuff(Buff buff) {
    super();

    IconTitle titlebar = new IconTitle();

    icons = TextureCache.get(Assets.BUFFS_LARGE);
    film = new TextureFilm(icons, 16, 16);

    Image buffIcon = new Image(icons);
    buffIcon.frame(film.get(buff.icon()));

    titlebar.icon(buffIcon);
    titlebar.label(Messages.titleCase(buff.toString()), Window.TITLE_COLOR);
    titlebar.setRect(0, 0, WIDTH, 0);
    add(titlebar);

    RenderedTextMultiline txtInfo = PixelScene.renderMultiline(buff.desc(), 6);
    txtInfo.maxWidth(WIDTH);
    txtInfo.setPos(titlebar.left(), titlebar.bottom() + GAP);
    add(txtInfo);

    resize(WIDTH, (int) (txtInfo.top() + txtInfo.height()));
  }