Skip to content

SenseiTarzan/FormAPI-PNX

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FormAPI | PowerNukkitX

Simple library for creating forms (MCBE PowerNukkitX)



Examples:

SimpleForm


SimpleForm simpleForm = new SimpleForm((targetPlayer, data) -> {
        targetPlayer.sendMessage(data == null ? "null" : data.toString()); // return "diamond" if click in button Hello because has label "diamond" else null for exit form
});
simpleForm.setTitle("From with label");
simpleForm.setContent("i'am a SimpleForm");
simpleForm.addButton("Hello", ImageType.PATH, "textures/items/diamond", "diamond");
simpleForm.send(event.getPlayer());

image SimpleForm UI
is clicked in button Hello
image SimpleForm Handler
is exit of form
img_1.png

CustomForm


CustomForm customForm = new CustomForm((player, data) -> {
        ifdata == null) return;
        player.sendMessage("test: " + data.get(0).toString()); // return label element
        player.sendMessage("input: " + data.get("input1")); //return input send by client
});
customForm.setTitle("It`s a title");
customForm.addLabel("label element");
customForm.addInput(new ElementInput("Input button"), "input1");
customForm.send(event.getPlayer());

image Custom Form UI image Custom Form Handler

ModalForm


ModalForm form = new ModalForm((targetPlayer, data) -> {
        if(data == null) return;
        targetPlayer.sendMessage(data.toString());
});
form.setTitle("It`s a title");
form.setContent("Sample text");
form.setButtonTrue("Positive button");
form.setButtonFalse("Negative button");
form.send(player);

ModelForm UI

Form in Server Setting


handler is run after leave setting

CustomForm customForm = new CustomForm((player, data) -> {
        if(data == null) return;
        player.sendMessage("test: " + data.get(0).toString()); // return Hello, i'am form server setting
        player.sendMessage("input: " + data.get("test")); //return input send by client
});
customForm.setTitle("Test Setting");
customForm.addLabel("Hello, i'am form server setting");
customForm.setIcon(ImageType.PATH,"textures/items/apple");
customForm.addInput(new ElementInput("test"), "test");
customForm.setFormSetting(event.getPlayer());

ServerForm UI
After the processing phase, it defaults to the values sent by the client.
ServerFormHandlerMessage.png ServerForm2.png

Import in Maven or gradle


Maven

<repositories>
    <repository>
        <id>jitpack.io</id>
        <url>https://jitpack.io</url>
    </repository>
</repositories>
<dependency>
    <groupId>com.github.SenseiTarzan</groupId>
    <artifactId>FormAPI-PNX</artifactId>
    <version>1.0.1</version>
</dependency>

Gradle

repositories {
    mavenCentral()
    maven {
        name = "jitpack"
        url = uri("https://jitpack.io")
    }
}

dependencies {
    compileOnly("com.github.SenseiTarzan:FormAPI-PNX:1.0.1")
}