def __init__(self): self.world = World("world") self.players = dict() self.entityid = 1 self.entities = set() self.time_loop = LoopingCall(self.update_time) self.time_loop.start(2) self.hooks = {} authenticator = configuration.get("beta", "authenticator") selected = retrieve_named_plugins(IAuthenticator, [authenticator])[0] print "Using authenticator %s" % selected.name self.hooks[2] = selected.handshake self.hooks[1] = selected.login generators = configuration.get("beta", "generators").split(",") generators = retrieve_named_plugins(ITerrainGenerator, generators) print "Using generators %s" % ", ".join(i.name for i in generators) self.world.pipeline = generators console = Console() console.factory = self print "Factory init'd"
def pipeline(): generators = configuration.get("beta", "generators").split(",") generators = retrieve_named_plugins(ITerrainGenerator, generators) before = time.time() for i in range(10): chunk = Chunk(i, i) for generator in generators: generator.populate(chunk, 0) after = time.time() return after - before
def __init__(self): print "Client connected!" self.chunks = dict() self.handlers = collections.defaultdict(lambda: self.unhandled) self.handlers.update({ 0: self.ping, 3: self.chat, 5: self.inventory, 10: self.flying, 11: self.position_look, 12: self.position_look, 13: self.position_look, 14: self.digging, 15: self.build, 16: self.equip, 255: self.quit, }) print "Registering client hooks..." names = ["nofloatingsnow"] self.dig_hooks = retrieve_named_plugins(IDigHook, names)