Add icons in controls menu.

This commit is contained in:
LambdAurora
2019-12-15 19:47:49 +01:00
parent 1d7c48cf59
commit 2e6b2f8434
8 changed files with 207 additions and 51 deletions

View File

@@ -0,0 +1,40 @@
/*
* Copyright © 2019 LambdAurora <aurora42lambda@gmail.com>
*
* This file is part of LambdaControls.
*
* Licensed under the MIT license. For more information,
* see the LICENSE file.
*/
package me.lambdaurora.lambdacontrols.gui;
import me.lambdaurora.lambdacontrols.ButtonBinding;
import me.lambdaurora.lambdacontrols.LambdaControls;
import net.minecraft.client.MinecraftClient;
import org.jetbrains.annotations.NotNull;
/**
* Represents a controller button widget.
*/
public class ControllerButtonWidget extends AbstractIconButtonWidget
{
private ButtonBinding binding;
public ControllerButtonWidget(int x, int y, int width, @NotNull ButtonBinding button_binding, @NotNull PressAction on_press)
{
super(x, y, width, 20, ButtonBinding.get_localized_button_name(button_binding.get_button()), on_press);
this.binding = button_binding;
}
public void update()
{
this.setMessage(ButtonBinding.get_localized_button_name(binding.get_button()));
}
@Override
protected int render_icon(int mouse_x, int mouse_y, float delta, int x, int y)
{
return LambdaControls.draw_button(x, y, this.binding, MinecraftClient.getInstance());
}
}