Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community!

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

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

Adam Kroll
seal-mask
.a{fill-rule:evenodd;}techdegree
Adam Kroll
Python Web Development Techdegree Student 1,095 Points

Struggling with movement.py

Not sure which part of this I'm missing. Any help would be greatly appreciated.

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
    x += direction[0]
    y += direction[0]
    if x <= 0 or x >= 9:
        hp -= 5  
    if y <= 0 or y >= 9:
        hp -= 5
    return x, y, hp

1 Answer

Jonathan Grieve
MOD
Jonathan Grieve
Treehouse Moderator 91,228 Points

I think we need to find a way to make sure the move the player makes doesn't take them beyond the hypothetical wall i.e. "Don't let them go past the wall"

Try a calculation that subtracts the current location from the distance away from the wall. Or maybe just run some condition checks for the current location and simulate the moves that cause the player to take the hit points. :-)