Welcome to the Treehouse Community

The Treehouse Community is a meeting place for developers, designers, and programmers of all backgrounds and skill levels to get support. Collaborate here on code errors or bugs that you need feedback on, or asking for an extra set of eyes on your latest project. Join thousands of Treehouse students and alumni in the community today. (Note: Only Treehouse students can comment or ask questions, but non-students are welcome to browse our conversations.)

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and a supportive community. Start your free trial today.

Python

jason chan
jason chan
31,008 Points

game 1 python

import random

CELLS = [(0, 0), (0, 1), (0, 2),
         (1, 0), (1, 1), (1, 2),
         (2, 0), (2, 1), (2, 2)]


def get_locations():
  monster = random.choice(CELLS)
  door = random.choice(CELLS)
  start = random.choice(CELLS)

  if monster == door or monster == start or door == start:
    return get_locations()
  return monster, door, start

def move_player(player, move):
  x,y = player

  if move =="LEFT":
    y -= 1
  elif move =="RIGHT":
    y += 1
  elif move == "UP":
    x -= 1
  elif move == "DOWN":
    x += 1  

  return x, y


def get_moves(player):
  moves = ['LEFT', 'RIGHT', 'UP', 'DOWN']
  # player is = (x,y)

  if player[1] == 0:
    moves.remove("LEFT")
  if player[1] == 2:
    moves.remove("RIGHT")
  if player[0] == 0:
    moves.remove("UP")  
  if player[0] == 2:
    moves.remove("DOWN") 

  return moves

monster, door, player = get_locations()

while True:
  moves = get_moves(player)

  print("Welcome to the dungeon!")
  print("You're currently in room {}".format(player))  # fill in with player position
  print("You can move {}".format(moves))  # fill in with available moves
  print("Enter QUIT to quit")

  move = input("> ")
  move = move.upper()

  if move == 'QUIT':
    break


  if move in moves:
    player = move_player(player, move)
  else:
    print("That's a wall...")
    continue

  if player == door:
    print("You escaped!!!")
    break
  elif player == monster:
    print("You made a tasty treat for the dungeon monster")
    break

What's wrong with my code the editor is so frustrating.

2 Answers

Keerthi Suria Kumar Arumugam
Keerthi Suria Kumar Arumugam
4,585 Points

The game seems to work fine for me. What error are you getting ?

jason chan
jason chan
31,008 Points

syntax error on certain lines? i'm not sure if indented correctly. I'm used to curly braces with php and javascript.

jason chan
jason chan
31,008 Points

yes the game does work? I honestly don't know why it didn't for me. LOLs.