i fucking give up, this will not hold up.

This commit is contained in:
somehussar committed 2026-01-31 07:18:54 +01:00
1 parent 289baf4131
commit 17eb003a12
3 files changed
+50 -7

No files matched your search

@@ -19,6 +19,7 @@ import noppes.npcs.client.gui.util.IAbilityConfigCallback;
import noppes.npcs.entity.EntityNPCInterface;
import noppes.npcs.api.ability.type.IAbilitySlam;
import somehussar.gui.annotationHandling.GuiEditable;
import java.util.List;
@@ -31,6 +32,7 @@ import java.util.List;
* - Landing: When NPC hits ground, deal AOE damage
* - RECOVERY: Landing recovery animation
*/
@GuiEditable
public class AbilitySlam extends Ability implements IAbilitySlam {
// Type-specific config
+16 -7
View File
@@ -1,19 +1,28 @@
package somehussar.gui;
import noppes.npcs.client.gui.util.GuiNPCInterface;
import net.minecraft.client.gui.GuiScreen;
import noppes.npcs.client.gui.util.GuiNpcLabel;
import noppes.npcs.client.gui.util.SubGuiInterface;
import somehussar.gui.annotationHandling.GuiFieldHandler;
import somehussar.gui.annotationHandling.field.EditableField;
public class AnnotatedGui extends GuiNPCInterface {
public class AnnotatedGui<T> extends SubGuiInterface {
private final GuiFieldHandler.ClassMetadata metadata;
public AnnotatedGui(Class<?> type) {
metadata = GuiFieldHandler.getMetadata(type);
public AnnotatedGui(T object, String[] groups, GuiScreen parent) {
this(object, groups, parent, 256, 216);
}
public AnnotatedGui(T object, String[] groups, GuiScreen parent, int xSize, int ySize) {
if (object != null)
metadata = GuiFieldHandler.getMetadata(object.getClass());
else
metadata = null;
setBackground("menubg.png");
xSize = 256;
ySize = 216;
this.xSize = xSize;
this.ySize = ySize;
closeOnEsc = true;
this.parent = parent;
}
@Override
@@ -23,7 +32,7 @@ public class AnnotatedGui extends GuiNPCInterface {
return;
int i = 0;
for (EditableField field : metadata.getDeclaredFields()) {
for (EditableField field : metadata.getParent().getDeclaredFields()) {
addLabel(new GuiNpcLabel(i++, field.getName(), guiLeft+8, guiTop+i*15+5));
}
}
@@ -0,0 +1,32 @@
package somehussar.gui;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.FontRenderer;
import noppes.npcs.client.gui.util.GuiNpcTextField;
import somehussar.gui.annotationHandling.field.EditableField;
public class ImmediateTextField extends GuiNpcTextField{
private final EditableField editableField;
//
// private final GuiNpcTextField encapsulatedField;
public ImmediateTextField(int id, EditableField field, int xPos, int yPos) {
this(id, field, Minecraft.getMinecraft().fontRenderer, xPos, yPos);
}
public ImmediateTextField(int id, EditableField field, FontRenderer fontRenderer, int xPos, int yPos) {
super(id, null, fontRenderer, xPos, yPos, 0, 0, null);
this.editableField = field;
}
@Override
public void drawTextBox(int mousX, int mousY) {
}
@Override
public void mouseClicked(int xPos, int yPos, int k) {
xPos -= this.xPosition;
yPos -= this.yPosition;
}
}