[파이썬] `pygame`에서의 아이템 거래 시스템

Pygame은 파이썬으로 게임을 개발하기 위한 강력한 라이브러리입니다. 이 글에서는 Pygame을 사용하여 아이템 거래 시스템을 구현하는 방법에 대해 알아보겠습니다. 아이템 거래 시스템은 게임에서 플레이어 간에 아이템을 교환하거나 구매하는 기능을 제공합니다.

게임 아이템 클래스 만들기

먼저, 아이템을 나타내는 클래스를 만들어야 합니다. 아이템은 이름과 가격 등의 속성을 가지고 있어야 합니다. 다음은 Item 클래스의 예시입니다.

class Item:
    def __init__(self, name, price):
        self.name = name
        self.price = price

위 코드에서는 Item 클래스가 nameprice 속성을 가지도록 정의되어 있습니다.

아이템 거래 기능 추가하기

이제 아이템 거래 기능을 추가해보겠습니다. 플레이어는 아이템을 구매하거나 판매할 수 있어야 합니다. 다음은 아이템 거래를 처리하는 Player 클래스입니다.

class Player:
    def __init__(self, name, money):
        self.name = name
        self.money = money
        self.inventory = []
        
    def buy_item(self, item):
        if self.money >= item.price:
            self.money -= item.price
            self.inventory.append(item)
            print(f"{self.name}이(가) {item.name}을(를) 구매했습니다.")
        else:
            print("돈이 부족합니다.")
    
    def sell_item(self, item):
        if item in self.inventory:
            self.money += item.price
            self.inventory.remove(item)
            print(f"{self.name}이(가) {item.name}을(를) 판매했습니다.")
        else:
            print("보유한 아이템이 없습니다.")

위 코드에서 Player 클래스는 name, money, inventory 속성을 가지며, buy_itemsell_item 메서드를 사용하여 아이템을 구매 및 판매할 수 있습니다.

게임 실행하기

마지막으로, 게임을 실행하는 코드를 작성해보겠습니다. 다음은 간단한 예시입니다.

# 아이템 생성
sword = Item("검", 100)
armor = Item("갑옷", 200)

# 플레이어 생성
player1 = Player("Player 1", 500)
player2 = Player("Player 2", 500)

# 아이템 거래
player1.buy_item(sword)
player2.buy_item(armor)
player1.sell_item(armor)

위 코드에서는 두 개의 아이템과 두 명의 플레이어를 생성한 후, 아이템을 구매하고 판매하는 과정을 보여줍니다.

이제 Pygame에서 아이템 거래 시스템을 구현하는 방법에 대해 알게 되었습니다. 이를 활용하여 게임에 다양한 아이템 기능을 추가해보세요!