tetris.settings module¶
- class tetris.settings.Settings¶
Bases:
objectSettings class for the game
- BG_COLOR: tuple = (0, 0, 100)¶
- CELL_BORDER_COLOR: tuple = (119, 136, 153)¶
- CHECK_KEYS_PRESSED_MOVEMENT_DOWN_TIME: int = 50¶
- CHECK_KEYS_PRESSED_MOVEMENT_SIDE_TIME: int = 80¶
- CHECK_KEYS_PRESSED_ROTATION_TIME: int = 150¶
- CONTROLS_ONE_KEY_X: float = 650.0¶
- CONTROLS_TEXTS: list[str] = ['move down', 'move left', 'move right', 'hard drop', 'rotate left', 'rotate right']¶
- CONTROLS_TEXTS_X: float = 333.3333333333333¶
- CONTROLS_TEXTS_Y: list[float] = [320.0, 400.0, 480.0, 560.0, 640.0, 720.0]¶
- CONTROLS_TITLE: str = 'CONTROLS'¶
- CONTROLS_TITLE_Y: int = 160¶
- CONTROLS_TWO_KEYS_X: list[float] = [600.0, 700.0]¶
- EMPTY_CELL_TAG: int = 0¶
- END_OF_BTNS_COLOR: tuple = (218, 165, 32)¶
- END_OF_GAME_BTNS_HEIGHT: int = 44¶
- END_OF_GAME_BTNS_WIDTH: int = 125¶
- END_OF_GAME_BTNS_Y: int = 400¶
- END_OF_GAME_MENU_BTN_TEXT: str = 'Menu'¶
- END_OF_GAME_MENU_BTN_X: int = 345¶
- END_OF_GAME_NEXT_BTN_TEXT: str = 'Next'¶
- END_OF_GAME_NEXT_BTN_X: int = 530¶
- FONT_COLOR: tuple = (255, 255, 255)¶
- FONT_NAME: str = 'Tahoma'¶
- FONT_SIZE_CONTROLS: int = 30¶
- FONT_SIZE_CONTROLS_TITLE: int = 40¶
- FONT_SIZE_END_OF_GAME_BTNS: int = 20¶
- FONT_SIZE_GET_USERNAME: int = 23¶
- FONT_SIZE_INFO_TITLES: int = 30¶
- FONT_SIZE_LEADERBOARD: int = 15¶
- FONT_SIZE_LEADERBOARD_HEADER: int = 20¶
- FONT_SIZE_LEADERBOARD_TITLE: int = 40¶
- FONT_SIZE_RULES: int = 30¶
- FONT_SIZE_RULES_TITLE: int = 40¶
- FONT_SIZE_SCORE_LVL: int = 30¶
- FONT_SIZE_TETRIS_TITLE: int = 80¶
- FPS: int = 60¶
- GAME_BORDER_COLOR: tuple = (255, 0, 0)¶
- GAME_WINDOW_HEIGHT: int = 600¶
- GAME_WINDOW_WIDTH: int = 400¶
- GET_USERNAME_INPUT_BOX_HEIGHT: int = 40¶
- GET_USERNAME_INPUT_BOX_WIDTH: int = 250¶
- GET_USERNAME_INPUT_BOX_X: float = 588.2352941176471¶
- GET_USERNAME_INPUT_BOX_Y: float = 392.0¶
- GET_USERNAME_TEXT: str = 'ENTER YOUR USERNAME (ENTER)'¶
- GO_BACK_BTN_X: int = 30¶
- GO_BACK_BTN_Y: int = 40¶
- GO_BACK_ICON_FILENAME: str = '/home/docs/checkouts/readthedocs.org/user_builds/tetris/envs/latest/lib/python3.11/site-packages/tetris/assets/arrow_back.png'¶
- GRID_CELL_HEIGHT: int = 30¶
- GRID_CELL_WIDTH: int = 40¶
- GRID_N_OF_COL: int = 10¶
- GRID_N_OF_ROWS: int = 22¶
- HARD_DROP_KEY_FILENAME: str = '/home/docs/checkouts/readthedocs.org/user_builds/tetris/envs/latest/lib/python3.11/site-packages/tetris/assets/space_key.png'¶
- HARD_DROP_LOOP_SLEEP_TIME: float = 0.01¶
- I: tuple = (0, 255, 255)¶
- INFO_WINDOW_HEIGHT: int = 150¶
- INFO_WINDOW_WIDTH: int = 219¶
- J: tuple = (0, 0, 255)¶
- L: tuple = (255, 165, 0)¶
- LEADERBOARD_BORDER_COLOR: tuple = (128, 128, 128)¶
- LEADERBOARD_BORDER_WIDTH: int = 1¶
- LEADERBOARD_BORDER_X: float = 62.5¶
- LEADERBOARD_FIRST_ROW_Y: float = 352.22222222222223¶
- LEADERBOARD_HEADERS_TEXTS: list[str] = ['RANK', 'USERNAME', 'SCORE', 'LVL', 'GAMES PLAYED']¶
- LEADERBOARD_HEADER_BORDER_WIDTH: int = 3¶
- LEADERBOARD_HEADER_HEIGHT: int = 100¶
- LEADERBOARD_HEADER_TEXT_Y: float = 272.22222222222223¶
- LEADERBOARD_HEADER_Y: float = 222.22222222222223¶
- LEADERBOARD_ROW_HEIGHT: float = 40.0¶
- LEADERBOARD_TEXT_WIDTH: float = 175.0¶
- LEADERBOARD_TEXT_X: list[float] = [107.14285714285715, 282.14285714285717, 500.0, 675.0, 850.0]¶
- LEADERBOARD_TITLE: str = 'LEADERBOARD'¶
- LEADERBOARD_TITLE_Y: int = 160¶
- LEADERBOARD_WIDTH: float = 875.0¶
- LVL_TITLE: str = 'LEVEL'¶
- LVL_TITLE_Y: float = 410.2564102564103¶
- LVL_WINDOW_X: int = 40¶
- LVL_WINDOW_Y: float = 444.44444444444446¶
- MENU_BTNS_FIRST_Y: int = 200¶
- MENU_BTNS_HEIGHT: int = 100¶
- MENU_BTN_GAP: int = 20¶
- MENU_CONTROLS_TEXT = 'Controls'¶
- MENU_LEADERBOARD_TEXT = 'Leaderboard'¶
- MENU_QUIT_TEXT = 'Quit'¶
- MENU_RULES_TEXT = 'Rules'¶
- MENU_START_GAME_TEXT = 'Start game'¶
- MIGRATION_COMMAND: str = 'python db/scripts/migration.py migrate'¶
- MOVE_DOWN_ACCELERATION_PER_LVL: int = 19¶
- MOVE_DOWN_START_TIME: int = 1000¶
- MOVING_DOWN_KEY_1_FILENAME: str = '/home/docs/checkouts/readthedocs.org/user_builds/tetris/envs/latest/lib/python3.11/site-packages/tetris/assets/s_key.png'¶
- MOVING_DOWN_KEY_2_FILENAME: str = '/home/docs/checkouts/readthedocs.org/user_builds/tetris/envs/latest/lib/python3.11/site-packages/tetris/assets/down_key.png'¶
- MOVING_LEFT_KEY_1_FILENAME: str = '/home/docs/checkouts/readthedocs.org/user_builds/tetris/envs/latest/lib/python3.11/site-packages/tetris/assets/a_key.png'¶
- MOVING_LEFT_KEY_2_FILENAME: str = '/home/docs/checkouts/readthedocs.org/user_builds/tetris/envs/latest/lib/python3.11/site-packages/tetris/assets/left_key.png'¶
- MOVING_RIGHT_KEY_1_FILENAME: str = '/home/docs/checkouts/readthedocs.org/user_builds/tetris/envs/latest/lib/python3.11/site-packages/tetris/assets/d_key.png'¶
- MOVING_RIGHT_KEY_2_FILENAME: str = '/home/docs/checkouts/readthedocs.org/user_builds/tetris/envs/latest/lib/python3.11/site-packages/tetris/assets/right_key.png'¶
- NEXT_TETROMINO_CELL_HEIGHT: int = 37¶
- NEXT_TETROMINO_CELL_WIDTH: int = 54¶
- NEXT_TETROMINO_N_OF_COL: int = 4¶
- NEXT_TETROMINO_N_OF_ROWS: int = 4¶
- NEXT_TETROMINO_TITLE: str = 'NEXT'¶
- NEXT_WINDOW_X: float = 740.7407407407406¶
- NEXT_WINDOW_Y: int = 200¶
- N_OF_LINES_TO_LVL_UP: int = 10¶
- O: tuple = (255, 255, 0)¶
- POINTS_FOR_HARD_DROP: int = 2¶
- POINTS_FOR_SOFT_DROP: int = 1¶
- POINTS_PER_LINES: dict = {1: 100, 2: 300, 3: 500, 4: 800}¶
- ROTATE_LEFT_KEY_FILENAME: str = '/home/docs/checkouts/readthedocs.org/user_builds/tetris/envs/latest/lib/python3.11/site-packages/tetris/assets/z_key.png'¶
- ROTATE_RIGHT_KEY_1_FILENAME: str = '/home/docs/checkouts/readthedocs.org/user_builds/tetris/envs/latest/lib/python3.11/site-packages/tetris/assets/w_key.png'¶
- ROTATE_RIGHT_KEY_2_FILENAME: str = '/home/docs/checkouts/readthedocs.org/user_builds/tetris/envs/latest/lib/python3.11/site-packages/tetris/assets/up_key.png'¶
- RULES_LINE_HEIGHT: int = 40¶
- RULES_TEXT_Y: float = 266.6666666666667¶
- RULES_TITLE: str = 'RULES'¶
- RULES_TITLE_Y: int = 160¶
- S: tuple = (0, 255, 0)¶
- SCORE_NEXT_TITLE_Y: int = 160¶
- SCORE_TITLE: str = 'SCORE'¶
- SCORE_WINDOW_X: int = 40¶
- SCORE_WINDOW_Y: int = 200¶
- SCREEN_HEIGHT: int = 800¶
- SCREEN_WIDTH: int = 1000¶
- SECOND_BG_COLOR: tuple = (0, 0, 0)¶
- T: tuple = (128, 0, 128)¶
- TETRIS_TITLE: str = 'TETRIS'¶
- TETRIS_TITLE_Y: int = 50¶
- Z: tuple = (255, 0, 0)¶
- check_go_back_btn_hover() None¶
Checks if mouse is hovering over the go_back button and changes the cursor accordingly
- create_end_of_game_btns() None¶
Creates buttons displayed after the game is lost
- create_get_username_text() None¶
Creates the input box for the username
- create_go_back_btn() None¶
Creates the go back button
- create_titles_properties() None¶
Create properties for the titles
- draw_go_back_btn() None¶
Draws the go back button
- draw_tetris_title() None¶
Draws the tetris title