Skip to content

Commit

Permalink
depends on SWoldEdit
Browse files Browse the repository at this point in the history
  • Loading branch information
DonRaffae committed Jan 8, 2020
1 parent 3adc9bd commit f873475
Show file tree
Hide file tree
Showing 13 changed files with 32 additions and 136 deletions.
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -21,4 +21,5 @@

# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
hs_err_pid*
/.idea
.idea/
target/
3 changes: 0 additions & 3 deletions src/main/java/META-INF/MANIFEST.MF

This file was deleted.

30 changes: 0 additions & 30 deletions src/main/java/aldrigos/mc/worldguard/Cuboid.java

This file was deleted.

2 changes: 2 additions & 0 deletions src/main/java/aldrigos/mc/worldguard/Region.java
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
package aldrigos.mc.worldguard;

import aldrigos.mc.worldedit.Cuboid;

import java.util.Collection;
import java.util.HashSet;

Expand Down
6 changes: 0 additions & 6 deletions src/main/java/aldrigos/mc/worldguard/Utils.java
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
package aldrigos.mc.worldguard;

import cn.nukkit.math.Vector3;

import java.io.PrintWriter;
import java.io.StringWriter;
import java.util.ArrayList;
Expand All @@ -14,10 +12,6 @@ public static <T> Collection<T> flatten(Collection<? extends Collection<T>> c){
return result;
}

public static String toString(Vector3 p){
return "X:" + p.x + " Y:" + p.y + " Z:" + p.z;
}

public static String getTrace(Throwable e){
var sw = new StringWriter();
e.printStackTrace(new PrintWriter(sw));
Expand Down
19 changes: 0 additions & 19 deletions src/main/java/aldrigos/mc/worldguard/Vector3Adapter.java

This file was deleted.

7 changes: 4 additions & 3 deletions src/main/java/aldrigos/mc/worldguard/WorldGuardPlugin.java
Original file line number Diff line number Diff line change
@@ -1,18 +1,17 @@
package aldrigos.mc.worldguard;

import aldrigos.mc.worldedit.*;
import aldrigos.mc.worldguard.commands.*;
import aldrigos.mc.worldguard.listeners.*;
import cn.nukkit.plugin.PluginBase;
import cn.nukkit.utils.Logger;
import com.google.gson.Gson;

import java.io.*;
import java.util.HashMap;
import java.util.Map;

public class WorldGuardPlugin extends PluginBase {
private static final String regionFile = "plugins/worldguard/regions.json";
public final Map<Long, Cuboid> Selection= new HashMap<>();
public WorldEdit worldEdit;
public RegionManager RegionManager;
private Logger log;

Expand Down Expand Up @@ -53,6 +52,8 @@ public void onEnable(){
return;
}

worldEdit = ((WorldEditPlugin) getServer().getPluginManager().getPlugin("SWorldEdit")).getApi();

var pm = this.getServer().getPluginManager();
pm.registerEvents(new InteractionListener(this), this);
pm.registerEvents(new BlockListener(this), this);
Expand Down
10 changes: 5 additions & 5 deletions src/main/java/aldrigos/mc/worldguard/commands/RegionCommand.java
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package aldrigos.mc.worldguard.commands;

import aldrigos.mc.worldedit.WorldEdit;
import aldrigos.mc.worldguard.*;
import aldrigos.mc.worldguard.exceptions.AlreadyExistException;
import cn.nukkit.Player;
Expand All @@ -8,19 +9,18 @@

import java.util.Arrays;
import java.util.LinkedList;
import java.util.Map;
import java.util.regex.Pattern;

public class RegionCommand extends Command {
public final RegionManager rgm;
public final Map<Long, Cuboid> selection;
public final WorldEdit we;
public final Logger log;
private final FlagsCommands flagsCmds;

public RegionCommand(WorldGuardPlugin p){
super("rg");
rgm = p.RegionManager;
selection = p.Selection;
we = p.worldEdit;
log = p.getLogger();
flagsCmds = new FlagsCommands(p);
}
Expand Down Expand Up @@ -66,7 +66,7 @@ private boolean create(CommandSender sender, LinkedList<String> args) {
return false;
}

var cuboid = selection.get(player.getId());
var cuboid = we.getSelection(player.getId());
if(cuboid == null || cuboid.P1 == null || cuboid.P2 == null){
Messages.NO_SELECTION.send(player);
return false;
Expand Down Expand Up @@ -161,7 +161,7 @@ private boolean update(CommandSender sender, LinkedList<String> args) {
return false;
}

var cuboid = selection.get(player.getId());
var cuboid = we.getSelection(player.getId());
if(cuboid == null || cuboid.P1 == null || cuboid.P2 == null){
Messages.NO_SELECTION.send(player);
return false;
Expand Down
39 changes: 15 additions & 24 deletions src/main/java/aldrigos/mc/worldguard/commands/WgCommand.java
Original file line number Diff line number Diff line change
@@ -1,55 +1,46 @@
package aldrigos.mc.worldguard.commands;

import aldrigos.mc.worldguard.Cuboid;
import aldrigos.mc.worldguard.*;
import cn.nukkit.command.*;
import cn.nukkit.utils.Logger;

import java.util.Arrays;
import java.util.LinkedList;
import java.util.Map;

public class WgCommand extends Command {
private static final String help = "[WG]Commands list:\n" +
"/wg info : about this plugin\n"+
"/rg create <region> : create a new region\n" +
"/rg delete <region> : delete a region\n"+
"/rg flag : list all available flags\n"+
"/rg flag <region> <flag> <allow|deny> : add a flag to region\n"+
"/rg flags <region> : show set flags for the region\n"+
"/rg update <region> : change region cuboid with current selection";

public final RegionManager rgm;
public final Map<Long, Cuboid> selection;
public final Logger log;

public WgCommand(WorldGuardPlugin p){
super("wg");
rgm = p.RegionManager;
selection = p.Selection;
log = p.getLogger();
}

@Override
public boolean execute(CommandSender sender, String cmd, String[] args) {
if(args.length < 1){
sender.sendMessage("[WG]Commands list:\n" +
"/wg info : about this plugin\n"+
"/rg create <region> : create a new region\n" +
"/rg delete <region> : delete a region\n"+
"/rg flag : list all available flags\n"+
"/rg flag <region> <flag> <allow|deny> : add a flag to region\n"+
"/rg flags <region> : show set flags for the region\n"+
"/rg update <region> : change region cuboid with current selection"
);
sender.sendMessage(help);
return true;
}

final String sub = args[0];

switch (sub){
switch (args[0]){
case "info":
sender.sendMessage("[WG]WorldGuard port for Nukkit by Aldrigo Raffaele");
return true;
case "?":
case "help":
sender.sendMessage(help);
return true;
default:
sender.sendMessage("[WG]Unknown wg sub-command: "+ cmd);
return false;
}

/*var subArgs = new LinkedList<String>(Arrays.asList(args));
subArgs.removeFirst();
return executor.execute(sender, cmd, subArgs);*/
}
}
14 changes: 0 additions & 14 deletions src/main/java/aldrigos/mc/worldguard/listeners/BlockListener.java
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,9 @@

public class BlockListener implements Listener {
public final RegionManager rgm;
private final Map<Long, Cuboid> selection;

public BlockListener(WorldGuardPlugin p){
rgm = p.RegionManager;
selection = p.Selection;
}

private Region check(Player p, BlockEvent e){
Expand All @@ -40,18 +38,6 @@ public void onPlace(BlockPlaceEvent e){
@EventHandler
public void onBreak(BlockBreakEvent e){
var player = e.getPlayer();
//check if player has wg rg stick
if(player.isCreative() && e.getItem().getId() == ItemID.STICK){
var clickPosition = e.getBlock().getLocation();
if(!selection.containsKey(player.getId()))
selection.put(player.getId(), new Cuboid());

selection.get(player.getId()).P1 = new Vector3Adapter(clickPosition);
player.sendMessage(TextFormat.DARK_PURPLE+"[WG]First position set "+Utils.toString(clickPosition)+TextFormat.WHITE);

e.setCancelled();
return;
}

var region = check(player, e);
if(region == null)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,13 +1,10 @@
package aldrigos.mc.worldguard.listeners;

import aldrigos.mc.worldguard.*;
import aldrigos.mc.worldguard.Utils;
import cn.nukkit.Player;
import cn.nukkit.block.BlockID;
import cn.nukkit.event.*;
import cn.nukkit.event.entity.*;
import cn.nukkit.event.player.*;
import cn.nukkit.item.ItemID;
import cn.nukkit.utils.*;

import java.util.Map;
Expand All @@ -16,14 +13,12 @@

public class InteractionListener implements Listener {
private final RegionManager rgm;
private final Map<Long, Cuboid> selection;
private final Logger log;
private final WorldGuardPlugin wg;

public InteractionListener(WorldGuardPlugin p){
rgm = p.RegionManager;
log = p.getLogger();
selection = p.Selection;
wg = p;
}

Expand All @@ -50,30 +45,6 @@ public void onAttack(EntityDamageByEntityEvent e){
}
}

@EventHandler
public void onPlayerInteract(PlayerInteractEvent e){
var player = e.getPlayer();
var clickPosition = e.getBlock().getLocation();

if(!player.isCreative())
return;

var item = e.getItem();
//check if player has wg rg stick
if(item == null || item.getId() != ItemID.STICK)
return;

//if(item.getCustomBlockData().)

if(e.getAction() == RIGHT_CLICK_BLOCK){
if(!selection.containsKey(player.getId()))
selection.put(player.getId(), new Cuboid());

selection.get(player.getId()).P2 = new Vector3Adapter(clickPosition);
player.sendMessage(TextFormat.DARK_PURPLE+"[WG]Second position set "+ Utils.toString(clickPosition)+TextFormat.WHITE);
}
}

@EventHandler
public void onExplode(ExplosionPrimeEvent e){
var reg = rgm.getBlockRegion(e.getEntity().getPosition());
Expand Down
3 changes: 2 additions & 1 deletion src/main/resources/plugin.yml
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
name: WorldGuard
main: aldrigos.mc.worldguard.WorldGuardPlugin
version: "0.1.2.1"
version: "0.2.0.0"
api: ["1.0.5"]
load: POSTWORLD
depend: [ "SWorldEdit" ]
author: Aldrigo Raffaele
description: WorldGuard Nukkit Port
website: https://github.com/Raffa50/NukkitX-WorldGuard
Expand Down
3 changes: 2 additions & 1 deletion target/classes/plugin.yml
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
name: WorldGuard
main: aldrigos.mc.worldguard.WorldGuardPlugin
version: "0.1.2.1"
version: "0.2.0.0"
api: ["1.0.5"]
load: POSTWORLD
depend: [ "SWorldEdit" ]
author: Aldrigo Raffaele
description: WorldGuard Nukkit Port
website: https://github.com/Raffa50/NukkitX-WorldGuard
Expand Down

0 comments on commit f873475

Please sign in to comment.