added snowbrawl.py
This commit is contained in:
98
snowbrawl.py
Normal file
98
snowbrawl.py
Normal file
@@ -0,0 +1,98 @@
|
||||
#Snowbrawl
|
||||
from helpers import *
|
||||
|
||||
arenas = {}
|
||||
|
||||
"""
|
||||
ArenaName
|
||||
PlayersPerGame
|
||||
Objective
|
||||
PlayersInQue
|
||||
"""
|
||||
|
||||
@hook.event("Entity.ProjectileHitEvent", "high")
|
||||
def onHit(event):
|
||||
if event.getEntity().getType() != EntityType.SNOWBALL:
|
||||
return
|
||||
if event.getWorld().getName() != "minigames":
|
||||
return
|
||||
event.getWorld().createExplosion(event.getLocation(),1)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@hook.event("PlayerInteractEvent")
|
||||
def onClick(event):
|
||||
if (event.getAction() != Action.RIGHT_CLICK_BLOCK):
|
||||
return
|
||||
block = event.getClickedBlock()
|
||||
if not block.getMaterial() in [Material.SIGN_POST, Material.WALL_SIGN]:
|
||||
return
|
||||
sign_state = block.getState()
|
||||
lines = bukkit.block.Sign.getLines(sign_state)
|
||||
|
||||
|
||||
|
||||
class Queue(Object):
|
||||
|
||||
queue = []
|
||||
|
||||
def __init__(self):
|
||||
|
||||
def add(name):
|
||||
queue.append(name)
|
||||
def rem(names):
|
||||
for name in names:
|
||||
queue.remove(name)
|
||||
def shrink():
|
||||
queue.remove(0)
|
||||
|
||||
class Arena(Object):
|
||||
|
||||
queue = Queue()
|
||||
size = 0
|
||||
coordinate = Coordinate(0, 0)
|
||||
|
||||
def __init__(self, coordinate, size):
|
||||
self.coordinate = coordinate
|
||||
self.size = size
|
||||
|
||||
def getLocation():
|
||||
return coordinate
|
||||
def getSize():
|
||||
return size
|
||||
def getQueue():
|
||||
return queue
|
||||
|
||||
class Coordinate(Object):
|
||||
|
||||
x = 0
|
||||
z = 0
|
||||
|
||||
def __init__(self, x, z):
|
||||
self.x = x
|
||||
self.z = z
|
||||
|
||||
def getX():
|
||||
return x
|
||||
def getZ():
|
||||
return z
|
||||
|
||||
def inRange(location, range):
|
||||
xd = location.getBlockX() - getX()
|
||||
zd = location.getBlockZ() - getZ()
|
||||
return xd >= 0 and xd <= range_ and zd >= 0 and zd <= range_
|
||||
"""
|
||||
class Match(Object):
|
||||
|
||||
names = []
|
||||
|
||||
def __init__(self, ):
|
||||
"""
|
||||
def getArena(location):
|
||||
for name in arenas:
|
||||
arena = arenas.get(name)
|
||||
if arena.getLocation().inRange(location, arena.getSize() - 1)
|
||||
return arena
|
||||
return None
|
||||
Reference in New Issue
Block a user