Beispiel #1
0
 def get_hint(self, obj):
     if obj.default:
         hint = getattr(messages, 'hint_level' + obj.name)()
         return hint
     else:
         return hint_level_default()
Beispiel #2
0
def play_anonymous_level(request,
                         levelId,
                         from_level_editor=True,
                         random_level=False):
    night_mode = (False if not app_settings.NIGHT_MODE_FEATURE_ENABLED else
                  "night" in request.GET)
    level = Level.objects.filter(id=levelId)

    if not level.exists():
        return redirect(reverse("level_editor"), permanent=True)

    level = level[:1].get()

    if not level.anonymous:
        return redirect(reverse("level_editor"), permanent=True)

    lesson = mark_safe(messages.description_level_default())
    hint = mark_safe(messages.hint_level_default())

    attempt = None
    house = get_decor_element("house", level.theme).url
    cfc = get_decor_element("cfc", level.theme).url
    background = get_decor_element("tile1", level.theme).url
    character = level.character

    character_url = character.top_down
    character_width = character.width
    character_height = character.height
    wreckage_url = "van_wreckage.svg"

    decor_data = cached_level_decor(level)

    if night_mode:
        block_data = level_management.get_night_blocks(level)
        night_mode = "true"
        lesson = messages.title_night_mode()
        model_solution = "[]"
    else:
        block_data = cached_level_blocks(level)
        night_mode = "false"
        model_solution = level.model_solution

    return_view_name = "level_editor" if from_level_editor else "levels"

    level.delete()

    return render(
        request,
        "game/game.html",
        context={
            "level":
            level,
            "decor":
            decor_data,
            "blocks":
            block_data,
            "lesson":
            lesson,
            "character":
            character,
            "background":
            background,
            "house":
            house,
            "cfc":
            cfc,
            "hint":
            hint,
            "attempt":
            attempt,
            "random_level":
            random_level,
            "return_url":
            reverse(return_view_name),
            "character_url":
            character_url,
            "character_width":
            character_width,
            "character_height":
            character_height,
            "wreckage_url":
            wreckage_url,
            "night_mode":
            night_mode,
            "night_mode_feature_enabled":
            str(app_settings.NIGHT_MODE_FEATURE_ENABLED).lower(),
            "model_solution":
            model_solution,
        },
    )
Beispiel #3
0
def play_anonymous_level(request,
                         levelId,
                         from_level_editor=True,
                         random_level=False):
    night_mode = False if not app_settings.NIGHT_MODE_FEATURE_ENABLED else 'night' in request.GET
    level = Level.objects.filter(id=levelId)

    if not level.exists():
        return redirect(reverse('level_editor'), permanent=True)

    level = level[:1].get()

    if not level.anonymous:
        return redirect(reverse('level_editor'), permanent=True)

    lesson = mark_safe(messages.description_level_default())
    hint = mark_safe(messages.hint_level_default())

    attempt = None
    house = get_decor_element('house', level.theme).url
    cfc = get_decor_element('cfc', level.theme).url
    background = get_decor_element('tile1', level.theme).url
    character = level.character

    character_url = character.top_down
    character_width = character.width
    character_height = character.height
    wreckage_url = 'van_wreckage.svg'

    decor_data = cached_level_decor(level)

    if night_mode:
        block_data = level_management.get_night_blocks(level)
        night_mode = "true"
        lesson = messages.title_night_mode()
        model_solution = '[]'
    else:
        block_data = cached_level_blocks(level)
        night_mode = "false"
        model_solution = level.model_solution

    return_view_name = 'level_editor' if from_level_editor else 'levels'

    context = RequestContext(
        request, {
            'level':
            level,
            'decor':
            decor_data,
            'blocks':
            block_data,
            'lesson':
            lesson,
            'character':
            character,
            'background':
            background,
            'house':
            house,
            'cfc':
            cfc,
            'hint':
            hint,
            'attempt':
            attempt,
            'random_level':
            random_level,
            'return_url':
            reverse(return_view_name),
            'character_url':
            character_url,
            'character_width':
            character_width,
            'character_height':
            character_height,
            'wreckage_url':
            wreckage_url,
            'night_mode':
            night_mode,
            'night_mode_feature_enabled':
            str(app_settings.NIGHT_MODE_FEATURE_ENABLED).lower(),
            'model_solution':
            model_solution,
        })

    level.delete()

    return render(request, 'game/game.html', context_instance=context)
Beispiel #4
0
 def get_hint(self, obj):
     if obj.default:
         hint = getattr(messages, 'hint_level' + obj.name)()
         return hint
     else:
         return hint_level_default()
def play_anonymous_level(request, levelId, from_level_editor=True, random_level=False):
    night_mode = False if not app_settings.NIGHT_MODE_FEATURE_ENABLED else 'night' in request.GET
    level = Level.objects.filter(id=levelId)

    if not level.exists():
        return redirect(reverse('level_editor'), permanent=True)

    level = level[:1].get()

    if not level.anonymous:
        return redirect(reverse('level_editor'), permanent=True)

    lesson = mark_safe(messages.description_level_default())
    hint = mark_safe(messages.hint_level_default())

    attempt = None
    house = get_decor_element('house', level.theme).url
    cfc = get_decor_element('cfc', level.theme).url
    background = get_decor_element('tile1', level.theme).url
    character = level.character

    character_url = character.top_down
    character_width = character.width
    character_height = character.height
    wreckage_url = 'van_wreckage.svg'

    decor_data = cached_level_decor(level)

    if night_mode:
        block_data = level_management.get_night_blocks(level)
        night_mode = "true"
        lesson = messages.title_night_mode()
        model_solution = '[]'
    else:
        block_data = cached_level_blocks(level)
        night_mode = "false"
        model_solution = level.model_solution

    return_view_name = 'level_editor' if from_level_editor else 'levels'

    context = RequestContext(request, {
        'level': level,
        'decor': decor_data,
        'blocks': block_data,
        'lesson': lesson,
        'character': character,
        'background': background,
        'house': house,
        'cfc': cfc,
        'hint': hint,
        'attempt': attempt,
        'random_level': random_level,
        'return_url': reverse(return_view_name),
        'character_url': character_url,
        'character_width': character_width,
        'character_height': character_height,
        'wreckage_url': wreckage_url,
        'night_mode': night_mode,
        'night_mode_feature_enabled': str(app_settings.NIGHT_MODE_FEATURE_ENABLED).lower(),
        'model_solution': model_solution,
    })

    level.delete()

    return render(request, 'game/game.html', context_instance=context)
def play_anonymous_level(request, levelId, from_level_editor=True, random_level=False):
    night_mode = (
        False if not app_settings.NIGHT_MODE_FEATURE_ENABLED else "night" in request.GET
    )
    level = Level.objects.filter(id=levelId)

    if not level.exists():
        return redirect(reverse("level_editor"), permanent=True)

    level = level[:1].get()

    if not level.anonymous:
        return redirect(reverse("level_editor"), permanent=True)

    lesson = mark_safe(messages.description_level_default())
    hint = mark_safe(messages.hint_level_default())

    attempt = None
    house = get_decor_element("house", level.theme).url
    cfc = get_decor_element("cfc", level.theme).url
    background = get_decor_element("tile1", level.theme).url
    character = level.character

    character_url = character.top_down
    character_width = character.width
    character_height = character.height
    wreckage_url = "van_wreckage.svg"

    decor_data = cached_level_decor(level)

    if night_mode:
        block_data = level_management.get_night_blocks(level)
        night_mode = "true"
        lesson = messages.title_night_mode()
        model_solution = "[]"
    else:
        block_data = cached_level_blocks(level)
        night_mode = "false"
        model_solution = level.model_solution

    return_view_name = "level_editor" if from_level_editor else "levels"

    level.delete()

    return render(
        request,
        "game/game.html",
        context={
            "level": level,
            "decor": decor_data,
            "blocks": block_data,
            "lesson": lesson,
            "character": character,
            "background": background,
            "house": house,
            "cfc": cfc,
            "hint": hint,
            "attempt": attempt,
            "random_level": random_level,
            "return_url": reverse(return_view_name),
            "character_url": character_url,
            "character_width": character_width,
            "character_height": character_height,
            "wreckage_url": wreckage_url,
            "night_mode": night_mode,
            "night_mode_feature_enabled": str(
                app_settings.NIGHT_MODE_FEATURE_ENABLED
            ).lower(),
            "model_solution": model_solution,
        },
    )