def registerhook(hookCls, execfunc): # Use like this: # >>> from mcapi import * # >>> from org.spongepowered.api.event.block import ChangeBlockEven # >>> def place(e): # ... yell("Placed {}".format(e.getBlockPlaced())) # >>> registerhook(ChangeBlockEvent.Break, place) GAME.getEventManager().registerListenr(PyContext.getPlugin(), hookCls, execfunc)
def registercommand(name, execfunc): # Use like this: # >>> def functiontest(caller, params): # ... yell(params[0]) # >>> registercommand("test", functiontest) spec = CommandSpec.builder()\ .executor(execfunc)\ .build() GAME.getCommandDispatcher().register(PyContext.getPlugin(), spec, name)
def registerhook(hookCls, execfunc, priority=EventPriority.NORMAL): # Use like this: # >>> from mcapi import * # >>> from org.bukkit.event.block import BlockPlaceEvent # >>> def place(e): # ... yell("Placed {}".format(e.getBlockPlaced())) # >>> registerhook(BlockPlaceEvent, place) SERVER.getPluginManager().registerEvent(hookCls, EventListener(execfunc), priority, execute, PyContext.getPlugin())
from org.spongepowered.api.text import Texts from org.spongepowered.api.world.weather import Weathers from org.spongepowered.api.world.explosion import Explosion from org.spongepowered.api.block import BlockTypes from org.spongepowered.api.entity import EntityTypes from org.spongepowered.api.event.cause.entity.spawn import SpawnCause, SpawnTypes from org.spongepowered.api.effect.particle import ParticleEffect, ParticleTypes from org.spongepowered.api.util.blockray import BlockRay from org.spongepowered.api.command.spec import CommandSpec from com.flowpowered.math.vector import Vector3d from random import * PLUGIN = PyContext.getPlugin() GAME = PLUGIN.game SERVER = GAME.getServer() WORLD = SERVER.getWorld(SERVER.getDefaultWorld().get().getWorldName()).get() MORNING = 2000 NOON = 6000 EVENING = 14000 NIGHT = 18000 #full list of BlockTypes available in JavaDocs on canarymod.net AIR = BlockTypes.AIR STONE = BlockTypes.STONE GRASS = BlockTypes.GRASS DIRT = BlockTypes.DIRT COBBLESTONE = BlockTypes.COBBLESTONE WOOD_PLANKS = BlockTypes.PLANKS