![JAR search and dependency download from the Maven repository](/logo.png)
ace.ui.components.panels.CheatPanel Maven / Gradle / Ivy
The newest version!
package ace.ui.components.panels;
import ace.data.player.IPlayerData;
import ace.data.player.attributes.IAttributesData;
import ace.ui.components.partial.spinner.SpinnerDataPanel;
import ace.ui.components.partial.text.field.TextFormattedDataPanel;
import ace.ui.utils.GridBagUtil;
import ace.ui.utils.builders.GridBagConstraintsBuilder;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.stereotype.Component;
import javax.annotation.PostConstruct;
import javax.swing.*;
import java.awt.*;
/**
* Specific panel just for cheat related changes
*/
@Component
@ConditionalOnProperty(name = "editor.live.boot")
public class CheatPanel extends JPanel {
@Autowired
private IPlayerData playerData;
@Autowired
private IAttributesData attributesData;
private SpinnerDataPanel playerLevel;
private TextFormattedDataPanel money;
private SpinnerDataPanel unspentSkillPoints;
private SpinnerDataPanel unspentAttributePoints;
@PostConstruct
private void init() {
setLayout(new GridBagLayout());
}
/**
* @throws NoSuchMethodException reflection exception from trying to create invalid method
*/
public void renderData() throws NoSuchMethodException {
removeAll();
GridBagConstraints c = new GridBagConstraintsBuilder()
.withFill(GridBagConstraints.HORIZONTAL)
.withWeightX(1)
.build();
Class> playerClass = playerData.getClass();
Class> attributesClass = attributesData.getClass();
playerLevel = new SpinnerDataPanel("Player level", playerData.getPlayerLevel(), 0, 1);
playerLevel.setDataGetter(playerData, playerClass.getMethod("getPlayerLevel"));
playerLevel.createListener(playerData, playerClass.getMethod("setPlayerLevel", Integer.class));
GridBagUtil.addComponentWithConstraints(this, playerLevel, 0, 0, c);
money = new TextFormattedDataPanel<>("Money", playerData.getMoney());
money.setDataGetter(playerData, playerClass.getMethod("getMoney"));
money.createListener(playerData, playerClass.getMethod("setMoney", Integer.class));
GridBagUtil.addComponentWithConstraints(this, money, 0, 1, c);
unspentSkillPoints = new SpinnerDataPanel("Unspent skill points", playerData.getUnspentSkillPoints(), 0, 1);
unspentSkillPoints.setDataGetter(playerData, playerClass.getMethod("getUnspentSkillPoints"));
unspentSkillPoints.createListener(playerData, playerClass.getMethod("setUnspentSkillPoints", Integer.class));
GridBagUtil.addComponentWithConstraints(this, unspentSkillPoints, 0, 2, c);
unspentAttributePoints = new SpinnerDataPanel("Unspent attribute points", attributesData.getUnspentAttributePoints(), 0, 1);
unspentAttributePoints.setDataGetter(attributesData, attributesClass.getMethod("getUnspentAttributePoints"));
unspentAttributePoints.createListener(attributesData, attributesClass.getMethod("setUnspentAttributePoints", Integer.class));
GridBagUtil.addComponentWithConstraints(this, unspentAttributePoints, 0, 3, c);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy