Help with Continuous Alchemy

Hi, I need help with level 10 of the Sarven Desert. The system says that there are no errors in the code, but my character just doesn’t go and get the water.

# Race munchkins to the water distilled by Omarn Brewstone!
# The continue statement is powerful for managing complicated logic.
# When the program uses the continue statement, the rest of the loop is skipped.
# However, unlike with "break", the loop repeats instead of stopping.
# Use "continue" to verify the conditions of the ambush.
    enemy = self.findNearestEnemy()
    item = self.findNearestItem()

    # If there is no enemy, continue out of the loop.
    if not enemy:

    # If there is an enemy, but no item, ask for a potion and continue out of the loop.
    if not item:
        self.say("Give me a drink!")

    # Use an if-statement to check the item's type. If the type is "poison", continue out of the loop.
    if item.type = "poison":
    # If it is not, the potion must be a bottle of water, so walk to it and return to the starting position!
        self.moveXY(item.pos.x, item.pos.y)
        self.moveXY(32, 47)

Any help would be appreciated.

When you used self.moveXY(item.pos.x, item.pos.y) you didn’t indent it so that it would be inside the else:. Did you do this on purpose?

It is aligned with the else: in game. Accidentally made a typo when posting this thread.

Ok, thanks for the info. But can you edit it?


I still need help with the level though, I’ve been trying to figure it out for a while and no luck.

yo escribi este codigo y me funciono en la segunda vuelta hay q usar la bandera por q le hero se traba y no coge el agua

while True:
enemy = hero.findNearestEnemy()
item = hero.findNearestItem()
flag = hero.findFlag()

# Si no hay enemigo, continúa fuera del bucle.
if not enemy:

if flag:
    if flag.color is "black":
        hero.moveXY(flag.pos.x, flag.pos.y)
# Si hay un enemigo, pero no hay artículo, pide una poción y continúa fuera del bucle.
if not item:
    hero.say("¡Dame agua!")

# Usa una sentencia-if para comprobar el tipo del artículo. Si es de tipo "poison" (veneno), continúa fuera del bucle.
if item.type == "poison":
# Si no lo es, la poción debe ser una botella de agua, camina hasta ella y vuelve a la posición inicial!
# so moveXY to the potion, then back to the start!
if item.type != "poison":
    hero.moveXY(item.pos.x, item.pos.y)
    hero.moveXY(33, 42)