Dev #29

Closed
Evanus wants to merge 13 commits from dev into dev
Showing only changes of commit db1d54c599 - Show all commits

83
bpm.py
View File

@ -1,84 +1,67 @@
from helpers import *
import org.bukkit.block.BlockFace as BlockSide
import org.bukkit.Material as Material
"""
remake of dicodes blockplacemods
"""
slabToggle = []
cauldronToggle = []
inventoryToggle = []
blocks = {Material.DROPPER, Material.HOPPER, Material.FURNACE, Material.DISPENSER}
info = "please use: &9Slab&3, &9Inventory&3, &9Cauldron &3or &9Help&3."
togPerm = "utils.toggle"
@hook.event("block.BlockPlaceEvent", "monitor")
def blockPlace(event):
block = event.getBlockPlaced()
material = block.getType()
n = event.getPlayer().getName()
@hook.event("block.BlockPlaceEvent", "low")
def block_place(event):
try:
block = event.getBlockPlaced()
material = block.getType()
sender = event.getPlayer()
py_player = get_py_player(sender)
if (material in (Material.WOOD_STEP, Material.STEP)) and py_player.slab_toggle and block.getData() < 8:
block.setData(block.getData() + 8)
if (material in (Material.WOOD_STEP, Material.STEP)) and n in slabToggle:
block.setData(block.getData() + 8)
elif (material == Material.CAULDRON) and py_player.cauldron_toggle:
block.setData(block.getData() + 3)
except:
print trace()
elif (material == Material.CAULDRON) and n in cauldronToggle:
block.setData(block.getData() + 3)
def help(sender):
try:
msg(sender, "&a-=[&6BPM&a]=-")
msg(sender, "&6Aliases for /toggle: \n &e/set, /setting and /config\n")
msg(sender, "&6Available settings: \n &eSlab and Cauldron\n")
msg(sender, "&6Slab: \n&eThe slab setting flips slabs to the top half \nof the block on placing them.\n")
msg(sender, "&6Cauldron: \n&eThe cauldron setting fills cauldrons on placing them.\n")
except:
print trace()
elif (material in blocks) and n in inventoryToggle:
inv = user.getInventory().getItemInHand()
state = block.getState()
blockInv = state.getInventory()
blockInv.setItem(int(slot), toStack(inv))
def help():
msg(sender, "&a-=[&6BPM&a]=-")
msg(sender, "&6Aliases for /toggle: \n &e/set, /setting and /config\n")
msg(sender, "&6Available settings: \n &eSlab, Cauldron and Inventory\n")
msg(sender, "&6Slab: \n&eThe slab setting flips slabs to the top half \nof the block on placing them.\n")
msg(sender, "&6Cauldron: \n&eThe cauldron setting fills cauldrons on placing them.\n")
msg(sender, "&6Inventory: \n&eThe inventory setting puts a block in an item with an inventory.\n")
@hook.command("toggle")
def toggleCommand(sender, cmd, label, args):
name = sender.getName()
def toggle_command(sender, cmd, label, args):
py_player = get_py_player(sender)
print py_player.player.getName()
try:
if sender.hasPermission(togPerm) and sender.getWorld().getName() == "creative":
if len(args) > 0:
if str(args[0]) == "slab":
if name in slabToggle:
if py_player.slab_toggle == True:
msg(sender, "&a Disabled automatically flipping slabs.")
slabToggle.remove(name)
py_player.slab_toggle = False
else:
msg(sender, "&a Enabled automatically flipping slabs.")
slabToggle.append(name)
py_player.slab_toggle = True
elif str(args[0]) == "cauldron":
if name in cauldronToggle:
if py_player.cauldron_toggle == True:
msg(sender, "&a Disabled automatically filling cauldrons.")
cauldronToggle.remove(name)
py_player.cauldron_toggle = False
else:
msg(sender, "&a Enabled automatically filling cauldrons.")
cauldronToggle.append(name)
elif str(args[0]) == "inv" or "inventory":
if name in cauldronToggle:
msg(sender, "&a Disabled automatically putting items in inventories.")
cauldronToggle.remove(name)
else:
msg(sender, "&a Enabled automatically putting items in inventories.")
cauldronToggle.append(name)
elif str(args[0]) == "help" or "?" or "wut":
help()
elif len(args) > 1:
msg(sender,"&aToo many arguments, \n&3&s") % info
py_player.cauldron_toggle = True
else:
msg(sender, "&9Unknown argument \n &3%s") % info
help(sender)
else:
help()
help(sender)
elif sender.getWorld() != "creative":