import random import streamlit as st import time def roll_dice(): """Simulates rolling a six-sided dice.""" return random.randint(1, 6) def update_player_position(player_pos, dice, board, message_placeholder): """Updates player position based on the dice roll and board.""" original_pos = player_pos player_pos += dice message = "" if player_pos in board: player_pos = board[player_pos] if player_pos > original_pos: message = "Yay! You climbed a ladder." elif player_pos < original_pos: message = "Oops! You encountered a snake." message_placeholder.write(message) return player_pos def draw_board(player_position, board): """Draws the game board using Streamlit.""" board_size = 10 board_squares = [] for i in range(100): row = (99 - i) // board_size # Reversed row calculation col = i % board_size # Adjust numbering for snake-ladder layout, start from bottom left square_number = (row * board_size) + col + 1 if row % 2 == 1: square_number = (row * board_size) + (board_size - col) square_content = str(square_number) if square_number in board: if board[square_number] > square_number: square_content = f"{square_number} ⬆️" #Ladder Icon elif board[square_number] < square_number: square_content = f"{square_number} 🐍" #Snake Icon square_style = "background-color: lightgray; padding: 10px; border: 1px solid black; text-align: center;" if square_number == player_position: square_style = "background-color: red; padding: 10px; border: 1px solid black; text-align: center; color:white; font-weight: bold;" board_squares.append(f"