Python Python Collections (2016, retired 2019) Dungeon Game Hit points

Jinman Kim
Jinman Kim
5,586 Points

Need some help with this code challenge

I can't find what's wrong with my functions here. Wondering if anyone can give me a hand on this.

*Also, I am not getting fully into making this game without being able to draw an actual grid or be somewhat realistic

movement.py
# EXAMPLES:
# move((1, 1, 10), (-1, 0)) => (0, 1, 10)
# move((0, 1, 10), (-1, 0)) => (0, 1, 5)
# move((0, 9, 5), (0, 1)) => (0, 9, 0)

def move(player, direction):
    x, y, hp = player
    if direction == (-1,0):
        if x == 0:
            hp -=5
        else:
            x -= 1
    if direction == (1,0):
        if x == 9:
            hp -=5
        else:
            x += 1
    if direction == (0,-1):
        if y == 0:
            hp -=5
        else:
            y -= 1
    if direction == (0,1):        
        if y == 9:
            hp -=5
        else:
            y += 1

    return x, y, hp

1 Answer

Chris Freeman
MOD
Chris Freeman
Treehouse Moderator 56,648 Points

You are very close. You have an inconsistent use of tabs and spaces. Remove the tab and replace with the appropriate number of spaces.

Post back if you need more help. Good luck!!!

Jinman Kim
Jinman Kim
5,586 Points

Thanks very much! Now that I retry with the same code, it works. But why is this happening? it looked like a same amount of space and indentation for me.

Chris Freeman
Chris Freeman
Treehouse Moderator 56,648 Points

When the code is formatted for display here, the tabs are replaced by spaces and may look correct. Cut and paste from the post source text gets the original mixing error. A Moderator is able to see and edit the source text.