Add Hammock

This commit is contained in:
BuildTools 2015-09-07 19:55:55 +02:00
parent 518935b3f8
commit 87ddd4ce16
25 changed files with 514 additions and 83 deletions

13
src/Crafting/Hammock.yml Normal file
View File

@ -0,0 +1,13 @@
Hammock:
name: '&cHammock'
material: 383
glow: false
lore: ''
crafting:
disable: false
recipe: 000,XEX,A0A
index:
X: 280
E: 425
A: 17
0: 0

View File

@ -1,75 +1,70 @@
Material: MaterialData:
- 1 - STONE
- 2 - GRASS
- 3 - DIRT
- 4 - COBBLESTONE
- 5 - WOOD
- 7 - BEDROCK
- 12 - SAND
- 13 - GRAVEL
- 14 - GOLD_ORE
- 15 - IRON_ORE
- 16 - COAL_ORE
- 17 - LOG
- 18 - LEAVES
- 19 - SPONGE
- 20 - GLASS
- 21 - LAPIS_ORE
- 22 - LAPIS_BLOCK
- 24 - SANDSTONE
- 25 - NOTE_BLOCK
- 29 - PISTON_STICKY_BASE
- 33 - PISTON_BASE
- 35 - WOOL
- 41 - GOLD_BLOCK
- 42 - IRON_BLOCK
- 45 - BRICK
- 46 - TNT
- 47 - BOOKSHELF
- 48 - MOSSY_COBBLESTONE
- 49 - OBSIDIAN
- 52 - MOB_SPAWNER
- 56 - DIAMOND_ORE
- 57 - DIAMOND_BLOCK
- 58 - WORKBENCH
- 61 - FURNACE
- 73 - REDSTONE_ORE
- 79 - ICE
- 80 - SNOW_BLOCK
- 81 - CACTUS
- 82 - CLAY
- 84 - JUKEBOX
- 86 - PUMPKIN
- 87 - NETHERRACK
- 88 - SOUL_SAND
- 89 - GLOWSTONE
- 91 - JACK_O_LANTERN
- 95 - MONSTER_EGGS
- 97 - SMOOTH_BRICK
- 98 - HUGE_MUSHROOM_1
- 99 - HUGE_MUSHROOM_2
- 100 - MELON_BLOCK
- 103 - MYCEL
- 110 - NETHER_BRICK
- 112 - ENDER_STONE
- 121 - REDSTONE_LAMP_OFF
- 123 - EMERALD_ORE
- 129 - EMERALD_BLOCK
- 133 - COMMAND
- 137 - BEACON
- 138 - REDSTONE_BLOCK
- 152 - QUARTZ_ORE
- 153 - QUARTZ_BLOCK
- 155 - DROPPER
- 158 - STAINED_CLAY
- 159 - LEAVES_2
- 161 - LOG_2
- 162 - HAY_BLOCK
- 165 - HARD_CLAY
- 168 - COAL_BLOCK
- 169 - PACKED_ICE
- 170
- 172
- 173
- 174
- 179

View File

@ -32,6 +32,7 @@ import de.Ste3et_C0st.Furniture.Objects.indoor.table;
import de.Ste3et_C0st.Furniture.Objects.outdoor.barrels; import de.Ste3et_C0st.Furniture.Objects.outdoor.barrels;
import de.Ste3et_C0st.Furniture.Objects.outdoor.campfire_1; import de.Ste3et_C0st.Furniture.Objects.outdoor.campfire_1;
import de.Ste3et_C0st.Furniture.Objects.outdoor.campfire_2; import de.Ste3et_C0st.Furniture.Objects.outdoor.campfire_2;
import de.Ste3et_C0st.Furniture.Objects.outdoor.hammock;
import de.Ste3et_C0st.Furniture.Objects.outdoor.tent_1; import de.Ste3et_C0st.Furniture.Objects.outdoor.tent_1;
import de.Ste3et_C0st.Furniture.Objects.outdoor.tent_2; import de.Ste3et_C0st.Furniture.Objects.outdoor.tent_2;
import de.Ste3et_C0st.Furniture.Objects.outdoor.tent_3; import de.Ste3et_C0st.Furniture.Objects.outdoor.tent_3;
@ -82,6 +83,7 @@ public class main extends JavaPlugin implements Listener{
new Project("Billboard", new CraftingFile("Billboard", getResource("Crafting/Billboard.yml")), this, billboard.class); new Project("Billboard", new CraftingFile("Billboard", getResource("Crafting/Billboard.yml")), this, billboard.class);
new Project("Mailbox", new CraftingFile("Mailbox", getResource("Crafting/Mailbox.yml")), this, mailBox.class); new Project("Mailbox", new CraftingFile("Mailbox", getResource("Crafting/Mailbox.yml")), this, mailBox.class);
new Project("WeaponStand", new CraftingFile("WeaponStand", getResource("Crafting/WeaponStand.yml")), this, weaponStand.class); new Project("WeaponStand", new CraftingFile("WeaponStand", getResource("Crafting/WeaponStand.yml")), this, weaponStand.class);
new Project("Hammock", new CraftingFile("Hammock", getResource("Crafting/Hammock.yml")), this, hammock.class);
List<ObjectID> objList = new ArrayList<ObjectID>(); List<ObjectID> objList = new ArrayList<ObjectID>();
for(ObjectID obj : manager.getObjectList()){ for(ObjectID obj : manager.getObjectList()){
@ -111,6 +113,7 @@ public class main extends JavaPlugin implements Listener{
case "Streetlamp":new streetlamp(lib, this, obj);break; case "Streetlamp":new streetlamp(lib, this, obj);break;
case "Billboard": new billboard(lib, this, obj); break; case "Billboard": new billboard(lib, this, obj); break;
case "WeaponStand": new weaponStand(lib, this, obj);break; case "WeaponStand": new weaponStand(lib, this, obj);break;
case "Hammock": new hammock(lib, this, obj); break;
case "Mailbox" : case "Mailbox" :
mailBox mail = new mailBox(lib, this, obj); mailBox mail = new mailBox(lib, this, obj);
/*try { /*try {
@ -134,13 +137,12 @@ public class main extends JavaPlugin implements Listener{
this.c.saveConfig("whiteList", this.file, "plugin/fence/"); this.c.saveConfig("whiteList", this.file, "plugin/fence/");
setDefaults(); setDefaults();
} }
@SuppressWarnings("deprecation")
private void setDefaults(){ private void setDefaults(){
c = new config(); c = new config();
this.file = c.getConfig("whiteList", "plugin/fence/"); this.file = c.getConfig("whiteList", "plugin/fence/");
List<Integer> intList = this.file.getIntegerList("Material"); List<String> intList = this.file.getStringList("MaterialData");
for(int i : intList){ for(String i : intList){
if(Material.getMaterial(i)!=null){ if(Material.getMaterial(i)!=null){
Material m = Material.getMaterial(i); Material m = Material.getMaterial(i);
materialWhiteList.add(m); materialWhiteList.add(m);
@ -194,6 +196,7 @@ public class main extends JavaPlugin implements Listener{
case "Billboard": new billboard(lib, instance, obj);break; case "Billboard": new billboard(lib, instance, obj);break;
case "Mailbox" : new mailBox(lib, instance, obj); break; case "Mailbox" : new mailBox(lib, instance, obj); break;
case "WeaponStand": new weaponStand(lib, instance, obj); break; case "WeaponStand": new weaponStand(lib, instance, obj); break;
case "Hammock": new hammock(lib, instance, obj); break;
} }
e.finish(); e.finish();
e.removeItem(); e.removeItem();

View File

@ -29,6 +29,7 @@ import de.Ste3et_C0st.FurnitureLib.main.FurnitureLib;
import de.Ste3et_C0st.FurnitureLib.main.FurnitureManager; import de.Ste3et_C0st.FurnitureLib.main.FurnitureManager;
import de.Ste3et_C0st.FurnitureLib.main.ObjectID; import de.Ste3et_C0st.FurnitureLib.main.ObjectID;
import de.Ste3et_C0st.FurnitureLib.main.Type.BodyPart; import de.Ste3et_C0st.FurnitureLib.main.Type.BodyPart;
import de.Ste3et_C0st.FurnitureLib.main.Type.SQLAction;
public class weaponStand extends Furniture { public class weaponStand extends Furniture {
@ -101,10 +102,11 @@ public class weaponStand extends Furniture {
@EventHandler @EventHandler
public void onFurnitureClick(FurnitureClickEvent e) { public void onFurnitureClick(FurnitureClickEvent e) {
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(p!=null){return;} if(p!=null){return;}
if(e.isCancelled()){return;} if(e.isCancelled()){return;}
if(!e.canBuild()){return;}
if(!e.getID().equals(obj)){return;} if(!e.getID().equals(obj)){return;}
if(!e.canBuild()){return;}
ItemStack is1 = new ItemStack(Material.STAINED_GLASS_PANE, 1, (short) 15); ItemStack is1 = new ItemStack(Material.STAINED_GLASS_PANE, 1, (short) 15);
ItemStack is3 = new ItemStack(Material.STAINED_GLASS_PANE, 1, (short) 14); ItemStack is3 = new ItemStack(Material.STAINED_GLASS_PANE, 1, (short) 14);
@ -158,6 +160,7 @@ public class weaponStand extends Furniture {
@EventHandler @EventHandler
private void onClick(InventoryClickEvent e){ private void onClick(InventoryClickEvent e){
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(p==null){return;} if(p==null){return;}
if(inv==null){return;} if(inv==null){return;}
if(e.getInventory()==null){return;} if(e.getInventory()==null){return;}
@ -183,6 +186,7 @@ public class weaponStand extends Furniture {
@EventHandler @EventHandler
private void onClose(InventoryCloseEvent e){ private void onClose(InventoryCloseEvent e){
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(p==null){return;} if(p==null){return;}
if(inv==null){return;} if(inv==null){return;}
if(!e.getInventory().getTitle().equalsIgnoreCase(inv.getTitle())){return;} if(!e.getInventory().getTitle().equalsIgnoreCase(inv.getTitle())){return;}

View File

@ -25,6 +25,7 @@ import de.Ste3et_C0st.FurnitureLib.main.FurnitureLib;
import de.Ste3et_C0st.FurnitureLib.main.FurnitureManager; import de.Ste3et_C0st.FurnitureLib.main.FurnitureManager;
import de.Ste3et_C0st.FurnitureLib.main.ObjectID; import de.Ste3et_C0st.FurnitureLib.main.ObjectID;
import de.Ste3et_C0st.FurnitureLib.main.Type.BodyPart; import de.Ste3et_C0st.FurnitureLib.main.Type.BodyPart;
import de.Ste3et_C0st.FurnitureLib.main.Type.SQLAction;
public class billboard extends Furniture implements Listener{ public class billboard extends Furniture implements Listener{
@ -122,6 +123,7 @@ public class billboard extends Furniture implements Listener{
@EventHandler @EventHandler
public void onFurnitureBreak(FurnitureBreakEvent e) { public void onFurnitureBreak(FurnitureBreakEvent e) {
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(e.isCancelled()){return;} if(e.isCancelled()){return;}
if(!e.getID().equals(obj)){return;} if(!e.getID().equals(obj)){return;}
if(!e.canBuild()){return;} if(!e.canBuild()){return;}

View File

@ -29,6 +29,7 @@ import de.Ste3et_C0st.FurnitureLib.main.FurnitureLib;
import de.Ste3et_C0st.FurnitureLib.main.FurnitureManager; import de.Ste3et_C0st.FurnitureLib.main.FurnitureManager;
import de.Ste3et_C0st.FurnitureLib.main.ObjectID; import de.Ste3et_C0st.FurnitureLib.main.ObjectID;
import de.Ste3et_C0st.FurnitureLib.main.Type.BodyPart; import de.Ste3et_C0st.FurnitureLib.main.Type.BodyPart;
import de.Ste3et_C0st.FurnitureLib.main.Type.SQLAction;
public class camera extends Furniture implements Listener{ public class camera extends Furniture implements Listener{
Location loc; Location loc;
@ -132,6 +133,7 @@ public class camera extends Furniture implements Listener{
@EventHandler @EventHandler
public void onFurnitureBreak(FurnitureBreakEvent e) { public void onFurnitureBreak(FurnitureBreakEvent e) {
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(e.isCancelled()){return;} if(e.isCancelled()){return;}
if(!e.getID().equals(obj)){return;} if(!e.getID().equals(obj)){return;}
if(!e.canBuild()){return;} if(!e.canBuild()){return;}
@ -144,6 +146,7 @@ public class camera extends Furniture implements Listener{
@EventHandler @EventHandler
public void onFurnitureClick(FurnitureClickEvent e) { public void onFurnitureClick(FurnitureClickEvent e) {
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(e.isCancelled()){return;} if(e.isCancelled()){return;}
if(!e.getID().equals(obj)){return;} if(!e.getID().equals(obj)){return;}
Player p = e.getPlayer(); Player p = e.getPlayer();

View File

@ -30,6 +30,7 @@ import de.Ste3et_C0st.FurnitureLib.main.FurnitureManager;
import de.Ste3et_C0st.FurnitureLib.main.ObjectID; import de.Ste3et_C0st.FurnitureLib.main.ObjectID;
import de.Ste3et_C0st.FurnitureLib.main.Type.BodyPart; import de.Ste3et_C0st.FurnitureLib.main.Type.BodyPart;
import de.Ste3et_C0st.FurnitureLib.main.Type.EventType; import de.Ste3et_C0st.FurnitureLib.main.Type.EventType;
import de.Ste3et_C0st.FurnitureLib.main.Type.SQLAction;
public class streetlamp extends Furniture implements Listener{ public class streetlamp extends Furniture implements Listener{
@ -150,6 +151,7 @@ public class streetlamp extends Furniture implements Listener{
@EventHandler @EventHandler
private void onPlayerInteract(PlayerInteractEvent e){ private void onPlayerInteract(PlayerInteractEvent e){
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(e.isCancelled()){return;} if(e.isCancelled()){return;}
if(e.getAction()==null) return; if(e.getAction()==null) return;
if(e.getClickedBlock()==null) return; if(e.getClickedBlock()==null) return;
@ -176,6 +178,7 @@ public class streetlamp extends Furniture implements Listener{
@EventHandler @EventHandler
private void onBlockPowered(BlockRedstoneEvent e){ private void onBlockPowered(BlockRedstoneEvent e){
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(e.getBlock()==null){return;} if(e.getBlock()==null){return;}
Vector loc = e.getBlock().getLocation().toVector(); Vector loc = e.getBlock().getLocation().toVector();
if(loc2.distance(loc)<=1){ if(loc2.distance(loc)<=1){
@ -244,6 +247,7 @@ public class streetlamp extends Furniture implements Listener{
public void onFurnitureBreak(FurnitureBreakEvent e) { public void onFurnitureBreak(FurnitureBreakEvent e) {
if(e.isCancelled()){return;} if(e.isCancelled()){return;}
if(!e.getID().equals(obj)){return;} if(!e.getID().equals(obj)){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(!e.canBuild()){return;} if(!e.canBuild()){return;}
FurnitureLib.getInstance().getLightManager().removeLight(light); FurnitureLib.getInstance().getLightManager().removeLight(light);
e.remove(); e.remove();
@ -258,6 +262,7 @@ public class streetlamp extends Furniture implements Listener{
@EventHandler @EventHandler
public void onFurnitureClick(FurnitureClickEvent e) { public void onFurnitureClick(FurnitureClickEvent e) {
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(e.isCancelled()){return;} if(e.isCancelled()){return;}
if(!e.getID().equals(obj)){return;} if(!e.getID().equals(obj)){return;}
if(!e.canBuild()){return;} if(!e.canBuild()){return;}

View File

@ -24,6 +24,7 @@ import de.Ste3et_C0st.FurnitureLib.main.FurnitureLib;
import de.Ste3et_C0st.FurnitureLib.main.FurnitureManager; import de.Ste3et_C0st.FurnitureLib.main.FurnitureManager;
import de.Ste3et_C0st.FurnitureLib.main.ObjectID; import de.Ste3et_C0st.FurnitureLib.main.ObjectID;
import de.Ste3et_C0st.FurnitureLib.main.Type.BodyPart; import de.Ste3et_C0st.FurnitureLib.main.Type.BodyPart;
import de.Ste3et_C0st.FurnitureLib.main.Type.SQLAction;
public class tv extends Furniture implements Listener{ public class tv extends Furniture implements Listener{
@ -114,6 +115,7 @@ public class tv extends Furniture implements Listener{
@EventHandler @EventHandler
public void onFurnitureBreak(FurnitureBreakEvent e){ public void onFurnitureBreak(FurnitureBreakEvent e){
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(e.isCancelled()){return;} if(e.isCancelled()){return;}
if(!e.getID().equals(obj)){return;} if(!e.getID().equals(obj)){return;}
if(!e.canBuild()){return;} if(!e.canBuild()){return;}

View File

@ -29,6 +29,7 @@ import de.Ste3et_C0st.FurnitureLib.main.FurnitureLib;
import de.Ste3et_C0st.FurnitureLib.main.FurnitureManager; import de.Ste3et_C0st.FurnitureLib.main.FurnitureManager;
import de.Ste3et_C0st.FurnitureLib.main.ObjectID; import de.Ste3et_C0st.FurnitureLib.main.ObjectID;
import de.Ste3et_C0st.FurnitureLib.main.Type.EventType; import de.Ste3et_C0st.FurnitureLib.main.Type.EventType;
import de.Ste3et_C0st.FurnitureLib.main.Type.SQLAction;
public class fance extends Furniture implements Listener{ public class fance extends Furniture implements Listener{
@ -100,6 +101,7 @@ public class fance extends Furniture implements Listener{
@EventHandler @EventHandler
private void onBlockBreak(BlockBreakEvent e){ private void onBlockBreak(BlockBreakEvent e){
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(block==null){return;} if(block==null){return;}
if(!e.getBlock().getLocation().equals(block.getLocation())){return;} if(!e.getBlock().getLocation().equals(block.getLocation())){return;}
if(!lib.canBuild(e.getPlayer(), obj, EventType.BREAK)){return;} if(!lib.canBuild(e.getPlayer(), obj, EventType.BREAK)){return;}
@ -113,6 +115,7 @@ public class fance extends Furniture implements Listener{
@EventHandler @EventHandler
public void onFurnitureBreak(FurnitureBreakEvent e){ public void onFurnitureBreak(FurnitureBreakEvent e){
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(e.isCancelled()){return;} if(e.isCancelled()){return;}
if(!e.getID().equals(obj)){return;} if(!e.getID().equals(obj)){return;}
if(!e.canBuild()){return;} if(!e.canBuild()){return;}
@ -128,6 +131,7 @@ public class fance extends Furniture implements Listener{
@EventHandler @EventHandler
private void onInteract(PlayerInteractEvent e){ private void onInteract(PlayerInteractEvent e){
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(e.isCancelled()) return; if(e.isCancelled()) return;
if(this.block==null) return; if(this.block==null) return;
if(e.getAction()==null)return; if(e.getAction()==null)return;
@ -165,6 +169,7 @@ public class fance extends Furniture implements Listener{
@EventHandler @EventHandler
public void onFurnitureClick(FurnitureClickEvent e){ public void onFurnitureClick(FurnitureClickEvent e){
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(e.isCancelled()){return;} if(e.isCancelled()){return;}
if(this.block==null) return; if(this.block==null) return;
if(!e.getID().equals(obj)){return;} if(!e.getID().equals(obj)){return;}

View File

@ -32,6 +32,7 @@ import de.Ste3et_C0st.FurnitureLib.main.FurnitureLib;
import de.Ste3et_C0st.FurnitureLib.main.FurnitureManager; import de.Ste3et_C0st.FurnitureLib.main.FurnitureManager;
import de.Ste3et_C0st.FurnitureLib.main.ObjectID; import de.Ste3et_C0st.FurnitureLib.main.ObjectID;
import de.Ste3et_C0st.FurnitureLib.main.Type.BodyPart; import de.Ste3et_C0st.FurnitureLib.main.Type.BodyPart;
import de.Ste3et_C0st.FurnitureLib.main.Type.SQLAction;
public class graveStone extends Furniture implements Listener{ public class graveStone extends Furniture implements Listener{
@ -153,7 +154,9 @@ public class graveStone extends Furniture implements Listener{
@EventHandler @EventHandler
public void onFurnitureBreak(FurnitureBreakEvent e){ public void onFurnitureBreak(FurnitureBreakEvent e){
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(e.isCancelled()) return; if(e.isCancelled()) return;
if(!e.getID().equals(obj)){return;}
if(!e.canBuild()){return;} if(!e.canBuild()){return;}
e.remove(); e.remove();
sign.setType(Material.AIR); sign.setType(Material.AIR);
@ -165,6 +168,7 @@ public class graveStone extends Furniture implements Listener{
private void onBlockRemove(BlockBreakEvent e) private void onBlockRemove(BlockBreakEvent e)
{ {
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if (sign==null) return; if (sign==null) return;
if (e.getBlock() == null) return; if (e.getBlock() == null) return;
if (e.getBlock().getLocation() == null) return; if (e.getBlock().getLocation() == null) return;
@ -175,6 +179,7 @@ public class graveStone extends Furniture implements Listener{
@EventHandler @EventHandler
private void onBlockPlaceEvent(BlockPlaceEvent e){ private void onBlockPlaceEvent(BlockPlaceEvent e){
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if (sign==null) return; if (sign==null) return;
if (e.getBlock() == null) return; if (e.getBlock() == null) return;
if (e.getBlock().getLocation() == null) return; if (e.getBlock().getLocation() == null) return;
@ -185,6 +190,7 @@ public class graveStone extends Furniture implements Listener{
@EventHandler @EventHandler
private void onDrop(ItemSpawnEvent e){ private void onDrop(ItemSpawnEvent e){
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if (sign==null) return; if (sign==null) return;
if (e.getLocation() == null) return; if (e.getLocation() == null) return;
ItemStack is = e.getEntity().getItemStack(); ItemStack is = e.getEntity().getItemStack();
@ -198,6 +204,7 @@ public class graveStone extends Furniture implements Listener{
@EventHandler @EventHandler
public void onFurnitureClick(FurnitureClickEvent e){ public void onFurnitureClick(FurnitureClickEvent e){
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
Player p = e.getPlayer(); Player p = e.getPlayer();
if(e.isCancelled()) return; if(e.isCancelled()) return;
if(!e.getID().equals(obj)) return; if(!e.getID().equals(obj)) return;

View File

@ -29,6 +29,7 @@ import de.Ste3et_C0st.FurnitureLib.main.FurnitureManager;
import de.Ste3et_C0st.FurnitureLib.main.ObjectID; import de.Ste3et_C0st.FurnitureLib.main.ObjectID;
import de.Ste3et_C0st.FurnitureLib.main.Type.BodyPart; import de.Ste3et_C0st.FurnitureLib.main.Type.BodyPart;
import de.Ste3et_C0st.FurnitureLib.main.Type.EventType; import de.Ste3et_C0st.FurnitureLib.main.Type.EventType;
import de.Ste3et_C0st.FurnitureLib.main.Type.SQLAction;
public class mailBox extends Furniture implements Listener { public class mailBox extends Furniture implements Listener {
@ -211,6 +212,7 @@ public class mailBox extends Furniture implements Listener {
@EventHandler @EventHandler
public void onFurnitureBreak(FurnitureBreakEvent e){ public void onFurnitureBreak(FurnitureBreakEvent e){
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(e.isCancelled()) return; if(e.isCancelled()) return;
if(!e.getID().equals(obj)) return; if(!e.getID().equals(obj)) return;
if(!e.canBuild()){return;} if(!e.canBuild()){return;}
@ -228,6 +230,7 @@ public class mailBox extends Furniture implements Listener {
@EventHandler @EventHandler
private void onInteract(PlayerInteractEvent e){ private void onInteract(PlayerInteractEvent e){
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(e.isCancelled()){return;} if(e.isCancelled()){return;}
if(e.getAction()==null){return;} if(e.getAction()==null){return;}
if(e.getClickedBlock()==null){return;} if(e.getClickedBlock()==null){return;}

View File

@ -35,6 +35,7 @@ import de.Ste3et_C0st.FurnitureLib.main.FurnitureManager;
import de.Ste3et_C0st.FurnitureLib.main.ObjectID; import de.Ste3et_C0st.FurnitureLib.main.ObjectID;
import de.Ste3et_C0st.FurnitureLib.main.Type.BodyPart; import de.Ste3et_C0st.FurnitureLib.main.Type.BodyPart;
import de.Ste3et_C0st.FurnitureLib.main.Type.EventType; import de.Ste3et_C0st.FurnitureLib.main.Type.EventType;
import de.Ste3et_C0st.FurnitureLib.main.Type.SQLAction;
public class sunshade extends Furniture implements Listener{ public class sunshade extends Furniture implements Listener{
@ -139,6 +140,7 @@ public class sunshade extends Furniture implements Listener{
@EventHandler @EventHandler
public void onFurnitureClick(FurnitureClickEvent e){ public void onFurnitureClick(FurnitureClickEvent e){
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(e.isCancelled()){return;} if(e.isCancelled()){return;}
if(!e.getID().equals(obj)){return;} if(!e.getID().equals(obj)){return;}
if(!e.canBuild()){return;} if(!e.canBuild()){return;}
@ -187,6 +189,7 @@ public class sunshade extends Furniture implements Listener{
@EventHandler @EventHandler
private void onInteract(PlayerInteractEvent e){ private void onInteract(PlayerInteractEvent e){
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(e.isCancelled()){return;} if(e.isCancelled()){return;}
if(e.getAction()==null){return;} if(e.getAction()==null){return;}
if(e.getClickedBlock()==null){return;} if(e.getClickedBlock()==null){return;}
@ -249,6 +252,7 @@ public class sunshade extends Furniture implements Listener{
@EventHandler @EventHandler
public void onFurnitureBreak(FurnitureBreakEvent e){ public void onFurnitureBreak(FurnitureBreakEvent e){
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(e.isCancelled()){return;} if(e.isCancelled()){return;}
if(!e.getID().equals(obj)){return;} if(!e.getID().equals(obj)){return;}
if(!e.canBuild()){return;} if(!e.canBuild()){return;}

View File

@ -24,6 +24,7 @@ import de.Ste3et_C0st.FurnitureLib.main.FurnitureLib;
import de.Ste3et_C0st.FurnitureLib.main.FurnitureManager; import de.Ste3et_C0st.FurnitureLib.main.FurnitureManager;
import de.Ste3et_C0st.FurnitureLib.main.ObjectID; import de.Ste3et_C0st.FurnitureLib.main.ObjectID;
import de.Ste3et_C0st.FurnitureLib.main.Type.BodyPart; import de.Ste3et_C0st.FurnitureLib.main.Type.BodyPart;
import de.Ste3et_C0st.FurnitureLib.main.Type.SQLAction;
public class chair extends Furniture implements Listener{ public class chair extends Furniture implements Listener{
@ -119,6 +120,7 @@ public class chair extends Furniture implements Listener{
@EventHandler @EventHandler
public void onFurnitureBreak(FurnitureBreakEvent e){ public void onFurnitureBreak(FurnitureBreakEvent e){
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(e.isCancelled()){return;} if(e.isCancelled()){return;}
if(!e.getID().equals(obj)){return;} if(!e.getID().equals(obj)){return;}
if(!e.canBuild()){return;} if(!e.canBuild()){return;}
@ -129,6 +131,7 @@ public class chair extends Furniture implements Listener{
@EventHandler @EventHandler
public void onFurnitureClick(FurnitureClickEvent e){ public void onFurnitureClick(FurnitureClickEvent e){
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(e.isCancelled()){return;} if(e.isCancelled()){return;}
if(!e.getID().equals(obj)){return;} if(!e.getID().equals(obj)){return;}
ArmorStandPacket packet = null; ArmorStandPacket packet = null;

View File

@ -25,6 +25,7 @@ import de.Ste3et_C0st.FurnitureLib.main.Furniture;
import de.Ste3et_C0st.FurnitureLib.main.FurnitureLib; import de.Ste3et_C0st.FurnitureLib.main.FurnitureLib;
import de.Ste3et_C0st.FurnitureLib.main.FurnitureManager; import de.Ste3et_C0st.FurnitureLib.main.FurnitureManager;
import de.Ste3et_C0st.FurnitureLib.main.ObjectID; import de.Ste3et_C0st.FurnitureLib.main.ObjectID;
import de.Ste3et_C0st.FurnitureLib.main.Type.SQLAction;
public class lantern extends Furniture implements Listener{ public class lantern extends Furniture implements Listener{
@ -121,6 +122,7 @@ public class lantern extends Furniture implements Listener{
@EventHandler @EventHandler
public void onWaterFlow(BlockFromToEvent e){ public void onWaterFlow(BlockFromToEvent e){
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
Location locTo = e.getToBlock().getLocation(); Location locTo = e.getToBlock().getLocation();
if(loc!=null && locTo.equals(loc.getBlock().getLocation())){ if(loc!=null && locTo.equals(loc.getBlock().getLocation())){
e.setCancelled(true); e.setCancelled(true);
@ -130,6 +132,7 @@ public class lantern extends Furniture implements Listener{
@EventHandler @EventHandler
public void onFurnitureBreak(FurnitureBreakEvent e){ public void onFurnitureBreak(FurnitureBreakEvent e){
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(e.isCancelled()) return; if(e.isCancelled()) return;
if(block==null) return; if(block==null) return;
if(!e.getID().equals(obj)) return; if(!e.getID().equals(obj)) return;
@ -141,6 +144,7 @@ public class lantern extends Furniture implements Listener{
@EventHandler @EventHandler
public void onFurnitureClick(FurnitureClickEvent e){ public void onFurnitureClick(FurnitureClickEvent e){
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(e.isCancelled()) return; if(e.isCancelled()) return;
if(block==null) return; if(block==null) return;
if(!e.getID().equals(obj)) return; if(!e.getID().equals(obj)) return;

View File

@ -28,6 +28,7 @@ import de.Ste3et_C0st.FurnitureLib.main.FurnitureManager;
import de.Ste3et_C0st.FurnitureLib.main.ObjectID; import de.Ste3et_C0st.FurnitureLib.main.ObjectID;
import de.Ste3et_C0st.FurnitureLib.main.Type.BodyPart; import de.Ste3et_C0st.FurnitureLib.main.Type.BodyPart;
import de.Ste3et_C0st.FurnitureLib.main.Type.ColorType; import de.Ste3et_C0st.FurnitureLib.main.Type.ColorType;
import de.Ste3et_C0st.FurnitureLib.main.Type.SQLAction;
public class largeTable extends Furniture implements Listener{ public class largeTable extends Furniture implements Listener{
@ -203,6 +204,7 @@ public class largeTable extends Furniture implements Listener{
@EventHandler @EventHandler
public void onFurnitureBreak(FurnitureBreakEvent e){ public void onFurnitureBreak(FurnitureBreakEvent e){
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(e.isCancelled()){return;} if(e.isCancelled()){return;}
if(!e.getID().equals(obj)){return;} if(!e.getID().equals(obj)){return;}
if(!e.canBuild()){return;} if(!e.canBuild()){return;}
@ -222,6 +224,7 @@ public class largeTable extends Furniture implements Listener{
@EventHandler @EventHandler
public void onFurnitureClick(FurnitureClickEvent e){ public void onFurnitureClick(FurnitureClickEvent e){
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(e.isCancelled()){return;} if(e.isCancelled()){return;}
if(!e.getID().equals(obj)){return;} if(!e.getID().equals(obj)){return;}
if(!e.canBuild()){return;} if(!e.canBuild()){return;}

View File

@ -27,6 +27,7 @@ import de.Ste3et_C0st.FurnitureLib.main.ObjectID;
import de.Ste3et_C0st.FurnitureLib.main.Type.BodyPart; import de.Ste3et_C0st.FurnitureLib.main.Type.BodyPart;
import de.Ste3et_C0st.FurnitureLib.main.Type.ColorType; import de.Ste3et_C0st.FurnitureLib.main.Type.ColorType;
import de.Ste3et_C0st.FurnitureLib.main.Type.EventType; import de.Ste3et_C0st.FurnitureLib.main.Type.EventType;
import de.Ste3et_C0st.FurnitureLib.main.Type.SQLAction;
public class sofa extends Furniture implements Listener { public class sofa extends Furniture implements Listener {
@ -174,6 +175,7 @@ public class sofa extends Furniture implements Listener {
@EventHandler @EventHandler
public void onFurnitureClick(FurnitureClickEvent e){ public void onFurnitureClick(FurnitureClickEvent e){
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(e.isCancelled()){return;} if(e.isCancelled()){return;}
if(!e.getID().equals(obj)){return;} if(!e.getID().equals(obj)){return;}
e.setCancelled(true); e.setCancelled(true);

View File

@ -26,6 +26,7 @@ import de.Ste3et_C0st.FurnitureLib.main.FurnitureLib;
import de.Ste3et_C0st.FurnitureLib.main.FurnitureManager; import de.Ste3et_C0st.FurnitureLib.main.FurnitureManager;
import de.Ste3et_C0st.FurnitureLib.main.ObjectID; import de.Ste3et_C0st.FurnitureLib.main.ObjectID;
import de.Ste3et_C0st.FurnitureLib.main.Type.BodyPart; import de.Ste3et_C0st.FurnitureLib.main.Type.BodyPart;
import de.Ste3et_C0st.FurnitureLib.main.Type.SQLAction;
public class table extends Furniture implements Listener { public class table extends Furniture implements Listener {
@ -95,6 +96,7 @@ public class table extends Furniture implements Listener {
@EventHandler @EventHandler
public void onFurnitureBreak(FurnitureBreakEvent e){ public void onFurnitureBreak(FurnitureBreakEvent e){
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(e.isCancelled()){return;} if(e.isCancelled()){return;}
if(!e.getID().equals(obj)){return;} if(!e.getID().equals(obj)){return;}
if(!e.canBuild()){return;} if(!e.canBuild()){return;}
@ -114,6 +116,7 @@ public class table extends Furniture implements Listener {
@EventHandler @EventHandler
public void onFurnitureClick(FurnitureClickEvent e){ public void onFurnitureClick(FurnitureClickEvent e){
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(e.isCancelled()){return;} if(e.isCancelled()){return;}
if(!e.getID().equals(obj)){return;} if(!e.getID().equals(obj)){return;}
Player p = e.getPlayer(); Player p = e.getPlayer();

View File

@ -26,6 +26,7 @@ import de.Ste3et_C0st.FurnitureLib.main.FurnitureLib;
import de.Ste3et_C0st.FurnitureLib.main.FurnitureManager; import de.Ste3et_C0st.FurnitureLib.main.FurnitureManager;
import de.Ste3et_C0st.FurnitureLib.main.ObjectID; import de.Ste3et_C0st.FurnitureLib.main.ObjectID;
import de.Ste3et_C0st.FurnitureLib.main.Type.EventType; import de.Ste3et_C0st.FurnitureLib.main.Type.EventType;
import de.Ste3et_C0st.FurnitureLib.main.Type.SQLAction;
public class barrels extends Furniture implements Listener { public class barrels extends Furniture implements Listener {
@ -138,6 +139,7 @@ public class barrels extends Furniture implements Listener {
@EventHandler @EventHandler
private void onBlockBreak(BlockBreakEvent e){ private void onBlockBreak(BlockBreakEvent e){
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(block==null){return;} if(block==null){return;}
if(!e.getBlock().getLocation().equals(block.getLocation())){return;} if(!e.getBlock().getLocation().equals(block.getLocation())){return;}
if(!lib.canBuild(e.getPlayer(), obj, EventType.BREAK)){return;} if(!lib.canBuild(e.getPlayer(), obj, EventType.BREAK)){return;}
@ -165,4 +167,4 @@ public class barrels extends Furniture implements Listener {
block.setType(Material.AIR); block.setType(Material.AIR);
block=null; block=null;
} }
} }

View File

@ -21,6 +21,7 @@ import de.Ste3et_C0st.FurnitureLib.main.Furniture;
import de.Ste3et_C0st.FurnitureLib.main.FurnitureLib; import de.Ste3et_C0st.FurnitureLib.main.FurnitureLib;
import de.Ste3et_C0st.FurnitureLib.main.FurnitureManager; import de.Ste3et_C0st.FurnitureLib.main.FurnitureManager;
import de.Ste3et_C0st.FurnitureLib.main.ObjectID; import de.Ste3et_C0st.FurnitureLib.main.ObjectID;
import de.Ste3et_C0st.FurnitureLib.main.Type.SQLAction;
public class campfire_1 extends Furniture implements Listener{ public class campfire_1 extends Furniture implements Listener{
@ -59,6 +60,7 @@ public class campfire_1 extends Furniture implements Listener{
@EventHandler @EventHandler
public void onFurnitureBreak(FurnitureBreakEvent e){ public void onFurnitureBreak(FurnitureBreakEvent e){
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(e.isCancelled()){return;} if(e.isCancelled()){return;}
if(!e.getID().equals(obj)){return;} if(!e.getID().equals(obj)){return;}
if(!e.canBuild()){return;} if(!e.canBuild()){return;}
@ -76,6 +78,7 @@ public class campfire_1 extends Furniture implements Listener{
@EventHandler @EventHandler
public void onFurnitureClick(FurnitureClickEvent e){ public void onFurnitureClick(FurnitureClickEvent e){
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(e.isCancelled()){return;} if(e.isCancelled()){return;}
if(!e.getID().equals(obj)){return;} if(!e.getID().equals(obj)){return;}
if(!e.canBuild()){return;} if(!e.canBuild()){return;}

View File

@ -26,6 +26,7 @@ import de.Ste3et_C0st.FurnitureLib.main.FurnitureLib;
import de.Ste3et_C0st.FurnitureLib.main.FurnitureManager; import de.Ste3et_C0st.FurnitureLib.main.FurnitureManager;
import de.Ste3et_C0st.FurnitureLib.main.ObjectID; import de.Ste3et_C0st.FurnitureLib.main.ObjectID;
import de.Ste3et_C0st.FurnitureLib.main.Type.BodyPart; import de.Ste3et_C0st.FurnitureLib.main.Type.BodyPart;
import de.Ste3et_C0st.FurnitureLib.main.Type.SQLAction;
public class campfire_2 extends Furniture implements Listener{ public class campfire_2 extends Furniture implements Listener{
List<Material> items = new ArrayList<Material>( List<Material> items = new ArrayList<Material>(
@ -179,6 +180,7 @@ public class campfire_2 extends Furniture implements Listener{
@EventHandler @EventHandler
public void onFurnitureClick(FurnitureClickEvent e){ public void onFurnitureClick(FurnitureClickEvent e){
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(e.isCancelled()){return;} if(e.isCancelled()){return;}
if(!e.getID().equals(obj)){return;} if(!e.getID().equals(obj)){return;}
if(!e.canBuild()){return;} if(!e.canBuild()){return;}
@ -233,6 +235,7 @@ public class campfire_2 extends Furniture implements Listener{
@EventHandler @EventHandler
public void onFurnitureBreak(FurnitureBreakEvent e){ public void onFurnitureBreak(FurnitureBreakEvent e){
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(e.isCancelled()){return;} if(e.isCancelled()){return;}
if(!e.getID().equals(obj)){return;} if(!e.getID().equals(obj)){return;}
if(!e.canBuild()){return;} if(!e.canBuild()){return;}

View File

@ -0,0 +1,349 @@
package de.Ste3et_C0st.Furniture.Objects.outdoor;
import java.util.ArrayList;
import java.util.List;
import org.bukkit.Bukkit;
import org.bukkit.GameMode;
import org.bukkit.Location;
import org.bukkit.Material;
import org.bukkit.World;
import org.bukkit.block.Block;
import org.bukkit.block.BlockFace;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.block.Action;
import org.bukkit.event.player.PlayerInteractEvent;
import org.bukkit.inventory.ItemStack;
import org.bukkit.plugin.Plugin;
import org.bukkit.util.EulerAngle;
import de.Ste3et_C0st.Furniture.Main.main;
import de.Ste3et_C0st.FurnitureLib.Events.FurnitureBreakEvent;
import de.Ste3et_C0st.FurnitureLib.Events.FurnitureClickEvent;
import de.Ste3et_C0st.FurnitureLib.Utilitis.LocationUtil;
import de.Ste3et_C0st.FurnitureLib.main.ArmorStandPacket;
import de.Ste3et_C0st.FurnitureLib.main.Furniture;
import de.Ste3et_C0st.FurnitureLib.main.FurnitureLib;
import de.Ste3et_C0st.FurnitureLib.main.FurnitureManager;
import de.Ste3et_C0st.FurnitureLib.main.ObjectID;
import de.Ste3et_C0st.FurnitureLib.main.Type.BodyPart;
import de.Ste3et_C0st.FurnitureLib.main.Type.EventType;
import de.Ste3et_C0st.FurnitureLib.main.Type.SQLAction;
public class hammock extends Furniture{
Location loc;
BlockFace b;
World w;
ObjectID obj;
FurnitureManager manager;
FurnitureLib lib;
LocationUtil lutil;
Integer id;
Block block;
Plugin plugin;
List<Block> blockList = new ArrayList<Block>();
public ObjectID getObjectID(){return this.obj;}
public Location getLocation(){return this.loc;}
public BlockFace getBlockFace(){return this.b;}
public hammock(FurnitureLib lib, Plugin plugin, ObjectID id) {
super(lib, plugin, id);
this.lutil = main.getLocationUtil();
this.b = lutil.yawToFace(id.getStartLocation().getYaw());
this.loc = id.getStartLocation().getBlock().getLocation();
this.loc.setYaw(id.getStartLocation().getYaw());
this.w = id.getStartLocation().getWorld();
this.manager = lib.getFurnitureManager();
this.lib = lib;
this.plugin = plugin;
this.obj = id;
setBlock();
if(id.isFinish()){
Bukkit.getPluginManager().registerEvents(this, plugin);
return;
}
spawn(loc);
}
private void setBlock(){
BlockFace Right = lutil.yawToFace(lutil.FaceToYaw(b)+90);
Location center2 = lutil.getRelativ(loc, Right, 6D, 0D);
Block b1 = this.loc.getBlock();
Block b2 = this.loc.getBlock().getRelative(BlockFace.UP);
Block b3 = center2.getBlock();
Block b4 = center2.getBlock().getRelative(BlockFace.UP);
if(!isFence(b1.getType())) b1.setType(Material.FENCE);
if(!isFence(b2.getType())) b2.setType(Material.FENCE);
if(!isFence(b3.getType())) b3.setType(Material.FENCE);
if(!isFence(b4.getType())) b4.setType(Material.FENCE);
blockList.add(b1);
blockList.add(b2);
blockList.add(b3);
blockList.add(b4);
}
private boolean isFence(Material m){
if(m==null){return false;}
return m.toString().toLowerCase().endsWith("fence");
}
private boolean isMaterial(Material m){
if(m==null){return false;}
boolean b = false;
if(m.toString().toLowerCase().startsWith("log")){
b=true;
}else if(m.toString().toLowerCase().equalsIgnoreCase("banner")){
b=true;
}
return b;
}
@EventHandler
public void onFurnitureBreak(FurnitureBreakEvent e) {
if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(e.isCancelled()){return;}
if(!e.getID().equals(obj)){return;}
if(!e.canBuild()){return;}
for(Block b : blockList){
if(b!=null){
b.setType(Material.AIR);
}
}
e.remove();
blockList.clear();
}
@EventHandler
public void onFurnitureClick(FurnitureClickEvent e) {
if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(e.isCancelled()){return;}
if(!e.getID().equals(obj)){return;}
List<ArmorStandPacket> aspList = manager.getArmorStandPacketByObjectID(obj);
Player p = e.getPlayer();
ItemStack stack = p.getItemInHand();
if(stack!=null){
if(isMaterial(stack.getType())){
if(setColor(p,stack, e.canBuild(), aspList)){return;}
}
}
for(ArmorStandPacket packet : aspList){
if(packet.getName().equalsIgnoreCase("#SITZ#")){
if(packet.getPessanger()==null){
packet.setPessanger(e.getPlayer());
return;
}
}
}
}
public void removeItem(Player p){
Boolean useGameMode = FurnitureLib.getInstance().useGamemode();
if(useGameMode&&p.getGameMode().equals(GameMode.CREATIVE)){return;}
Integer slot = p.getInventory().getHeldItemSlot();
ItemStack itemStack = p.getItemInHand().clone();
itemStack.setAmount(itemStack.getAmount()-1);
p.getInventory().setItem(slot, itemStack);
p.updateInventory();
}
@EventHandler
private void onClick(PlayerInteractEvent e){
if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(e.isCancelled()){return;}
if(e.getClickedBlock()==null){return;}
if(e.getAction() == null){return;}
if(e.getPlayer()==null){return;}
if(!blockList.contains(e.getClickedBlock())){return;}
if(e.getAction().equals(Action.LEFT_CLICK_BLOCK)){
e.setCancelled(true);
if(!lib.canBuild(e.getPlayer(), obj, EventType.BREAK)){return;}
for(Block b : blockList){
if(b!=null){
b.setType(Material.AIR);
}
}
obj.remove(e.getPlayer());
blockList.clear();
return;
}else if(e.getAction().equals(Action.RIGHT_CLICK_BLOCK)){
e.setCancelled(true);
List<ArmorStandPacket> aspList = manager.getArmorStandPacketByObjectID(obj);
Player p = e.getPlayer();
ItemStack stack = p.getItemInHand();
if(stack!=null){
if(isMaterial(stack.getType())){
if(setColor(p,stack, lib.canBuild(e.getPlayer(), obj, EventType.INTERACT), aspList)){return;}
}
}
for(ArmorStandPacket packet : aspList){
if(packet.getName().equalsIgnoreCase("#SITZ#")){
if(packet.getPessanger()==null){
packet.setPessanger(e.getPlayer());
return;
}
}
}
}
}
private boolean setColor(Player p,ItemStack stack, Boolean canbuild, List<ArmorStandPacket> aspList){
if(!canbuild){return true;}
if(stack!=null){
switch (stack.getType()) {
case BANNER:
for(ArmorStandPacket packet : aspList){
if(packet.getInventory().getHelmet()!=null&&packet.getInventory().getHelmet().getType().equals(Material.BANNER)){
packet.getInventory().setHelmet(stack);
}
}
removeItem(p);
manager.updateFurniture(obj);
return true;
case LOG:
for(ArmorStandPacket packet : aspList){
if(packet.getName().equalsIgnoreCase("#PILLAR#")){
packet.getInventory().setHelmet(stack);
}
}
setPillar(stack.getDurability());
removeItem(p);
manager.updateFurniture(obj);
return true;
case LOG_2:
for(ArmorStandPacket packet : aspList){
if(packet.getName().equalsIgnoreCase("#PILLAR#")){
packet.getInventory().setHelmet(stack);
}
}
setPillar(4 + stack.getDurability());
removeItem(p);
manager.updateFurniture(obj);
return true;
default: break;
}
}
return false;
}
private void setPillar(int i){
Material m = null;
switch (i) {
case 0: m = Material.FENCE;break;
case 1: m = Material.SPRUCE_FENCE;break;
case 2: m = Material.BIRCH_FENCE;break;
case 3: m = Material.JUNGLE_FENCE;break;
case 4: m = Material.ACACIA_FENCE;break;
case 5: m = Material.DARK_OAK_FENCE;break;
}
if(m!=null){
for(Block b : blockList){
b.setType(m);
}
}
}
public void spawn(Location location) {
Location center1 = lutil.getCenter(location);
center1 = center1.add(0, -1.9, 0);
BlockFace Right = lutil.yawToFace(lutil.FaceToYaw(b)+90);
Location center2 = lutil.getRelativ(center1, Right, 6D, 0D);
List<ArmorStandPacket> aspList = new ArrayList<ArmorStandPacket>();
ArmorStandPacket packet = manager.createArmorStand(obj, center1);
packet.getInventory().setHelmet(new ItemStack(Material.LOG));
packet.setName("#PILLAR#");
aspList.add(packet);
packet = manager.createArmorStand(obj, center2);
packet.getInventory().setHelmet(new ItemStack(Material.LOG));
packet.setName("#PILLAR#");
aspList.add(packet);
Location middle = lutil.getRelativ(center1, Right, 2.85D, 0D);
middle = middle.add(0, .75, 0);
packet = manager.createArmorStand(obj, middle);
packet.getInventory().setHelmet(new ItemStack(Material.BANNER, 1, (short) 0));
packet.setPose(lutil.degresstoRad(new EulerAngle(-69f,0f,0f)), BodyPart.HEAD);
aspList.add(packet);
Location middle2 = lutil.getRelativ(middle, Right, 1.5D, 0D);
middle2 = middle2.add(0, .23, 0);
packet = manager.createArmorStand(obj, middle2);
packet.getInventory().setHelmet(new ItemStack(Material.BANNER, 1, (short) 0));
packet.setPose(lutil.degresstoRad(new EulerAngle(-90f,0f,0f)), BodyPart.HEAD);
aspList.add(packet);
Location sitz = lutil.getRelativ(center1, Right, 3D, 0D).add(0, .6, 0);
sitz.setYaw(lutil.FaceToYaw(b.getOppositeFace()));
packet = manager.createArmorStand(obj, sitz);
packet.setName("#SITZ#");
aspList.add(packet);
middle = lutil.getRelativ(middle, Right, .3D, 0D);
middle.setYaw(middle.getYaw()+180);
packet = manager.createArmorStand(obj, middle);
packet.getInventory().setHelmet(new ItemStack(Material.BANNER, 1, (short) 0));
packet.setPose(lutil.degresstoRad(new EulerAngle(-69f,0f,0f)), BodyPart.HEAD);
aspList.add(packet);
Location stick = lutil.getRelativ(center1, Right, 4.6d, .5d);
stick = stick.add(0, 1.7, 0);
stick.setYaw(lutil.FaceToYaw(b));
packet = manager.createArmorStand(obj, stick);
packet.getInventory().setItemInHand(new ItemStack(Material.STICK));
packet.setPose(lutil.degresstoRad(new EulerAngle(-40f,110f,0f)), BodyPart.RIGHT_ARM);
aspList.add(packet);
stick = lutil.getRelativ(center1, Right, 4.6d, -.335d);
stick = stick.add(0, 1.7, 0);
stick.setYaw(lutil.FaceToYaw(b));
packet = manager.createArmorStand(obj, stick);
packet.getInventory().setItemInHand(new ItemStack(Material.STICK));
packet.setPose(lutil.degresstoRad(new EulerAngle(-40f,73f,0f)), BodyPart.RIGHT_ARM);
packet.setArms(true);
aspList.add(packet);
stick = lutil.getRelativ(center1, Right.getOppositeFace(), -1.37d, -.335d);
stick = stick.add(0, 1.7, 0);
stick.setYaw(lutil.FaceToYaw(b.getOppositeFace()));
packet = manager.createArmorStand(obj, stick);
packet.getInventory().setItemInHand(new ItemStack(Material.STICK));
packet.setPose(lutil.degresstoRad(new EulerAngle(-40f,73f,0f)), BodyPart.RIGHT_ARM);
packet.setArms(true);
aspList.add(packet);
stick = lutil.getRelativ(center1, Right.getOppositeFace(), -1.37d, .5d);
stick = stick.add(0, 1.7, 0);
stick.setYaw(lutil.FaceToYaw(b.getOppositeFace()));
packet = manager.createArmorStand(obj, stick);
packet.getInventory().setItemInHand(new ItemStack(Material.STICK));
packet.setPose(lutil.degresstoRad(new EulerAngle(-40f,110f,0f)), BodyPart.RIGHT_ARM);
packet.setArms(true);
aspList.add(packet);
for(ArmorStandPacket pack : aspList){
pack.setInvisible(true);
pack.setGravity(false);
pack.setBasePlate(false);
}
manager.send(obj);
Bukkit.getPluginManager().registerEvents(this, plugin);
}
}

View File

@ -29,6 +29,7 @@ import de.Ste3et_C0st.FurnitureLib.main.ObjectID;
import de.Ste3et_C0st.FurnitureLib.main.Type.BodyPart; import de.Ste3et_C0st.FurnitureLib.main.Type.BodyPart;
import de.Ste3et_C0st.FurnitureLib.main.Type.ColorType; import de.Ste3et_C0st.FurnitureLib.main.Type.ColorType;
import de.Ste3et_C0st.FurnitureLib.main.Type.EventType; import de.Ste3et_C0st.FurnitureLib.main.Type.EventType;
import de.Ste3et_C0st.FurnitureLib.main.Type.SQLAction;
public class tent_1 extends Furniture implements Listener{ public class tent_1 extends Furniture implements Listener{
@ -262,6 +263,7 @@ public class tent_1 extends Furniture implements Listener{
@EventHandler @EventHandler
public void onFurnitureBreak(FurnitureBreakEvent e){ public void onFurnitureBreak(FurnitureBreakEvent e){
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(e.isCancelled()){return;} if(e.isCancelled()){return;}
if(!e.getID().equals(obj)){return;} if(!e.getID().equals(obj)){return;}
if(!e.canBuild()){return;} if(!e.canBuild()){return;}
@ -274,6 +276,7 @@ public class tent_1 extends Furniture implements Listener{
@EventHandler @EventHandler
public void onFurnitureClick(FurnitureClickEvent e){ public void onFurnitureClick(FurnitureClickEvent e){
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(e.isCancelled()){return;} if(e.isCancelled()){return;}
if(!e.getID().equals(obj)){return;} if(!e.getID().equals(obj)){return;}
if(!e.canBuild()){return;} if(!e.canBuild()){return;}
@ -289,8 +292,12 @@ public class tent_1 extends Furniture implements Listener{
@EventHandler @EventHandler
private void onBlockBreak(BlockBreakEvent e){ private void onBlockBreak(BlockBreakEvent e){
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(e.isCancelled()){return;} if(e.isCancelled()){return;}
if(!lib.canBuild(e.getPlayer(), obj, EventType.BREAK)){return;} if(e.getBlock()==null){return;}
if(block==null){return;}
if(!e.getBlock().equals(block)){return;}
if(!lib.canBuild(e.getPlayer(), obj, EventType.BREAK)){e.getPlayer().sendMessage("ERROR1");return;}
if(this.block!=null&&e.getBlock().equals(block)){this.block.setType(Material.AIR);this.block=null;} if(this.block!=null&&e.getBlock().equals(block)){this.block.setType(Material.AIR);this.block=null;}
this.obj.remove(e.getPlayer()); this.obj.remove(e.getPlayer());
obj=null; obj=null;

View File

@ -29,6 +29,7 @@ import de.Ste3et_C0st.FurnitureLib.main.FurnitureManager;
import de.Ste3et_C0st.FurnitureLib.main.ObjectID; import de.Ste3et_C0st.FurnitureLib.main.ObjectID;
import de.Ste3et_C0st.FurnitureLib.main.Type.BodyPart; import de.Ste3et_C0st.FurnitureLib.main.Type.BodyPart;
import de.Ste3et_C0st.FurnitureLib.main.Type.ColorType; import de.Ste3et_C0st.FurnitureLib.main.Type.ColorType;
import de.Ste3et_C0st.FurnitureLib.main.Type.SQLAction;
public class tent_2 extends Furniture implements Listener{ public class tent_2 extends Furniture implements Listener{
@ -200,6 +201,7 @@ public class tent_2 extends Furniture implements Listener{
@EventHandler @EventHandler
public void onFurnitureBreak(FurnitureBreakEvent e){ public void onFurnitureBreak(FurnitureBreakEvent e){
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(e.isCancelled()){return;} if(e.isCancelled()){return;}
if(!e.getID().equals(obj)){return;} if(!e.getID().equals(obj)){return;}
if(!e.canBuild()){return;} if(!e.canBuild()){return;}
@ -214,6 +216,7 @@ public class tent_2 extends Furniture implements Listener{
@EventHandler @EventHandler
public void onFurnitureClick(final FurnitureClickEvent e){ public void onFurnitureClick(final FurnitureClickEvent e){
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(e.isCancelled()){return;} if(e.isCancelled()){return;}
if(!e.getID().equals(obj)){return;} if(!e.getID().equals(obj)){return;}
e.setCancelled(true); e.setCancelled(true);

View File

@ -31,6 +31,7 @@ import de.Ste3et_C0st.FurnitureLib.main.FurnitureManager;
import de.Ste3et_C0st.FurnitureLib.main.ObjectID; import de.Ste3et_C0st.FurnitureLib.main.ObjectID;
import de.Ste3et_C0st.FurnitureLib.main.Type.BodyPart; import de.Ste3et_C0st.FurnitureLib.main.Type.BodyPart;
import de.Ste3et_C0st.FurnitureLib.main.Type.ColorType; import de.Ste3et_C0st.FurnitureLib.main.Type.ColorType;
import de.Ste3et_C0st.FurnitureLib.main.Type.SQLAction;
public class tent_3 extends Furniture implements Listener{ public class tent_3 extends Furniture implements Listener{
@ -175,6 +176,7 @@ public class tent_3 extends Furniture implements Listener{
@EventHandler @EventHandler
public void onFurnitureBreak(FurnitureBreakEvent e){ public void onFurnitureBreak(FurnitureBreakEvent e){
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(e.isCancelled()){return;} if(e.isCancelled()){return;}
if(!e.getID().equals(obj)){return;} if(!e.getID().equals(obj)){return;}
if(!e.canBuild()){return;} if(!e.canBuild()){return;}
@ -187,6 +189,7 @@ public class tent_3 extends Furniture implements Listener{
@EventHandler @EventHandler
public void onFurnitureClick(FurnitureClickEvent e){ public void onFurnitureClick(FurnitureClickEvent e){
if(obj==null){return;} if(obj==null){return;}
if(obj.getSQLAction().equals(SQLAction.REMOVE)){return;}
if(e.isCancelled()){return;} if(e.isCancelled()){return;}
if(!e.getID().equals(obj)){return;} if(!e.getID().equals(obj)){return;}
e.setCancelled(true); e.setCancelled(true);

View File

@ -1,5 +1,5 @@
name: DiceFurniture name: DiceFurniture
version: 2.3.1 version: 2.3.5
description: Add some new Objects to the Server description: Add some new Objects to the Server
author: Ste3et_C0st author: Ste3et_C0st
website: http://dicecraft.de website: http://dicecraft.de