from .observer import MultiplexingObserver, LoggingObserver, JSObserver global escape from cgi import escape def signFilter(poi): if poi['id'] == 'Sign' or poi['id'] == 'minecraft:sign': return "
" + "\n".join(map(escape, [poi['Text1'], poi['Text2'], poi['Text3'], poi['Text4']])) + "
" global json import json def petFilter(poi): if "CustomName" in poi: custom_name = json.loads(poi['CustomName']) if "text" in custom_name: return custom_name["text"] def playerIcons(poi): if poi['id'] == 'Player': poi['icon'] = "https://overviewer.org/avatar/%s" % poi['EntityId'] return "Last known location for %s" % poi['EntityId'] processes = 2 worlds["My world"] = "/var/lib/minecraft/world" renders["Vue normale"] = { "world": "My world", "title": "Vue normale", "texturepath": "@CLIENT_JAR@", "rendermode": smooth_lighting, 'markers': [dict(name="All signs", filterFunction=signFilter), dict(name="Pets", filterFunction=petFilter, icon="icons/marker_cat.png", createInfoWindow=False, checked=True), dict(name="Position joueurs", filterFunction=playerIcons),], } cave_rendermode = [Base(), EdgeLines(), Cave(only_lit=True), DepthTinting()] renders["Grottes"] = { "world": "My world", "title": "Grottes", "texturepath": "@CLIENT_JAR@", "rendermode": cave_rendermode, } outputdir = "/var/www/minecraft-overviewer" observer = MultiplexingObserver(LoggingObserver(), JSObserver(outputdir))