Как поменять текстуру кнопки?

Сообщения
66
Лучшие ответы
1
Реакции
3
Некорректный заголовок вопроса
Версия Minecraft
1.7.10
Сделал своё меню.
Работает всё отлично.
Но возник вопрос, как поменять текстуру кнопок?
-
Ну вот, я создал свою кнопку. MButton.
Как установить на нее свою текстуру? Как только не пытался, толку 0.
Java:
public class MButton extends GuiButton {

   public RPGButton(int p_i1021_1_, int p_i1021_2_, int p_i1021_3_, int p_i1021_4_, int p_i1021_5_,
            String p_i1021_6_) {
        super(p_i1021_1_, p_i1021_2_, p_i1021_3_, p_i1021_4_, p_i1021_5_, p_i1021_6_);
    }

private static final Map buttonTextures = new HashMap();
   private static final List b = new ArrayList();


   public static synchronized int a(int var0) {
      int var1 = GL11.glGenLists(var0);
      buttonTextures.put(Integer.valueOf(var1), Integer.valueOf(var0));
      return var1;
   }

   public static synchronized void b(int var0) {
      GL11.glDeleteLists(var0, ((Integer)buttonTextures.remove(Integer.valueOf(var0))).intValue());
   }

   public static synchronized void a() {
      Iterator var0 = buttonTextures.entrySet().iterator();

      while(var0.hasNext()) {
         Entry var1 = (Entry)var0.next();
         GL11.glDeleteLists(((Integer)var1.getKey()).intValue(), ((Integer)var1.getValue()).intValue());
      }

      buttonTextures.clear();
   }

   public static synchronized ByteBuffer c(int var0) {
      return ByteBuffer.allocateDirect(var0).order(ByteOrder.nativeOrder());
   }

   public static IntBuffer f(int var0) {
      return c(var0 << 2).asIntBuffer();
   }

   public static FloatBuffer h(int var0) {
      return c(var0 << 2).asFloatBuffer();
   }

}
 
Последнее редактирование модератором:
Сообщения
882
Лучшие ответы
31
Реакции
162
Если использовал стандартную кнопку - никак. Создай свою и напиши к ней свой рендер.
 
Сообщения
66
Лучшие ответы
1
Реакции
3
Создал свою кнопку, что дальше?
 
Сообщения
839
Лучшие ответы
32
Реакции
294
Сообщения
947
Лучшие ответы
48
Реакции
153
Омагад. Явно откуда-то декомпильнул....
Оверрайдишь
public void drawButton(Minecraft mc, int mouseX, int mouseY)
биндишь и рисуешь в нем свою текстуру.
 
Сообщения
4,437
Лучшие ответы
115
Реакции
663
Либу то много легче заюзать, там просто указываешь текстурку и все работает
 
Сообщения
947
Лучшие ответы
48
Реакции
153
Ради кнопки цеплять либу... бреда лучше не видал.
 
Сообщения
443
Лучшие ответы
9
Реакции
32
как поменять текстуру кнопок?
Моя кнопка: (осторожно! говнокод. Мне лень красиво переписать его :D) hastebin
(1,12,2. но разница не большая. тебе надо поменять bufferbuilder на tessellator так, как это в 1,7,10 сделано)
(Можешь сразу 2 текстуры указывать, обычную, и ту,которая будет показываться,когда ты на неё наводишь мышью. либо вырежи это :D)
p.s. на 1.7.10 названия методов отличаются - не забудь поправить
 
Сообщения
4,437
Лучшие ответы
115
Реакции
663
Последнее редактирование:
Сообщения
839
Лучшие ответы
32
Реакции
294
Ради кнопки цеплять либу... бреда лучше не видал.
Согласен. Однако можно лишнее вырезать прогуардом. Но все равно юзать либу для такой задачи - это как плить из пушки по воробьям.
 
Сообщения
839
Лучшие ответы
32
Реакции
294
Ну круто. Топиккастер проблему решил, а решение не отписал. Зашкварно таки.
 
Сообщения
4,437
Лучшие ответы
115
Реакции
663
Как это нету? У кого-нить такая же проблема возникнет, ему придется опять пройти по тому же пути самому, а мог бы взять готовое решение
 
Сообщения
839
Лучшие ответы
32
Реакции
294
Сверху