Add key hints to buttons which have corresponding keybindings
This commit is contained in:
@@ -21,6 +21,7 @@ import com.replaymod.replaystudio.replay.ReplayFile;
|
||||
import com.replaymod.simplepathing.SPTimeline.SPPath;
|
||||
import com.replaymod.simplepathing.gui.GuiPathing;
|
||||
import com.replaymod.simplepathing.preview.PathPreview;
|
||||
import net.minecraft.client.options.KeyBinding;
|
||||
import net.minecraft.util.crash.CrashReport;
|
||||
import net.minecraft.util.crash.CrashException;
|
||||
import org.apache.logging.log4j.LogManager;
|
||||
@@ -39,6 +40,8 @@ public class ReplayModSimplePathing extends EventRegistrations implements Module
|
||||
public static ReplayModSimplePathing instance;
|
||||
|
||||
private ReplayMod core;
|
||||
public KeyBinding keyPositionKeyframe;
|
||||
public KeyBinding keyTimeKeyframe;
|
||||
|
||||
public static Logger LOGGER = LogManager.getLogger();
|
||||
|
||||
@@ -91,13 +94,13 @@ public class ReplayModSimplePathing extends EventRegistrations implements Module
|
||||
core.getKeyBindingRegistry().registerRaw(Keyboard.KEY_DELETE, () -> {
|
||||
if (guiPathing != null) guiPathing.deleteButtonPressed();
|
||||
});
|
||||
core.getKeyBindingRegistry().registerKeyBinding("replaymod.input.positionkeyframe", Keyboard.KEY_I, () -> {
|
||||
keyPositionKeyframe = core.getKeyBindingRegistry().registerKeyBinding("replaymod.input.positionkeyframe", Keyboard.KEY_I, () -> {
|
||||
if (guiPathing != null) guiPathing.toggleKeyframe(SPPath.POSITION, false);
|
||||
}, true);
|
||||
core.getKeyBindingRegistry().registerKeyBinding("replaymod.input.positiononlykeyframe", 0, () -> {
|
||||
if (guiPathing != null) guiPathing.toggleKeyframe(SPPath.POSITION, true);
|
||||
}, true);
|
||||
core.getKeyBindingRegistry().registerKeyBinding("replaymod.input.timekeyframe", Keyboard.KEY_O, () -> {
|
||||
keyTimeKeyframe = core.getKeyBindingRegistry().registerKeyBinding("replaymod.input.timekeyframe", Keyboard.KEY_O, () -> {
|
||||
if (guiPathing != null) guiPathing.toggleKeyframe(SPPath.TIME, false);
|
||||
}, true);
|
||||
core.getKeyBindingRegistry().registerKeyBinding("replaymod.input.bothkeyframes", 0, () -> {
|
||||
|
||||
@@ -49,6 +49,7 @@ import de.johni0702.minecraft.gui.utils.lwjgl.Dimension;
|
||||
import de.johni0702.minecraft.gui.utils.lwjgl.ReadableDimension;
|
||||
import de.johni0702.minecraft.gui.utils.lwjgl.ReadablePoint;
|
||||
import de.johni0702.minecraft.gui.utils.lwjgl.WritablePoint;
|
||||
import net.minecraft.client.resource.language.I18n;
|
||||
import net.minecraft.util.crash.CrashReport;
|
||||
import org.apache.logging.log4j.LogManager;
|
||||
import org.apache.logging.log4j.Logger;
|
||||
@@ -124,19 +125,21 @@ public class GuiPathing {
|
||||
public GuiElement getTooltip(RenderInfo renderInfo) {
|
||||
GuiTooltip tooltip = (GuiTooltip) super.getTooltip(renderInfo);
|
||||
if (tooltip != null) {
|
||||
String label;
|
||||
if (getTextureNormal().getY() == 40) { // Add keyframe
|
||||
if (getTextureNormal().getX() == 0) { // Position
|
||||
tooltip.setI18nText("replaymod.gui.ingame.menu.addposkeyframe");
|
||||
label = "replaymod.gui.ingame.menu.addposkeyframe";
|
||||
} else { // Spectator
|
||||
tooltip.setI18nText("replaymod.gui.ingame.menu.addspeckeyframe");
|
||||
label = "replaymod.gui.ingame.menu.addspeckeyframe";
|
||||
}
|
||||
} else { // Remove keyframe
|
||||
if (getTextureNormal().getX() == 0) { // Position
|
||||
tooltip.setI18nText("replaymod.gui.ingame.menu.removeposkeyframe");
|
||||
label = "replaymod.gui.ingame.menu.removeposkeyframe";
|
||||
} else { // Spectator
|
||||
tooltip.setI18nText("replaymod.gui.ingame.menu.removespeckeyframe");
|
||||
label = "replaymod.gui.ingame.menu.removespeckeyframe";
|
||||
}
|
||||
}
|
||||
tooltip.setText(I18n.translate(label) + " (" + getBoundKey(mod.keyPositionKeyframe) + ")");
|
||||
}
|
||||
return tooltip;
|
||||
}
|
||||
@@ -147,11 +150,13 @@ public class GuiPathing {
|
||||
public GuiElement getTooltip(RenderInfo renderInfo) {
|
||||
GuiTooltip tooltip = (GuiTooltip) super.getTooltip(renderInfo);
|
||||
if (tooltip != null) {
|
||||
String label;
|
||||
if (getTextureNormal().getY() == 80) { // Add time keyframe
|
||||
tooltip.setI18nText("replaymod.gui.ingame.menu.addtimekeyframe");
|
||||
label = "replaymod.gui.ingame.menu.addtimekeyframe";
|
||||
} else { // Remove time keyframe
|
||||
tooltip.setI18nText("replaymod.gui.ingame.menu.removetimekeyframe");
|
||||
label = "replaymod.gui.ingame.menu.removetimekeyframe";
|
||||
}
|
||||
tooltip.setText(I18n.translate(label) + " (" + getBoundKey(mod.keyTimeKeyframe) + ")");
|
||||
}
|
||||
return tooltip;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user