Untitled
unknown
python
a year ago
1.9 kB
3
Indexable
import random class SnakeAndLadderGame: def __init__(self): self.board = {} self.snakes = [(17, 7), (54, 34), (62, 19), (98, 79), (93, 73), (95, 75), (99, 78)] self.ladders = [(4, 14), (9, 31), (20, 38), (28, 84), (40, 59), (63, 81), (71, 91)] self.player_position = {"Player 1": 0, "Player 2": 0} def create_board(self): for start, end in self.snakes: self.board[start] = end for start, end in self.ladders: self.board[start] = end def roll_dice(self): return random.randint(1, 6) def move_player(self, player): dice_roll = self.roll_dice() print(f"{player} rolled a {dice_roll}.") self.player_position[player] += dice_roll if self.player_position[player] in self.board: new_position = self.board[self.player_position[player]] if new_position > self.player_position[player]: print(f"{player} encountered a ladder! Climbing from {self.player_position[player]} to {new_position}.") else: print(f"{player} encountered a snake! Sliding down from {self.player_position[player]} to {new_position}.") self.player_position[player] = new_position print(f"{player}'s new position: {self.player_position[player]}") def play_game(self): self.create_board() print("Welcome to Snake and Ladder Game!") current_player = "Player 1" while True: input(f"{current_player}, Press Enter to roll the dice...") self.move_player(current_player) if self.player_position[current_player] >= 100: print(f"Congratulations! {current_player} wins!") break current_player = "Player 2" if current_player == "Player 1" else "Player 1" # Start the game game = SnakeAndLadderGame() game.play_game()
Editor is loading...
Leave a Comment