Fix click
This commit is contained in:
parent
541a1938bd
commit
6c912a9568
59734
javascript/classes.js
59734
javascript/classes.js
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
|
@ -3,52 +3,47 @@ package dev.resent.module.base.setting;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Arrays;
|
||||||
|
|
||||||
public class ModeSetting extends Setting {
|
public final class ModeSetting extends Setting {
|
||||||
|
|
||||||
public List<String> modes = new ArrayList<>();
|
public int index;
|
||||||
|
public List<String> modes;
|
||||||
|
|
||||||
public String current;
|
public ModeSetting(final String name, final String defaultMode, final String... modes) {
|
||||||
|
super(name, "");
|
||||||
public int curr = 0;
|
this.modes = Arrays.asList(modes);
|
||||||
|
index = this.modes.indexOf(defaultMode);
|
||||||
public ModeSetting(String name, String description, String... modes) {
|
|
||||||
super(name, description);
|
|
||||||
Collections.addAll(this.modes, modes);
|
|
||||||
if (curr == this.modes.size()) {
|
|
||||||
curr = 0;
|
|
||||||
}
|
|
||||||
current = this.modes.get(curr);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void onChange() {}
|
|
||||||
|
|
||||||
public void setValue(String val) {
|
|
||||||
if (this.modes.contains(val)) {
|
|
||||||
this.current = val;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public void next() {
|
|
||||||
++curr;
|
|
||||||
if (curr >= this.modes.size()) {
|
|
||||||
curr = 0;
|
|
||||||
}
|
|
||||||
current = this.modes.get(curr);
|
|
||||||
onChange();
|
|
||||||
}
|
|
||||||
|
|
||||||
public void back() {
|
|
||||||
--curr;
|
|
||||||
if (curr <= this.modes.size()) {
|
|
||||||
curr = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
current = this.modes.get(curr);
|
|
||||||
onChange();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getValue() {
|
public String getValue() {
|
||||||
return current;
|
return modes.get(index);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setValue(final String mode) {
|
||||||
|
if (modes.contains(mode))
|
||||||
|
index = this.modes.indexOf(mode);
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean is(String mode) {
|
||||||
|
return index == modes.indexOf(mode);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void cycle(boolean forwards) {
|
||||||
|
if (forwards) {
|
||||||
|
if (index < modes.size() - 1) {
|
||||||
|
index++;
|
||||||
|
} else {
|
||||||
|
index = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (!forwards) {
|
||||||
|
if (index > 0) {
|
||||||
|
index--;
|
||||||
|
} else {
|
||||||
|
index = modes.size() - 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -193,7 +193,7 @@ public class TabGui extends RenderMod {
|
||||||
((BooleanSetting) setting).toggle();
|
((BooleanSetting) setting).toggle();
|
||||||
}
|
}
|
||||||
if (setting instanceof ModeSetting) {
|
if (setting instanceof ModeSetting) {
|
||||||
((ModeSetting) setting).next();
|
((ModeSetting) setting).cycle(true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -99,7 +99,7 @@ public class ClickGUI extends GuiScreen {
|
||||||
|
|
||||||
if (s instanceof ModeSetting) {
|
if (s instanceof ModeSetting) {
|
||||||
if (isMouseInside(mouseX, mouseY, this.x + 24 + fr.getStringWidth(s.name + ": " + ((ModeSetting)s).getValue()), height - 9 + 50 + var, this.x + 24 + fr.getStringWidth(s.name + ": " + ((ModeSetting)s).getValue() + " >"), height - 9 + 50 + var + 9) && mouseButton == 0)
|
if (isMouseInside(mouseX, mouseY, this.x + 24 + fr.getStringWidth(s.name + ": " + ((ModeSetting)s).getValue()), height - 9 + 50 + var, this.x + 24 + fr.getStringWidth(s.name + ": " + ((ModeSetting)s).getValue() + " >"), height - 9 + 50 + var + 9) && mouseButton == 0)
|
||||||
((ModeSetting)s).next();
|
((ModeSetting)s).cycle(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
if(s instanceof CustomRectSettingDraw){
|
if(s instanceof CustomRectSettingDraw){
|
||||||
|
|
Loading…
Reference in New Issue
Block a user