Esempio n. 1
0
  public static InterfaceGUI createScreen(final mudclient mc) {
    OnMisClickCallBack onMisClick =
        new OnMisClickCallBack() {

          @Override
          public void run() {
            mc.sendSmithingClose();
          }
        };
    Callback onclose =
        new Callback() {

          @Override
          public void run(InterfaceGUI gui, RSGuiModels id) {
            mc.sendSmithingClose();
          }
        };
    /** Greates a new interface with a 450x250 panel */
    InterfaceGUI i = new InterfaceGUI(450, 250, mc);
    i.titlebar.label = "What would you like to do?";
    i.titlebar.x = 100;
    i.xbutton.callback = onclose;
    i.outsideclick = onMisClick;
    /** Adds the interface to a list */
    InterfaceHandler.guis.add(i);
    /** Called when the label is clicked */
    Callback labelcallback =
        new Callback() {
          @Override
          public void run(InterfaceGUI gui, RSGuiModels id) {}
        };
    /**
     * Creates a label (text) and adds it to the interface at specific coordinates (the label can be
     * altered at runtime) Supports: Hover, click
     */
    final ILabel l = i.addLabel("", 220, 215, labelcallback, 1);
    l.label = "wot nao?";
    /** Called when the sprite is clicked */
    Callback spritecallback =
        new Callback() {
          @Override
          public void run(InterfaceGUI gui, RSGuiModels id) {
            ISprite sprite = (ISprite) id;
            mc.sendSmithingItem(sprite.spriteID);
          }
        };
    HoverCallback spritehover =
        new HoverCallback() {

          @Override
          public void hoverin(RSGuiModels c) {
            ISprite sprite = ((ISprite) c);
            l.label = getBarLine(sprite.spriteID);
          }

          @Override
          public void hoverout(RSGuiModels c) {
            l.label = "";
          }
        };
    HoverCallback panelhover =
        new HoverCallback() {

          @Override
          public void hoverin(RSGuiModels c) {
            if (c instanceof IPanel) {
              ((IPanel) c).borderColor = 0x6b5e53;
            }
          }

          @Override
          public void hoverout(RSGuiModels c) {
            if (c instanceof IPanel) {
              ((IPanel) c).borderColor = 0x463d2e;
            }
          }
        };
    int pointer = 0;
    /*
    int[] items = Util.IRON;
    int y = 10;
    int x = 30;
    i.addSprite(items[pointer++],x, y, spritecallback).hoverCallback = spritehover;
    i.addSprite(items[pointer++],x+50, y, spritecallback).hoverCallback = spritehover;
    i.addPanel(x, y-5, 50, 40).hoverCallback = panelhover;
    i.addPanel(x+51, y-5, 50, 40).hoverCallback = panelhover;

    y+=50;
    i.addSprite(items[pointer++],x, y, spritecallback).hoverCallback = spritehover;
    i.addSprite(items[pointer++],x+50, y, spritecallback).hoverCallback = spritehover;
    i.addPanel(x, y-5, 50, 40).hoverCallback = panelhover;
    i.addPanel(x+51, y-5, 50, 40).hoverCallback = panelhover;

    y+=50;
    i.addSprite(items[pointer++],x, y, spritecallback).hoverCallback = spritehover;
    i.addSprite(items[pointer++],x+50, y, spritecallback).hoverCallback = spritehover;
    i.addPanel(x, y-5, 50, 40).hoverCallback = panelhover;
    i.addPanel(x+51, y-5, 50, 40).hoverCallback = panelhover;


    y+=50;
    i.addSprite(items[pointer++],x, y, spritecallback).hoverCallback = spritehover;
    i.addPanel(x, y-5, 50, 40).hoverCallback = panelhover;


    y = 10;
    x = 170+30;
    i.addSprite(items[pointer++],x, y, spritecallback).hoverCallback = spritehover;
    i.addSprite(items[pointer++],x+50, y, spritecallback).hoverCallback = spritehover;
    i.addPanel(x, y-5, 50, 40).hoverCallback = panelhover;
    i.addPanel(x+51, y-5, 50, 40).hoverCallback = panelhover;

    y += 50;
    i.addSprite(items[pointer++],x, y, spritecallback).hoverCallback = spritehover;
    i.addSprite(items[pointer++],x+50, y, spritecallback).hoverCallback = spritehover;
    i.addPanel(x, y-5, 50, 40).hoverCallback = panelhover;
    i.addPanel(x+51, y-5, 50, 40).hoverCallback = panelhover;

    y += 50;
    i.addSprite(items[pointer++],x, y, spritecallback).hoverCallback = spritehover;
    i.addSprite(items[pointer++],x+50, y, spritecallback).hoverCallback = spritehover;
    i.addPanel(x, y-5, 50, 40).hoverCallback = panelhover;
    i.addPanel(x+51, y-5, 50, 40).hoverCallback = panelhover;

    y += 50;
    i.addSprite(items[pointer++],x, y, spritecallback).hoverCallback = spritehover;
    i.addSprite(items[pointer++],x+50, y, spritecallback).hoverCallback = spritehover;
    i.addPanel(x, y-5, 50, 40).hoverCallback = panelhover;
    i.addPanel(x+51, y-5, 50, 40).hoverCallback = panelhover;

    y = 10;
    x += 120;
    i.addSprite(items[pointer++],x, y, spritecallback).hoverCallback = spritehover;
    i.addSprite(items[pointer++],x+50, y, spritecallback).hoverCallback = spritehover;
    i.addPanel(x, y-5, 50, 40).hoverCallback = panelhover;
    i.addPanel(x+51, y-5, 50, 40).hoverCallback = panelhover;

    y += 50;
    i.addSprite(items[pointer++],x, y, spritecallback).hoverCallback = spritehover;
    i.addSprite(items[pointer++],x+50, y, spritecallback).hoverCallback = spritehover;
    i.addPanel(x, y-5, 50, 40).hoverCallback = panelhover;
    i.addPanel(x+51, y-5, 50, 40).hoverCallback = panelhover;
    */

    i.addLine(170, 20, 170, false);

    i.addLine(10, 200, 430, true);

    return i;
  }