Files
Leviathan/Client/Game/game/Main/ElementParser/SElementParser.h
T
2026-06-01 12:46:52 +02:00

53 lines
1.1 KiB
C++

#ifndef _SElementParser_h_
#define _SElementParser_h_
//#include <string>
struct QuestBase;
/*
*/
class cElementParser
{
public:
std::string parsing(char const* strFormat, bool addMobNameDiff);
protected:
virtual int getValue(char const* /*str*/) = 0;
virtual int getStatus(int /*index*/) = 0;
virtual bool getMonsterName(char const* value, std::string &str) = 0;
};
/* 퀘스트용 파서
*/
class cElementQuestParser : public cElementParser
{
public:
cElementQuestParser() : m_quest(NULL) {}
void setQuest(QuestBase* quest) { m_quest = quest; }
protected:
virtual int getValue(char const* str);
virtual int getStatus(int index);
virtual bool getMonsterName(char const* value, std::string &str);
private:
QuestBase* m_quest;
};
/* 호칭용 파서
*/
class cElementTitleParser : public cElementParser
{
protected:
virtual int getValue(char const* str);
virtual int getStatus(int index);
virtual bool getMonsterName(char const* value, std::string &str);
private:
int m_ConditionTypeID;
public:
void setConditionTypeID(int id) { m_ConditionTypeID = id; }
};
#endif