From b7cd2bd943c7715e893730cac5a2388d765dd663 Mon Sep 17 00:00:00 2001 From: ryanhamshire Date: Thu, 16 Oct 2014 19:54:51 -0700 Subject: [PATCH] New orange visualization for admin claims. Administrative land claims now visualize using jack o lanterns - orange, and more glow than a standard claim. --- src/me/ryanhamshire/GriefPrevention/Claim.java | 2 ++ .../ryanhamshire/GriefPrevention/Visualization.java | 12 ++++++++++++ .../GriefPrevention/VisualizationType.java | 3 ++- 3 files changed, 16 insertions(+), 1 deletion(-) diff --git a/src/me/ryanhamshire/GriefPrevention/Claim.java b/src/me/ryanhamshire/GriefPrevention/Claim.java index 3c84169..6e5511a 100644 --- a/src/me/ryanhamshire/GriefPrevention/Claim.java +++ b/src/me/ryanhamshire/GriefPrevention/Claim.java @@ -78,6 +78,8 @@ public class Claim //administrative claims are created and maintained by players with the griefprevention.adminclaims permission. public boolean isAdminClaim() { + if(this.parent != null) return this.parent.isAdminClaim(); + return (this.ownerID == null); } diff --git a/src/me/ryanhamshire/GriefPrevention/Visualization.java b/src/me/ryanhamshire/GriefPrevention/Visualization.java index 10d58e8..b6b0d1f 100644 --- a/src/me/ryanhamshire/GriefPrevention/Visualization.java +++ b/src/me/ryanhamshire/GriefPrevention/Visualization.java @@ -102,6 +102,12 @@ public class Visualization visualization.addClaimElements(claim.children.get(i), height, VisualizationType.Subdivision, locality); } + //special visualization for administrative land claims + if(claim.isAdminClaim() && visualizationType == VisualizationType.Claim) + { + visualizationType = VisualizationType.AdminClaim; + } + //add top level last so that it takes precedence (it shows on top when the child claim boundaries overlap with its boundaries) visualization.addClaimElements(claim, height, visualizationType, locality); @@ -131,6 +137,12 @@ public class Visualization accentMaterial = Material.GOLD_BLOCK; } + if(visualizationType == VisualizationType.AdminClaim) + { + cornerMaterial = Material.GLOWSTONE; + accentMaterial = Material.JACK_O_LANTERN; + } + else if(visualizationType == VisualizationType.Subdivision) { cornerMaterial = Material.IRON_BLOCK; diff --git a/src/me/ryanhamshire/GriefPrevention/VisualizationType.java b/src/me/ryanhamshire/GriefPrevention/VisualizationType.java index 9f4e617..4edea0f 100644 --- a/src/me/ryanhamshire/GriefPrevention/VisualizationType.java +++ b/src/me/ryanhamshire/GriefPrevention/VisualizationType.java @@ -24,5 +24,6 @@ public enum VisualizationType Claim, Subdivision, ErrorClaim, - RestoreNature + RestoreNature, + AdminClaim }