κ°•ν™”κ°€ κ°€λŠ₯ν•œ μ•„μ΄ν…œν˜•νƒœλ‘œ κ΅¬ν˜„ν•  μƒκ°μž…λ‹ˆλ‹€.

μ•„μ΄ν…œ DB에 κ°•ν™”λ ˆλ²¨λ§ˆλ‹€ μ μš©λ˜λŠ” 수치λ₯Ό μ‹Ήλ‹€ λ§Œλ“€μ–΄μ€€ν›„

ν΄λž˜μŠ€μ—λŠ” κ°•ν™”λ ˆλ²¨κ³Ό μ•„μ΄ν…œ μ½”λ“œλ§Œλ„£λŠ” λ°©μ‹μœΌλ‘œ ν• κΉŒμš”?


static class ItemDB {

map<int, ItemBase> items;



};



class ItemBase {


int code;

int itemType;

int damage[5] = { 5,8, 11, 13,15 };

};


class Item {

int code;

int itemLevel;


void UseItem() {

//μ•„μ΄ν…œ μ‚¬μš©

}

};


class Inventory {

map<int, Item> slots;


void AddItem(Item item) {

//μ•„μ΄ν…œ μΆ”κ°€

}


void SwapItem(int slot1, int slot2) {

//μ•„μ΄ν…œ κ΅ν™˜

}


void UseItem(int slot) {

//μ•„μ΄ν…œ μ‚¬μš©

//μž₯λΉ„ν…œμΌκ²½μš° μž₯λΉ„μ°½μœΌλ‘œ ν•΄λ‹Ήμ•„μ΄ν…œμ„ 전솑

}


Item RemoveItem(int slot) {

//μ•„μ΄ν…œμ„ ν•΄λ‹Ή μŠ¬λ‘―μ—μ„œ 제거

}

};


class Equip {


bool EquipItem(Item item) {

//ν•΄λ‹Ήμ•„μ΄ν…œμ½”λ“œλ₯Ό λ°μ΄ν„°λ² μ΄μŠ€μ˜ μ•„μ΄ν…œμ›ν˜•μ„ 보고 μ°©μš©ν• μˆ˜μžˆλŠ”μ§€ 확인

//μ°©μš©κ°€λŠ₯ν•˜λ©΄ μΈλ²€ν† λ¦¬μ˜ μ•„μ΄ν…œμ„ 제거

//μ°©μš©ν›„ μŠ€νƒ―λ³€κ²½

//μ°©μš©ν–ˆμœΌλ―€λ‘œ true리턴

}

};

μš”λŸ°μ‹μœΌλ‘œ 생각쀑인데 ...Β 

μ œκ°€ μ΄ˆλ³΄λΌμ„œ λͺ¨λ₯΄κ² λ„€μš”