0

私は現在、ゲーム プログラミング インスティテュートのコース用にテキストベースの RPG を書いています。現在、キャラクターが防具を購入できるストアがありますが、そこにアイテムを追加する必要があります。アイテム クラスを作成しましたが、ストア クラス、アイテム クラス、プレーヤー クラスをベクトル配列を使用して関連付ける方法がわかりません。

私がすべきことは、構造体アイテムに関する情報を保持するプレイヤー クラスにアイテム ベクトルを作成することだと思います。次に、プレイヤーが店に入ると、購入したアイテムがそのベクトルに入力されます。

私が感じているのは、私のコードの関連部分です。これら 3 つのクラス間で情報を共有する方法を理解する上での私の脳の霧を解消するために、誰かが私にいくつかの指針やヒントを与えることができれば、非常に高く評価されます.

ありがとう!

アイテム.h

    struct Item{

    int itemType;
    int goldValue;      
};

player.hクラスにプライベート データを追加しました

std::vector<Item> mItem;

player.cppで、関数を使用してアイテムを表示しようとしています

void Player::purchaseItem(Item& mItems, int itemType, int itemValue)

ここにstore.hがあります

    class Store{

public:


    void enterStore(Player& player);



private:

    Armor mStoreArmor;
    int mCost;

};
4

1 に答える 1

0

ベクトルは、より高速な動的割り当て配列になるように設計されています。

キーまたはインデックスのみを使用して、各タイプのアイテムの数量を格納するハッシュまたは静的配列のみを使用することをお勧めします。

所有物をプレーヤー クラスに保存し、ストア クラスに特定のアイテムのリストを持たせることは明らかです (おそらく、在庫のキーを使用します。これが、ハッシュが良い考えである理由です)。

プレーヤーがストア アイテムを見て 1 つを選択すると、プレーヤー クラスのハッシュの数量が増加します。

于 2013-10-04T17:09:46.333 に答える