Powered by the Tomorrow.io Weather API
[ 프리미엄 ] 코딩과 관련한 컨텐츠 및 뉴스를 공유합니다.

※ 파이썬 | Javascript | 꿀팁

[2.0.2.3 계묘년 흑토끼] 대박나세요! 자세히보기

카테고리 없음

python game

잇잇쌤 2023. 6. 15. 20:35
728x90
반응형
SMALL

hennryrpgpygame.py
0.00MB

import random

# 플레이어 클래스 정의
class Player:
    def __init__(self, name):
        self.name = name
        self.items = []

    def add_item(self, item):
        self.items.append(item)

    def __str__(self):
        return self.name

# 방 클래스 정의
class Room:
    def __init__(self, name, description, items):
        self.name = name
        self.description = description
        self.items = items

    def __str__(self):
        return self.name

# 게임 초기화
def initialize_game():
    player_name = input("플레이어 이름을 입력하세요: ")
    player = Player(player_name)

    # 방 생성
    kitchen = Room("부엌", "맛있는 음식이 담긴 부엌입니다.", ["칼", "가스레인지"])
    bedroom = Room("침실", "잠을 자기에 적합한 침실입니다.", ["침대", "옷장"])
    living_room = Room("거실", "편안한 소파가 있는 거실입니다.", ["TV", "커피 테이블"])

    # 방과 초기 아이템 배치
    rooms = [kitchen, bedroom, living_room]
    current_room = random.choice(rooms)
    player.add_item(random.choice(current_room.items))

    return player, current_room

# 게임 실행
def play_game():
    player, current_room = initialize_game()
    print(f"게임을 시작합니다. 당신은 {player}입니다.")

    while True:
        print("\n---------------------------")
        print(f"{current_room.name}에 있습니다.")
        print(current_room.description)
        print(f"이 방에는 {', '.join(current_room.items)}이(가) 있습니다.")

        action = input("무엇을 하시겠습니까? (이동/아이템): ").lower()

        if action == "이동":
            # 다음 방으로 이동
            rooms = [room for room in [kitchen, bedroom, living_room] if room != current_room]
            current_room = random.choice(rooms)
            player.add_item(random.choice(current_room.items))
        elif action == "아이템":
            # 플레이어의 아이템 출력
            print(f"{player}의 아이템: {', '.join(player.items)}")
        else:
            print("올바른 행동을 선택하세요.")

# 게임 실행
play_game()

henrrygame.py
0.00MB
henrrypygame.py
0.00MB

728x90
반응형
Powered by the Tomorrow.io Weather API