mirror of
https://github.com/AtlasMediaGroup/TotalFreedomMod.git
synced 2024-11-27 01:05:38 +00:00
More /cage tweaks
This commit is contained in:
parent
fd6aa7b94b
commit
fbdf2b5fc2
@ -1,5 +1,5 @@
|
||||
#Mon, 26 Aug 2013 01:01:42 +0200
|
||||
#Mon, 26 Aug 2013 15:12:00 +0200
|
||||
|
||||
program.VERSION=3.1
|
||||
program.BUILDNUM=490
|
||||
program.BUILDDATE=08/26/2013 01\:01 AM
|
||||
program.BUILDNUM=501
|
||||
program.BUILDDATE=08/26/2013 03\:12 PM
|
||||
|
@ -1,3 +1,3 @@
|
||||
#Build Number for ANT. Do not edit!
|
||||
#Mon Aug 26 01:01:42 CEST 2013
|
||||
build.number=491
|
||||
#Mon Aug 26 15:12:00 CEST 2013
|
||||
build.number=502
|
||||
|
@ -21,6 +21,17 @@ public class Command_cage extends TFM_Command
|
||||
return false;
|
||||
}
|
||||
|
||||
if (TFM_Util.isStopCommand(args[0]) && sender instanceof Player)
|
||||
{
|
||||
TFM_Util.adminAction(sender.getName(), "Uncaging " + sender.getName(), true);;
|
||||
TFM_PlayerData playerdata = TFM_PlayerData.getPlayerData(sender_p);
|
||||
|
||||
playerdata.setCaged(false);
|
||||
playerdata.regenerateHistory();
|
||||
playerdata.clearHistory();
|
||||
return true;
|
||||
}
|
||||
|
||||
Player player;
|
||||
try
|
||||
{
|
||||
@ -79,7 +90,7 @@ public class Command_cage extends TFM_Command
|
||||
playerdata.regenerateHistory();
|
||||
playerdata.clearHistory();
|
||||
TFM_Util.buildHistory(targetPos, 2, playerdata);
|
||||
TFM_Util.generateCube(targetPos, 2, outerMaterial);
|
||||
TFM_Util.generateHollowCube(targetPos, 2, outerMaterial);
|
||||
TFM_Util.generateCube(targetPos, 1, innerMaterial);
|
||||
|
||||
player.setGameMode(GameMode.SURVIVAL);
|
||||
|
@ -323,7 +323,7 @@ public class TFM_PlayerListener implements Listener
|
||||
playerdata.regenerateHistory();
|
||||
playerdata.clearHistory();
|
||||
TFM_Util.buildHistory(targetPos, 2, playerdata);
|
||||
TFM_Util.generateCube(targetPos, 2, playerdata.getCageMaterial(TFM_PlayerData.CageLayer.OUTER));
|
||||
TFM_Util.generateHollowCube(targetPos, 2, playerdata.getCageMaterial(TFM_PlayerData.CageLayer.OUTER));
|
||||
TFM_Util.generateCube(targetPos, 1, playerdata.getCageMaterial(TFM_PlayerData.CageLayer.INNER));
|
||||
}
|
||||
}
|
||||
|
@ -16,6 +16,7 @@ import org.apache.commons.lang.StringUtils;
|
||||
import org.apache.commons.lang.exception.ExceptionUtils;
|
||||
import org.bukkit.*;
|
||||
import org.bukkit.block.Block;
|
||||
import org.bukkit.block.BlockFace;
|
||||
import org.bukkit.block.Skull;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.entity.*;
|
||||
@ -150,19 +151,57 @@ public class TFM_Util
|
||||
{
|
||||
for (int zOffset = -length; zOffset <= length; zOffset++)
|
||||
{
|
||||
final Block block = center.getRelative(xOffset, yOffset, zOffset);
|
||||
if (block.getType() != material)
|
||||
{
|
||||
block.setType(material);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public static void generateHollowCube(Location location, int length, Material material)
|
||||
{
|
||||
Block center = location.getBlock();
|
||||
for (int xOffset = -length; xOffset <= length; xOffset++)
|
||||
{
|
||||
for (int yOffset = -length; yOffset <= length; yOffset++)
|
||||
{
|
||||
for (int zOffset = -length; zOffset <= length; zOffset++)
|
||||
{
|
||||
// Hollow
|
||||
if (Math.abs(xOffset) != length && Math.abs(yOffset) != length && Math.abs(zOffset) != length)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
final Block block = center.getRelative(xOffset, yOffset, zOffset);
|
||||
|
||||
if (material != Material.SKULL)
|
||||
{
|
||||
center.getRelative(xOffset, yOffset, zOffset).setType(material);
|
||||
}
|
||||
else
|
||||
// Glowstone light
|
||||
if (material != Material.GLASS && xOffset == 0 && yOffset == 2 && zOffset == 0)
|
||||
{
|
||||
final Block block = center.getRelative(xOffset, yOffset, zOffset);
|
||||
block.setType(Material.GLOWSTONE);
|
||||
continue;
|
||||
}
|
||||
|
||||
block.setType(material);
|
||||
}
|
||||
else // Darth mode
|
||||
{
|
||||
if (Math.abs(xOffset) == length && Math.abs(yOffset) == length && Math.abs(zOffset) == length)
|
||||
{
|
||||
block.setType(Material.GLOWSTONE);
|
||||
continue;
|
||||
}
|
||||
|
||||
block.setType(Material.SKULL);
|
||||
Skull skull = (Skull) block.getState();
|
||||
skull.setSkullType(SkullType.PLAYER);
|
||||
skull.setOwner("DarthSalamon");
|
||||
skull.update();
|
||||
//skull.setRotation(block.getFace(center));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user