Converted Modules to gradle
This commit is contained in:
7
src/main/java/com/redstoner/modules/abot/Abot.cmd
Normal file
7
src/main/java/com/redstoner/modules/abot/Abot.cmd
Normal file
@@ -0,0 +1,7 @@
|
||||
command abot {
|
||||
reload {
|
||||
help Reloads answers from the .json file.;
|
||||
run abot_reload;
|
||||
perm utils.abot.reload;
|
||||
}
|
||||
}
|
||||
68
src/main/java/com/redstoner/modules/abot/Abot.java
Normal file
68
src/main/java/com/redstoner/modules/abot/Abot.java
Normal file
@@ -0,0 +1,68 @@
|
||||
package com.redstoner.modules.abot;
|
||||
|
||||
import java.io.File;
|
||||
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.event.EventHandler;
|
||||
import org.bukkit.event.Listener;
|
||||
import org.bukkit.event.player.AsyncPlayerChatEvent;
|
||||
import org.json.simple.JSONArray;
|
||||
import org.json.simple.JSONObject;
|
||||
|
||||
import com.nemez.cmdmgr.Command;
|
||||
import com.redstoner.annotations.AutoRegisterListener;
|
||||
import com.redstoner.annotations.Commands;
|
||||
import com.redstoner.annotations.Version;
|
||||
import com.redstoner.misc.CommandHolderType;
|
||||
import com.redstoner.misc.JsonManager;
|
||||
import com.redstoner.misc.Main;
|
||||
import com.redstoner.modules.Module;
|
||||
|
||||
@Commands(CommandHolderType.File)
|
||||
@AutoRegisterListener
|
||||
@Version(major = 4, minor = 1, revision = 0, compatible = 4)
|
||||
public class Abot implements Module, Listener
|
||||
{
|
||||
private File answerFile = new File(Main.plugin.getDataFolder(), "abot.json");
|
||||
JSONArray answers;
|
||||
|
||||
@EventHandler
|
||||
public void onPlayerChat(AsyncPlayerChatEvent event)
|
||||
{
|
||||
for (Object rawObject : answers)
|
||||
{
|
||||
JSONObject entry = (JSONObject) rawObject;
|
||||
JSONArray regexes = (JSONArray) entry.get("regex");
|
||||
for (Object regex : regexes)
|
||||
{
|
||||
if (event.getMessage().toLowerCase().matches((String) regex))
|
||||
{
|
||||
Object hideperm = entry.get("hide-perm");
|
||||
if (hideperm == null || !event.getPlayer().hasPermission((String) hideperm))
|
||||
{
|
||||
event.setCancelled(true);
|
||||
getLogger().message(event.getPlayer(), (String) entry.get("message"));
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Command(hook = "abot_reload")
|
||||
public void loadAnswers(CommandSender sender)
|
||||
{
|
||||
answers = JsonManager.getArray(answerFile);
|
||||
if (answers == null)
|
||||
answers = new JSONArray();
|
||||
getLogger().message(sender, "Loaded the abot.json file!");
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean onEnable()
|
||||
{
|
||||
loadAnswers(Bukkit.getConsoleSender());
|
||||
return true;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user