diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000..5008ddf Binary files /dev/null and b/.DS_Store differ diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..13566b8 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,8 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Editor-based HTTP Client requests +/httpRequests/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml diff --git a/.idea/Checkers-_Add_Function.iml b/.idea/Checkers-_Add_Function.iml new file mode 100644 index 0000000..d6ebd48 --- /dev/null +++ b/.idea/Checkers-_Add_Function.iml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/.idea/codeStyles/Project.xml b/.idea/codeStyles/Project.xml new file mode 100644 index 0000000..919ce1f --- /dev/null +++ b/.idea/codeStyles/Project.xml @@ -0,0 +1,7 @@ + + + + + + \ No newline at end of file diff --git a/.idea/codeStyles/codeStyleConfig.xml b/.idea/codeStyles/codeStyleConfig.xml new file mode 100644 index 0000000..a55e7a1 --- /dev/null +++ b/.idea/codeStyles/codeStyleConfig.xml @@ -0,0 +1,5 @@ + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..4444b22 --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..1c25e8e --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..35eb1dd --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/GethoBold.ttf b/GethoBold.ttf new file mode 100644 index 0000000..49bc5de Binary files /dev/null and b/GethoBold.ttf differ diff --git a/Main_Board.py b/Main_Board.py index b6dcd70..40cc1f0 100644 --- a/Main_Board.py +++ b/Main_Board.py @@ -4,9 +4,10 @@ """ import pygame -from constants import BLACK, ROWS, RED, SQUARE_SIZE, COLS, WHITE +from constants import BLACK, ROWS, RED, SQUARE_SIZE, COLS, WHITE, CHERRY from pieces import Piece + class Main_Board: """ The Main_Board class is responsible for managing the board and the pieces, and contains functions to draw the board, @@ -82,7 +83,7 @@ def create_board(self): if row < 3: self.board[row].append(Piece(row, col, WHITE)) elif row > 4: - self.board[row].append(Piece(row, col, RED)) + self.board[row].append(Piece(row, col, CHERRY)) else: self.board[row].append(0) else: @@ -106,7 +107,7 @@ def remove(self, pieces): for piece in pieces: self.board[piece.row][piece.col] = 0 if piece != 0: - if piece.color == RED: + if piece.color == CHERRY: self.red_left -= 1 else: self.white_left -= 1 @@ -116,10 +117,10 @@ def winner(self): The winner function checks if a winner has been found and returns the winner. If no winner has been found, None is returned. If a user has no pieces left or no moves left, the other user is the winner. """ - if self.red_left <= 0 or self.no_moves(RED): + if self.red_left <= 0 or self.no_moves(CHERRY): return WHITE elif self.white_left <= 0 or self.no_moves(WHITE): - return RED + return CHERRY return None @@ -131,7 +132,7 @@ def get_valid_moves(self, piece): left = piece.col - 1 right = piece.col + 1 row = piece.row - if piece.color == RED or piece.king: + if piece.color == CHERRY or piece.king: moves.update(self.move_left(row -1, max(row-3, -1), -1, piece.color, left)) moves.update(self.move_right(row -1, max(row-3, -1), -1, piece.color, right)) if piece.color == WHITE or piece.king: diff --git a/SecondMenu.py b/SecondMenu.py index efe27dc..7220716 100644 --- a/SecondMenu.py +++ b/SecondMenu.py @@ -12,6 +12,8 @@ from computer import minimax from MusicClass import BackgroundMusic from SharedObjects import background_music +from ThirdMenu import ThirdMenu + Width, Height = 1000, 700 @@ -40,18 +42,18 @@ class SecondMenu: The SecondMenu class consists of a String color, which represents the color of the board chosen by the user. The class also has three functions, start_game_menu, start_game_vs_player, and start_game_vs_computer. """ - + def __init__(self, track): self.selected_music_track = track self.background_music = BackgroundMusic([track]) - + color = RED def start_game_menu(self): """ The start game menu function displays the second menu of the game, which allows the user to choose between playing against another player or against the computer. """ - - + + global player1_name, player2_name start_game_screen = pygame.display.set_mode([Width, Height]) @@ -104,13 +106,13 @@ def start_game_menu(self): button_text2 = button_font.render("Start Game VS Computer", True, (255, 255, 255)) # Button text and color button_text_rect2 = button_text2.get_rect( - center=(Width // 2, Height // 3 + button_height + spacing + button_height // 2)) + center=(Width // 2, Height // 3 + button_height + spacing + button_height // 2)) # Create button on screen using position and size parameters pygame.draw.rect(start_game_screen, color, pygame.Rect(position, size)) start_game_screen.blit(button_text2, button_text_rect2) button_rect_2 = pygame.Rect(position, size) - + # Exit Second Menu Button position = (Width // 2-150, Height // 3 + 135) size = (300, 50) # width, height @@ -127,42 +129,42 @@ def start_game_menu(self): pygame.display.flip() mouse = pygame.mouse.get_pos() - + while True: mouse = pygame.mouse.get_pos() if button_rect_3.collidepoint(mouse): - + pygame.draw.rect(start_game_screen, cursor_color, button_rect_3) # Change color when cursor hovered over start_game_screen.blit(button_text3, button_text_rect3) pygame.display.update() elif button_rect_2.collidepoint(mouse): - + pygame.draw.rect(start_game_screen, cursor_color, button_rect_2) start_game_screen.blit(button_text2, button_text_rect2) pygame.display.update() - + elif button_rect.collidepoint(mouse): pygame.draw.rect(start_game_screen, cursor_color, button_rect) start_game_screen.blit(button_text1, button_text_rect1) pygame.display.update() - + else: pygame.display.update() pygame.draw.rect(start_game_screen, color, button_rect_3) # stay original color if cursor not hovering over start_game_screen.blit(button_text3, button_text_rect3) - + pygame.draw.rect(start_game_screen, color, button_rect_2) start_game_screen.blit(button_text2, button_text_rect2) - + pygame.draw.rect(start_game_screen, color, button_rect) start_game_screen.blit(button_text1, button_text_rect1) - + pygame.display.update() - + for event in pygame.event.get(): score_manager.load_scores() - + if event.type == pygame.QUIT: pygame.quit() return @@ -180,13 +182,15 @@ def start_game_menu(self): elif button_rect_2.collidepoint(event.pos): # Start Game VS Computer button clicked player1_name.get_player_name() score_manager.add_user(player1_name.username) - self.start_game_vs_computer(start_game_screen) - score_manager.save_scores() + # Create an instance of ThirdMenu and start the difficulty menu + third_menu = ThirdMenu(self.selected_music_track, self.color,player1_name) # Pass color too + third_menu.start_difficulty_menu() # This will display the difficulty selection menu + return - # score_manager.save_scores() # now inside elif so scores are updated before returning to main + elif event.type == self.background_music.SONG_END: self.background_music.handle_event(event) - + def start_game_vs_player(self, screen): """ The start game vs player function starts the game against another player by creating an object of the game class and passing the screen, color, and player names. @@ -196,20 +200,16 @@ def start_game_vs_player(self, screen): game = Game(screen, self.color, player1_name.username, player2_name.username) global score_manager, user_scores - # Exit Button - button_font = pygame.font.Font(None, 32) - exit_text = button_font.render("Exit Game", True, (255, 255, 255)) - exit_button_rect = exit_text.get_rect(center=(Width // 2+350, Height - 100)) - pygame.draw.rect(screen, (128, 128, 128), exit_button_rect) - screen.blit(exit_text, exit_button_rect) - pygame.display.flip() + post_duration = 10000 # Display time in milliseconds + post_text = None + post_display_time = 0 # Initialize the time when the tweet is displayed while run: clock.tick(60) if game.winner() != None: print(game.winner()) run = False - if game.winner() == RED: + if game.winner() == CHERRY: player1_name.update_win() score_manager.update_scores(player1_name) player2_name.update_loss() @@ -223,60 +223,36 @@ def start_game_vs_player(self, screen): for event in pygame.event.get(): if event.type == pygame.QUIT: run = False - + #Feature to quit at any point of the game + if event.type ==pygame.MOUSEBUTTONDOWN: + pos = pygame.mouse.get_pos() #if button is clicked + quit_button = game.display_quit() + if quit_button.collidepoint(pos): + run = False + if event.type == pygame.MOUSEBUTTONDOWN: pos = pygame.mouse.get_pos() - row, col = get_row_col_from_mouse(pos) - game.select(row, col) + reddit_button = game.display_button() # Draw button + if reddit_button.collidepoint(pos): # If Reddit button clicked + print('Fetching Reddit post...') + reddit_post = game.fetch_reddit_post() # Fetch most recent Reddit post + if reddit_post: + post_text = reddit_post.title # Store the post title + post_display_time = pygame.time.get_ticks() + post_duration # Set the display time + + else: + row, col = get_row_col_from_mouse(pos) + game.select(row, col) # Check for background music event if event.type == background_music.SONG_END: - background_music.handle_event(event) + background_music.handle_event(event) game.update() + # Display the fetched Reddit post + if post_text and pygame.time.get_ticks() < post_display_time: + game.display_text_box() # Call the function to display the post + else: + post_text = None # Clear the post when time is up - def start_game_vs_computer(self, screen): - """ - The start game vs computer function starts the game against the computer by creating an object of the game class and passing the screen, color, and player name. - """ - run = True - clock = pygame.time.Clock() - game = Game(screen, self.color, player1_name.username, "Computer") - global score_manager, user_scores - - # Exit Button - button_font = pygame.font.Font(None, 32) - exit_text = button_font.render("Exit Game", True, (255, 255, 255)) - exit_button_rect = exit_text.get_rect(center=(Width // 2+350, Height - 100)) - pygame.draw.rect(screen, (128, 128, 128), exit_button_rect) - screen.blit(exit_text, exit_button_rect) - pygame.display.flip() - - while run: - clock.tick(60) - if game.turn == WHITE: - value, new_board = minimax(game.get_board(), 4, WHITE, game) - game.ai_move(new_board) - - if game.winner() != None: - print(game.winner()) - run = False - if game.winner() == RED: - player1_name.update_win() - score_manager.update_scores(player1_name) - else: - player1_name.update_loss() - score_manager.update_scores(player1_name) - - for event in pygame.event.get(): - if event.type == pygame.QUIT: - run = False - - if event.type == pygame.MOUSEBUTTONDOWN: - pos = pygame.mouse.get_pos() - row, col = get_row_col_from_mouse(pos) - game.select(row, col) - - if event.type == background_music.SONG_END: - background_music.handle_event(event) + pygame.display.flip() # Update the display after drawing everything - game.update() \ No newline at end of file diff --git a/ThirdMenu.py b/ThirdMenu.py new file mode 100644 index 0000000..5fba122 --- /dev/null +++ b/ThirdMenu.py @@ -0,0 +1,213 @@ +import pygame +from Player import Player +from Player import user_scores +from ScoreManager import ScoreManager +from constants import RED, SQUARE_SIZE, WHITE +from game import Game +from computer import minimax +from MusicClass import BackgroundMusic +from SharedObjects import background_music + + +# Define constants here +Width, Height = 1000, 700 +background_image = pygame.image.load("checkers.jpg") +background_image = pygame.transform.scale(background_image, (Width, Height)) +screen = pygame.display.set_mode([Width, Height]) +pygame.init() + +player1_name = Player("Player 1", 0) +player2_name = Player("Player 2", 0) +score_manager = ScoreManager("user_data/user_data.json") +cursor_color = (100, 100, 100) # darker grey +color = (128, 128, 128) # grey + + +def get_row_col_from_mouse(pos): + """ + This function gets the row and column of the mouse position. This is necessary for selecting pieces in the class. + """ + x, y = pos + row = y // SQUARE_SIZE + col = x // SQUARE_SIZE + return row, col + + +class ThirdMenu: + """ + The ThirdMenu class allows the user to choose the difficulty level for playing against the computer. + """ + # Define time limits for each difficulty level + TIME_LIMITS = { + "Easy": 10, # 10 seconds for Easy + "Normal": 5, # 5 seconds for Normal + "Hard": 2 # 2 seconds for Hard + } + + def __init__(self, track, color, player1_name): + self.selected_music_track = track + self.background_music = BackgroundMusic([track]) + self.player1_name = player1_name # Store player1_name + self.color = color + self.difficulty = None # Variable to store selected difficulty + + def set_difficulty(self, selected_difficulty): + if selected_difficulty in ["Easy", "Normal", "Hard"]: + self.difficulty = selected_difficulty + else: + self.difficulty = None + + def start_difficulty_menu(self): + """ + The difficulty menu function displays options for selecting the difficulty level. + """ + start_game_screen = pygame.display.set_mode([Width, Height]) + message = "Select Difficulty Level" + title_font = pygame.font.Font(None, 64) + title_text = title_font.render(message, True, (255, 255, 255)) + title_rect = title_text.get_rect(center=(Width // 2, 50)) + + button_font = pygame.font.Font(None, 32) + cursor_color = (100, 100, 100) # Darker grey + color = (128, 128, 128) # Grey + + + # Difficulty Buttons + difficulty_buttons = [ + ("Easy" , (Width // 2 - 150, Height // 3), (300, 50)), + ("Normal" , (Width // 2 - 150, Height // 3 + 60), (300, 50)), + ("Hard" , (Width // 2 - 150, Height // 3 + 120), (300, 50)), + ] + + # Display the background + background_image = pygame.image.load("checkers.jpg") + background_image = pygame.transform.scale(background_image, (Width, Height)) + start_game_screen.blit(background_image, (0, 0)) + + # Draw title + start_game_screen.blit(title_text, title_rect) + + # Create and draw buttons + button_rects = [] + for text , pos, size in difficulty_buttons: + button_rect = pygame.Rect(pos, size) + button_rects.append(button_rect) + + # Draw the button + pygame.draw.rect(start_game_screen, color, button_rect) + button_text = button_font.render(text, True, (255, 255, 255)) + text_rect = button_text.get_rect(center=button_rect.center) + start_game_screen.blit(button_text, text_rect) + + pygame.display.flip() + + # Main loop for the difficulty menu + while True: + mouse = pygame.mouse.get_pos() + + for button_rect in button_rects: + if button_rect.collidepoint(mouse): + pygame.draw.rect(start_game_screen, cursor_color, button_rect) + else: + pygame.draw.rect(start_game_screen, color, button_rect) + + for event in pygame.event.get(): + if event.type == pygame.QUIT: + pygame.quit() + return + + if event.type == pygame.MOUSEBUTTONDOWN: + for i, button_rect in enumerate(button_rects): + if button_rect.collidepoint(event.pos): + self.difficulty = ["Easy", "Normal", "Hard"][i] + print(f"Selected difficulty: {self.difficulty}") + # Start the game with the selected difficulty + self.start_game_vs_computer(start_game_screen, self.difficulty) + return # Exit the menu after starting the game + + pygame.display.update() + + def start_game_vs_computer(self, screen, difficulty): + """ + Starts the game against the computer with the selected difficulty level. + """ + run = True + clock = pygame.time.Clock() + game = Game(screen, self.color, self.player1_name.username, "Computer") + + # Get time limit based on difficulty + time_limit = self.TIME_LIMITS[difficulty] + move_timer = time_limit + last_move_time = pygame.time.get_ticks() # Get current ticks + + # Define depth based on difficulty + depth = 2 # Default depth + if difficulty == "Easy": + depth = 2 + elif difficulty == "Normal": + depth = 4 + elif difficulty == "Hard": + depth = 6 + + + while run: + clock.tick(60) + + current_time = pygame.time.get_ticks() + elapsed_time = (current_time - last_move_time) / 1000 # Convert to seconds + move_timer -= elapsed_time + last_move_time = current_time + + post_duration = 10000 # Display time in milliseconds + post_text = None + post_display_time = 0 # Initialize the time when the tweet is displayed + + # Check if time is up + if move_timer <= 0: + print("Time's up! You lose the turn.") + game.change_turn() # Hypothetical method to switch turns + move_timer = time_limit # Reset timer for the next turn + + if game.turn == WHITE: + value, new_board = minimax(game.get_board(), depth, WHITE, game) + game.ai_move(new_board) + + if game.winner() is not None: + print(game.winner()) + run = False + # Handle scoring here + + for event in pygame.event.get(): + if event.type == pygame.QUIT: + run = False + + #Feature to quit at any point of the game + if event.type ==pygame.MOUSEBUTTONDOWN: + pos = pygame.mouse.get_pos() #if button is clicked + quit_button = game.display_quit() + if quit_button.collidepoint(pos): + run = False + + if event.type == pygame.MOUSEBUTTONDOWN: + pos = pygame.mouse.get_pos() + reddit_button = game.display_button() # Draw button + if reddit_button.collidepoint(pos): # If Reddit button clicked + print('Fetching Reddit post...') + reddit_post = game.fetch_reddit_post() # Fetch most recent reddit post + if reddit_post: + post_text = reddit_post.title # Store the post title + post_display_time = pygame.time.get_ticks() + post_duration # Set the display time + + else: + row, col = get_row_col_from_mouse(pos) + game.select(row, col) + + game.update() + # Display the fetched Reddit post + if post_text and pygame.time.get_ticks() < post_display_time: + game.display_text_box() # Call the function to display the post + else: + post_text = None # Clear the post when time is up + + pygame.display.flip() # Update the display after drawing everything + diff --git a/__pycache__/Main_Board.cpython-311.pyc b/__pycache__/Main_Board.cpython-311.pyc index a4f5bc8..3f90361 100644 Binary files a/__pycache__/Main_Board.cpython-311.pyc and b/__pycache__/Main_Board.cpython-311.pyc differ diff --git a/__pycache__/Main_Board.cpython-312.pyc b/__pycache__/Main_Board.cpython-312.pyc new file mode 100644 index 0000000..486fa5c Binary files /dev/null and b/__pycache__/Main_Board.cpython-312.pyc differ diff --git a/__pycache__/MusicClass.cpython-311.pyc b/__pycache__/MusicClass.cpython-311.pyc new file mode 100644 index 0000000..eae2ff3 Binary files /dev/null and b/__pycache__/MusicClass.cpython-311.pyc differ diff --git a/__pycache__/MusicClass.cpython-312.pyc b/__pycache__/MusicClass.cpython-312.pyc new file mode 100644 index 0000000..07235fb Binary files /dev/null and b/__pycache__/MusicClass.cpython-312.pyc differ diff --git a/__pycache__/Player.cpython-311.pyc b/__pycache__/Player.cpython-311.pyc index 0737676..aa36ba9 100644 Binary files a/__pycache__/Player.cpython-311.pyc and b/__pycache__/Player.cpython-311.pyc differ diff --git a/__pycache__/Player.cpython-312.pyc b/__pycache__/Player.cpython-312.pyc new file mode 100644 index 0000000..f9897bd Binary files /dev/null and b/__pycache__/Player.cpython-312.pyc differ diff --git a/__pycache__/ScoreManager.cpython-311.pyc b/__pycache__/ScoreManager.cpython-311.pyc new file mode 100644 index 0000000..4f4d4d5 Binary files /dev/null and b/__pycache__/ScoreManager.cpython-311.pyc differ diff --git a/__pycache__/ScoreManager.cpython-312.pyc b/__pycache__/ScoreManager.cpython-312.pyc new file mode 100644 index 0000000..58a48e6 Binary files /dev/null and b/__pycache__/ScoreManager.cpython-312.pyc differ diff --git a/__pycache__/SecondMenu.cpython-311.pyc b/__pycache__/SecondMenu.cpython-311.pyc index e45cdb0..a99b8ec 100644 Binary files a/__pycache__/SecondMenu.cpython-311.pyc and b/__pycache__/SecondMenu.cpython-311.pyc differ diff --git a/__pycache__/SecondMenu.cpython-312.pyc b/__pycache__/SecondMenu.cpython-312.pyc new file mode 100644 index 0000000..9f54a6f Binary files /dev/null and b/__pycache__/SecondMenu.cpython-312.pyc differ diff --git a/__pycache__/SharedObjects.cpython-311.pyc b/__pycache__/SharedObjects.cpython-311.pyc new file mode 100644 index 0000000..340f80f Binary files /dev/null and b/__pycache__/SharedObjects.cpython-311.pyc differ diff --git a/__pycache__/SharedObjects.cpython-312.pyc b/__pycache__/SharedObjects.cpython-312.pyc new file mode 100644 index 0000000..d4920f5 Binary files /dev/null and b/__pycache__/SharedObjects.cpython-312.pyc differ diff --git a/__pycache__/ThirdMenu.cpython-311.pyc b/__pycache__/ThirdMenu.cpython-311.pyc new file mode 100644 index 0000000..d8887c6 Binary files /dev/null and b/__pycache__/ThirdMenu.cpython-311.pyc differ diff --git a/__pycache__/computer.cpython-311.pyc b/__pycache__/computer.cpython-311.pyc index 0635045..8e665b6 100644 Binary files a/__pycache__/computer.cpython-311.pyc and b/__pycache__/computer.cpython-311.pyc differ diff --git a/__pycache__/computer.cpython-312.pyc b/__pycache__/computer.cpython-312.pyc new file mode 100644 index 0000000..5ff313d Binary files /dev/null and b/__pycache__/computer.cpython-312.pyc differ diff --git a/__pycache__/constants.cpython-311.pyc b/__pycache__/constants.cpython-311.pyc index ffc1ec2..11499f0 100644 Binary files a/__pycache__/constants.cpython-311.pyc and b/__pycache__/constants.cpython-311.pyc differ diff --git a/__pycache__/constants.cpython-312.pyc b/__pycache__/constants.cpython-312.pyc new file mode 100644 index 0000000..93cda01 Binary files /dev/null and b/__pycache__/constants.cpython-312.pyc differ diff --git a/__pycache__/game.cpython-311.pyc b/__pycache__/game.cpython-311.pyc index 0a59e9c..305ae94 100644 Binary files a/__pycache__/game.cpython-311.pyc and b/__pycache__/game.cpython-311.pyc differ diff --git a/__pycache__/game.cpython-312.pyc b/__pycache__/game.cpython-312.pyc new file mode 100644 index 0000000..ce5e4d3 Binary files /dev/null and b/__pycache__/game.cpython-312.pyc differ diff --git a/__pycache__/pieces.cpython-311.pyc b/__pycache__/pieces.cpython-311.pyc index 174e8c4..42067c9 100644 Binary files a/__pycache__/pieces.cpython-311.pyc and b/__pycache__/pieces.cpython-311.pyc differ diff --git a/__pycache__/pieces.cpython-312.pyc b/__pycache__/pieces.cpython-312.pyc new file mode 100644 index 0000000..51f4aca Binary files /dev/null and b/__pycache__/pieces.cpython-312.pyc differ diff --git a/budmo.otf b/budmo.otf new file mode 100644 index 0000000..ff53589 Binary files /dev/null and b/budmo.otf differ diff --git a/build/main/Analysis-00.toc b/build/main/Analysis-00.toc new file mode 100644 index 0000000..095a567 --- /dev/null +++ b/build/main/Analysis-00.toc @@ -0,0 +1,326 @@ +(['/Users/ernest/Desktop/Checkers-_Add_Function/main.py'], + ['/Users/ernest/Desktop'], + [], + [('/opt/anaconda3/lib/python3.12/site-packages/numpy/_pyinstaller', 0), + ('/opt/anaconda3/lib/python3.12/site-packages/_pyinstaller_hooks_contrib/stdhooks', + -1000), + ('/opt/anaconda3/lib/python3.12/site-packages/_pyinstaller_hooks_contrib', + -1000)], + {}, + [], + [], + False, + {}, + 0, + [], + [], + '3.12.4 | packaged by Anaconda, Inc. | (main, Jun 18 2024, 10:07:17) [Clang ' + '14.0.6 ]', + [('pyi_rth_inspect', + '/opt/anaconda3/lib/python3.12/site-packages/PyInstaller/hooks/rthooks/pyi_rth_inspect.py', + 'PYSOURCE'), + ('main', '/Users/ernest/Desktop/Checkers-_Add_Function/main.py', 'PYSOURCE')], + [('inspect', '/opt/anaconda3/lib/python3.12/inspect.py', 'PYMODULE'), + ('importlib', + '/opt/anaconda3/lib/python3.12/importlib/__init__.py', + 'PYMODULE'), + ('importlib._bootstrap_external', + '/opt/anaconda3/lib/python3.12/importlib/_bootstrap_external.py', + 'PYMODULE'), + ('importlib.metadata', + '/opt/anaconda3/lib/python3.12/importlib/metadata/__init__.py', + 'PYMODULE'), + ('typing', '/opt/anaconda3/lib/python3.12/typing.py', 'PYMODULE'), + ('importlib.abc', + '/opt/anaconda3/lib/python3.12/importlib/abc.py', + 'PYMODULE'), + ('importlib.resources.abc', + '/opt/anaconda3/lib/python3.12/importlib/resources/abc.py', + 'PYMODULE'), + ('importlib.resources', + '/opt/anaconda3/lib/python3.12/importlib/resources/__init__.py', + 'PYMODULE'), + ('importlib.resources._legacy', + '/opt/anaconda3/lib/python3.12/importlib/resources/_legacy.py', + 'PYMODULE'), + ('importlib.resources._common', + '/opt/anaconda3/lib/python3.12/importlib/resources/_common.py', + 'PYMODULE'), + ('importlib.resources._adapters', + '/opt/anaconda3/lib/python3.12/importlib/resources/_adapters.py', + 'PYMODULE'), + ('tempfile', '/opt/anaconda3/lib/python3.12/tempfile.py', 'PYMODULE'), + ('random', '/opt/anaconda3/lib/python3.12/random.py', 'PYMODULE'), + ('_strptime', '/opt/anaconda3/lib/python3.12/_strptime.py', 'PYMODULE'), + ('datetime', '/opt/anaconda3/lib/python3.12/datetime.py', 'PYMODULE'), + ('_pydatetime', '/opt/anaconda3/lib/python3.12/_pydatetime.py', 'PYMODULE'), + ('calendar', '/opt/anaconda3/lib/python3.12/calendar.py', 'PYMODULE'), + ('statistics', '/opt/anaconda3/lib/python3.12/statistics.py', 'PYMODULE'), + ('decimal', '/opt/anaconda3/lib/python3.12/decimal.py', 'PYMODULE'), + ('_pydecimal', '/opt/anaconda3/lib/python3.12/_pydecimal.py', 'PYMODULE'), + ('contextvars', '/opt/anaconda3/lib/python3.12/contextvars.py', 'PYMODULE'), + ('fractions', '/opt/anaconda3/lib/python3.12/fractions.py', 'PYMODULE'), + ('numbers', '/opt/anaconda3/lib/python3.12/numbers.py', 'PYMODULE'), + ('hashlib', '/opt/anaconda3/lib/python3.12/hashlib.py', 'PYMODULE'), + ('logging', '/opt/anaconda3/lib/python3.12/logging/__init__.py', 'PYMODULE'), + ('pickle', '/opt/anaconda3/lib/python3.12/pickle.py', 'PYMODULE'), + ('pprint', '/opt/anaconda3/lib/python3.12/pprint.py', 'PYMODULE'), + ('dataclasses', '/opt/anaconda3/lib/python3.12/dataclasses.py', 'PYMODULE'), + ('copy', '/opt/anaconda3/lib/python3.12/copy.py', 'PYMODULE'), + ('_compat_pickle', + '/opt/anaconda3/lib/python3.12/_compat_pickle.py', + 'PYMODULE'), + ('struct', '/opt/anaconda3/lib/python3.12/struct.py', 'PYMODULE'), + ('threading', '/opt/anaconda3/lib/python3.12/threading.py', 'PYMODULE'), + ('_threading_local', + '/opt/anaconda3/lib/python3.12/_threading_local.py', + 'PYMODULE'), + ('string', '/opt/anaconda3/lib/python3.12/string.py', 'PYMODULE'), + ('bisect', '/opt/anaconda3/lib/python3.12/bisect.py', 'PYMODULE'), + ('shutil', '/opt/anaconda3/lib/python3.12/shutil.py', 'PYMODULE'), + ('tarfile', '/opt/anaconda3/lib/python3.12/tarfile.py', 'PYMODULE'), + ('gzip', '/opt/anaconda3/lib/python3.12/gzip.py', 'PYMODULE'), + ('_compression', '/opt/anaconda3/lib/python3.12/_compression.py', 'PYMODULE'), + ('lzma', '/opt/anaconda3/lib/python3.12/lzma.py', 'PYMODULE'), + ('bz2', '/opt/anaconda3/lib/python3.12/bz2.py', 'PYMODULE'), + ('fnmatch', '/opt/anaconda3/lib/python3.12/fnmatch.py', 'PYMODULE'), + ('importlib._abc', + '/opt/anaconda3/lib/python3.12/importlib/_abc.py', + 'PYMODULE'), + ('importlib.metadata._itertools', + '/opt/anaconda3/lib/python3.12/importlib/metadata/_itertools.py', + 'PYMODULE'), + ('importlib.metadata._functools', + '/opt/anaconda3/lib/python3.12/importlib/metadata/_functools.py', + 'PYMODULE'), + ('importlib.metadata._collections', + '/opt/anaconda3/lib/python3.12/importlib/metadata/_collections.py', + 'PYMODULE'), + ('importlib.metadata._meta', + '/opt/anaconda3/lib/python3.12/importlib/metadata/_meta.py', + 'PYMODULE'), + ('importlib.metadata._adapters', + '/opt/anaconda3/lib/python3.12/importlib/metadata/_adapters.py', + 'PYMODULE'), + ('importlib.metadata._text', + '/opt/anaconda3/lib/python3.12/importlib/metadata/_text.py', + 'PYMODULE'), + ('email.message', + '/opt/anaconda3/lib/python3.12/email/message.py', + 'PYMODULE'), + ('email.policy', '/opt/anaconda3/lib/python3.12/email/policy.py', 'PYMODULE'), + ('email.contentmanager', + '/opt/anaconda3/lib/python3.12/email/contentmanager.py', + 'PYMODULE'), + ('email.quoprimime', + '/opt/anaconda3/lib/python3.12/email/quoprimime.py', + 'PYMODULE'), + ('email.headerregistry', + '/opt/anaconda3/lib/python3.12/email/headerregistry.py', + 'PYMODULE'), + ('email._header_value_parser', + '/opt/anaconda3/lib/python3.12/email/_header_value_parser.py', + 'PYMODULE'), + ('urllib', '/opt/anaconda3/lib/python3.12/urllib/__init__.py', 'PYMODULE'), + ('email.iterators', + '/opt/anaconda3/lib/python3.12/email/iterators.py', + 'PYMODULE'), + ('email.generator', + '/opt/anaconda3/lib/python3.12/email/generator.py', + 'PYMODULE'), + ('email._encoded_words', + '/opt/anaconda3/lib/python3.12/email/_encoded_words.py', + 'PYMODULE'), + ('base64', '/opt/anaconda3/lib/python3.12/base64.py', 'PYMODULE'), + ('getopt', '/opt/anaconda3/lib/python3.12/getopt.py', 'PYMODULE'), + ('gettext', '/opt/anaconda3/lib/python3.12/gettext.py', 'PYMODULE'), + ('email.charset', + '/opt/anaconda3/lib/python3.12/email/charset.py', + 'PYMODULE'), + ('email.encoders', + '/opt/anaconda3/lib/python3.12/email/encoders.py', + 'PYMODULE'), + ('email.base64mime', + '/opt/anaconda3/lib/python3.12/email/base64mime.py', + 'PYMODULE'), + ('email._policybase', + '/opt/anaconda3/lib/python3.12/email/_policybase.py', + 'PYMODULE'), + ('email.header', '/opt/anaconda3/lib/python3.12/email/header.py', 'PYMODULE'), + ('email.errors', '/opt/anaconda3/lib/python3.12/email/errors.py', 'PYMODULE'), + ('email.utils', '/opt/anaconda3/lib/python3.12/email/utils.py', 'PYMODULE'), + ('email._parseaddr', + '/opt/anaconda3/lib/python3.12/email/_parseaddr.py', + 'PYMODULE'), + ('urllib.parse', '/opt/anaconda3/lib/python3.12/urllib/parse.py', 'PYMODULE'), + ('ipaddress', '/opt/anaconda3/lib/python3.12/ipaddress.py', 'PYMODULE'), + ('socket', '/opt/anaconda3/lib/python3.12/socket.py', 'PYMODULE'), + ('selectors', '/opt/anaconda3/lib/python3.12/selectors.py', 'PYMODULE'), + ('quopri', '/opt/anaconda3/lib/python3.12/quopri.py', 'PYMODULE'), + ('contextlib', '/opt/anaconda3/lib/python3.12/contextlib.py', 'PYMODULE'), + ('textwrap', '/opt/anaconda3/lib/python3.12/textwrap.py', 'PYMODULE'), + ('zipfile', '/opt/anaconda3/lib/python3.12/zipfile/__init__.py', 'PYMODULE'), + ('zipfile._path', + '/opt/anaconda3/lib/python3.12/zipfile/_path/__init__.py', + 'PYMODULE'), + ('zipfile._path.glob', + '/opt/anaconda3/lib/python3.12/zipfile/_path/glob.py', + 'PYMODULE'), + ('py_compile', '/opt/anaconda3/lib/python3.12/py_compile.py', 'PYMODULE'), + ('importlib.util', + '/opt/anaconda3/lib/python3.12/importlib/util.py', + 'PYMODULE'), + ('pathlib', '/opt/anaconda3/lib/python3.12/pathlib.py', 'PYMODULE'), + ('email', '/opt/anaconda3/lib/python3.12/email/__init__.py', 'PYMODULE'), + ('email.parser', '/opt/anaconda3/lib/python3.12/email/parser.py', 'PYMODULE'), + ('email.feedparser', + '/opt/anaconda3/lib/python3.12/email/feedparser.py', + 'PYMODULE'), + ('csv', '/opt/anaconda3/lib/python3.12/csv.py', 'PYMODULE'), + ('importlib.readers', + '/opt/anaconda3/lib/python3.12/importlib/readers.py', + 'PYMODULE'), + ('importlib.resources.readers', + '/opt/anaconda3/lib/python3.12/importlib/resources/readers.py', + 'PYMODULE'), + ('importlib.resources._itertools', + '/opt/anaconda3/lib/python3.12/importlib/resources/_itertools.py', + 'PYMODULE'), + ('importlib._bootstrap', + '/opt/anaconda3/lib/python3.12/importlib/_bootstrap.py', + 'PYMODULE'), + ('argparse', '/opt/anaconda3/lib/python3.12/argparse.py', 'PYMODULE'), + ('token', '/opt/anaconda3/lib/python3.12/token.py', 'PYMODULE'), + ('tokenize', '/opt/anaconda3/lib/python3.12/tokenize.py', 'PYMODULE'), + ('importlib.machinery', + '/opt/anaconda3/lib/python3.12/importlib/machinery.py', + 'PYMODULE'), + ('dis', '/opt/anaconda3/lib/python3.12/dis.py', 'PYMODULE'), + ('opcode', '/opt/anaconda3/lib/python3.12/opcode.py', 'PYMODULE'), + ('ast', '/opt/anaconda3/lib/python3.12/ast.py', 'PYMODULE'), + ('tracemalloc', '/opt/anaconda3/lib/python3.12/tracemalloc.py', 'PYMODULE'), + ('_py_abc', '/opt/anaconda3/lib/python3.12/_py_abc.py', 'PYMODULE'), + ('subprocess', '/opt/anaconda3/lib/python3.12/subprocess.py', 'PYMODULE'), + ('signal', '/opt/anaconda3/lib/python3.12/signal.py', 'PYMODULE'), + ('stringprep', '/opt/anaconda3/lib/python3.12/stringprep.py', 'PYMODULE')], + [('libpython3.12.dylib', '/opt/anaconda3/lib/libpython3.12.dylib', 'BINARY'), + ('lib-dynload/_datetime.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_datetime.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_statistics.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_statistics.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_contextvars.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_contextvars.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_decimal.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_decimal.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_pickle.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_pickle.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_struct.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_struct.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_hashlib.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_hashlib.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_sha3.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_sha3.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_blake2.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_blake2.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_md5.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_md5.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_sha1.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_sha1.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_sha2.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_sha2.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_random.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_random.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_bisect.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_bisect.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/math.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/math.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/grp.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/grp.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_lzma.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_lzma.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_bz2.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_bz2.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/zlib.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/zlib.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/unicodedata.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/unicodedata.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/array.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/array.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/select.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/select.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_socket.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_socket.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/binascii.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/binascii.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_csv.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_csv.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/resource.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/resource.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_opcode.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_opcode.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_posixsubprocess.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_posixsubprocess.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/fcntl.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/fcntl.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_heapq.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_heapq.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_multibytecodec.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_multibytecodec.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_codecs_jp.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_codecs_jp.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_codecs_kr.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_codecs_kr.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_codecs_iso2022.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_codecs_iso2022.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_codecs_cn.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_codecs_cn.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_codecs_tw.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_codecs_tw.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_codecs_hk.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_codecs_hk.cpython-312-darwin.so', + 'EXTENSION'), + ('libcrypto.3.dylib', '/opt/anaconda3/lib/libcrypto.3.dylib', 'BINARY'), + ('liblzma.5.dylib', '/opt/anaconda3/lib/liblzma.5.dylib', 'BINARY'), + ('libbz2.dylib', '/opt/anaconda3/lib/libbz2.dylib', 'BINARY'), + ('libz.1.dylib', '/opt/anaconda3/lib/libz.1.dylib', 'BINARY')], + [], + [], + [('base_library.zip', + '/Users/ernest/Desktop/Checkers-_Add_Function/build/main/base_library.zip', + 'DATA')]) diff --git a/build/main/EXE-00.toc b/build/main/EXE-00.toc new file mode 100644 index 0000000..206d031 --- /dev/null +++ b/build/main/EXE-00.toc @@ -0,0 +1,165 @@ +('/Users/ernest/Desktop/Checkers-_Add_Function/dist/main', + False, + False, + False, + None, + None, + False, + False, + None, + True, + False, + 'arm64', + None, + None, + '/Users/ernest/Desktop/Checkers-_Add_Function/build/main/main.pkg', + [('pyi-contents-directory _internal', '', 'OPTION'), + ('PYZ-00.pyz', + '/Users/ernest/Desktop/Checkers-_Add_Function/build/main/PYZ-00.pyz', + 'PYZ'), + ('lib-dynload/_struct.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_struct.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/zlib.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/zlib.cpython-312-darwin.so', + 'EXTENSION'), + ('struct', + '/Users/ernest/Desktop/Checkers-_Add_Function/build/main/localpycs/struct.pyc', + 'PYMODULE'), + ('pyimod01_archive', + '/Users/ernest/Desktop/Checkers-_Add_Function/build/main/localpycs/pyimod01_archive.pyc', + 'PYMODULE'), + ('pyimod02_importers', + '/Users/ernest/Desktop/Checkers-_Add_Function/build/main/localpycs/pyimod02_importers.pyc', + 'PYMODULE'), + ('pyimod03_ctypes', + '/Users/ernest/Desktop/Checkers-_Add_Function/build/main/localpycs/pyimod03_ctypes.pyc', + 'PYMODULE'), + ('pyiboot01_bootstrap', + '/opt/anaconda3/lib/python3.12/site-packages/PyInstaller/loader/pyiboot01_bootstrap.py', + 'PYSOURCE'), + ('pyi_rth_inspect', + '/opt/anaconda3/lib/python3.12/site-packages/PyInstaller/hooks/rthooks/pyi_rth_inspect.py', + 'PYSOURCE'), + ('main', '/Users/ernest/Desktop/Checkers-_Add_Function/main.py', 'PYSOURCE'), + ('libpython3.12.dylib', '/opt/anaconda3/lib/libpython3.12.dylib', 'BINARY'), + ('lib-dynload/_datetime.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_datetime.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_statistics.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_statistics.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_contextvars.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_contextvars.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_decimal.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_decimal.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_pickle.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_pickle.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_hashlib.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_hashlib.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_sha3.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_sha3.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_blake2.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_blake2.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_md5.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_md5.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_sha1.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_sha1.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_sha2.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_sha2.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_random.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_random.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_bisect.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_bisect.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/math.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/math.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/grp.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/grp.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_lzma.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_lzma.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_bz2.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_bz2.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/unicodedata.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/unicodedata.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/array.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/array.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/select.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/select.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_socket.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_socket.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/binascii.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/binascii.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_csv.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_csv.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/resource.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/resource.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_opcode.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_opcode.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_posixsubprocess.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_posixsubprocess.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/fcntl.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/fcntl.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_heapq.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_heapq.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_multibytecodec.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_multibytecodec.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_codecs_jp.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_codecs_jp.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_codecs_kr.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_codecs_kr.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_codecs_iso2022.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_codecs_iso2022.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_codecs_cn.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_codecs_cn.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_codecs_tw.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_codecs_tw.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_codecs_hk.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_codecs_hk.cpython-312-darwin.so', + 'EXTENSION'), + ('libcrypto.3.dylib', '/opt/anaconda3/lib/libcrypto.3.dylib', 'BINARY'), + ('liblzma.5.dylib', '/opt/anaconda3/lib/liblzma.5.dylib', 'BINARY'), + ('libbz2.dylib', '/opt/anaconda3/lib/libbz2.dylib', 'BINARY'), + ('libz.1.dylib', '/opt/anaconda3/lib/libz.1.dylib', 'BINARY'), + ('base_library.zip', + '/Users/ernest/Desktop/Checkers-_Add_Function/build/main/base_library.zip', + 'DATA')], + [], + False, + False, + 1729268159, + [('runw', + '/opt/anaconda3/lib/python3.12/site-packages/PyInstaller/bootloader/Darwin-64bit/runw', + 'EXECUTABLE')], + '/opt/anaconda3/lib/libpython3.12.dylib') diff --git a/build/main/PKG-00.toc b/build/main/PKG-00.toc new file mode 100644 index 0000000..c06d129 --- /dev/null +++ b/build/main/PKG-00.toc @@ -0,0 +1,160 @@ +('/Users/ernest/Desktop/Checkers-_Add_Function/build/main/main.pkg', + {'BINARY': True, + 'DATA': True, + 'EXECUTABLE': True, + 'EXTENSION': True, + 'PYMODULE': True, + 'PYSOURCE': True, + 'PYZ': False, + 'SPLASH': True, + 'SYMLINK': False}, + [('pyi-contents-directory _internal', '', 'OPTION'), + ('PYZ-00.pyz', + '/Users/ernest/Desktop/Checkers-_Add_Function/build/main/PYZ-00.pyz', + 'PYZ'), + ('lib-dynload/_struct.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_struct.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/zlib.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/zlib.cpython-312-darwin.so', + 'EXTENSION'), + ('struct', + '/Users/ernest/Desktop/Checkers-_Add_Function/build/main/localpycs/struct.pyc', + 'PYMODULE'), + ('pyimod01_archive', + '/Users/ernest/Desktop/Checkers-_Add_Function/build/main/localpycs/pyimod01_archive.pyc', + 'PYMODULE'), + ('pyimod02_importers', + '/Users/ernest/Desktop/Checkers-_Add_Function/build/main/localpycs/pyimod02_importers.pyc', + 'PYMODULE'), + ('pyimod03_ctypes', + '/Users/ernest/Desktop/Checkers-_Add_Function/build/main/localpycs/pyimod03_ctypes.pyc', + 'PYMODULE'), + ('pyiboot01_bootstrap', + '/opt/anaconda3/lib/python3.12/site-packages/PyInstaller/loader/pyiboot01_bootstrap.py', + 'PYSOURCE'), + ('pyi_rth_inspect', + '/opt/anaconda3/lib/python3.12/site-packages/PyInstaller/hooks/rthooks/pyi_rth_inspect.py', + 'PYSOURCE'), + ('main', '/Users/ernest/Desktop/Checkers-_Add_Function/main.py', 'PYSOURCE'), + ('libpython3.12.dylib', '/opt/anaconda3/lib/libpython3.12.dylib', 'BINARY'), + ('lib-dynload/_datetime.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_datetime.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_statistics.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_statistics.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_contextvars.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_contextvars.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_decimal.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_decimal.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_pickle.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_pickle.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_hashlib.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_hashlib.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_sha3.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_sha3.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_blake2.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_blake2.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_md5.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_md5.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_sha1.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_sha1.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_sha2.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_sha2.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_random.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_random.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_bisect.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_bisect.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/math.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/math.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/grp.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/grp.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_lzma.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_lzma.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_bz2.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_bz2.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/unicodedata.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/unicodedata.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/array.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/array.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/select.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/select.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_socket.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_socket.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/binascii.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/binascii.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_csv.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_csv.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/resource.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/resource.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_opcode.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_opcode.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_posixsubprocess.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_posixsubprocess.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/fcntl.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/fcntl.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_heapq.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_heapq.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_multibytecodec.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_multibytecodec.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_codecs_jp.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_codecs_jp.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_codecs_kr.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_codecs_kr.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_codecs_iso2022.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_codecs_iso2022.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_codecs_cn.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_codecs_cn.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_codecs_tw.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_codecs_tw.cpython-312-darwin.so', + 'EXTENSION'), + ('lib-dynload/_codecs_hk.cpython-312-darwin.so', + '/opt/anaconda3/lib/python3.12/lib-dynload/_codecs_hk.cpython-312-darwin.so', + 'EXTENSION'), + ('libcrypto.3.dylib', '/opt/anaconda3/lib/libcrypto.3.dylib', 'BINARY'), + ('liblzma.5.dylib', '/opt/anaconda3/lib/liblzma.5.dylib', 'BINARY'), + ('libbz2.dylib', '/opt/anaconda3/lib/libbz2.dylib', 'BINARY'), + ('libz.1.dylib', '/opt/anaconda3/lib/libz.1.dylib', 'BINARY'), + ('base_library.zip', + '/Users/ernest/Desktop/Checkers-_Add_Function/build/main/base_library.zip', + 'DATA')], + 'libpython3.12.dylib', + False, + False, + False, + [], + 'arm64', + None, + None) diff --git a/build/main/PYZ-00.pyz b/build/main/PYZ-00.pyz new file mode 100644 index 0000000..a5d5328 Binary files /dev/null and b/build/main/PYZ-00.pyz differ diff --git a/build/main/PYZ-00.toc b/build/main/PYZ-00.toc new file mode 100644 index 0000000..45ebaa8 --- /dev/null +++ b/build/main/PYZ-00.toc @@ -0,0 +1,183 @@ +('/Users/ernest/Desktop/Checkers-_Add_Function/build/main/PYZ-00.pyz', + [('_compat_pickle', + '/opt/anaconda3/lib/python3.12/_compat_pickle.py', + 'PYMODULE'), + ('_compression', '/opt/anaconda3/lib/python3.12/_compression.py', 'PYMODULE'), + ('_py_abc', '/opt/anaconda3/lib/python3.12/_py_abc.py', 'PYMODULE'), + ('_pydatetime', '/opt/anaconda3/lib/python3.12/_pydatetime.py', 'PYMODULE'), + ('_pydecimal', '/opt/anaconda3/lib/python3.12/_pydecimal.py', 'PYMODULE'), + ('_strptime', '/opt/anaconda3/lib/python3.12/_strptime.py', 'PYMODULE'), + ('_threading_local', + '/opt/anaconda3/lib/python3.12/_threading_local.py', + 'PYMODULE'), + ('argparse', '/opt/anaconda3/lib/python3.12/argparse.py', 'PYMODULE'), + ('ast', '/opt/anaconda3/lib/python3.12/ast.py', 'PYMODULE'), + ('base64', '/opt/anaconda3/lib/python3.12/base64.py', 'PYMODULE'), + ('bisect', '/opt/anaconda3/lib/python3.12/bisect.py', 'PYMODULE'), + ('bz2', '/opt/anaconda3/lib/python3.12/bz2.py', 'PYMODULE'), + ('calendar', '/opt/anaconda3/lib/python3.12/calendar.py', 'PYMODULE'), + ('contextlib', '/opt/anaconda3/lib/python3.12/contextlib.py', 'PYMODULE'), + ('contextvars', '/opt/anaconda3/lib/python3.12/contextvars.py', 'PYMODULE'), + ('copy', '/opt/anaconda3/lib/python3.12/copy.py', 'PYMODULE'), + ('csv', '/opt/anaconda3/lib/python3.12/csv.py', 'PYMODULE'), + ('dataclasses', '/opt/anaconda3/lib/python3.12/dataclasses.py', 'PYMODULE'), + ('datetime', '/opt/anaconda3/lib/python3.12/datetime.py', 'PYMODULE'), + ('decimal', '/opt/anaconda3/lib/python3.12/decimal.py', 'PYMODULE'), + ('dis', '/opt/anaconda3/lib/python3.12/dis.py', 'PYMODULE'), + ('email', '/opt/anaconda3/lib/python3.12/email/__init__.py', 'PYMODULE'), + ('email._encoded_words', + '/opt/anaconda3/lib/python3.12/email/_encoded_words.py', + 'PYMODULE'), + ('email._header_value_parser', + '/opt/anaconda3/lib/python3.12/email/_header_value_parser.py', + 'PYMODULE'), + ('email._parseaddr', + '/opt/anaconda3/lib/python3.12/email/_parseaddr.py', + 'PYMODULE'), + ('email._policybase', + '/opt/anaconda3/lib/python3.12/email/_policybase.py', + 'PYMODULE'), + ('email.base64mime', + '/opt/anaconda3/lib/python3.12/email/base64mime.py', + 'PYMODULE'), + ('email.charset', + '/opt/anaconda3/lib/python3.12/email/charset.py', + 'PYMODULE'), + ('email.contentmanager', + '/opt/anaconda3/lib/python3.12/email/contentmanager.py', + 'PYMODULE'), + ('email.encoders', + '/opt/anaconda3/lib/python3.12/email/encoders.py', + 'PYMODULE'), + ('email.errors', '/opt/anaconda3/lib/python3.12/email/errors.py', 'PYMODULE'), + ('email.feedparser', + '/opt/anaconda3/lib/python3.12/email/feedparser.py', + 'PYMODULE'), + ('email.generator', + '/opt/anaconda3/lib/python3.12/email/generator.py', + 'PYMODULE'), + ('email.header', '/opt/anaconda3/lib/python3.12/email/header.py', 'PYMODULE'), + ('email.headerregistry', + '/opt/anaconda3/lib/python3.12/email/headerregistry.py', + 'PYMODULE'), + ('email.iterators', + '/opt/anaconda3/lib/python3.12/email/iterators.py', + 'PYMODULE'), + ('email.message', + '/opt/anaconda3/lib/python3.12/email/message.py', + 'PYMODULE'), + ('email.parser', '/opt/anaconda3/lib/python3.12/email/parser.py', 'PYMODULE'), + ('email.policy', '/opt/anaconda3/lib/python3.12/email/policy.py', 'PYMODULE'), + ('email.quoprimime', + '/opt/anaconda3/lib/python3.12/email/quoprimime.py', + 'PYMODULE'), + ('email.utils', '/opt/anaconda3/lib/python3.12/email/utils.py', 'PYMODULE'), + ('fnmatch', '/opt/anaconda3/lib/python3.12/fnmatch.py', 'PYMODULE'), + ('fractions', '/opt/anaconda3/lib/python3.12/fractions.py', 'PYMODULE'), + ('getopt', '/opt/anaconda3/lib/python3.12/getopt.py', 'PYMODULE'), + ('gettext', '/opt/anaconda3/lib/python3.12/gettext.py', 'PYMODULE'), + ('gzip', '/opt/anaconda3/lib/python3.12/gzip.py', 'PYMODULE'), + ('hashlib', '/opt/anaconda3/lib/python3.12/hashlib.py', 'PYMODULE'), + ('importlib', + '/opt/anaconda3/lib/python3.12/importlib/__init__.py', + 'PYMODULE'), + ('importlib._abc', + '/opt/anaconda3/lib/python3.12/importlib/_abc.py', + 'PYMODULE'), + ('importlib._bootstrap', + '/opt/anaconda3/lib/python3.12/importlib/_bootstrap.py', + 'PYMODULE'), + ('importlib._bootstrap_external', + '/opt/anaconda3/lib/python3.12/importlib/_bootstrap_external.py', + 'PYMODULE'), + ('importlib.abc', + '/opt/anaconda3/lib/python3.12/importlib/abc.py', + 'PYMODULE'), + ('importlib.machinery', + '/opt/anaconda3/lib/python3.12/importlib/machinery.py', + 'PYMODULE'), + ('importlib.metadata', + '/opt/anaconda3/lib/python3.12/importlib/metadata/__init__.py', + 'PYMODULE'), + ('importlib.metadata._adapters', + '/opt/anaconda3/lib/python3.12/importlib/metadata/_adapters.py', + 'PYMODULE'), + ('importlib.metadata._collections', + '/opt/anaconda3/lib/python3.12/importlib/metadata/_collections.py', + 'PYMODULE'), + ('importlib.metadata._functools', + '/opt/anaconda3/lib/python3.12/importlib/metadata/_functools.py', + 'PYMODULE'), + ('importlib.metadata._itertools', + '/opt/anaconda3/lib/python3.12/importlib/metadata/_itertools.py', + 'PYMODULE'), + ('importlib.metadata._meta', + '/opt/anaconda3/lib/python3.12/importlib/metadata/_meta.py', + 'PYMODULE'), + ('importlib.metadata._text', + '/opt/anaconda3/lib/python3.12/importlib/metadata/_text.py', + 'PYMODULE'), + ('importlib.readers', + '/opt/anaconda3/lib/python3.12/importlib/readers.py', + 'PYMODULE'), + ('importlib.resources', + '/opt/anaconda3/lib/python3.12/importlib/resources/__init__.py', + 'PYMODULE'), + ('importlib.resources._adapters', + '/opt/anaconda3/lib/python3.12/importlib/resources/_adapters.py', + 'PYMODULE'), + ('importlib.resources._common', + '/opt/anaconda3/lib/python3.12/importlib/resources/_common.py', + 'PYMODULE'), + ('importlib.resources._itertools', + '/opt/anaconda3/lib/python3.12/importlib/resources/_itertools.py', + 'PYMODULE'), + ('importlib.resources._legacy', + '/opt/anaconda3/lib/python3.12/importlib/resources/_legacy.py', + 'PYMODULE'), + ('importlib.resources.abc', + '/opt/anaconda3/lib/python3.12/importlib/resources/abc.py', + 'PYMODULE'), + ('importlib.resources.readers', + '/opt/anaconda3/lib/python3.12/importlib/resources/readers.py', + 'PYMODULE'), + ('importlib.util', + '/opt/anaconda3/lib/python3.12/importlib/util.py', + 'PYMODULE'), + ('inspect', '/opt/anaconda3/lib/python3.12/inspect.py', 'PYMODULE'), + ('ipaddress', '/opt/anaconda3/lib/python3.12/ipaddress.py', 'PYMODULE'), + ('logging', '/opt/anaconda3/lib/python3.12/logging/__init__.py', 'PYMODULE'), + ('lzma', '/opt/anaconda3/lib/python3.12/lzma.py', 'PYMODULE'), + ('numbers', '/opt/anaconda3/lib/python3.12/numbers.py', 'PYMODULE'), + ('opcode', '/opt/anaconda3/lib/python3.12/opcode.py', 'PYMODULE'), + ('pathlib', '/opt/anaconda3/lib/python3.12/pathlib.py', 'PYMODULE'), + ('pickle', '/opt/anaconda3/lib/python3.12/pickle.py', 'PYMODULE'), + ('pprint', '/opt/anaconda3/lib/python3.12/pprint.py', 'PYMODULE'), + ('py_compile', '/opt/anaconda3/lib/python3.12/py_compile.py', 'PYMODULE'), + ('quopri', '/opt/anaconda3/lib/python3.12/quopri.py', 'PYMODULE'), + ('random', '/opt/anaconda3/lib/python3.12/random.py', 'PYMODULE'), + ('selectors', '/opt/anaconda3/lib/python3.12/selectors.py', 'PYMODULE'), + ('shutil', '/opt/anaconda3/lib/python3.12/shutil.py', 'PYMODULE'), + ('signal', '/opt/anaconda3/lib/python3.12/signal.py', 'PYMODULE'), + ('socket', '/opt/anaconda3/lib/python3.12/socket.py', 'PYMODULE'), + ('statistics', '/opt/anaconda3/lib/python3.12/statistics.py', 'PYMODULE'), + ('string', '/opt/anaconda3/lib/python3.12/string.py', 'PYMODULE'), + ('stringprep', '/opt/anaconda3/lib/python3.12/stringprep.py', 'PYMODULE'), + ('subprocess', '/opt/anaconda3/lib/python3.12/subprocess.py', 'PYMODULE'), + ('tarfile', '/opt/anaconda3/lib/python3.12/tarfile.py', 'PYMODULE'), + ('tempfile', '/opt/anaconda3/lib/python3.12/tempfile.py', 'PYMODULE'), + ('textwrap', '/opt/anaconda3/lib/python3.12/textwrap.py', 'PYMODULE'), + ('threading', '/opt/anaconda3/lib/python3.12/threading.py', 'PYMODULE'), + ('token', '/opt/anaconda3/lib/python3.12/token.py', 'PYMODULE'), + ('tokenize', '/opt/anaconda3/lib/python3.12/tokenize.py', 'PYMODULE'), + ('tracemalloc', '/opt/anaconda3/lib/python3.12/tracemalloc.py', 'PYMODULE'), + ('typing', '/opt/anaconda3/lib/python3.12/typing.py', 'PYMODULE'), + ('urllib', '/opt/anaconda3/lib/python3.12/urllib/__init__.py', 'PYMODULE'), + ('urllib.parse', '/opt/anaconda3/lib/python3.12/urllib/parse.py', 'PYMODULE'), + ('zipfile', '/opt/anaconda3/lib/python3.12/zipfile/__init__.py', 'PYMODULE'), + ('zipfile._path', + '/opt/anaconda3/lib/python3.12/zipfile/_path/__init__.py', + 'PYMODULE'), + ('zipfile._path.glob', + '/opt/anaconda3/lib/python3.12/zipfile/_path/glob.py', + 'PYMODULE')]) diff --git a/build/main/base_library.zip b/build/main/base_library.zip new file mode 100644 index 0000000..7fb5d9a Binary files /dev/null and b/build/main/base_library.zip differ diff --git a/build/main/localpycs/pyimod01_archive.pyc b/build/main/localpycs/pyimod01_archive.pyc new file mode 100644 index 0000000..604b3cd Binary files /dev/null and b/build/main/localpycs/pyimod01_archive.pyc differ diff --git a/build/main/localpycs/pyimod02_importers.pyc b/build/main/localpycs/pyimod02_importers.pyc new file mode 100644 index 0000000..6ab6273 Binary files /dev/null and b/build/main/localpycs/pyimod02_importers.pyc differ diff --git a/build/main/localpycs/pyimod03_ctypes.pyc b/build/main/localpycs/pyimod03_ctypes.pyc new file mode 100644 index 0000000..22dc4b2 Binary files /dev/null and b/build/main/localpycs/pyimod03_ctypes.pyc differ diff --git a/build/main/localpycs/struct.pyc b/build/main/localpycs/struct.pyc new file mode 100644 index 0000000..cb58c97 Binary files /dev/null and b/build/main/localpycs/struct.pyc differ diff --git a/build/main/main.pkg b/build/main/main.pkg new file mode 100644 index 0000000..5373b9a Binary files /dev/null and b/build/main/main.pkg differ diff --git a/build/main/warn-main.txt b/build/main/warn-main.txt new file mode 100644 index 0000000..c2e63e9 --- /dev/null +++ b/build/main/warn-main.txt @@ -0,0 +1,26 @@ + +This file lists modules PyInstaller was not able to find. This does not +necessarily mean this module is required for running your program. Python and +Python 3rd-party packages include a lot of conditional or optional modules. For +example the module 'ntpath' only exists on Windows, whereas the module +'posixpath' only exists on Posix systems. + +Types if import: +* top-level: imported at the top-level - look at these first +* conditional: imported within an if-statement +* delayed: imported within a function +* optional: imported within a try-except-statement + +IMPORTANT: Do NOT post this list to the issue-tracker. Use it as a basis for + tracking down the missing module yourself. Thanks! + +missing module named _winapi - imported by encodings (delayed, conditional, optional), shutil (conditional), ntpath (optional), subprocess (conditional) +missing module named winreg - imported by importlib._bootstrap_external (conditional) +missing module named nt - imported by shutil (conditional), importlib._bootstrap_external (conditional), ntpath (optional), os (delayed, conditional, optional) +missing module named _frozen_importlib_external - imported by importlib._bootstrap (delayed), importlib (optional), importlib.abc (optional) +excluded module named _frozen_importlib - imported by importlib (optional), importlib.abc (optional) +missing module named msvcrt - imported by subprocess (optional) +missing module named ScoreManager - imported by /Users/ernest/Desktop/Checkers-_Add_Function/main.py (top-level) +missing module named constants - imported by /Users/ernest/Desktop/Checkers-_Add_Function/main.py (top-level) +missing module named SecondMenu - imported by /Users/ernest/Desktop/Checkers-_Add_Function/main.py (top-level) +missing module named pygame - imported by /Users/ernest/Desktop/Checkers-_Add_Function/main.py (top-level) diff --git a/build/main/xref-main.html b/build/main/xref-main.html new file mode 100644 index 0000000..40aa219 --- /dev/null +++ b/build/main/xref-main.html @@ -0,0 +1,7233 @@ + + + + + modulegraph cross reference for main.py, pyi_rth_inspect.py + + + +

modulegraph cross reference for main.py, pyi_rth_inspect.py

+ +
+ + main.py +Script
+imports: + ScoreManager + • SecondMenu + • _collections_abc + • _weakrefset + • abc + • codecs + • collections + • collections.abc + • constants + • copyreg + • encodings + • encodings.aliases + • encodings.ascii + • encodings.base64_codec + • encodings.big5 + • encodings.big5hkscs + • encodings.bz2_codec + • encodings.charmap + • encodings.cp037 + • encodings.cp1006 + • encodings.cp1026 + • encodings.cp1125 + • encodings.cp1140 + • encodings.cp1250 + • encodings.cp1251 + • encodings.cp1252 + • encodings.cp1253 + • encodings.cp1254 + • encodings.cp1255 + • encodings.cp1256 + • encodings.cp1257 + • encodings.cp1258 + • encodings.cp273 + • encodings.cp424 + • encodings.cp437 + • encodings.cp500 + • encodings.cp720 + • encodings.cp737 + • encodings.cp775 + • encodings.cp850 + • encodings.cp852 + • encodings.cp855 + • encodings.cp856 + • encodings.cp857 + • encodings.cp858 + • encodings.cp860 + • encodings.cp861 + • encodings.cp862 + • encodings.cp863 + • encodings.cp864 + • encodings.cp865 + • encodings.cp866 + • encodings.cp869 + • encodings.cp874 + • encodings.cp875 + • encodings.cp932 + • encodings.cp949 + • encodings.cp950 + • encodings.euc_jis_2004 + • encodings.euc_jisx0213 + • encodings.euc_jp + • encodings.euc_kr + • encodings.gb18030 + • encodings.gb2312 + • encodings.gbk + • encodings.hex_codec + • encodings.hp_roman8 + • encodings.hz + • encodings.idna + • encodings.iso2022_jp + • encodings.iso2022_jp_1 + • encodings.iso2022_jp_2 + • encodings.iso2022_jp_2004 + • encodings.iso2022_jp_3 + • encodings.iso2022_jp_ext + • encodings.iso2022_kr + • encodings.iso8859_1 + • encodings.iso8859_10 + • encodings.iso8859_11 + • encodings.iso8859_13 + • encodings.iso8859_14 + • encodings.iso8859_15 + • encodings.iso8859_16 + • encodings.iso8859_2 + • encodings.iso8859_3 + • encodings.iso8859_4 + • encodings.iso8859_5 + • encodings.iso8859_6 + • encodings.iso8859_7 + • encodings.iso8859_8 + • encodings.iso8859_9 + • encodings.johab + • encodings.koi8_r + • encodings.koi8_t + • encodings.koi8_u + • encodings.kz1048 + • encodings.latin_1 + • encodings.mac_arabic + • encodings.mac_croatian + • encodings.mac_cyrillic + • encodings.mac_farsi + • encodings.mac_greek + • encodings.mac_iceland + • encodings.mac_latin2 + • encodings.mac_roman + • encodings.mac_romanian + • encodings.mac_turkish + • encodings.mbcs + • encodings.oem + • encodings.palmos + • encodings.ptcp154 + • encodings.punycode + • encodings.quopri_codec + • encodings.raw_unicode_escape + • encodings.rot_13 + • encodings.shift_jis + • encodings.shift_jis_2004 + • encodings.shift_jisx0213 + • encodings.tis_620 + • encodings.undefined + • encodings.unicode_escape + • encodings.utf_16 + • encodings.utf_16_be + • encodings.utf_16_le + • encodings.utf_32 + • encodings.utf_32_be + • encodings.utf_32_le + • encodings.utf_7 + • encodings.utf_8 + • encodings.utf_8_sig + • encodings.uu_codec + • encodings.zlib_codec + • enum + • functools + • genericpath + • heapq + • io + • keyword + • linecache + • locale + • ntpath + • operator + • os + • posixpath + • pygame + • pyi_rth_inspect.py + • re + • re._casefix + • re._compiler + • re._constants + • re._parser + • reprlib + • sre_compile + • sre_constants + • sre_parse + • stat + • traceback + • types + • warnings + • weakref + +
+ +
+ +
+ + pyi_rth_inspect.py +Script
+imports: + inspect + • os + • sys + +
+
+imported by: + main.py + +
+ +
+ +
+ + ScoreManager +MissingModule
+imported by: + main.py + +
+ +
+ +
+ + SecondMenu +MissingModule
+imported by: + main.py + +
+ +
+ +
+ + _abc (builtin module)
+imported by: + abc + +
+ +
+ +
+ + _ast (builtin module)
+imported by: + ast + +
+ +
+ +
+ + _bisect /opt/anaconda3/lib/python3.12/lib-dynload/_bisect.cpython-312-darwin.so
+imported by: + bisect + +
+ +
+ +
+ + _blake2 /opt/anaconda3/lib/python3.12/lib-dynload/_blake2.cpython-312-darwin.so
+imported by: + hashlib + +
+ +
+ +
+ + _bz2 /opt/anaconda3/lib/python3.12/lib-dynload/_bz2.cpython-312-darwin.so
+imported by: + bz2 + +
+ +
+ +
+ + _codecs (builtin module)
+imported by: + codecs + +
+ +
+ +
+ + _codecs_cn /opt/anaconda3/lib/python3.12/lib-dynload/_codecs_cn.cpython-312-darwin.so
+imported by: + encodings.gb18030 + • encodings.gb2312 + • encodings.gbk + • encodings.hz + +
+ +
+ +
+ + _codecs_hk /opt/anaconda3/lib/python3.12/lib-dynload/_codecs_hk.cpython-312-darwin.so
+imported by: + encodings.big5hkscs + +
+ +
+ +
+ + _codecs_iso2022 /opt/anaconda3/lib/python3.12/lib-dynload/_codecs_iso2022.cpython-312-darwin.so
+imported by: + encodings.iso2022_jp + • encodings.iso2022_jp_1 + • encodings.iso2022_jp_2 + • encodings.iso2022_jp_2004 + • encodings.iso2022_jp_3 + • encodings.iso2022_jp_ext + • encodings.iso2022_kr + +
+ +
+ +
+ + _codecs_jp /opt/anaconda3/lib/python3.12/lib-dynload/_codecs_jp.cpython-312-darwin.so
+imported by: + encodings.cp932 + • encodings.euc_jis_2004 + • encodings.euc_jisx0213 + • encodings.euc_jp + • encodings.shift_jis + • encodings.shift_jis_2004 + • encodings.shift_jisx0213 + +
+ +
+ +
+ + _codecs_kr /opt/anaconda3/lib/python3.12/lib-dynload/_codecs_kr.cpython-312-darwin.so
+imported by: + encodings.cp949 + • encodings.euc_kr + • encodings.johab + +
+ +
+ +
+ + _codecs_tw /opt/anaconda3/lib/python3.12/lib-dynload/_codecs_tw.cpython-312-darwin.so
+imported by: + encodings.big5 + • encodings.cp950 + +
+ +
+ +
+ + _collections (builtin module)
+imported by: + collections + • threading + +
+ +
+ +
+ + _collections_abc +SourceModule
+imports: + abc + • sys + • warnings + +
+
+imported by: + collections + • collections.abc + • contextlib + • locale + • main.py + • os + • pathlib + • random + • types + • weakref + +
+ +
+ +
+ + _compat_pickle +SourceModule
+imported by: + _pickle + • pickle + +
+ +
+ +
+ + _compression +SourceModule
+imports: + io + • sys + +
+
+imported by: + bz2 + • gzip + • lzma + +
+ +
+ +
+ + _contextvars /opt/anaconda3/lib/python3.12/lib-dynload/_contextvars.cpython-312-darwin.so
+imported by: + contextvars + +
+ +
+ +
+ + _csv /opt/anaconda3/lib/python3.12/lib-dynload/_csv.cpython-312-darwin.so
+imported by: + csv + +
+ +
+ +
+ + _datetime /opt/anaconda3/lib/python3.12/lib-dynload/_datetime.cpython-312-darwin.so
+imports: + _strptime + • time + +
+
+imported by: + datetime + +
+ +
+ +
+ + _decimal /opt/anaconda3/lib/python3.12/lib-dynload/_decimal.cpython-312-darwin.so
+imported by: + decimal + +
+ +
+ +
+ + _frozen_importlib +ExcludedModule
+imported by: + importlib + • importlib.abc + +
+ +
+ +
+ + _frozen_importlib_external +MissingModule
+imported by: + importlib + • importlib._bootstrap + • importlib.abc + +
+ +
+ +
+ + _functools (builtin module)
+imported by: + functools + +
+ +
+ +
+ + _hashlib /opt/anaconda3/lib/python3.12/lib-dynload/_hashlib.cpython-312-darwin.so
+imported by: + hashlib + +
+ +
+ +
+ + _heapq /opt/anaconda3/lib/python3.12/lib-dynload/_heapq.cpython-312-darwin.so
+imported by: + heapq + +
+ +
+ +
+ + _imp (builtin module)
+imported by: + importlib + • importlib._bootstrap_external + • importlib.util + +
+ +
+ +
+ + _io (builtin module)
+imported by: + importlib._bootstrap_external + • io + +
+ +
+ +
+ + _locale (builtin module)
+imported by: + locale + +
+ +
+ +
+ + _lzma /opt/anaconda3/lib/python3.12/lib-dynload/_lzma.cpython-312-darwin.so
+imported by: + lzma + +
+ +
+ +
+ + _md5 /opt/anaconda3/lib/python3.12/lib-dynload/_md5.cpython-312-darwin.so
+imported by: + hashlib + +
+ +
+ +
+ + _multibytecodec /opt/anaconda3/lib/python3.12/lib-dynload/_multibytecodec.cpython-312-darwin.so
+imported by: + encodings.big5 + • encodings.big5hkscs + • encodings.cp932 + • encodings.cp949 + • encodings.cp950 + • encodings.euc_jis_2004 + • encodings.euc_jisx0213 + • encodings.euc_jp + • encodings.euc_kr + • encodings.gb18030 + • encodings.gb2312 + • encodings.gbk + • encodings.hz + • encodings.iso2022_jp + • encodings.iso2022_jp_1 + • encodings.iso2022_jp_2 + • encodings.iso2022_jp_2004 + • encodings.iso2022_jp_3 + • encodings.iso2022_jp_ext + • encodings.iso2022_kr + • encodings.johab + • encodings.shift_jis + • encodings.shift_jis_2004 + • encodings.shift_jisx0213 + +
+ +
+ +
+ + _opcode /opt/anaconda3/lib/python3.12/lib-dynload/_opcode.cpython-312-darwin.so
+imported by: + opcode + +
+ +
+ +
+ + _operator (builtin module)
+imported by: + operator + +
+ +
+ +
+ + _pickle /opt/anaconda3/lib/python3.12/lib-dynload/_pickle.cpython-312-darwin.so
+imports: + _compat_pickle + • codecs + • copyreg + +
+
+imported by: + pickle + +
+ +
+ +
+ + _posixsubprocess /opt/anaconda3/lib/python3.12/lib-dynload/_posixsubprocess.cpython-312-darwin.so
+imports: + gc + +
+
+imported by: + subprocess + +
+ +
+ +
+ + _py_abc +SourceModule
+imports: + _weakrefset + +
+
+imported by: + abc + +
+ +
+ +
+ + _pydatetime +SourceModule
+imports: + _strptime + • math + • operator + • sys + • time + • warnings + +
+
+imported by: + datetime + +
+ +
+ +
+ + _pydecimal +SourceModule
+imports: + collections + • contextvars + • itertools + • locale + • math + • numbers + • re + • sys + +
+
+imported by: + decimal + +
+ +
+ +
+ + _random /opt/anaconda3/lib/python3.12/lib-dynload/_random.cpython-312-darwin.so
+imported by: + random + +
+ +
+ +
+ + _sha1 /opt/anaconda3/lib/python3.12/lib-dynload/_sha1.cpython-312-darwin.so
+imported by: + hashlib + +
+ +
+ +
+ + _sha2 /opt/anaconda3/lib/python3.12/lib-dynload/_sha2.cpython-312-darwin.so
+imported by: + hashlib + • random + +
+ +
+ +
+ + _sha3 /opt/anaconda3/lib/python3.12/lib-dynload/_sha3.cpython-312-darwin.so
+imported by: + hashlib + +
+ +
+ +
+ + _signal (builtin module)
+imported by: + signal + +
+ +
+ +
+ + _socket /opt/anaconda3/lib/python3.12/lib-dynload/_socket.cpython-312-darwin.so
+imported by: + socket + +
+ +
+ +
+ + _sre (builtin module)
+imports: + copy + • re + +
+
+imported by: + re + • re._compiler + • re._constants + +
+ +
+ +
+ + _stat (builtin module)
+imported by: + stat + +
+ +
+ +
+ + _statistics /opt/anaconda3/lib/python3.12/lib-dynload/_statistics.cpython-312-darwin.so
+imported by: + statistics + +
+ +
+ +
+ + _string (builtin module)
+imported by: + string + +
+ +
+ +
+ + _strptime +SourceModule
+imports: + _thread + • calendar + • datetime + • locale + • re + • time + +
+
+imported by: + _datetime + • _pydatetime + • time + +
+ +
+ +
+ + _struct /opt/anaconda3/lib/python3.12/lib-dynload/_struct.cpython-312-darwin.so
+imported by: + struct + +
+ +
+ +
+ + _thread (builtin module)
+imported by: + _strptime + • dataclasses + • functools + • reprlib + • tempfile + • threading + +
+ +
+ +
+ + _threading_local +SourceModule
+imports: + contextlib + • threading + • weakref + +
+
+imported by: + threading + +
+ +
+ +
+ + _tokenize (builtin module)
+imported by: + tokenize + +
+ +
+ +
+ + _tracemalloc (builtin module)
+imported by: + tracemalloc + +
+ +
+ +
+ + _typing (builtin module)
+imported by: + typing + +
+ +
+ +
+ + _warnings (builtin module)
+imported by: + importlib._bootstrap_external + • warnings + +
+ +
+ +
+ + _weakref (builtin module)
+imported by: + _weakrefset + • collections + • weakref + +
+ +
+ +
+ + _weakrefset +SourceModule
+imports: + _weakref + • types + +
+
+imported by: + _py_abc + • main.py + • threading + • weakref + +
+ +
+ +
+ + _winapi +MissingModule
+imported by: + encodings + • ntpath + • shutil + • subprocess + +
+ +
+ +
+ + abc +SourceModule
+imports: + _abc + • _py_abc + +
+
+imported by: + _collections_abc + • contextlib + • dataclasses + • email._policybase + • functools + • importlib._abc + • importlib.abc + • importlib.metadata + • importlib.resources.abc + • inspect + • io + • main.py + • numbers + • os + • selectors + • typing + +
+ +
+ +
+ + argparse +SourceModule
+imports: + copy + • gettext + • os + • re + • shutil + • sys + • textwrap + • warnings + +
+
+imported by: + ast + • calendar + • dis + • gzip + • inspect + • py_compile + • tarfile + • tokenize + • zipfile + +
+ +
+ +
+ + array /opt/anaconda3/lib/python3.12/lib-dynload/array.cpython-312-darwin.so
+imported by: + socket + +
+ +
+ +
+ + ast +SourceModule
+imports: + _ast + • argparse + • collections + • contextlib + • enum + • inspect + • re + • sys + • warnings + +
+
+imported by: + inspect + • traceback + +
+ +
+ +
+ + atexit (builtin module)
+imported by: + logging + • weakref + +
+ +
+ +
+ + base64 +SourceModule
+imports: + binascii + • getopt + • re + • struct + • sys + +
+
+imported by: + email._encoded_words + • email.base64mime + • email.encoders + • encodings.base64_codec + +
+ +
+ +
+ + binascii /opt/anaconda3/lib/python3.12/lib-dynload/binascii.cpython-312-darwin.so
+imported by: + base64 + • email._encoded_words + • email.base64mime + • email.contentmanager + • email.header + • email.message + • encodings.hex_codec + • encodings.uu_codec + • quopri + • zipfile + +
+ +
+ +
+ + bisect +SourceModule
+imports: + _bisect + +
+
+imported by: + random + • statistics + +
+ +
+ +
+ + builtins (builtin module)
+imported by: + bz2 + • codecs + • enum + • gettext + • gzip + • inspect + • locale + • lzma + • operator + • reprlib + • subprocess + • tarfile + • tokenize + • warnings + +
+ +
+ +
+ + bz2 +SourceModule
+imports: + _bz2 + • _compression + • builtins + • io + • os + +
+
+imported by: + encodings.bz2_codec + • shutil + • tarfile + • zipfile + +
+ +
+ +
+ + calendar +SourceModule
+imports: + argparse + • datetime + • enum + • itertools + • locale + • sys + • warnings + +
+
+imported by: + _strptime + • email._parseaddr + +
+ +
+ +
+ + codecs +SourceModule
+imports: + _codecs + • builtins + • encodings + • sys + +
+
+imported by: + _pickle + • encodings + • encodings.ascii + • encodings.base64_codec + • encodings.big5 + • encodings.big5hkscs + • encodings.bz2_codec + • encodings.charmap + • encodings.cp037 + • encodings.cp1006 + • encodings.cp1026 + • encodings.cp1125 + • encodings.cp1140 + • encodings.cp1250 + • encodings.cp1251 + • encodings.cp1252 + • encodings.cp1253 + • encodings.cp1254 + • encodings.cp1255 + • encodings.cp1256 + • encodings.cp1257 + • encodings.cp1258 + • encodings.cp273 + • encodings.cp424 + • encodings.cp437 + • encodings.cp500 + • encodings.cp720 + • encodings.cp737 + • encodings.cp775 + • encodings.cp850 + • encodings.cp852 + • encodings.cp855 + • encodings.cp856 + • encodings.cp857 + • encodings.cp858 + • encodings.cp860 + • encodings.cp861 + • encodings.cp862 + • encodings.cp863 + • encodings.cp864 + • encodings.cp865 + • encodings.cp866 + • encodings.cp869 + • encodings.cp874 + • encodings.cp875 + • encodings.cp932 + • encodings.cp949 + • encodings.cp950 + • encodings.euc_jis_2004 + • encodings.euc_jisx0213 + • encodings.euc_jp + • encodings.euc_kr + • encodings.gb18030 + • encodings.gb2312 + • encodings.gbk + • encodings.hex_codec + • encodings.hp_roman8 + • encodings.hz + • encodings.idna + • encodings.iso2022_jp + • encodings.iso2022_jp_1 + • encodings.iso2022_jp_2 + • encodings.iso2022_jp_2004 + • encodings.iso2022_jp_3 + • encodings.iso2022_jp_ext + • encodings.iso2022_kr + • encodings.iso8859_1 + • encodings.iso8859_10 + • encodings.iso8859_11 + • encodings.iso8859_13 + • encodings.iso8859_14 + • encodings.iso8859_15 + • encodings.iso8859_16 + • encodings.iso8859_2 + • encodings.iso8859_3 + • encodings.iso8859_4 + • encodings.iso8859_5 + • encodings.iso8859_6 + • encodings.iso8859_7 + • encodings.iso8859_8 + • encodings.iso8859_9 + • encodings.johab + • encodings.koi8_r + • encodings.koi8_t + • encodings.koi8_u + • encodings.kz1048 + • encodings.latin_1 + • encodings.mac_arabic + • encodings.mac_croatian + • encodings.mac_cyrillic + • encodings.mac_farsi + • encodings.mac_greek + • encodings.mac_iceland + • encodings.mac_latin2 + • encodings.mac_roman + • encodings.mac_romanian + • encodings.mac_turkish + • encodings.mbcs + • encodings.oem + • encodings.palmos + • encodings.ptcp154 + • encodings.punycode + • encodings.quopri_codec + • encodings.raw_unicode_escape + • encodings.rot_13 + • encodings.shift_jis + • encodings.shift_jis_2004 + • encodings.shift_jisx0213 + • encodings.tis_620 + • encodings.undefined + • encodings.unicode_escape + • encodings.utf_16 + • encodings.utf_16_be + • encodings.utf_16_le + • encodings.utf_32 + • encodings.utf_32_be + • encodings.utf_32_le + • encodings.utf_7 + • encodings.utf_8 + • encodings.utf_8_sig + • encodings.uu_codec + • encodings.zlib_codec + • main.py + • pickle + • tokenize + +
+ +
+ +
+ + collections +Package
+imports: + _collections + • _collections_abc + • _weakref + • copy + • heapq + • itertools + • keyword + • operator + • reprlib + • sys + +
+
+imported by: + _pydecimal + • ast + • collections.abc + • contextlib + • dis + • email.feedparser + • functools + • importlib.metadata + • importlib.metadata._collections + • importlib.resources.readers + • inspect + • main.py + • pprint + • selectors + • shutil + • statistics + • string + • threading + • tokenize + • typing + • urllib.parse + +
+ +
+ +
+ + collections.abc +SourceModule
+imports: + _collections_abc + • collections + +
+
+imported by: + inspect + • logging + • main.py + • selectors + • traceback + • tracemalloc + • typing + +
+ +
+ +
+ + constants +MissingModule
+imported by: + main.py + +
+ +
+ +
+ + contextlib +SourceModule
+imports: + _collections_abc + • abc + • collections + • functools + • os + • sys + • types + +
+
+imported by: + _threading_local + • ast + • importlib.metadata + • importlib.resources._adapters + • importlib.resources._common + • subprocess + • traceback + • typing + • zipfile._path + +
+ +
+ +
+ + contextvars +SourceModule
+imports: + _contextvars + +
+
+imported by: + _pydecimal + +
+ +
+ +
+ + copy +SourceModule
+imports: + copyreg + • types + • weakref + +
+
+imported by: + _sre + • argparse + • collections + • dataclasses + • email.generator + • gettext + • tarfile + • weakref + +
+ +
+ +
+ + copyreg +SourceModule
+imports: + functools + • operator + +
+
+imported by: + _pickle + • copy + • main.py + • pickle + • re + • typing + +
+ +
+ +
+ + csv +SourceModule
+imports: + _csv + • io + • re + • types + +
+
+imported by: + importlib.metadata + +
+ +
+ +
+ + dataclasses +SourceModule
+imports: + _thread + • abc + • copy + • functools + • inspect + • itertools + • keyword + • re + • sys + • types + +
+
+imported by: + pprint + +
+ +
+ +
+ + datetime +SourceModule
+imports: + _datetime + • _pydatetime + • time + +
+
+imported by: + _strptime + • calendar + • email.utils + +
+ +
+ +
+ + decimal +SourceModule
+imports: + _decimal + • _pydecimal + +
+
+imported by: + fractions + • statistics + +
+ +
+ +
+ + dis +SourceModule
+imports: + argparse + • collections + • io + • opcode + • sys + • types + +
+
+imported by: + inspect + +
+ +
+ +
+ + email +Package
+imports: + email._header_value_parser + • email.charset + • email.errors + • email.header + • email.parser + +
+
+imported by: + email._encoded_words + • email._header_value_parser + • email._parseaddr + • email._policybase + • email.base64mime + • email.charset + • email.contentmanager + • email.encoders + • email.errors + • email.feedparser + • email.generator + • email.header + • email.headerregistry + • email.iterators + • email.message + • email.parser + • email.policy + • email.quoprimime + • email.utils + • importlib.metadata + +
+ +
+ +
+ + email._encoded_words +SourceModule
+imports: + base64 + • binascii + • email + • email.errors + • functools + • re + • string + +
+
+imported by: + email._header_value_parser + • email.message + +
+ +
+ +
+ + email._header_value_parser +SourceModule
+imports: + email + • email._encoded_words + • email.errors + • email.utils + • operator + • re + • string + • sys + • urllib + +
+
+imported by: + email + • email.headerregistry + +
+ +
+ +
+ + email._parseaddr +SourceModule
+imports: + calendar + • email + • time + +
+
+imported by: + email.utils + +
+ +
+ +
+ + email._policybase +SourceModule
+imports: + abc + • email + • email.charset + • email.header + • email.utils + +
+
+imported by: + email.feedparser + • email.message + • email.parser + • email.policy + +
+ +
+ +
+ + email.base64mime +SourceModule
+imports: + base64 + • binascii + • email + +
+
+imported by: + email.charset + • email.header + +
+ +
+ +
+ + email.charset +SourceModule
+imports: + email + • email.base64mime + • email.encoders + • email.errors + • email.quoprimime + • functools + +
+
+imported by: + email + • email._policybase + • email.contentmanager + • email.header + • email.message + • email.utils + +
+ +
+ +
+ + email.contentmanager +SourceModule
+imports: + binascii + • email + • email.charset + • email.errors + • email.message + • email.quoprimime + +
+
+imported by: + email.policy + +
+ +
+ +
+ + email.encoders +SourceModule
+imports: + base64 + • email + • quopri + +
+
+imported by: + email.charset + +
+ +
+ +
+ + email.errors +SourceModule
+imports: + email + +
+
+imported by: + email + • email._encoded_words + • email._header_value_parser + • email.charset + • email.contentmanager + • email.feedparser + • email.header + • email.headerregistry + • email.message + +
+ +
+ +
+ + email.feedparser +SourceModule
+imports: + collections + • email + • email._policybase + • email.errors + • email.message + • io + • re + +
+
+imported by: + email.parser + +
+ +
+ +
+ + email.generator +SourceModule
+imports: + copy + • email + • email.utils + • io + • random + • re + • sys + • time + +
+
+imported by: + email.message + +
+ +
+ +
+ + email.header +SourceModule
+imports: + binascii + • email + • email.base64mime + • email.charset + • email.errors + • email.quoprimime + • re + +
+
+imported by: + email + • email._policybase + +
+ +
+ +
+ + email.headerregistry +SourceModule
+imports: + email + • email._header_value_parser + • email.errors + • email.utils + • types + +
+
+imported by: + email.policy + +
+ +
+ +
+ + email.iterators +SourceModule
+imports: + email + • io + • sys + +
+
+imported by: + email.message + +
+ +
+ +
+ + email.message +SourceModule
+imports: + binascii + • email + • email._encoded_words + • email._policybase + • email.charset + • email.errors + • email.generator + • email.iterators + • email.policy + • email.utils + • io + • quopri + • re + +
+
+imported by: + email.contentmanager + • email.feedparser + • email.policy + • importlib.metadata._adapters + +
+ +
+ +
+ + email.parser +SourceModule
+imports: + email + • email._policybase + • email.feedparser + • io + +
+
+imported by: + email + +
+ +
+ +
+ + email.policy +SourceModule
+imports: + email + • email._policybase + • email.contentmanager + • email.headerregistry + • email.message + • email.utils + • re + • sys + +
+
+imported by: + email.message + +
+ +
+ +
+ + email.quoprimime +SourceModule
+imports: + email + • re + • string + +
+
+imported by: + email.charset + • email.contentmanager + • email.header + +
+ +
+ +
+ + email.utils +SourceModule
+imports: + datetime + • email + • email._parseaddr + • email.charset + • os + • random + • re + • socket + • time + • urllib.parse + • warnings + +
+
+imported by: + email._header_value_parser + • email._policybase + • email.generator + • email.headerregistry + • email.message + • email.policy + +
+ +
+ +
+ + encodings +Package
+imports: + _winapi + • codecs + • encodings + • encodings.aliases + • encodings.ascii + • encodings.base64_codec + • encodings.big5 + • encodings.big5hkscs + • encodings.bz2_codec + • encodings.charmap + • encodings.cp037 + • encodings.cp1006 + • encodings.cp1026 + • encodings.cp1125 + • encodings.cp1140 + • encodings.cp1250 + • encodings.cp1251 + • encodings.cp1252 + • encodings.cp1253 + • encodings.cp1254 + • encodings.cp1255 + • encodings.cp1256 + • encodings.cp1257 + • encodings.cp1258 + • encodings.cp273 + • encodings.cp424 + • encodings.cp437 + • encodings.cp500 + • encodings.cp720 + • encodings.cp737 + • encodings.cp775 + • encodings.cp850 + • encodings.cp852 + • encodings.cp855 + • encodings.cp856 + • encodings.cp857 + • encodings.cp858 + • encodings.cp860 + • encodings.cp861 + • encodings.cp862 + • encodings.cp863 + • encodings.cp864 + • encodings.cp865 + • encodings.cp866 + • encodings.cp869 + • encodings.cp874 + • encodings.cp875 + • encodings.cp932 + • encodings.cp949 + • encodings.cp950 + • encodings.euc_jis_2004 + • encodings.euc_jisx0213 + • encodings.euc_jp + • encodings.euc_kr + • encodings.gb18030 + • encodings.gb2312 + • encodings.gbk + • encodings.hex_codec + • encodings.hp_roman8 + • encodings.hz + • encodings.idna + • encodings.iso2022_jp + • encodings.iso2022_jp_1 + • encodings.iso2022_jp_2 + • encodings.iso2022_jp_2004 + • encodings.iso2022_jp_3 + • encodings.iso2022_jp_ext + • encodings.iso2022_kr + • encodings.iso8859_1 + • encodings.iso8859_10 + • encodings.iso8859_11 + • encodings.iso8859_13 + • encodings.iso8859_14 + • encodings.iso8859_15 + • encodings.iso8859_16 + • encodings.iso8859_2 + • encodings.iso8859_3 + • encodings.iso8859_4 + • encodings.iso8859_5 + • encodings.iso8859_6 + • encodings.iso8859_7 + • encodings.iso8859_8 + • encodings.iso8859_9 + • encodings.johab + • encodings.koi8_r + • encodings.koi8_t + • encodings.koi8_u + • encodings.kz1048 + • encodings.latin_1 + • encodings.mac_arabic + • encodings.mac_croatian + • encodings.mac_cyrillic + • encodings.mac_farsi + • encodings.mac_greek + • encodings.mac_iceland + • encodings.mac_latin2 + • encodings.mac_roman + • encodings.mac_romanian + • encodings.mac_turkish + • encodings.mbcs + • encodings.oem + • encodings.palmos + • encodings.ptcp154 + • encodings.punycode + • encodings.quopri_codec + • encodings.raw_unicode_escape + • encodings.rot_13 + • encodings.shift_jis + • encodings.shift_jis_2004 + • encodings.shift_jisx0213 + • encodings.tis_620 + • encodings.undefined + • encodings.unicode_escape + • encodings.utf_16 + • encodings.utf_16_be + • encodings.utf_16_le + • encodings.utf_32 + • encodings.utf_32_be + • encodings.utf_32_le + • encodings.utf_7 + • encodings.utf_8 + • encodings.utf_8_sig + • encodings.uu_codec + • encodings.zlib_codec + • sys + +
+
+imported by: + codecs + • encodings + • encodings.aliases + • encodings.ascii + • encodings.base64_codec + • encodings.big5 + • encodings.big5hkscs + • encodings.bz2_codec + • encodings.charmap + • encodings.cp037 + • encodings.cp1006 + • encodings.cp1026 + • encodings.cp1125 + • encodings.cp1140 + • encodings.cp1250 + • encodings.cp1251 + • encodings.cp1252 + • encodings.cp1253 + • encodings.cp1254 + • encodings.cp1255 + • encodings.cp1256 + • encodings.cp1257 + • encodings.cp1258 + • encodings.cp273 + • encodings.cp424 + • encodings.cp437 + • encodings.cp500 + • encodings.cp720 + • encodings.cp737 + • encodings.cp775 + • encodings.cp850 + • encodings.cp852 + • encodings.cp855 + • encodings.cp856 + • encodings.cp857 + • encodings.cp858 + • encodings.cp860 + • encodings.cp861 + • encodings.cp862 + • encodings.cp863 + • encodings.cp864 + • encodings.cp865 + • encodings.cp866 + • encodings.cp869 + • encodings.cp874 + • encodings.cp875 + • encodings.cp932 + • encodings.cp949 + • encodings.cp950 + • encodings.euc_jis_2004 + • encodings.euc_jisx0213 + • encodings.euc_jp + • encodings.euc_kr + • encodings.gb18030 + • encodings.gb2312 + • encodings.gbk + • encodings.hex_codec + • encodings.hp_roman8 + • encodings.hz + • encodings.idna + • encodings.iso2022_jp + • encodings.iso2022_jp_1 + • encodings.iso2022_jp_2 + • encodings.iso2022_jp_2004 + • encodings.iso2022_jp_3 + • encodings.iso2022_jp_ext + • encodings.iso2022_kr + • encodings.iso8859_1 + • encodings.iso8859_10 + • encodings.iso8859_11 + • encodings.iso8859_13 + • encodings.iso8859_14 + • encodings.iso8859_15 + • encodings.iso8859_16 + • encodings.iso8859_2 + • encodings.iso8859_3 + • encodings.iso8859_4 + • encodings.iso8859_5 + • encodings.iso8859_6 + • encodings.iso8859_7 + • encodings.iso8859_8 + • encodings.iso8859_9 + • encodings.johab + • encodings.koi8_r + • encodings.koi8_t + • encodings.koi8_u + • encodings.kz1048 + • encodings.latin_1 + • encodings.mac_arabic + • encodings.mac_croatian + • encodings.mac_cyrillic + • encodings.mac_farsi + • encodings.mac_greek + • encodings.mac_iceland + • encodings.mac_latin2 + • encodings.mac_roman + • encodings.mac_romanian + • encodings.mac_turkish + • encodings.mbcs + • encodings.oem + • encodings.palmos + • encodings.ptcp154 + • encodings.punycode + • encodings.quopri_codec + • encodings.raw_unicode_escape + • encodings.rot_13 + • encodings.shift_jis + • encodings.shift_jis_2004 + • encodings.shift_jisx0213 + • encodings.tis_620 + • encodings.undefined + • encodings.unicode_escape + • encodings.utf_16 + • encodings.utf_16_be + • encodings.utf_16_le + • encodings.utf_32 + • encodings.utf_32_be + • encodings.utf_32_le + • encodings.utf_7 + • encodings.utf_8 + • encodings.utf_8_sig + • encodings.uu_codec + • encodings.zlib_codec + • locale + • main.py + +
+ +
+ +
+ + encodings.aliases +SourceModule
+imports: + encodings + +
+
+imported by: + encodings + • locale + • main.py + +
+ +
+ +
+ + encodings.ascii +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.base64_codec +SourceModule
+imports: + base64 + • codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.big5 +SourceModule
+imports: + _codecs_tw + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.big5hkscs +SourceModule
+imports: + _codecs_hk + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.bz2_codec +SourceModule
+imports: + bz2 + • codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.charmap +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.cp037 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.cp1006 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.cp1026 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.cp1125 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.cp1140 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.cp1250 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.cp1251 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.cp1252 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.cp1253 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.cp1254 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.cp1255 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.cp1256 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.cp1257 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.cp1258 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.cp273 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.cp424 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.cp437 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.cp500 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.cp720 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.cp737 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.cp775 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.cp850 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.cp852 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.cp855 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.cp856 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.cp857 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.cp858 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.cp860 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.cp861 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.cp862 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.cp863 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.cp864 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.cp865 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.cp866 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.cp869 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.cp874 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.cp875 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.cp932 +SourceModule
+imports: + _codecs_jp + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.cp949 +SourceModule
+imports: + _codecs_kr + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.cp950 +SourceModule
+imports: + _codecs_tw + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.euc_jis_2004 +SourceModule
+imports: + _codecs_jp + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.euc_jisx0213 +SourceModule
+imports: + _codecs_jp + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.euc_jp +SourceModule
+imports: + _codecs_jp + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.euc_kr +SourceModule
+imports: + _codecs_kr + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.gb18030 +SourceModule
+imports: + _codecs_cn + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.gb2312 +SourceModule
+imports: + _codecs_cn + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.gbk +SourceModule
+imports: + _codecs_cn + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.hex_codec +SourceModule
+imports: + binascii + • codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.hp_roman8 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.hz +SourceModule
+imports: + _codecs_cn + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.idna +SourceModule
+imports: + codecs + • encodings + • re + • stringprep + • unicodedata + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.iso2022_jp +SourceModule
+imports: + _codecs_iso2022 + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.iso2022_jp_1 +SourceModule
+imports: + _codecs_iso2022 + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.iso2022_jp_2 +SourceModule
+imports: + _codecs_iso2022 + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.iso2022_jp_2004 +SourceModule
+imports: + _codecs_iso2022 + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.iso2022_jp_3 +SourceModule
+imports: + _codecs_iso2022 + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.iso2022_jp_ext +SourceModule
+imports: + _codecs_iso2022 + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.iso2022_kr +SourceModule
+imports: + _codecs_iso2022 + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.iso8859_1 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.iso8859_10 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.iso8859_11 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.iso8859_13 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.iso8859_14 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.iso8859_15 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.iso8859_16 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.iso8859_2 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.iso8859_3 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.iso8859_4 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.iso8859_5 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.iso8859_6 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.iso8859_7 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.iso8859_8 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.iso8859_9 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.johab +SourceModule
+imports: + _codecs_kr + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.koi8_r +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.koi8_t +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.koi8_u +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.kz1048 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.latin_1 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.mac_arabic +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.mac_croatian +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.mac_cyrillic +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.mac_farsi +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.mac_greek +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.mac_iceland +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.mac_latin2 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.mac_roman +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.mac_romanian +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.mac_turkish +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.mbcs +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.oem +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.palmos +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.ptcp154 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.punycode +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.quopri_codec +SourceModule
+imports: + codecs + • encodings + • io + • quopri + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.raw_unicode_escape +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.rot_13 +SourceModule
+imports: + codecs + • encodings + • sys + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.shift_jis +SourceModule
+imports: + _codecs_jp + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.shift_jis_2004 +SourceModule
+imports: + _codecs_jp + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.shift_jisx0213 +SourceModule
+imports: + _codecs_jp + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.tis_620 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.undefined +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.unicode_escape +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.utf_16 +SourceModule
+imports: + codecs + • encodings + • sys + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.utf_16_be +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.utf_16_le +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.utf_32 +SourceModule
+imports: + codecs + • encodings + • sys + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.utf_32_be +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.utf_32_le +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.utf_7 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.utf_8 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.utf_8_sig +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.uu_codec +SourceModule
+imports: + binascii + • codecs + • encodings + • io + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + encodings.zlib_codec +SourceModule
+imports: + codecs + • encodings + • zlib + +
+
+imported by: + encodings + • main.py + +
+ +
+ +
+ + enum +SourceModule
+imports: + builtins + • functools + • operator + • sys + • types + • warnings + +
+
+imported by: + ast + • calendar + • inspect + • main.py + • py_compile + • re + • signal + • socket + +
+ +
+ +
+ + errno (builtin module)
+imported by: + gettext + • gzip + • pathlib + • shutil + • socket + • subprocess + • tempfile + +
+ +
+ +
+ + fcntl /opt/anaconda3/lib/python3.12/lib-dynload/fcntl.cpython-312-darwin.so
+imported by: + subprocess + +
+ +
+ +
+ + fnmatch +SourceModule
+imports: + functools + • os + • posixpath + • re + +
+
+imported by: + pathlib + • shutil + • tracemalloc + +
+ +
+ +
+ + fractions +SourceModule
+imports: + decimal + • functools + • math + • numbers + • operator + • re + • sys + +
+
+imported by: + statistics + +
+ +
+ +
+ + functools +SourceModule
+imports: + _functools + • _thread + • abc + • collections + • reprlib + • types + • typing + • weakref + +
+
+imported by: + contextlib + • copyreg + • dataclasses + • email._encoded_words + • email.charset + • enum + • fnmatch + • fractions + • importlib.metadata + • importlib.metadata._adapters + • importlib.metadata._functools + • importlib.resources._common + • importlib.resources._legacy + • inspect + • ipaddress + • linecache + • locale + • main.py + • operator + • pathlib + • pickle + • re + • statistics + • tempfile + • threading + • tokenize + • tracemalloc + • types + • typing + • urllib.parse + +
+ +
+ +
+ + gc (builtin module)
+imports: + time + +
+
+imported by: + _posixsubprocess + • weakref + +
+ +
+ +
+ + genericpath +SourceModule
+imports: + os + • stat + +
+
+imported by: + main.py + • ntpath + • posixpath + +
+ +
+ +
+ + getopt +SourceModule
+imports: + gettext + • os + • sys + +
+
+imported by: + base64 + • quopri + +
+ +
+ +
+ + gettext +SourceModule
+imports: + builtins + • copy + • errno + • locale + • operator + • os + • re + • struct + • sys + • warnings + +
+
+imported by: + argparse + • getopt + +
+ +
+ +
+ + grp /opt/anaconda3/lib/python3.12/lib-dynload/grp.cpython-312-darwin.so
+imported by: + pathlib + • shutil + • subprocess + • tarfile + +
+ +
+ +
+ + gzip +SourceModule
+imports: + _compression + • argparse + • builtins + • errno + • io + • os + • struct + • sys + • time + • warnings + • zlib + +
+
+imported by: + tarfile + +
+ +
+ +
+ + hashlib +SourceModule
+imports: + _blake2 + • _hashlib + • _md5 + • _sha1 + • _sha2 + • _sha3 + • logging + +
+
+imported by: + random + +
+ +
+ +
+ + heapq +SourceModule
+imports: + _heapq + +
+
+imported by: + collections + • main.py + +
+ +
+ +
+ + importlib +Package
+imports: + _frozen_importlib + • _frozen_importlib_external + • _imp + • importlib + • importlib._bootstrap + • importlib._bootstrap_external + • sys + • warnings + +
+
+imported by: + importlib + • importlib._abc + • importlib._bootstrap + • importlib._bootstrap_external + • importlib.abc + • importlib.machinery + • importlib.metadata + • importlib.readers + • importlib.resources + • importlib.resources._common + • importlib.util + • inspect + +
+ +
+ +
+ + importlib._abc +SourceModule
+imports: + abc + • importlib + • importlib._bootstrap + +
+
+imported by: + importlib.abc + • importlib.util + +
+ +
+ +
+ + importlib._bootstrap +SourceModule
+imports: + _frozen_importlib_external + • importlib + +
+
+imported by: + importlib + • importlib._abc + • importlib.machinery + • importlib.util + +
+ +
+ +
+ + importlib._bootstrap_external +SourceModule
+imports: + _imp + • _io + • _warnings + • importlib + • importlib.metadata + • importlib.readers + • marshal + • nt + • posix + • sys + • tokenize + • winreg + +
+
+imported by: + importlib + • importlib.abc + • importlib.machinery + • importlib.util + • py_compile + +
+ +
+ +
+ + importlib.abc +SourceModule
+imports: + _frozen_importlib + • _frozen_importlib_external + • abc + • importlib + • importlib._abc + • importlib._bootstrap_external + • importlib.machinery + • importlib.resources + • importlib.resources.abc + • warnings + +
+
+imported by: + importlib.metadata + +
+ +
+ +
+ + importlib.machinery +SourceModule
+imports: + importlib + • importlib._bootstrap + • importlib._bootstrap_external + +
+
+imported by: + importlib.abc + • inspect + • py_compile + +
+ +
+ +
+ + importlib.metadata +Package
+imports: + abc + • collections + • contextlib + • csv + • email + • functools + • importlib + • importlib.abc + • importlib.metadata + • importlib.metadata._adapters + • importlib.metadata._collections + • importlib.metadata._functools + • importlib.metadata._itertools + • importlib.metadata._meta + • inspect + • itertools + • operator + • os + • pathlib + • posixpath + • re + • sys + • textwrap + • typing + • warnings + • zipfile + +
+
+imported by: + importlib._bootstrap_external + • importlib.metadata + • importlib.metadata._adapters + • importlib.metadata._collections + • importlib.metadata._functools + • importlib.metadata._itertools + • importlib.metadata._meta + • importlib.metadata._text + +
+ +
+ +
+ + importlib.metadata._adapters +SourceModule
+imports: + email.message + • functools + • importlib.metadata + • importlib.metadata._text + • re + • textwrap + • warnings + +
+
+imported by: + importlib.metadata + +
+ +
+ +
+ + importlib.metadata._collections +SourceModule
+imports: + collections + • importlib.metadata + +
+
+imported by: + importlib.metadata + +
+ +
+ +
+ + importlib.metadata._functools +SourceModule
+imports: + functools + • importlib.metadata + • types + +
+
+imported by: + importlib.metadata + • importlib.metadata._text + +
+ +
+ +
+ + importlib.metadata._itertools +SourceModule
+imports: + importlib.metadata + • itertools + +
+
+imported by: + importlib.metadata + +
+ +
+ +
+ + importlib.metadata._meta +SourceModule
+imports: + importlib.metadata + • typing + +
+
+imported by: + importlib.metadata + +
+ +
+ +
+ + importlib.metadata._text +SourceModule
+imports: + importlib.metadata + • importlib.metadata._functools + • re + +
+
+imported by: + importlib.metadata._adapters + +
+ +
+ +
+ + importlib.readers +SourceModule
+imports: + importlib + • importlib.resources.readers + +
+
+imported by: + importlib._bootstrap_external + +
+ +
+ +
+ + importlib.resources +Package
+imports: + importlib + • importlib.resources + • importlib.resources._common + • importlib.resources._legacy + • importlib.resources.abc + +
+
+imported by: + importlib.abc + • importlib.resources + • importlib.resources._adapters + • importlib.resources._common + • importlib.resources._itertools + • importlib.resources._legacy + • importlib.resources.abc + • importlib.resources.readers + +
+ +
+ +
+ + importlib.resources._adapters +SourceModule
+imports: + contextlib + • importlib.resources + • importlib.resources.abc + • io + +
+
+imported by: + importlib.resources._common + +
+ +
+ +
+ + importlib.resources._common +SourceModule
+imports: + contextlib + • functools + • importlib + • importlib.resources + • importlib.resources._adapters + • importlib.resources.abc + • inspect + • itertools + • os + • pathlib + • tempfile + • types + • typing + • warnings + +
+
+imported by: + importlib.resources + • importlib.resources._legacy + +
+ +
+ +
+ + importlib.resources._itertools +SourceModule
+imports: + importlib.resources + +
+
+imported by: + importlib.resources.readers + +
+ +
+ +
+ + importlib.resources._legacy +SourceModule
+imports: + functools + • importlib.resources + • importlib.resources._common + • os + • pathlib + • types + • typing + • warnings + +
+
+imported by: + importlib.resources + +
+ +
+ +
+ + importlib.resources.abc +SourceModule
+imports: + abc + • importlib.resources + • io + • itertools + • os + • pathlib + • typing + +
+
+imported by: + importlib.abc + • importlib.resources + • importlib.resources._adapters + • importlib.resources._common + • importlib.resources.readers + +
+ +
+ +
+ + importlib.resources.readers +SourceModule
+imports: + collections + • importlib.resources + • importlib.resources._itertools + • importlib.resources.abc + • itertools + • operator + • pathlib + • zipfile + +
+
+imported by: + importlib.readers + +
+ +
+ +
+ + importlib.util +SourceModule
+imports: + _imp + • importlib + • importlib._abc + • importlib._bootstrap + • importlib._bootstrap_external + • sys + • threading + • types + +
+
+imported by: + py_compile + • zipfile + +
+ +
+ +
+ + inspect +SourceModule
+imports: + abc + • argparse + • ast + • builtins + • collections + • collections.abc + • dis + • enum + • functools + • importlib + • importlib.machinery + • itertools + • keyword + • linecache + • operator + • os + • re + • sys + • token + • tokenize + • types + • weakref + +
+
+imported by: + ast + • dataclasses + • importlib.metadata + • importlib.resources._common + • pyi_rth_inspect.py + • typing + +
+ +
+ +
+ + io +SourceModule
+imports: + _io + • abc + +
+
+imported by: + _compression + • bz2 + • csv + • dis + • email.feedparser + • email.generator + • email.iterators + • email.message + • email.parser + • encodings.quopri_codec + • encodings.uu_codec + • gzip + • importlib.resources._adapters + • importlib.resources.abc + • logging + • lzma + • main.py + • os + • pathlib + • pickle + • pprint + • quopri + • socket + • subprocess + • tarfile + • tempfile + • tokenize + • zipfile + • zipfile._path + +
+ +
+ +
+ + ipaddress +SourceModule
+imports: + functools + • re + +
+
+imported by: + urllib.parse + +
+ +
+ +
+ + itertools (builtin module)
+imported by: + _pydecimal + • calendar + • collections + • dataclasses + • importlib.metadata + • importlib.metadata._itertools + • importlib.resources._common + • importlib.resources.abc + • importlib.resources.readers + • inspect + • pickle + • random + • reprlib + • statistics + • threading + • tokenize + • traceback + • weakref + • zipfile._path + +
+ +
+ +
+ + keyword +SourceModule
+imported by: + collections + • dataclasses + • inspect + • main.py + +
+ +
+ +
+ + linecache +SourceModule
+imports: + functools + • os + • sys + • tokenize + +
+
+imported by: + inspect + • main.py + • traceback + • tracemalloc + • warnings + +
+ +
+ +
+ + locale +SourceModule
+imports: + _collections_abc + • _locale + • builtins + • encodings + • encodings.aliases + • functools + • os + • re + • sys + • warnings + +
+
+imported by: + _pydecimal + • _strptime + • calendar + • gettext + • main.py + • subprocess + +
+ +
+ +
+ + logging +Package
+imports: + atexit + • collections.abc + • io + • os + • pickle + • re + • string + • sys + • threading + • time + • traceback + • types + • warnings + • weakref + +
+
+imported by: + hashlib + +
+ +
+ +
+ + lzma +SourceModule
+imports: + _compression + • _lzma + • builtins + • io + • os + +
+
+imported by: + shutil + • tarfile + • zipfile + +
+ +
+ +
+ + marshal (builtin module)
+imported by: + importlib._bootstrap_external + +
+ +
+ +
+ + math /opt/anaconda3/lib/python3.12/lib-dynload/math.cpython-312-darwin.so
+imported by: + _pydatetime + • _pydecimal + • fractions + • random + • selectors + • statistics + • urllib.parse + +
+ +
+ +
+ + msvcrt +MissingModule
+imported by: + subprocess + +
+ +
+ +
+ + nt +MissingModule
+imported by: + importlib._bootstrap_external + • ntpath + • os + • shutil + +
+ +
+ +
+ + ntpath +SourceModule
+imports: + _winapi + • genericpath + • nt + • os + • stat + • string + • sys + +
+
+imported by: + main.py + • os + • pathlib + +
+ +
+ +
+ + numbers +SourceModule
+imports: + abc + +
+
+imported by: + _pydecimal + • fractions + • statistics + +
+ +
+ +
+ + opcode +SourceModule
+imports: + _opcode + +
+
+imported by: + dis + +
+ +
+ +
+ + operator +SourceModule
+imports: + _operator + • builtins + • functools + +
+
+imported by: + _pydatetime + • collections + • copyreg + • email._header_value_parser + • enum + • fractions + • gettext + • importlib.metadata + • importlib.resources.readers + • inspect + • main.py + • random + • statistics + • typing + +
+ +
+ +
+ + os +SourceModule
+imports: + _collections_abc + • abc + • io + • nt + • ntpath + • os.path + • posix + • posixpath + • stat + • subprocess + • sys + • warnings + +
+
+imported by: + argparse + • bz2 + • contextlib + • email.utils + • fnmatch + • genericpath + • getopt + • gettext + • gzip + • importlib.metadata + • importlib.resources._common + • importlib.resources._legacy + • importlib.resources.abc + • inspect + • linecache + • locale + • logging + • lzma + • main.py + • ntpath + • os.path + • pathlib + • posixpath + • py_compile + • pyi_rth_inspect.py + • random + • shutil + • socket + • subprocess + • tarfile + • tempfile + • threading + • zipfile + +
+ +
+ +
+ + os.path +AliasNode
+imports: + os + • posixpath + +
+
+imported by: + os + • py_compile + • tracemalloc + +
+ +
+ +
+ + pathlib +SourceModule
+imports: + _collections_abc + • errno + • fnmatch + • functools + • grp + • io + • ntpath + • os + • posixpath + • pwd + • re + • stat + • sys + • urllib.parse + • warnings + +
+
+imported by: + importlib.metadata + • importlib.resources._common + • importlib.resources._legacy + • importlib.resources.abc + • importlib.resources.readers + • zipfile._path + +
+ +
+ +
+ + pickle +SourceModule
+imports: + _compat_pickle + • _pickle + • codecs + • copyreg + • functools + • io + • itertools + • pprint + • re + • struct + • sys + • types + +
+
+imported by: + logging + • tracemalloc + +
+ +
+ +
+ + posix (builtin module)
+imports: + resource + +
+
+imported by: + importlib._bootstrap_external + • os + • posixpath + • shutil + +
+ +
+ +
+ + posixpath +SourceModule
+imports: + genericpath + • os + • posix + • pwd + • re + • stat + • sys + +
+
+imported by: + fnmatch + • importlib.metadata + • main.py + • os + • os.path + • pathlib + • zipfile._path + +
+ +
+ +
+ + pprint +SourceModule
+imports: + collections + • dataclasses + • io + • re + • sys + • types + +
+
+imported by: + pickle + +
+ +
+ +
+ + pwd (builtin module)
+imported by: + pathlib + • posixpath + • shutil + • subprocess + • tarfile + +
+ +
+ +
+ + py_compile +SourceModule
+imports: + argparse + • enum + • importlib._bootstrap_external + • importlib.machinery + • importlib.util + • os + • os.path + • sys + • traceback + +
+
+imported by: + zipfile + +
+ +
+ +
+ + pygame +MissingModule
+imported by: + main.py + +
+ +
+ +
+ + quopri +SourceModule
+imports: + binascii + • getopt + • io + • sys + +
+
+imported by: + email.encoders + • email.message + • encodings.quopri_codec + +
+ +
+ +
+ + random +SourceModule
+imports: + _collections_abc + • _random + • _sha2 + • bisect + • hashlib + • itertools + • math + • operator + • os + • statistics + • time + • warnings + +
+
+imported by: + email.generator + • email.utils + • statistics + • tempfile + +
+ +
+ +
+ + re +Package
+imports: + _sre + • copyreg + • enum + • functools + • re + • re._compiler + • re._constants + • re._parser + • warnings + +
+
+imported by: + _pydecimal + • _sre + • _strptime + • argparse + • ast + • base64 + • csv + • dataclasses + • email._encoded_words + • email._header_value_parser + • email.feedparser + • email.generator + • email.header + • email.message + • email.policy + • email.quoprimime + • email.utils + • encodings.idna + • fnmatch + • fractions + • gettext + • importlib.metadata + • importlib.metadata._adapters + • importlib.metadata._text + • inspect + • ipaddress + • locale + • logging + • main.py + • pathlib + • pickle + • posixpath + • pprint + • re + • re._casefix + • re._compiler + • re._constants + • re._parser + • sre_compile + • sre_constants + • sre_parse + • string + • tarfile + • textwrap + • tokenize + • typing + • urllib.parse + • warnings + • zipfile._path + • zipfile._path.glob + +
+ +
+ +
+ + re._casefix +SourceModule
+imports: + re + +
+
+imported by: + main.py + • re._compiler + +
+ +
+ +
+ + re._compiler +SourceModule
+imports: + _sre + • re + • re._casefix + • re._constants + • re._parser + • sys + +
+
+imported by: + main.py + • re + • sre_compile + +
+ +
+ +
+ + re._constants +SourceModule
+imports: + _sre + • re + +
+
+imported by: + main.py + • re + • re._compiler + • re._parser + • sre_constants + +
+ +
+ +
+ + re._parser +SourceModule
+imports: + re + • re._constants + • unicodedata + • warnings + +
+
+imported by: + main.py + • re + • re._compiler + • sre_parse + +
+ +
+ +
+ + reprlib +SourceModule
+imports: + _thread + • builtins + • itertools + +
+
+imported by: + collections + • functools + • main.py + +
+ +
+ +
+ + resource /opt/anaconda3/lib/python3.12/lib-dynload/resource.cpython-312-darwin.so
+imported by: + posix + +
+ +
+ +
+ + select /opt/anaconda3/lib/python3.12/lib-dynload/select.cpython-312-darwin.so
+imported by: + selectors + • subprocess + +
+ +
+ +
+ + selectors +SourceModule
+imports: + abc + • collections + • collections.abc + • math + • select + • sys + +
+
+imported by: + socket + • subprocess + +
+ +
+ +
+ + shutil +SourceModule
+imports: + _winapi + • bz2 + • collections + • errno + • fnmatch + • grp + • lzma + • nt + • os + • posix + • pwd + • stat + • sys + • tarfile + • warnings + • zipfile + • zlib + +
+
+imported by: + argparse + • tarfile + • tempfile + • zipfile + +
+ +
+ +
+ + signal +SourceModule
+imports: + _signal + • enum + +
+
+imported by: + subprocess + +
+ +
+ +
+ + socket +SourceModule
+imports: + _socket + • array + • enum + • errno + • io + • os + • selectors + • sys + +
+
+imported by: + email.utils + +
+ +
+ +
+ + sre_compile +SourceModule
+imports: + re + • re._compiler + • warnings + +
+
+imported by: + main.py + +
+ +
+ +
+ + sre_constants +SourceModule
+imports: + re + • re._constants + • warnings + +
+
+imported by: + main.py + +
+ +
+ +
+ + sre_parse +SourceModule
+imports: + re + • re._parser + • warnings + +
+
+imported by: + main.py + +
+ +
+ +
+ + stat +SourceModule
+imports: + _stat + +
+
+imported by: + genericpath + • main.py + • ntpath + • os + • pathlib + • posixpath + • shutil + • tarfile + • zipfile + +
+ +
+ +
+ + statistics +SourceModule
+imports: + _statistics + • bisect + • collections + • decimal + • fractions + • functools + • itertools + • math + • numbers + • operator + • random + • sys + +
+
+imported by: + random + +
+ +
+ +
+ + string +SourceModule
+imports: + _string + • collections + • re + +
+
+imported by: + email._encoded_words + • email._header_value_parser + • email.quoprimime + • logging + • ntpath + +
+ +
+ +
+ + stringprep +SourceModule
+imports: + unicodedata + +
+
+imported by: + encodings.idna + +
+ +
+ +
+ + struct +SourceModule
+imports: + _struct + +
+
+imported by: + base64 + • gettext + • gzip + • pickle + • tarfile + • zipfile + +
+ +
+ +
+ + subprocess +SourceModule
+imports: + _posixsubprocess + • _winapi + • builtins + • contextlib + • errno + • fcntl + • grp + • io + • locale + • msvcrt + • os + • pwd + • select + • selectors + • signal + • sys + • threading + • time + • types + • warnings + +
+
+imported by: + os + +
+ +
+ +
+ + sys (builtin module)
+imported by: + _collections_abc + • _compression + • _pydatetime + • _pydecimal + • argparse + • ast + • base64 + • calendar + • codecs + • collections + • contextlib + • dataclasses + • dis + • email._header_value_parser + • email.generator + • email.iterators + • email.policy + • encodings + • encodings.rot_13 + • encodings.utf_16 + • encodings.utf_32 + • enum + • fractions + • getopt + • gettext + • gzip + • importlib + • importlib._bootstrap_external + • importlib.metadata + • importlib.util + • inspect + • linecache + • locale + • logging + • ntpath + • os + • pathlib + • pickle + • posixpath + • pprint + • py_compile + • pyi_rth_inspect.py + • quopri + • re._compiler + • selectors + • shutil + • socket + • statistics + • subprocess + • tarfile + • tempfile + • threading + • tokenize + • traceback + • types + • typing + • warnings + • weakref + • zipfile + +
+ +
+ +
+ + tarfile +SourceModule
+imports: + argparse + • builtins + • bz2 + • copy + • grp + • gzip + • io + • lzma + • os + • pwd + • re + • shutil + • stat + • struct + • sys + • time + • warnings + • zlib + +
+
+imported by: + shutil + +
+ +
+ +
+ + tempfile +SourceModule
+imports: + _thread + • errno + • functools + • io + • os + • random + • shutil + • sys + • types + • warnings + • weakref + +
+
+imported by: + importlib.resources._common + +
+ +
+ +
+ + textwrap +SourceModule
+imports: + re + +
+
+imported by: + argparse + • importlib.metadata + • importlib.metadata._adapters + • traceback + +
+ +
+ +
+ + threading +SourceModule
+imports: + _collections + • _thread + • _threading_local + • _weakrefset + • collections + • functools + • itertools + • os + • sys + • time + • traceback + • warnings + +
+
+imported by: + _threading_local + • importlib.util + • logging + • subprocess + • zipfile + +
+ +
+ +
+ + time (builtin module)
+imports: + _strptime + +
+
+imported by: + _datetime + • _pydatetime + • _strptime + • datetime + • email._parseaddr + • email.generator + • email.utils + • gc + • gzip + • logging + • random + • subprocess + • tarfile + • threading + • zipfile + +
+ +
+ +
+ + token +SourceModule
+imported by: + inspect + • tokenize + +
+ +
+ +
+ + tokenize +SourceModule
+imports: + _tokenize + • argparse + • builtins + • codecs + • collections + • functools + • io + • itertools + • re + • sys + • token + +
+
+imported by: + importlib._bootstrap_external + • inspect + • linecache + +
+ +
+ +
+ + traceback +SourceModule
+imports: + ast + • collections.abc + • contextlib + • itertools + • linecache + • sys + • textwrap + • unicodedata + +
+
+imported by: + logging + • main.py + • py_compile + • threading + • warnings + +
+ +
+ +
+ + tracemalloc +SourceModule
+imports: + _tracemalloc + • collections.abc + • fnmatch + • functools + • linecache + • os.path + • pickle + +
+
+imported by: + warnings + +
+ +
+ +
+ + types +SourceModule
+imports: + _collections_abc + • functools + • sys + +
+
+imported by: + _weakrefset + • contextlib + • copy + • csv + • dataclasses + • dis + • email.headerregistry + • enum + • functools + • importlib.metadata._functools + • importlib.resources._common + • importlib.resources._legacy + • importlib.util + • inspect + • logging + • main.py + • pickle + • pprint + • subprocess + • tempfile + • typing + • urllib.parse + +
+ +
+ +
+ + typing +SourceModule
+imports: + _typing + • abc + • collections + • collections.abc + • contextlib + • copyreg + • functools + • inspect + • operator + • re + • sys + • types + • warnings + +
+
+imported by: + functools + • importlib.metadata + • importlib.metadata._meta + • importlib.resources._common + • importlib.resources._legacy + • importlib.resources.abc + +
+ +
+ +
+ + unicodedata /opt/anaconda3/lib/python3.12/lib-dynload/unicodedata.cpython-312-darwin.so
+imported by: + encodings.idna + • re._parser + • stringprep + • traceback + • urllib.parse + +
+ +
+ +
+ + urllib +Package
+imported by: + email._header_value_parser + • urllib.parse + +
+ +
+ +
+ + urllib.parse +SourceModule
+imports: + collections + • functools + • ipaddress + • math + • re + • types + • unicodedata + • urllib + • warnings + +
+
+imported by: + email.utils + • pathlib + +
+ +
+ +
+ + warnings +SourceModule
+imports: + _warnings + • builtins + • linecache + • re + • sys + • traceback + • tracemalloc + +
+
+imported by: + _collections_abc + • _pydatetime + • argparse + • ast + • calendar + • email.utils + • enum + • gettext + • gzip + • importlib + • importlib.abc + • importlib.metadata + • importlib.metadata._adapters + • importlib.resources._common + • importlib.resources._legacy + • locale + • logging + • main.py + • os + • pathlib + • random + • re + • re._parser + • shutil + • sre_compile + • sre_constants + • sre_parse + • subprocess + • tarfile + • tempfile + • threading + • typing + • urllib.parse + • zipfile + +
+ +
+ +
+ + weakref +SourceModule
+imports: + _collections_abc + • _weakref + • _weakrefset + • atexit + • copy + • gc + • itertools + • sys + +
+
+imported by: + _threading_local + • copy + • functools + • inspect + • logging + • main.py + • tempfile + +
+ +
+ +
+ + winreg +MissingModule
+imported by: + importlib._bootstrap_external + +
+ +
+ +
+ + zipfile +Package
+imports: + argparse + • binascii + • bz2 + • importlib.util + • io + • lzma + • os + • py_compile + • shutil + • stat + • struct + • sys + • threading + • time + • warnings + • zipfile._path + • zlib + +
+
+imported by: + importlib.metadata + • importlib.resources.readers + • shutil + • zipfile._path + +
+ +
+ +
+ + zipfile._path +Package
+imports: + contextlib + • io + • itertools + • pathlib + • posixpath + • re + • zipfile + • zipfile._path.glob + +
+
+imported by: + zipfile + • zipfile._path.glob + +
+ +
+ +
+ + zipfile._path.glob +SourceModule
+imports: + re + • zipfile._path + +
+
+imported by: + zipfile._path + +
+ +
+ +
+ + zlib /opt/anaconda3/lib/python3.12/lib-dynload/zlib.cpython-312-darwin.so
+imported by: + encodings.zlib_codec + • gzip + • shutil + • tarfile + • zipfile + +
+ +
+ + + diff --git a/constants.py b/constants.py index 0242c80..7f8a24b 100644 --- a/constants.py +++ b/constants.py @@ -7,6 +7,7 @@ BLACK = (0, 0, 0) WHITE = (255, 255, 255) +CHERRY = (183,33,70) RED = (255, 0, 0) GREY = (128,128,128) GREEN = (0,128,0) diff --git a/dist/main b/dist/main new file mode 100755 index 0000000..b40be54 Binary files /dev/null and b/dist/main differ diff --git a/game.py b/game.py index af2a738..9e4c643 100644 --- a/game.py +++ b/game.py @@ -3,10 +3,11 @@ The game file holds the game logic and game class. """ import pygame -from constants import RED, WHITE, YELLOW, SQUARE_SIZE +import redditwarp.SYNC +from constants import RED, WHITE, YELLOW, SQUARE_SIZE, CHERRY from Main_Board import Main_Board -class Game: +class Game: """ The Game class is responsible for managing the game logic, and contains functions to initialize the game, check the turn timeout, display the turn, display the piece count, display the player names, update the board, check for a winner, select a piece, move a piece, show available moves, change the turn, @@ -23,7 +24,7 @@ def __init__(self, win, color, player1, player2): self.color = color self.selected = None self.board = Main_Board(self.color) - self.turn = RED + self.turn = CHERRY self.valid_moves = {} self.font = pygame.font.Font(None, 36) # Font for rendering text self.text_color = WHITE # Text color @@ -31,13 +32,81 @@ def __init__(self, win, color, player1, player2): self.screen = pygame.display.set_mode((1000, 700)) self.player1 = player1 self.player2 = player2 - + self.post = None # Initialize as None, or remove if not necessary + self.post_time = 0 # Time when the Reddit post was fetched + self.post_duration = 10 * 1000 # 10 seconds in milliseconds + + def fetch_reddit_post(self): + ''' + Fetches the reddit post from the r/Temple subreddit + ''' + client = redditwarp.SYNC.Reddit() # Initialize the Reddit client + m = next(client.p.subreddit.pull.top('Temple', amount=1, time='hour')) + self.post = m.title # Store the post title + self.post_time = pygame.time.get_ticks() # Store the current time + + def draw_reddit_button(self): + """ + Draws a button on the game screen to fetch the top reddit post. + """ + button_rect = pygame.Rect(730, 250, 200, 50) # Button dimensions + pygame.draw.rect(self.screen, (255, 128, 0), button_rect) # Button color + text_surface = self.font.render("Get Post", True, self.text_color) + self.screen.blit(text_surface, (775, 265)) # Positioning the text in the button + return button_rect + + def display_text_box(self): + """ + Displays a white box and the provided tweet text inside the box if available and within the display time. + """ + box_rect = pygame.Rect(690, 400, 300, 300) # Box dimensions + pygame.draw.rect(self.screen, (255, 255, 255), box_rect) # Draw white box + + # Check if the post should be displayed + current_time = pygame.time.get_ticks() + if self.post and current_time - self.post_time < self.post_duration: + font = pygame.font.Font(None, 24) # Smaller font for tweets + lines = self.wrap_text(self.post, font, box_rect.width) + + # Display each line in the white box + y_offset = 410 # Starting Y position + for line in lines: + post_surface = font.render(line, True, (0, 0, 0)) # Black text + self.screen.blit(post_surface, (700, y_offset)) + y_offset += 30 # Line spacing + else: + self.post = "" # Clear the tweet if time is up + + def wrap_text(self, text, font, max_width): + """ + A helper function to wrap text to fit inside the box width. + """ + words = text.split(' ') + lines = [] + current_line = "" + + for word in words: + # Test if adding the next word will exceed the width + test_line = current_line + word + " " + if font.size(test_line)[0] <= max_width: + current_line = test_line + else: + # If the test line exceeds max width, add current line to lines and start a new one + lines.append(current_line) + current_line = word + " " + + # Add any remaining words as the last line + if current_line: + lines.append(current_line) + + return lines + def check_turn_timeout(self): """ The check turn timeout function checks the turn timeout and displays the move timer on the screen. If the time is running out, the text color is set to red. """ elapsed_time = pygame.time.get_ticks() - self.turn_start_time - elapsed_seconds = elapsed_time // 1000 + elapsed_seconds = elapsed_time // 1000 text = f"Move Timer: {elapsed_seconds} s" text_surface = self.font.render(text, True, self.text_color) if elapsed_time > 3000: @@ -53,14 +122,14 @@ def display_turn(self): """ The display turn function displays the current turn on the screen. """ - if self.turn == RED: + if self.turn == CHERRY: text = f"Current Turn: RED" else: text = f"Current Turn: WHITE" text_surface = self.font.render(text, True, self.text_color) self.screen.blit(text_surface, (715, 100)) - def display_piece_count(self): + def display_piece_count(self): """ The display piece count function displays the piece count on the screen. """ @@ -71,7 +140,19 @@ def display_piece_count(self): self.screen.blit(text_surface, (715, 150)) self.screen.blit(text_surface2, (715, 200)) - def display_player_names(self, player1, player2): + def display_button(self): + """ + The display player names function displays the player names on the screen. + """ + font = pygame.font.Font(None, 32) + text_color = (255,255,255) + button_rect = pygame.Rect(730, 250, 200, 50) # Button dimensions + pygame.draw.rect(self.screen, (0, 128, 255), button_rect) # Button color + text_surface = font.render("Get Tweet", True, text_color) + self.screen.blit(text_surface, (770, 265)) # Positioning the text in the button + return button_rect + + def display_player_names(self, player1, player2): """ The display player names function displays the player names on the screen. """ @@ -79,10 +160,19 @@ def display_player_names(self, player1, player2): text2 = f"Player 2: {player2}" text_surface = self.font.render(text, True, self.text_color) text_surface2 = self.font.render(text2, True, self.text_color) - self.screen.blit(text_surface, (715, 350)) - self.screen.blit(text_surface2, (715, 400)) + self.screen.blit(text_surface, (715, 320)) + self.screen.blit(text_surface2, (715, 370)) + + def display_quit(self): + font = pygame.font.Font(None, 32) + text_color = (255,255,255) + button_rect = pygame.Rect(715, 0, 250, 50) # Button dimensions + pygame.draw.rect(self.screen, (0, 128, 255), button_rect) # Button color + text_surface = font.render("Press to Quit", True, text_color) + self.screen.blit(text_surface, (770, 15)) # Positioning the text in the button + return button_rect - def update(self): + def update(self): """ The update function updates the board to show the current board and features. """ @@ -92,15 +182,19 @@ def update(self): self.display_turn() self.display_piece_count() self.display_player_names(self.player1, self.player2) + self.display_button() + self.draw_reddit_button() + self.display_text_box() + self.display_quit() pygame.display.update() - - def winner(self): + + def winner(self): """ The winner function checks if a winner has been found by calling the board winner function and returns the winner if one has been found. """ return self.board.winner() - def select(self, row, col): + def select(self, row, col): """ The select function selects a piece and shows the available moves for the piece. """ @@ -109,7 +203,7 @@ def select(self, row, col): if not result: self.selected = None self.select(row, col) - + try: piece = self.board.get_piece(row, col) if piece != 0 and piece.color == self.turn: @@ -118,7 +212,7 @@ def select(self, row, col): return True except: return None - + return False def move(self, row, col): @@ -137,7 +231,7 @@ def move(self, row, col): return False - def show_available_moves(self, moves): + def show_available_moves(self, moves): """ The show available moves function shows the available moves for the selected piece. """ @@ -145,24 +239,24 @@ def show_available_moves(self, moves): row, col = move pygame.draw.circle(self.win, YELLOW, (col * SQUARE_SIZE + SQUARE_SIZE//2, row * SQUARE_SIZE + SQUARE_SIZE//2), 15) - def change_turn(self): + def change_turn(self): """ The change turn function changes the turn to the other player/color and resets the turn timer. """ self.valid_moves = {} self.turn_start_time = pygame.time.get_ticks() # Reset the turn timer - if self.turn == RED: + if self.turn == CHERRY: self.turn = WHITE else: - self.turn = RED + self.turn = CHERRY - def get_board(self): + def get_board(self): """ The get board function returns the current board. """ return self.board - def ai_move(self, board): + def ai_move(self, board): """ The ai move function moves the AI piece in a player vs computer game. """ diff --git a/main.py b/main.py index d7bbf32..ece750f 100644 --- a/main.py +++ b/main.py @@ -44,23 +44,25 @@ def music_loop(): message = "Checkers with a twist! For all ages and skill levels!" credits1 = "Developed by Wander Cerda-Torres, Barry Lin," credits2 = "Nathan McCourt, Jonathan Stanczak, and Geonhee Yu" -background_image = pygame.image.load("checkers.jpg") -background_image = pygame.transform.scale(background_image, (Width, Height)) -title_font = pygame.font.Font(None, 64) -message_font = pygame.font.Font(None, 32) -credits_font = pygame.font.Font(None, 25) +#background_image = pygame.image.load("checkers.jpg") +#background_image = pygame.transform.scale(background_image, (Width, Height)) +background_color = (184, 80, 66) +pygame.font.init() +title_font = pygame.font.Font("budmo.otf", 132) +message_font = pygame.font.Font("GethoBold.ttf", 32) +credits_font = pygame.font.Font("GethoBold.ttf", 25) # Title text -title_text = title_font.render(game_title, True, (255, 255, 255)) -title_rect = title_text.get_rect(center=(Width // 2, 22)) +title_text = title_font.render(game_title, True, (231, 232, 209)) +title_rect = title_text.get_rect(center=(Width // 2, 75)) # Under title text -message_text = message_font.render(message, True, (255, 255, 255)) -message_rect = message_text.get_rect(center=(Width // 2, 55)) +message_text = message_font.render(message, True, (231, 232, 209)) +message_rect = message_text.get_rect(center=(Width // 2, 175)) # Credits text -credits_text1 = credits_font.render(credits1, True, (255, 255, 255)) -credits_rect1 = credits_text1.get_rect(center=(Width // 2, 650)) -credits_text2 = credits_font.render(credits2, True, (255, 255, 255)) -credits_rect2 = credits_text2.get_rect(center=(Width // 2, 670)) +credits_text1 = credits_font.render(credits1, True, (231, 232, 209)) +credits_rect1 = credits_text1.get_rect(center=(Width // 2, 625)) +credits_text2 = credits_font.render(credits2, True, (231, 232, 209)) +credits_rect2 = credits_text2.get_rect(center=(Width // 2, 675)) second_menu_instance = SecondMenu(tracks) def main(): @@ -75,6 +77,10 @@ def main(): for event in pygame.event.get(): if event.type == pygame.QUIT: running = False + #if playing hits q, then game ends + if event.type == pygame.KEYDOWN: + if event.key == pygame.K_q: + running = False elif event.type == pygame.MOUSEBUTTONDOWN: buttons = menu_buttons() if buttons[0].collidepoint(event.pos): # If Start Game button is clicked, show the second menu @@ -90,7 +96,8 @@ def main(): music_loop() #image of the background - screen.blit(background_image, (0, 0)) + #screen.blit(background_image, (0, 0)) + screen.fill(background_color) # display title information and credits screen.blit(title_text, title_rect) screen.blit(message_text, message_rect) @@ -118,13 +125,13 @@ def menu_buttons(): startgame_icon_resized = pygame.transform.scale(startgame_icon, icon_size) startgame_icon_rect = startgame_icon_resized.get_rect(topleft=(Width // 2 - 150 + 10, Height // 3 + (button_height - icon_size[1] - 50) // 2)) - color = (128, 128, 128) # grey + color = (167, 190, 174) # teal cursor_color = (100, 100, 100) # darker grey position = (Width // 2-150, Height // 3-25) size = (300, 50) # width, height button_font = pygame.font.Font(None, 32) - button_text = button_font.render("Start Game", True, (255, 255, 255)) # Button text and color + button_text = button_font.render("Start Game", True, (231, 232, 209)) # Button text and color button_text_rect = button_text.get_rect(center=(Width // 2, Height // 3)) # Create button on screen using position and size parameters @@ -149,7 +156,7 @@ def menu_buttons(): position = (Width // 2 - 150, Height // 3 + button_height + spacing) size = (300, button_height) # width, height - button_text = button_font.render("Settings", True, (255, 255, 255)) # Button text and color + button_text = button_font.render("Settings", True, (231, 232, 209)) # Button text and color button_text_rect = button_text.get_rect(center=(Width // 2, Height // 3 + button_height + spacing + button_height // 2)) # Draw the icon next to the text with the specified size @@ -175,13 +182,13 @@ def menu_buttons(): # Tutorial button tutorial_icon = pygame.image.load('pics/tutorial_icon.png') - color = (128, 128, 128) # grey + color = (167, 190, 174) # teal cursor_color = (100, 100, 100) # darker grey position = (Width // 2-150, Height // 3 + 135) size = (300, 50) # width, height button_font = pygame.font.Font(None, 32) - button_text = button_font.render("Tutorial", True, (255, 255, 255)) # Button text and color + button_text = button_font.render("Tutorial", True, (231, 232, 209)) # Button text and color button_text_rect = button_text.get_rect(center=(Width // 2, Height // 3+160)) pygame.draw.rect(screen, color, pygame.Rect(position, size)) screen.blit(button_text, button_text_rect) @@ -207,21 +214,21 @@ def menu_buttons(): # Leaderboard button leaderboard_icon = pygame.image.load('pics/leaderboard_icon.png') - color = (128, 128, 128) # grey + color = (167, 190, 174) # teal cursor_color = (100, 100, 100) # darker grey - position = (Width // 2 - 150, Height // 3 + 210) # Adjust the vertical position as needed + position = (Width // 2 - 150, Height // 3 + 285) # Adjust the vertical position as needed size = (300, 50) # width, height button_font = pygame.font.Font(None, 32) - button_text = button_font.render("View Rankings", True, (255, 255, 255)) # Button text and color - button_text_rect = button_text.get_rect(center=(Width // 2, Height // 3 + 235)) # Adjust the vertical position as needed + button_text = button_font.render("View Rankings", True, (231, 232, 209)) # Button text and color + button_text_rect = button_text.get_rect(center=(Width // 2, Height // 3 + 310)) # Adjust the vertical position as needed pygame.draw.rect(screen, color, pygame.Rect(position, size)) screen.blit(button_text, button_text_rect) # Draw the icon next to the text with the specified size leaderboard_icon_resized = pygame.transform.scale(leaderboard_icon, icon_size) leaderboard_icon_rect = leaderboard_icon_resized.get_rect( - topleft=(Width // 2 - 150 + 10, Height // 3 + 210 + (button_height - icon_size[1]) // 2)) + topleft=(Width // 2 - 150 + 10, Height // 3 + 285 + (button_height - icon_size[1]) // 2)) pygame.draw.rect(screen, color, pygame.Rect(position, size)) screen.blit(button_text, button_text_rect) @@ -242,20 +249,20 @@ def menu_buttons(): # Customize Board button board_icon = pygame.image.load('pics/colorwheel_icon.png') - color = (128, 128, 128) # grey + color = (167, 190, 174) # teal cursor_color = (100, 100, 100) # darker grey - position = (Width // 2 - 150, Height // 3 + 285) # Adjust the vertical position as needed + position = (Width // 2 - 150, Height // 3 + 210) # Adjust the vertical position as needed size = (300, 50) # width, height button_font = pygame.font.Font(None, 32) - button_text = button_font.render("Customize Board", True, (255, 255, 255)) # Button text and color - button_text_rect = button_text.get_rect(center=(Width // 2, Height // 3 + 310)) # Adjust the vertical position as needed + button_text = button_font.render("Customize Board", True, (231, 232, 209)) # Button text and color + button_text_rect = button_text.get_rect(center=(Width // 2, Height // 3 + 235)) # Adjust the vertical position as needed pygame.draw.rect(screen, color, pygame.Rect(position, size)) screen.blit(button_text, button_text_rect) # Draw the icon next to the text with the specified size board_icon_resized = pygame.transform.scale(board_icon, icon_size) - board_icon_rect = board_icon_resized.get_rect(topleft=(Width // 2 - 150 + 10, Height // 3 + 285 + (button_height - icon_size[1]) // 2)) + board_icon_rect = board_icon_resized.get_rect(topleft=(Width // 2 - 150 + 10, Height // 3 + 210 + (button_height - icon_size[1]) // 2)) pygame.draw.rect(screen, color, pygame.Rect(position, size)) screen.blit(button_text, button_text_rect) @@ -282,7 +289,7 @@ def tutorial(): # load image used in tutorial checkers_icon = pygame.image.load('pics/checkersguy_icon.png') tutorial_screen = pygame.display.set_mode([Width, Height]) - tutorial_screen.fill((128, 128, 128)) + tutorial_screen.fill((184, 80, 66)) # First message tutorial_font = pygame.font.Font(None, 64) @@ -386,7 +393,8 @@ def settings(): button_height = 50 spacing = 10 settings_screen = pygame.display.set_mode([Width, Height]) - screen.blit(background_image, (0, 0)) + #screen.blit(background_image, (0, 0)) + screen.fill(background_color) settings_screen.blit(title_text, title_rect) settings_screen.blit(message_text, message_rect) settings_screen.blit(credits_text1, credits_rect1) @@ -446,7 +454,7 @@ def show_leaderboard(): exit button. """ leaderboard_screen = pygame.display.set_mode((1000, 700)) - screen.fill((128, 128, 128)) + screen.fill((background_color)) # Leaderboard header header_font = pygame.font.Font(None, 36) header_text = header_font.render("Leaderboard", True, (255, 255, 255)) @@ -501,10 +509,12 @@ def board_customization(): It allows the user to exit the board customization after clicking the exit button. """ board_customization_screen = pygame.display.set_mode([Width, Height]) - background_image = pygame.image.load("checkers.jpg") - background_image = pygame.transform.scale(background_image, (Width, Height)) + #background_image = pygame.image.load("checkers.jpg") + #background_image = pygame.transform.scale(background_image, (Width, Height)) + background_color = (184, 80, 66) # image of the background - board_customization_screen.blit(background_image, (0, 0)) + #board_customization_screen.blit(background_image, (0, 0)) + screen.fill(background_color) board_customization_screen.blit(title_text, title_rect) board_customization_screen.blit(message_text, message_rect) board_customization_screen.blit(credits_text1, credits_rect1) diff --git a/main.spec b/main.spec new file mode 100644 index 0000000..e583453 --- /dev/null +++ b/main.spec @@ -0,0 +1,44 @@ +# -*- mode: python ; coding: utf-8 -*- + + +a = Analysis( + ['main.py'], + pathex=[], + binaries=[], + datas=[], + hiddenimports=[], + hookspath=[], + hooksconfig={}, + runtime_hooks=[], + excludes=[], + noarchive=False, + optimize=0, +) +pyz = PYZ(a.pure) + +exe = EXE( + pyz, + a.scripts, + a.binaries, + a.datas, + [], + name='main', + debug=False, + bootloader_ignore_signals=False, + strip=False, + upx=True, + upx_exclude=[], + runtime_tmpdir=None, + console=False, + disable_windowed_traceback=False, + argv_emulation=False, + target_arch=None, + codesign_identity=None, + entitlements_file=None, +) +app = BUNDLE( + exe, + name='main.app', + icon=None, + bundle_identifier=None, +) diff --git a/user_data/user_data.json b/user_data/user_data.json index 225923e..1c0f5c1 100644 --- a/user_data/user_data.json +++ b/user_data/user_data.json @@ -1 +1 @@ -{"Nate": 100, "Checkers Master": 250, "Pey": 150} \ No newline at end of file +{"Nate": 100, "Checkers Master": 250, "Pey": 150, "Ernest": 50, "dadfa": 0, "ernest": 0, "da": 0, "daf": 0, "adf": 0, "ad": 0, "df": 0, "Lara": 0, "lara": 50, "Cyska": 0, "l": 0, "cyska": 0, "kara": 0, "la": 0, "ra": 0, "sharron": 0, "joey": 0, "f": 0} \ No newline at end of file