import importlib import threading import time from flask import Flask app = Flask(__name__) from bunch import Bunch from watchdog.observers import Observer from watchdog.events import PatternMatchingEventHandler import bot global_state = Bunch() g = global_state g.connection = False @app.route('/') def hello_world(): #print(chunks.chunks) return str(g.chunks.get_block_at(84,62,54)) #return 'ok' reload_timeout = time.time() def main(): def reload_bot(event): global reload_timeout if time.time() - reload_timeout > 2.0: reload_timeout = time.time() print('Reloading...') g.running = False event_handler = PatternMatchingEventHandler(patterns=['*.py'], ignore_patterns=['./main.py']) event_handler.on_any_event = reload_bot observer = Observer() observer.schedule(event_handler, '.', recursive=True) observer.start() try: while True: g.running = True bot.bot(global_state) importlib.reload(bot) except KeyboardInterrupt: observer.stop() observer.join() if __name__ == '__main__': threading.Thread(target=app.run).start() time.sleep(1) main()