Giter Club home page Giter Club logo

cluedunit's People

Contributors

aramsey118 avatar stephaniesoldavini avatar

Watchers

 avatar  avatar  avatar

cluedunit's Issues

Deterministically and logically number doors to a room

Because some rooms have two doors on the same wall, up/down/left/right isn't specific enough for leaving a room. Instead, the doors will be numbered and the number will be used as the movement "direction".

The doors are numbered in order from top to bottom, left to right.

  • This needs to be implemented into genBoard.py so that the indices of the adjacency list of a room are the door numbers (or index + 1 = door number, depending on if we want a door number 0).

  • The door numbers will either be hard coded into the ASCII map or dynamically printed at the doors at runtime. Dynamically would be less prone to mistakes.

AI difficult level

Write three separate AI files and import the correct one using "from ai file import as ai" . Ai file is the difficultly selected by the user

Write ASCII functions

  • Take a location and a character and print the character (e.g. 'PL' for Prof Plum) at the location on the ASCII board in the terminal. Will need to handle room placement, which ideally will place the character at a random spot in the room that doesn't interfere with the room name, secret passages, or door numbers.

  • Make an ant trail when the player is forming their movement across the board. For example as the player types '1wwdd' an x would appear outside of door 1, in the space above that, in the space above that, in the space to the right of that, and in the space to the right of that (an upside down L shape). If they backspace, the xs would get removed.

  • Make passage corners blink if the move is to go thru a passage.

Check terminal size

If the terminal window is not big enough to view the board, ask the user to resize their window/adjust font settings so enough rows and columns are present.

Implement movement function

This function will take in a char representing a move, a starting location, and will output an ending location.

The char input will be one of the following: w (up), a (left), s (down), d (right), p (passage), or a numeric representing a door through which to exit a room. In the case of the command line ASCII board, the char will be the user's input directly. If another controller is implemented, the control input will be converted to the corresponding char for processing by the function.

This function is intended to be called in a loop over a string of input representing a player's entire dice-roll-length move.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.