Nick and Prefix requests

This commit is contained in:
Len 2024-01-04 17:11:00 +01:00
parent 8a5b407359
commit de04c6b80a
6 changed files with 126 additions and 0 deletions

View File

@ -0,0 +1,18 @@
package com.alttd.chat.requests;
import java.util.UUID;
public class NickNameRequest extends Request {
public NickNameRequest(UUID requester, String request) {
super(requester, request);
this.requestType = RequestType.NICKNAME;
}
@Override
public boolean processRequest(UUID processor) {
return false;
}
}

View File

@ -0,0 +1,18 @@
package com.alttd.chat.requests;
import java.util.UUID;
public class PrefixRequest extends Request{
public PrefixRequest(UUID requester, String request) {
super(requester, request);
this.requestType = RequestType.PREFIX;
}
@Override
public boolean processRequest(UUID processor) {
return false;
}
}

View File

@ -0,0 +1,35 @@
package com.alttd.chat.requests;
import org.bukkit.Bukkit;
import java.util.UUID;
public abstract class Request {
protected UUID requester;
protected RequestType requestType;
protected String serverName;
protected String request;
protected boolean completed;
protected boolean acceptedBy;
Request(UUID requester, String request) {
this.requester = requester;
this.request = request;
this.serverName = Bukkit.getServerName();
}
public static Request of(UUID requester, RequestType requestType, String request) {
return switch (requestType) {
case PREFIX -> new PrefixRequest(requester, request);
case NICKNAME -> new NickNameRequest(requester, request);
};
}
public abstract boolean processRequest(UUID processor);
public boolean isCompleted() {
return completed;
}
}

View File

@ -0,0 +1,25 @@
package com.alttd.chat.requests;
import java.util.*;
public class RequestHandler {
private final HashMap<UUID, Request> requests;
public RequestHandler() {
requests = new HashMap<>();
}
public void addRequest(Request request) {
requests.putIfAbsent(request.requester, request);
}
public void removeRequest(Request request) {
requests.remove(request.requester);
}
public HashMap<UUID, Request> getRequests() {
return requests;
}
}

View File

@ -0,0 +1,8 @@
package com.alttd.chat.requests;
public enum RequestType {
NICKNAME,
PREFIX
}

View File

@ -0,0 +1,22 @@
package com.alttd.chat.requests;
import org.bukkit.Bukkit;
import org.bukkit.inventory.Inventory;
import org.bukkit.inventory.InventoryHolder;
import org.jetbrains.annotations.NotNull;
public class RequestsGui implements InventoryHolder {
private final Inventory inventory;
private final int inventorySize = 54;
RequestsGui() {
inventory = Bukkit.createInventory(this, inventorySize, "A title");
}
@Override
public @NotNull Inventory getInventory() {
return inventory;
}
}