Add GriefPrevention hook

This commit is contained in:
Phoenix616 2019-10-06 17:00:08 +01:00
parent 638c0956d9
commit b172ff83f0
3 changed files with 124 additions and 0 deletions

View File

@ -0,0 +1,61 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ RandomTeleport - randomteleport-plugin-hooks - $project.description
~ Copyright (c) 2019 Max Lee aka Phoenix616 (mail@moep.tv)
~
~ This program is free software: you can redistribute it and/or modify
~ it under the terms of the GNU General Public License as published by
~ the Free Software Foundation, either version 3 of the License, or
~ (at your option) any later version.
~
~ This program is distributed in the hope that it will be useful,
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
~ GNU General Public License for more details.
~
~ You should have received a copy of the GNU General Public License
~ along with this program. If not, see <http://www.gnu.org/licenses/>.
-->
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>randomteleport-plugin-hooks</artifactId>
<groupId>de.themoep.randomteleport.pluginhook</groupId>
<version>2.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>griefprevention</artifactId>
<repositories>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.github.TechFortress</groupId>
<artifactId>GriefPrevention</artifactId>
<version>16.12.0</version>
<scope>provided</scope>
<exclusions>
<exclusion>
<groupId>org.bukkit</groupId>
<artifactId>bukkit</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.bukkit</groupId>
<artifactId>bukkit</artifactId>
<version>1.13-R0.1-SNAPSHOT</version>
<scope>provided</scope>
</dependency>
</dependencies>
</project>

View File

@ -0,0 +1,62 @@
package de.themoep.randomteleport.hook.plugin;
/*
* RandomTeleport - GriefPrevention Hook
* Copyright (c) 2019 Max Lee aka Phoenix616 (mail@moep.tv)
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
import de.themoep.randomteleport.hook.ProtectionHook;
import me.ryanhamshire.GriefPrevention.*;
import org.bukkit.Location;
import org.bukkit.World;
import org.bukkit.entity.Player;
import org.bukkit.plugin.Plugin;
public class GriefPreventionHook implements ProtectionHook {
private final GriefPrevention inst;
public GriefPreventionHook() {
inst = GriefPrevention.instance;
}
@Override
public Plugin getPlugin() {
return inst;
}
@Override
public String getPluginName() {
return inst.getName();
}
@Override
public boolean canBuild(Player player, Location location) {
return inst.dataStore.getClaimAt(location, false, null) == null;
}
@Override
public boolean canBuild(Player player, World world, int chunkX, int chunkZ) {
if (inst.claimsEnabledForWorld(world)) {
for (Claim claim : inst.dataStore.getClaims(chunkX, chunkZ)) {
if (claim.getLesserBoundaryCorner().getWorld().equals(world) && !player.getUniqueId().equals(claim.ownerID)) {
return false;
}
}
}
return true;
}
}

View File

@ -17,6 +17,7 @@
<modules>
<module>worldguard-6</module>
<module>worldguard-7</module>
<module>griefprevention</module>
<module>worldborder</module>
</modules>