81 lines
2.5 KiB
C
81 lines
2.5 KiB
C
|
|
#pragma once
|
|||
|
|
|
|||
|
|
|
|||
|
|
class DNReplaceString
|
|||
|
|
{
|
|||
|
|
public:
|
|||
|
|
struct __StaticReplaceStringInfo
|
|||
|
|
{
|
|||
|
|
enum
|
|||
|
|
{
|
|||
|
|
user_nick = 1,
|
|||
|
|
user_class,
|
|||
|
|
monster,
|
|||
|
|
npc,
|
|||
|
|
item,
|
|||
|
|
skill,
|
|||
|
|
map
|
|||
|
|
};
|
|||
|
|
int nType;
|
|||
|
|
std::wstring szKey;
|
|||
|
|
__StaticReplaceStringInfo(int type, const WCHAR* wszKey)
|
|||
|
|
{
|
|||
|
|
nType = type;
|
|||
|
|
szKey = wszKey;
|
|||
|
|
}
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
struct DynamicReplaceStringInfo
|
|||
|
|
{
|
|||
|
|
enum
|
|||
|
|
{
|
|||
|
|
STRING = 1,
|
|||
|
|
INT,
|
|||
|
|
};
|
|||
|
|
char cValueType;
|
|||
|
|
std::wstring szKey;
|
|||
|
|
int nValue;
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
DNReplaceString();
|
|||
|
|
virtual ~DNReplaceString();
|
|||
|
|
|
|||
|
|
// <20><><EFBFBD>ڿ<EFBFBD><DABF><EFBFBD> ġȯ<C4A1>ؼ<EFBFBD> <20>ϼ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ش<EFBFBD>.
|
|||
|
|
// ReplaceStaticString <20><> <20><><EFBFBD><EFBFBD> ȣ<><C8A3><EFBFBD>ؼ<EFBFBD> <20≯<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ġȯ<C4A1><C8AF> <20><><EFBFBD><EFBFBD><EFBFBD>ְ<EFBFBD>
|
|||
|
|
// ReplaceDynamicString <20><> ȣ<><C8A3><EFBFBD>ؼ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ġȯ<C4A1><C8AF> <20><><EFBFBD>ش<EFBFBD>. -_-;
|
|||
|
|
#if defined(_SERVER) &&defined(PRE_ADD_MULTILANGUAGE)
|
|||
|
|
bool Relpace(IN OUT std::wstring& str, std::vector<DynamicReplaceStringInfo>& info, MultiLanguage::SupportLanguage::eSupportLanguage eNation);
|
|||
|
|
|
|||
|
|
// 10<31><30> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20≯<EFBFBD>
|
|||
|
|
// {%monster:10} <20><> <20><><EFBFBD><EFBFBD> <20≯<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Ÿ<><C5B8><EFBFBD><EFBFBD> <20><>Ʈ<EFBFBD><C6AE><EFBFBD><EFBFBD> ġȯ <20><><EFBFBD>ش<EFBFBD>.
|
|||
|
|
void ReplaceStaticString(IN OUT std::wstring& str, MultiLanguage::SupportLanguage::eSupportLanguage eNation);
|
|||
|
|
|
|||
|
|
// uistring <20><> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>Ǿ<EFBFBD><C7BE>մ<EFBFBD> <20>ε<EFBFBD><CEB5><EFBFBD> == aaa <20><><EFBFBD><EFBFBD> <20>ܺο<DCBA><CEBF><EFBFBD> <20><><EFBFBD><EFBFBD>
|
|||
|
|
// {%aaa} <20><> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Ÿ<><C5B8><EFBFBD><EFBFBD> <20><>Ʈ<EFBFBD><C6AE><EFBFBD><EFBFBD> ġȯ <20><><EFBFBD>ش<EFBFBD>.
|
|||
|
|
void ReplaceDynamicString(IN OUT std::wstring& str, std::vector<DynamicReplaceStringInfo>& info, MultiLanguage::SupportLanguage::eSupportLanguage eNation);
|
|||
|
|
#else //#if defined(_SERVER) &&defined(PRE_ADD_MULTILANGUAGE)
|
|||
|
|
bool Relpace(IN OUT std::wstring& str, std::vector<DynamicReplaceStringInfo>& info);
|
|||
|
|
|
|||
|
|
// 10<31><30> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20≯<EFBFBD>
|
|||
|
|
// {%monster:10} <20><> <20><><EFBFBD><EFBFBD> <20≯<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Ÿ<><C5B8><EFBFBD><EFBFBD> <20><>Ʈ<EFBFBD><C6AE><EFBFBD><EFBFBD> ġȯ <20><><EFBFBD>ش<EFBFBD>.
|
|||
|
|
void ReplaceStaticString(IN OUT std::wstring& str);
|
|||
|
|
|
|||
|
|
// uistring <20><> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>Ǿ<EFBFBD><C7BE>մ<EFBFBD> <20>ε<EFBFBD><CEB5><EFBFBD> == aaa <20><><EFBFBD><EFBFBD> <20>ܺο<DCBA><CEBF><EFBFBD> <20><><EFBFBD><EFBFBD>
|
|||
|
|
// {%aaa} <20><> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Ÿ<><C5B8><EFBFBD><EFBFBD> <20><>Ʈ<EFBFBD><C6AE><EFBFBD><EFBFBD> ġȯ <20><><EFBFBD>ش<EFBFBD>.
|
|||
|
|
void ReplaceDynamicString(IN OUT std::wstring& str, std::vector<DynamicReplaceStringInfo>& info);
|
|||
|
|
#endif //#if defined(_SERVER) &&defined(PRE_ADD_MULTILANGUAGE)
|
|||
|
|
|
|||
|
|
private:
|
|||
|
|
#if defined(_SERVER) &&defined(PRE_ADD_MULTILANGUAGE)
|
|||
|
|
std::wstring _GetStaticString(int nType, std::vector<std::wstring>& tokens, MultiLanguage::SupportLanguage::eSupportLanguage eNation);
|
|||
|
|
std::wstring _GetString(int nStringID, MultiLanguage::SupportLanguage::eSupportLanguage eNation);
|
|||
|
|
#else //#if defined(_SERVER) &&defined(PRE_ADD_MULTILANGUAGE)
|
|||
|
|
std::wstring _GetStaticString(int nType, std::vector<std::wstring>& tokens);
|
|||
|
|
std::wstring _GetString(int nStringID);
|
|||
|
|
#endif //#if defined(_SERVER) &&defined(PRE_ADD_MULTILANGUAGE)
|
|||
|
|
|
|||
|
|
std::vector<__StaticReplaceStringInfo> m_StaticReplaceList;
|
|||
|
|
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
extern DNReplaceString g_ReplaceString;
|