server/game/src/shopEx.h
2022-03-05 12:44:06 +02:00

39 lines
1.0 KiB
C++

#ifndef __INC_METIN_II_GAME_SHOP_SECONDARY_COIN_H__
#define __INC_METIN_II_GAME_SHOP_SECONDARY_COIN_H__
#include "typedef.h"
#include "shop.h"
struct SShopTable;
typedef struct SShopTableEx : SShopTable
{
std::string name;
EShopCoinType coinType;
} TShopTableEx;
class CGroupNode;
// 확장 shop.
// 명도전을 화폐로 쓸 수 있고, 아이템을 여러 탭에 나눠 배치할 수 있다.
// 단, pc 샵은 구현하지 않음.
// 클라와 통신할 때에 탭은 pos 45 단위로 구분.
// 기존 샵의 m_itemVector은 사용하지 않는다.
class CShopEx: public CShop
{
public:
bool Create(DWORD dwVnum, DWORD dwNPCVnum);
bool AddShopTable(TShopTableEx& shopTable);
virtual bool AddGuest(LPCHARACTER ch,DWORD owner_vid, bool bOtherEmpire);
virtual void SetPCShop(LPCHARACTER ch) { return; }
virtual bool IsPCShop() { return false; }
virtual int Buy(LPCHARACTER ch, BYTE pos);
virtual bool IsSellingItem(DWORD itemID) { return false; }
size_t GetTabCount() { return m_vec_shopTabs.size(); }
private:
std::vector <TShopTableEx> m_vec_shopTabs;
};
typedef CShopEx* LPSHOPEX;
#endif