Compare commits
3 Commits
3be31f145f
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
| 067ec2bfa1 | |||
| a070e30da7 | |||
| 96b00a1254 |
6
Client/Add_Folder_WOW64.reg
Normal file
6
Client/Add_Folder_WOW64.reg
Normal file
@@ -0,0 +1,6 @@
|
||||
Windows Registry Editor Version 5.00
|
||||
|
||||
[HKEY_LOCAL_MACHINE\Software\WOW6432Node\ROW\MP-Client]
|
||||
"Folder"="F:\\YouxiLand\\ROW"
|
||||
"TestFolder"="F:\\YouxiLand\\ROW"
|
||||
"BGFolder"="F:\\YouxiLand\\ROW"
|
||||
@@ -616,6 +616,11 @@ static void Event_MonsterDrop(int nAmount, int nItemID)
|
||||
lpEventNode->m_fPosZ = 0.0f;
|
||||
lpEventNode->m_strWord = NULL;
|
||||
|
||||
// Add debug log for item drop event (English)
|
||||
char logMsg[128];
|
||||
sprintf(logMsg, "[ITEM] Item dropped: ItemID=%d, Amount=%d\n", nItemID, nAmount);
|
||||
OutputDebugStringA(logMsg);
|
||||
|
||||
if (bFalseEvent)
|
||||
g_QuestList.m_lpTriggerNode->m_lstFalseEvent.push_back(lpEventNode);
|
||||
else
|
||||
@@ -926,7 +931,7 @@ BOOL CQuestList::Load(const char *strQuestScriptFile)
|
||||
_SE_RegisterFunction(Script, QuestAward, T_VOID, "QuestAward", T_STRING, 0);
|
||||
_SE_RegisterFunction(Script, QuestSkillPointBonus, T_VOID, "QuestSkillPointBonus", T_INT, 0);
|
||||
_SE_RegisterFunction(Script, QuestCancelItemDel, T_VOID, "QuestCancelItemDel", T_BOOL, 0);
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ <20>ý<EFBFBD><C3BD><EFBFBD>
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD>Ƽ <20>ý<EFBFBD><C3BD><EFBFBD>
|
||||
_SE_RegisterFunction(Script, QuestAbilityPoint, T_VOID, "QuestAbilityPoint", T_INT, 0);
|
||||
|
||||
|
||||
@@ -978,7 +983,7 @@ unsigned long QuestNode::CheckQuest(unsigned long dwLevel, unsigned long dwFame,
|
||||
unsigned long count = 0;
|
||||
unsigned long i = 0;
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20>ִ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> üũ
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20>ִ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> üũ
|
||||
bool bEnableQuest = false ;
|
||||
if ( 0 == m_usNation )
|
||||
{
|
||||
@@ -1004,22 +1009,22 @@ unsigned long QuestNode::CheckQuest(unsigned long dwLevel, unsigned long dwFame,
|
||||
|
||||
if ( !bEnableQuest )
|
||||
{
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>ʴ´<CAB4>.
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>ʴ´<CAB4>.
|
||||
return QuestNode::RES_MISMATCH_NATION ;
|
||||
}
|
||||
|
||||
if ( !(m_dwClass & (0x00000001 << (dwClass - 1))) )
|
||||
{
|
||||
// Ŭ<><C5AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>ʴ´<CAB4>.
|
||||
// Ŭ<><C5AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>ʴ´<CAB4>.
|
||||
return QuestNode::RES_MISMATCH_CLASS ;
|
||||
}
|
||||
|
||||
// <20>̹<EFBFBD> <20><> <20><><EFBFBD><EFBFBD>Ʈ<EFBFBD><C6AE><EFBFBD><EFBFBD> <20>˻<EFBFBD><CBBB><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>Ʈ<EFBFBD><C6AE> <20>ߴ<EFBFBD><DFB4><EFBFBD> <20>˻<EFBFBD>
|
||||
// <20>̹<EFBFBD> <20><> <20><><EFBFBD><EFBFBD>Ʈ<EFBFBD><C6AE><EFBFBD><EFBFBD> <20>˻<EFBFBD><CBBB> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>Ʈ<EFBFBD><C6AE> <20>ߴ<EFBFBD><DFB4><EFBFBD> <20>˻<EFBFBD>
|
||||
for (unsigned long t = 0; t < wNumCompleted ; t++)
|
||||
{
|
||||
if (lstCompleted[t] == m_wQuestID)
|
||||
{
|
||||
// <20>̹<EFBFBD> <20><> <20><><EFBFBD><EFBFBD>Ʈ<EFBFBD>̴<EFBFBD>.
|
||||
// <20>̹<EFBFBD> <20><> <20><><EFBFBD><EFBFBD>Ʈ<EFBFBD>̴<EFBFBD>.
|
||||
return QuestNode::RES_ALREADY_TAKEN ;
|
||||
}
|
||||
}
|
||||
@@ -1028,7 +1033,7 @@ unsigned long QuestNode::CheckQuest(unsigned long dwLevel, unsigned long dwFame,
|
||||
{
|
||||
if (lstQuestList[t] == m_wQuestID)
|
||||
{
|
||||
// <20><><EFBFBD><EFBFBD> <20>ϰ<EFBFBD> <20>ִ<EFBFBD> <20><><EFBFBD><EFBFBD>Ʈ<EFBFBD>̴<EFBFBD>.
|
||||
// <20><><EFBFBD><EFBFBD> <20>ϰ<EFBFBD> <20>ִ<EFBFBD> <20><><EFBFBD><EFBFBD>Ʈ<EFBFBD>̴<EFBFBD>.
|
||||
return QuestNode::RES_ALREADY_TAKEN ;
|
||||
}
|
||||
}
|
||||
@@ -1046,7 +1051,7 @@ unsigned long QuestNode::CheckQuest(unsigned long dwLevel, unsigned long dwFame,
|
||||
|
||||
if ( !bCompletePriorQuest )
|
||||
{
|
||||
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>Ʈ<EFBFBD><C6AE> <20><><EFBFBD><EFBFBD> <20>ʾҴ<CABE>.
|
||||
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>Ʈ<EFBFBD><C6AE> <20><><EFBFBD><EFBFBD> <20>ʾҴ<CABE>.
|
||||
return QuestNode::RES_NOT_COMPLETE_PRIOR_QUEST ;
|
||||
}
|
||||
}
|
||||
@@ -1055,42 +1060,42 @@ unsigned long QuestNode::CheckQuest(unsigned long dwLevel, unsigned long dwFame,
|
||||
{
|
||||
if (m_wMinLevel <= dwLevel && dwLevel <= m_wMaxLevel)
|
||||
{
|
||||
// <20><><EFBFBD><EFBFBD>Ʈ<EFBFBD><C6AE> <20><> <20><> <20>ִ<EFBFBD>.
|
||||
// <20><><EFBFBD><EFBFBD>Ʈ<EFBFBD><C6AE> <20><> <20><> <20>ִ<EFBFBD>.
|
||||
return QuestNode::RES_SUCCESS ;
|
||||
}
|
||||
|
||||
if ( dwLevel > m_wMaxLevel )
|
||||
{
|
||||
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ְ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>.
|
||||
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ְ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>.
|
||||
return QuestNode::RES_HIGH_THAN_MAX_LEVEL ;
|
||||
}
|
||||
|
||||
if ( dwLevel + 10 <= m_wMinLevel )
|
||||
{
|
||||
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 10 <20><><EFBFBD><EFBFBD> <20>̻<EFBFBD> <20><><EFBFBD><EFBFBD>.
|
||||
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 10 <20><><EFBFBD><EFBFBD> <20>̻<EFBFBD> <20><><EFBFBD><EFBFBD>.
|
||||
return QuestNode::RES_10_LOW_THAN_MIN_LEVEL ;
|
||||
}
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD>.
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD>.
|
||||
return QuestNode::RES_LOW_LEVEL ;
|
||||
}
|
||||
|
||||
if(m_dwMinFame != 0 && m_dwMaxFame != 0)
|
||||
{
|
||||
// <20><><EFBFBD><EFBFBD>üũ
|
||||
// <20><><EFBFBD><EFBFBD>üũ
|
||||
if (m_dwMinFame <= dwFame && dwFame <= m_dwMaxFame)
|
||||
{
|
||||
// <20><><EFBFBD><EFBFBD>Ʈ<EFBFBD><C6AE> <20><> <20><> <20>ִ<EFBFBD>.
|
||||
// <20><><EFBFBD><EFBFBD>Ʈ<EFBFBD><C6AE> <20><> <20><> <20>ִ<EFBFBD>.
|
||||
return QuestNode::RES_SUCCESS ;
|
||||
}
|
||||
|
||||
if ( dwFame > m_dwMaxFame )
|
||||
{
|
||||
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ְ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>.
|
||||
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ְ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>.
|
||||
return QuestNode::RES_HIGH_THAN_MAX_FAME ;
|
||||
}
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||
return QuestNode::RES_LOW_FAME;
|
||||
}
|
||||
|
||||
|
||||
@@ -32,14 +32,14 @@
|
||||
#include "RYLProfile.h"
|
||||
|
||||
/*
|
||||
// Rodin : <20><EFBFBD>Ʈ <20>ڵ<EFBFBD> #1
|
||||
// Rodin : <20><EFBFBD>Ʈ <20>ڵ<EFBFBD> #1
|
||||
#include "../GUITextEdit.h"
|
||||
#include "RYLChattingDlg.h"
|
||||
#include "GMMemory.h"
|
||||
*/
|
||||
|
||||
|
||||
// <20><><EFBFBD>Ӽ<EFBFBD><D3BC><EFBFBD> <20>̺<EFBFBD>Ʈ <20>ڵ鷯
|
||||
// <20><><EFBFBD>Ӽ<EFBFBD><D3BC><EFBFBD> <20>̺<EFBFBD>Ʈ <20>ڵ鷯
|
||||
CGameEventHandler::CGameEventHandler()
|
||||
{
|
||||
|
||||
@@ -57,7 +57,7 @@ int CGameEventHandler::OnOpen(int iErrorCode)
|
||||
CRYLGameData* pGame = CRYLGameData::Instance() ;
|
||||
CRYLNetworkData* pNetworkData = CRYLNetworkData::Instance();
|
||||
|
||||
// <20><><EFBFBD><EFBFBD> <20>ִ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>.
|
||||
// <20><><EFBFBD> <20>ִ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>.
|
||||
if (pGame->m_lpPickItem) { delete pGame->m_lpPickItem; pGame->m_lpPickItem = 0; }
|
||||
|
||||
pGame->DeleteAllFieldItem();
|
||||
@@ -89,10 +89,14 @@ int CGameEventHandler::OnClose()
|
||||
int CGameEventHandler::OnDispatch(PktBase* lpPktBase, INET_Addr& peerAddr)
|
||||
{
|
||||
unsigned long dwCmd = lpPktBase->GetCmd();
|
||||
// Debug log for packet dispatch
|
||||
char logMsg[128];
|
||||
sprintf(logMsg, "[PACKET] Dispatch: Cmd=0x%02lx, Len=%d\n", dwCmd, lpPktBase->GetLen());
|
||||
OutputDebugStringA(logMsg);
|
||||
|
||||
/*
|
||||
// Rodin : <20><EFBFBD>Ʈ <20>ڵ<EFBFBD> #1
|
||||
// => <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>κ<EFBFBD><CEBA><EFBFBD> <20><><EFBFBD><EFBFBD> <20><>Ŷ<EFBFBD><C5B6> Ŀ<>ǵ带 <20><><EFBFBD><EFBFBD><EFBFBD>ش<EFBFBD>.
|
||||
// Rodin : <20><EFBFBD>Ʈ <20>ڵ<EFBFBD> #1
|
||||
// => <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>κ<EFBFBD><CEBA><EFBFBD> <20><><EFBFBD><EFBFBD> <20><>Ŷ<EFBFBD><C5B6> Ŀ<>ǵ带 <20><><EFBFBD><EFBFBD>ش<EFBFBD>.
|
||||
if (0x2f != dwCmd &&
|
||||
0x3d != dwCmd &&
|
||||
0x49 != dwCmd)
|
||||
@@ -105,7 +109,7 @@ int CGameEventHandler::OnDispatch(PktBase* lpPktBase, INET_Addr& peerAddr)
|
||||
|
||||
if (dwCmd == CmdCompressedPacket)
|
||||
{
|
||||
// <20><><EFBFBD>鼭 <20><><EFBFBD><EFBFBD> ó<><C3B3><EFBFBD><EFBFBD><EFBFBD>ش<EFBFBD>.
|
||||
// <20><><EFBFBD>鼭 <20><><EFBFBD><EFBFBD> ó<><C3B3><EFBFBD><EFBFBD><EFBFBD>ش<EFBFBD>.
|
||||
char* szPacketPos = reinterpret_cast<char*>(lpPktBase + 1);
|
||||
char* szPacketEnd = reinterpret_cast<char*>(lpPktBase) + lpPktBase->GetLen();
|
||||
|
||||
@@ -151,20 +155,20 @@ int CGameEventHandler::OnDispatch(PktBase* lpPktBase, INET_Addr& peerAddr)
|
||||
{
|
||||
if(0 == (find->m_dwIgnoreStatus & BIT(CRYLGameData::Instance()->m_dwClientMode)))
|
||||
{
|
||||
//by Hades Kang <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Cmd<6D><64> <20>ִٸ<D6B4> <20><><EFBFBD>⼭ ó<><C3B3> <20>ؾ<EFBFBD> <20>ҵ<EFBFBD>.
|
||||
//by Hades Kang <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Cmd<6D><64> <20>ִٸ<D6B4> <20><><EFBFBD>⼭ ó<><C3B3> <20>ؾ<EFBFBD> <20>ҵ<EFBFBD>.
|
||||
ClientSocket::SetNSFlagOff( dwCmd );
|
||||
find->m_fnEvent(this, lpPktBase);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// rc<72><63> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>Ŷ ó<><C3B3> <20><><EFBFBD><EFBFBD> <20><><EFBFBD>θ<EFBFBD> <20>ľ<EFBFBD>.
|
||||
if(CRYLNetworkData::Instance()->m_dwNetworkError == 1) //1 = <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||
// rc<72><63> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>Ŷ ó<><C3B3> <20><><EFBFBD><EFBFBD> <20><><EFBFBD>θ<EFBFBD> <20>ľ<EFBFBD>.
|
||||
if(CRYLNetworkData::Instance()->m_dwNetworkError == 1) //1 = <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||
{
|
||||
CRYLMessageBox *lpMessageBox = new CRYLMessageBox;
|
||||
lpMessageBox->Create(CRYLStringTable::m_strString[296]);
|
||||
// edith 2009.01.29 Server Error Modal <20><><EFBFBD><EFBFBD>
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>˼<EFBFBD><CBBC><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><> Server Error<6F><72> <20>߰ԵǸ<D4B5> <20><><EFBFBD><EFBFBD><EFBFBD>ϼ<EFBFBD> <20><><EFBFBD> <20>װԵǹǷ<C7B9> <20><><EFBFBD><EFBFBD><EFBFBD>ϼ<EFBFBD> <20>ְ<EFBFBD> <20><><EFBFBD><EFBFBD>.
|
||||
// edith 2009.01.29 Server Error Modal <20><><EFBFBD><EFBFBD>
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>˼<EFBFBD><CBBC><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><> Server Error<6F><72> <20>߰ԵǸ<D4B5> <20><><EFBFBD><EFBFBD><EFBFBD>ϼ<EFBFBD> <20><><EFBFBD> <20>װԵǹǷ<C7B9> <20><><EFBFBD><EFBFBD><EFBFBD>ϼ<EFBFBD> <20>ְ<EFBFBD> <20><><EFBFBD><EFBFBD>.
|
||||
lpMessageBox->SetModal(FALSE);
|
||||
}
|
||||
|
||||
|
||||
@@ -95,8 +95,8 @@ GAME_EVENT_FUNC(ParseCharLogin)
|
||||
&cRealmWarFlag,
|
||||
&cRealmPoint,
|
||||
&cTacticsFlag,
|
||||
&dwPlayTime, // <20>߰<EFBFBD>.
|
||||
&lPremiumTime, // <20><><EFBFBD><EFBFBD><EFBFBD>̾<EFBFBD><CCBE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>߰<EFBFBD>
|
||||
&dwPlayTime, // <20>߰<EFBFBD>.
|
||||
&lPremiumTime, // <20><><EFBFBD><EFBFBD><EFBFBD>̾<EFBFBD><CCBE><EFBFBD><EFBFBD><EFBFBD> <20>߰<EFBFBD>
|
||||
&iPremiumType,
|
||||
&pGame->m_csStatus.m_Info,
|
||||
&pGame->m_csStatus.m_Skill,
|
||||
@@ -118,7 +118,8 @@ GAME_EVENT_FUNC(ParseCharLogin)
|
||||
|
||||
if (0 == CRYLNetworkData::Instance()->m_dwNetworkError)
|
||||
{
|
||||
// Broadcast <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ʱ<EFBFBD>ȭ<EFBFBD>Ѵ<EFBFBD>.
|
||||
OutputDebugStringA("[GAME] Login successful\n");
|
||||
// Broadcast <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ʱ<EFBFBD>ȭ<EFBFBD>Ѵ<EFBFBD>.
|
||||
g_ClientCellMgr.Clear();
|
||||
|
||||
GRYLTimer.m_dwStartTime = timeGetTime() ;
|
||||
@@ -130,11 +131,11 @@ GAME_EVENT_FUNC(ParseCharLogin)
|
||||
CRYLCommunityData::Instance()->m_bCheckRelation = bCheckRelation ;
|
||||
|
||||
pGame->m_vecStartPosition.x = Pos.LastPoint.fPointX * 100.0f;
|
||||
// edith 2009.05.19 <20>α<EFBFBD><CEB1>ν<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>°<EFBFBD> <20><><EFBFBD><EFBFBD>.
|
||||
// edith 2009.05.19 <20>α<EFBFBD><CEB1>ν<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>°<EFBFBD> <20><><EFBFBD><EFBFBD>.
|
||||
pGame->m_vecStartPosition.y = (Pos.LastPoint.fPointY+2.0f) * 100.0f;
|
||||
pGame->m_vecStartPosition.z = Pos.LastPoint.fPointZ * 100.0f;
|
||||
|
||||
// edith 2009.05.19 <20><><EFBFBD>̰<EFBFBD> 1<><31><EFBFBD><EFBFBD> <20><><EFBFBD>ϸ<EFBFBD> 10<31><30><EFBFBD>ͷ<EFBFBD> <20>ٲ<EFBFBD>.
|
||||
// edith 2009.05.19 <20><><EFBFBD>̰<EFBFBD> 1<><31><EFBFBD><EFBFBD> <20><><EFBFBD>ϸ<EFBFBD> 10<31><30><EFBFBD>ͷ<EFBFBD> <20>ٲ<EFBFBD>.
|
||||
if(pGame->m_vecStartPosition.y < 100.0f)
|
||||
pGame->m_vecStartPosition.y = 1000.0f;
|
||||
|
||||
@@ -144,7 +145,7 @@ GAME_EVENT_FUNC(ParseCharLogin)
|
||||
|
||||
pGame->m_cTempAdminFlag = cAdminFlag;
|
||||
|
||||
// <20>ӽ÷<D3BD> <20><><EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD>.. <20><><EFBFBD>߿<EFBFBD> SelfCreature <20><> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ش<EFBFBD>.
|
||||
// <20>ӽ÷<D3BD> <20><><EFBFBD><EFBFBD>ص<EFBFBD>.. <20><><EFBFBD>߿<EFBFBD> SelfCreature <20><> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ش<EFBFBD>.
|
||||
pGame->m_cTempGuildWarFlag = cGuildWarFlag;
|
||||
pGame->m_cTempRealmWarFlag = cRealmWarFlag;
|
||||
pGame->m_cTempRealmPoint = cRealmPoint;
|
||||
@@ -157,7 +158,7 @@ GAME_EVENT_FUNC(ParseCharLogin)
|
||||
|
||||
CRYLGameData::Instance()->m_cChangeNameCount = cNameChangeCount;
|
||||
|
||||
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
unsigned short wBufferSize = 0;
|
||||
while(wBufferSize < wEquipSize)
|
||||
{
|
||||
@@ -175,7 +176,7 @@ GAME_EVENT_FUNC(ParseCharLogin)
|
||||
}
|
||||
}
|
||||
|
||||
// <20>κ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// <20>κ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
wBufferSize = 0;
|
||||
while(wBufferSize < wInvenSize)
|
||||
{
|
||||
@@ -190,7 +191,7 @@ GAME_EVENT_FUNC(ParseCharLogin)
|
||||
pGame->m_csStatus.AddInventoryItem(lpItem, FALSE);
|
||||
}
|
||||
|
||||
// Extra <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// Extra <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
wBufferSize = 0;
|
||||
while(wBufferSize < wExtraSize)
|
||||
{
|
||||
@@ -213,7 +214,7 @@ GAME_EVENT_FUNC(ParseCharLogin)
|
||||
break;
|
||||
}
|
||||
}
|
||||
// <20>ӽ<EFBFBD> <20>κ<EFBFBD><CEBA>丮
|
||||
// <20>ӽ<EFBFBD> <20>κ<EFBFBD><CEBA>丮
|
||||
wBufferSize = 0;
|
||||
while( wBufferSize < wTempInvenSize )
|
||||
{
|
||||
@@ -242,7 +243,7 @@ GAME_EVENT_FUNC(ParseCharLogin)
|
||||
}
|
||||
}
|
||||
|
||||
// Exchange <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// Exchange <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
wBufferSize = 0;
|
||||
while(wBufferSize < wExchangeSize)
|
||||
{
|
||||
@@ -347,17 +348,17 @@ GAME_EVENT_FUNC(ParseCharLogin)
|
||||
CRYLMessageBox *lpMessageBox;
|
||||
switch(CRYLNetworkData::Instance()->m_dwNetworkError)
|
||||
{
|
||||
case 2: //2 = <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||
case 2: //2 = <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||
lpMessageBox = new CRYLMessageBox;
|
||||
lpMessageBox->Create(CRYLStringTable::m_strString[307]);
|
||||
break;
|
||||
|
||||
case 4: //4 = <20>̹<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
case 4: //4 = <20>̹<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
lpMessageBox = new CRYLMessageBox;
|
||||
lpMessageBox->Create(CRYLStringTable::m_strString[308]);
|
||||
break;
|
||||
|
||||
case 24: // <20><><EFBFBD><EFBFBD>Ʈ ī<><C4AB> <20><><EFBFBD><EFBFBD><EFBFBD>ڰ<EFBFBD> <20>ƴ<EFBFBD>
|
||||
case 24: // <20><><EFBFBD><EFBFBD>Ʈ ī<><C4AB> <20><><EFBFBD><EFBFBD>ڰ<EFBFBD> <20>ƴ<EFBFBD>
|
||||
lpMessageBox = new CRYLMessageBox;
|
||||
lpMessageBox->Create(CRYLStringTable::m_strString[445]);
|
||||
break;
|
||||
@@ -433,8 +434,8 @@ GAME_EVENT_FUNC(ParseCharMoveZone)
|
||||
}
|
||||
else
|
||||
{
|
||||
// edith 2008.07.08 1<><31> ä<>θ<EFBFBD> <20>ִ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD> <20><><EFBFBD><EFBFBD>. <20><><EFBFBD><EFBFBD> 8, 16<31><36><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ϰ<EFBFBD> <20>־ <20><> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
|
||||
// edith 2009.07.21 <20><><EFBFBD><EFBFBD> <20>߰<EFBFBD><DFB0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> 17, 18<31><38> <20><> <20>߰<EFBFBD>
|
||||
// edith 2008.07.08 1<><31> ä<>θ<EFBFBD> <20>ִ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD> <20><><EFBFBD><EFBFBD>. <20><><EFBFBD><EFBFBD> 8, 16<31><36><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ϰ<EFBFBD> <20>־ <20><> <20><><EFBFBD><EFBFBD><EFBFBD>.
|
||||
// edith 2009.07.21 <20><><EFBFBD><EFBFBD> <20>߰<EFBFBD><DFB0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> 17, 18<31><38> <20><> <20>߰<EFBFBD>
|
||||
if (CRYLNetworkData::Instance()->m_dwNextZone == 8 || CRYLNetworkData::Instance()->m_dwNextZone == 16 ||
|
||||
CRYLNetworkData::Instance()->m_dwNextZone == 17 || CRYLNetworkData::Instance()->m_dwNextZone == 18)
|
||||
{
|
||||
@@ -468,29 +469,29 @@ GAME_EVENT_FUNC(ParseCharMoveZone)
|
||||
CRYLMessageBox *lpMessageBox;
|
||||
switch(CRYLNetworkData::Instance()->m_dwNetworkError)
|
||||
{
|
||||
case 1: //1 = <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ͼӵ<CDBC> <20><><EFBFBD><EFBFBD>
|
||||
case 1: //1 = <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ͼӵ<CDBC> <20><><EFBFBD><EFBFBD>
|
||||
lpMessageBox = new CRYLMessageBox;
|
||||
lpMessageBox->Create(CRYLStringTable::m_strString[388]);
|
||||
break;
|
||||
|
||||
case 3: //3 = <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>.
|
||||
case 3: //3 = <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>.
|
||||
lpMessageBox = new CRYLMessageBox;
|
||||
lpMessageBox->Create(CRYLStringTable::m_strString[482]);
|
||||
break;
|
||||
|
||||
case 5: //5 = <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||
case 5: //5 = <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||
lpMessageBox = new CRYLMessageBox;
|
||||
lpMessageBox->Create(CRYLStringTable::m_strString[388]);
|
||||
break;
|
||||
|
||||
// ichabod code
|
||||
// 6 error : <20><>Ʋ<EFBFBD><EFBFBD><D7B6><EFBFBD><EFBFBD><EFBFBD> <20>ο<EFBFBD><CEBF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>α<EFBFBD><CEB1><EFBFBD> <20><><EFBFBD><EFBFBD>.
|
||||
// 6 error : <20><>Ʋ<EFBFBD><EFBFBD><D7B6><EFBFBD> <20>ο<EFBFBD><CEBF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>α<EFBFBD><CEB1><EFBFBD> <20><><EFBFBD><EFBFBD>.
|
||||
case 6:
|
||||
lpMessageBox = new CRYLMessageBox;
|
||||
lpMessageBox->Create( CRYLStringTable::m_strString[1581]);
|
||||
break;
|
||||
// hackermz code
|
||||
// 7 error : <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>α<EFBFBD><CEB1><EFBFBD> <20><><EFBFBD><EFBFBD>.
|
||||
// 7 error : <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>α<EFBFBD><CEB1><EFBFBD> <20><><EFBFBD><EFBFBD>.
|
||||
case 7:
|
||||
lpMessageBox = new CRYLMessageBox;
|
||||
lpMessageBox->Create( CRYLStringTable::m_strString[4120]);
|
||||
@@ -520,18 +521,18 @@ GAME_EVENT_FUNC(ParseServerZone)
|
||||
pGame->FadeIn();
|
||||
pGame->m_bSelectChar = TRUE;
|
||||
|
||||
// LagreMap <20>ݱ<EFBFBD>
|
||||
// LagreMap <20>ݱ<EFBFBD>
|
||||
CRYLGameScene* pGameScene = static_cast<CRYLGameScene*>( CRYLSceneManager::Instance()->FindScene( GAME_SCENE ) ) ;
|
||||
pGameScene->GetLargeMapDlg()->SetVisible( FALSE ) ;
|
||||
|
||||
// ä<><C3A4> <20>ݱ<EFBFBD>
|
||||
// ä<><C3A4> <20>ݱ<EFBFBD>
|
||||
CRYLCharacterSelectScene* pCharacterSelectScene =
|
||||
static_cast<CRYLCharacterSelectScene*>( CRYLSceneManager::Instance()->FindScene( CHARACTERSELECT_SCENE ) ) ;
|
||||
pCharacterSelectScene->GetChannelDlg()->SetVisible( FALSE ) ;
|
||||
|
||||
g_pClientSocket->SetStatusFlag(NS_SERVERMOVE);
|
||||
|
||||
// Disconnect() <20>ϰ<EFBFBD> <20>Ϸ<EFBFBD><EFBFBD>Ǹ<EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||
// Disconnect() <20>ϰ<EFBFBD> <20>Ϸ<EFBFBD>Ǹ<EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||
g_pClientSocket->Disconnect(ClientSocket::GameEventHandler);
|
||||
|
||||
ClientNet::CClientEventHandler* lpGameHandler = CGameEventHandler::Create();
|
||||
@@ -552,17 +553,17 @@ GAME_EVENT_FUNC(ParseServerZone)
|
||||
CRYLMessageBox *lpMessageBox;
|
||||
switch(CRYLNetworkData::Instance()->m_dwNetworkError)
|
||||
{
|
||||
case 2: // 2 = ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>߸<EFBFBD> <20>Ǿ<EFBFBD> <20>ֽ<EFBFBD><D6BD>ϴ<EFBFBD>.
|
||||
case 2: // 2 = ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>߸<EFBFBD> <20>Ǿ<EFBFBD> <20>ֽ<EFBFBD><D6BD>ϴ<EFBFBD>.
|
||||
lpMessageBox = new CRYLMessageBox;
|
||||
lpMessageBox->Create(CRYLStringTable::m_strString[389]);
|
||||
break;
|
||||
|
||||
case 4: // 4 = <20>ο<EFBFBD><CEBF><EFBFBD> <20>ʰ<EFBFBD>
|
||||
case 4: // 4 = <20>ο<EFBFBD><CEBF><EFBFBD> <20>ʰ<EFBFBD>
|
||||
lpMessageBox = new CRYLMessageBox;
|
||||
lpMessageBox->Create(CRYLStringTable::m_strString[390]);
|
||||
break;
|
||||
|
||||
case 5: // 5 = <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||
case 5: // 5 = <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||
lpMessageBox = new CRYLMessageBox;
|
||||
lpMessageBox->Create(CRYLStringTable::m_strString[388]);
|
||||
break;
|
||||
@@ -591,7 +592,7 @@ GAME_EVENT_FUNC(ParseCSAuth)
|
||||
{
|
||||
// DWORD result1 = lpNPGameLib->Auth( dwAuthCode ) ; // AUTH 1.0
|
||||
// DWORD result2 = lpNPGameLib->Auth2( &authCode2 ) ; // AUTH 2.0
|
||||
// edith 2009.08.11 <20><><EFBFBD>Ӱ<EFBFBD><D3B0><EFBFBD> 2.5 <20><><EFBFBD><EFBFBD><D7B7>̵<EFBFBD>
|
||||
// edith 2009.08.11 <20><><EFBFBD>Ӱ<EFBFBD><D3B0><EFBFBD> 2.5 <20><><EFBFBD><EFBFBD><D7B7>̵<EFBFBD>
|
||||
DWORD result1 = 0;
|
||||
DWORD result2 = lpNPGameLib->Auth2( &authCode2 ) ; // AUTH 2.0
|
||||
/*
|
||||
|
||||
@@ -59,6 +59,16 @@ CItemInstance::CItemInstance()
|
||||
m_cCountCooldown = 0;
|
||||
m_wGrade = 0;
|
||||
|
||||
// Output detailed info if possible
|
||||
if (m_lpItemBase) {
|
||||
const Item::ItemInfo& info = m_lpItemBase->GetItemInfo();
|
||||
char logMsg[256];
|
||||
sprintf(logMsg, "[ITEM] CItemInstance created: UID=%lld, Type=%d, Name=%s, TypeName=%s\n", m_lpItemBase->GetUID(), info.m_DetailData.m_cItemType, info.m_StringData.m_szTypeName, info.m_StringData.m_szItemDescribe);
|
||||
OutputDebugStringA(logMsg);
|
||||
} else {
|
||||
OutputDebugStringA("[ITEM] CItemInstance created\n");
|
||||
}
|
||||
|
||||
m_wPutX = 0;
|
||||
m_wPutY = 0;
|
||||
|
||||
@@ -96,6 +106,16 @@ CItemInstance::~CItemInstance()
|
||||
{
|
||||
GM_DELETE( ( *it ) ) ;
|
||||
}
|
||||
|
||||
// Output detailed info if possible
|
||||
if (m_lpItemBase) {
|
||||
const Item::ItemInfo& info = m_lpItemBase->GetItemInfo();
|
||||
char logMsg[256];
|
||||
sprintf(logMsg, "[ITEM] CItemInstance destroyed: UID=%lld, Type=%d, Name=%s, TypeName=%s\n", m_lpItemBase->GetUID(), info.m_DetailData.m_cItemType, info.m_StringData.m_szTypeName, info.m_StringData.m_szItemDescribe);
|
||||
OutputDebugStringA(logMsg);
|
||||
} else {
|
||||
OutputDebugStringA("[ITEM] CItemInstance destroyed\n");
|
||||
}
|
||||
}
|
||||
|
||||
Skill::ProtoType* CItemInstance::Render(LPDIRECT3DDEVICE8 lpD3DDevice, bool bAlterSkill )
|
||||
@@ -111,13 +131,13 @@ Skill::ProtoType* CItemInstance::Render(LPDIRECT3DDEVICE8 lpD3DDevice, bool bAlt
|
||||
{
|
||||
if (m_bSkill)
|
||||
{
|
||||
// edith 2008.01.21 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Desable <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>۾<EFBFBD> <20>߰<EFBFBD><DFB0>۾<EFBFBD><DBBE><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѵ<EFBFBD>.
|
||||
// edith 2008.01.21 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Desable <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>۾<EFBFBD> <20>߰<EFBFBD><DFB0>۾<EFBFBD><DBBE><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѵ<EFBFBD>.
|
||||
m_lpSprite->m_lpTexture = g_ItemStorage.GetSkillTexture(GetItemInfo().m_SpriteData.m_szSpriteName, true);
|
||||
|
||||
if (!m_lpDSprite->m_lpTexture)
|
||||
{
|
||||
// edith 2008.01.21 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Desable <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>۾<EFBFBD> <20>߰<EFBFBD><DFB0>۾<EFBFBD><DBBE><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѵ<EFBFBD>.
|
||||
// desable <20>ؽ<EFBFBD><D8BD><EFBFBD>
|
||||
// edith 2008.01.21 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Desable <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>۾<EFBFBD> <20>߰<EFBFBD><DFB0>۾<EFBFBD><DBBE><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѵ<EFBFBD>.
|
||||
// desable <20>ؽ<EFBFBD><D8BD><EFBFBD>
|
||||
m_lpDSprite->m_lpTexture = g_ItemStorage.GetSkillTexture(GetItemInfo().m_SpriteData.m_szSpriteName, false);
|
||||
}
|
||||
}
|
||||
@@ -130,7 +150,7 @@ Skill::ProtoType* CItemInstance::Render(LPDIRECT3DDEVICE8 lpD3DDevice, bool bAlt
|
||||
CRYLSprite* lpSprite = m_lpSprite;
|
||||
if(m_bSkill && !m_bSkillEnable)
|
||||
{
|
||||
// <20><>ų<EFBFBD>̰<EFBFBD> <20><>ų<EFBFBD><C5B3> Deable <20>Ǿ<EFBFBD><C7BE><EFBFBD><EFBFBD><EFBFBD>
|
||||
// <20><>ų<EFBFBD>̰<EFBFBD> <20><>ų<EFBFBD><C5B3> Deable <20>Ǿ<EFBFBD><C7BE><EFBFBD><EFBFBD><EFBFBD>
|
||||
lpSprite = m_lpDSprite;
|
||||
}
|
||||
|
||||
@@ -434,11 +454,17 @@ int CItemInstance::SetItemInfo(const char* lpSerializedItem_In, size_t& nParseLe
|
||||
GetItemInfo().m_SpriteData.m_nSpriteMaxX,
|
||||
GetItemInfo().m_SpriteData.m_nSpriteMaxY, NULL ) ;
|
||||
|
||||
std::vector<CRYLSpriteEx*> m_vecSpriteEx ;
|
||||
std::vector<CRYLSpriteEx*> m_vecSpriteEx ;
|
||||
|
||||
m_lpTooltip = new CGUITooltipItem;
|
||||
((CGUITooltipItem *)m_lpTooltip)->SetItem(this);
|
||||
|
||||
// Output detailed info
|
||||
const Item::ItemInfo& info = m_lpItemBase->GetItemInfo();
|
||||
char logMsg[256];
|
||||
sprintf(logMsg, "[ITEM] SetItemInfo: UID=%lld, Type=%d, Name=%s, TypeName=%s\n", m_dwItemUID, GetItemType(), info.m_StringData.m_szTypeName, info.m_StringData.m_szItemDescribe);
|
||||
OutputDebugStringA(logMsg);
|
||||
|
||||
if (GetItemType() == Item::ItemType::POTION)
|
||||
{
|
||||
m_lCoolDownTime = 14000;
|
||||
@@ -625,7 +651,7 @@ BOOL CItemInstance::SetSkillInfo(unsigned short wSkillID, unsigned char cGrade,
|
||||
((Item::CSkillItem *)m_lpItemBase)->SetMaxNumOrDurability(cGrade);
|
||||
SetNowDurability(cLevel);
|
||||
|
||||
// <20>̵<EFBFBD><EFBFBD><EFBFBD> <20>߰<EFBFBD>
|
||||
// <20>̵<EFBFBD> <20>߰<EFBFBD>
|
||||
m_wGrade = cGrade;
|
||||
|
||||
m_lCoolDownTime = lpSkillProtoType->m_dwCoolDownTime;
|
||||
@@ -726,7 +752,7 @@ bool CItemInstance::GetIsEnableUpgrade(void)
|
||||
cItemType == Item::ItemType::SKILL_A_GUARD || cItemType == Item::ItemType::SKILL_A_ATTACK ||
|
||||
cItemType == Item::ItemType::SKILL_A_GUN || cItemType == Item::ItemType::SKILL_A_KNIFE ||
|
||||
|
||||
// edith 2008.01.14 edith <20><><EFBFBD><EFBFBD><D7B7>̵<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>߰<EFBFBD>
|
||||
// edith 2008.01.14 edith <20><><EFBFBD><EFBFBD><D7B7>̵<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>߰<EFBFBD>
|
||||
cItemType == Item::ItemType::CON_HELM || cItemType == Item::ItemType::DEX_HELM ||
|
||||
cItemType == Item::ItemType::CON_HEAD || cItemType == Item::ItemType::DEX_HEAD ||
|
||||
|
||||
@@ -743,7 +769,7 @@ bool CItemInstance::GetIsEnableUpgrade(void)
|
||||
|
||||
bool CItemInstance::GetIsEnableAddOption(void)
|
||||
{
|
||||
// edith 2008.01.14 <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><D7B7>̵<EFBFBD> <20>߰<EFBFBD><DFB0><EFBFBD> <20><><EFBFBD>ؼ<EFBFBD> <20>ּ<EFBFBD>ó<EFBFBD><C3B3><EFBFBD><EFBFBD>.
|
||||
// edith 2008.01.14 <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><D7B7>̵<EFBFBD> <20>߰<EFBFBD><DFB0><EFBFBD> <20><><EFBFBD>ؼ<EFBFBD> <20>ּ<EFBFBD>ó<EFBFBD><C3B3><EFBFBD><EFBFBD>.
|
||||
if (true == GetIsEnableUpgrade()
|
||||
// ||
|
||||
// GetItemType() == Item::ItemType::CON_HELM ||
|
||||
@@ -936,7 +962,7 @@ unsigned short CItemInstance::GetSkillID( bool bAlterSkill )
|
||||
{
|
||||
const Skill::ProtoType* lpSkillBase = g_SkillMgr.GetSkillProtoType(m_lpItemBase->GetPrototypeID());
|
||||
|
||||
// <20><><EFBFBD>ͳ<EFBFBD>Ƽ<EFBFBD><C6BC> <20><>ų
|
||||
// <20><><EFBFBD>ͳ<EFBFBD>Ƽ<EFBFBD><C6BC> <20><>ų
|
||||
if ( 0 != lpSkillBase->m_usChildSkill )
|
||||
{
|
||||
m_wPreProtoTypeID = lpSkillBase->m_usChildSkill;
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
<LocalDebuggerCommand>F:\YouxiLand\ROW\Client.exe</LocalDebuggerCommand>
|
||||
<DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>
|
||||
<LocalDebuggerCommandArguments>192.168.219.226</LocalDebuggerCommandArguments>
|
||||
<ShowAllFiles>true</ShowAllFiles>
|
||||
<ShowAllFiles>false</ShowAllFiles>
|
||||
<LocalDebuggerWorkingDirectory>F:\YouxiLand\ROW</LocalDebuggerWorkingDirectory>
|
||||
</PropertyGroup>
|
||||
</Project>
|
||||
@@ -64,11 +64,11 @@ void CSkillSystem::Update()
|
||||
{
|
||||
bActive = CSceneManager::m_EffectManager.ProcessScript(scnt);
|
||||
|
||||
if (bActive == 2)// S - M - E <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Script <20>϶<EFBFBD> target<65><74> <20><><EFBFBD><EFBFBD> <20>浹<EFBFBD>ϴ<EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||
if (bActive == 2)// S - M - E <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Script <20>϶<EFBFBD> target<65><74> <20><><EFBFBD><EFBFBD> <20>浹<EFBFBD>ϴ<EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||
{
|
||||
/* char *esf_name = NULL;
|
||||
esf_name = CSceneManager::m_EffectManager.GetEsfName(scnt);
|
||||
if (esf_name != NULL) { //ȭ<><C8AD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ȿ<><C8BF><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><>
|
||||
if (esf_name != NULL) { //ȭ<><C8AD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ȿ<><C8BF><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><>
|
||||
if (strstr(esf_name,"arrow_normal")!= NULL) {
|
||||
for (int cChr = 0; cChr < g_CharacterData.m_lstCharData.num; cChr++) {
|
||||
if (!g_CharacterData.m_lstCharData[cChr]->m_lpChrModel) continue;
|
||||
@@ -88,12 +88,12 @@ void CSkillSystem::Update()
|
||||
|
||||
if (CSceneManager::m_EffectManager.CheckScript(scnt, (*it)->m_lpEffectIndex))
|
||||
{
|
||||
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD>̾<EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> effect setting(<28><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ѵ<EFBFBD> effect script <20>ȿ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD>)
|
||||
// <20><><EFBFBD> <20><><EFBFBD>̾<EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> effect setting(<28><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ѵ<EFBFBD> effect script <20>ȿ<EFBFBD> <20><><EFBFBD><EEB0A1> <20><> <20><><EFBFBD><EFBFBD>)
|
||||
char *esf_name = NULL;
|
||||
esf_name = CSceneManager::m_EffectManager.GetEsfName(scnt);
|
||||
if (esf_name != NULL)
|
||||
{
|
||||
// ȭ<><C8AD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ȿ<><C8BF><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><>
|
||||
// ȭ<><C8AD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ȿ<><C8BF><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><>
|
||||
int arrow_value = -1;
|
||||
|
||||
if (strstr(esf_name,"A_Dfire1.esf") != NULL) { arrow_value = 1; }
|
||||
@@ -169,8 +169,8 @@ void CSkillSystem::Update()
|
||||
}
|
||||
}
|
||||
|
||||
BOOL bGod = TRUE; // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||
BOOL bCanDead = FALSE; // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||
BOOL bGod = TRUE; // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||
BOOL bCanDead = FALSE; // <20><><EFBFBD><EFBFBD> <20><><EFBFBD>
|
||||
if (lpSkillNode->m_wSkill & 0x8000)
|
||||
{
|
||||
if (lpSkillProtoType)
|
||||
@@ -192,19 +192,19 @@ void CSkillSystem::Update()
|
||||
|
||||
if (lpSkillNode->m_wSkill == 0x9502 || lpSkillNode->m_wSkill == 0x9506)
|
||||
{
|
||||
// <20><><EFBFBD>̾/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ <20><>ų <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> źȯ <20>Һ<EFBFBD>
|
||||
// <20><><EFBFBD>̾/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ <20><>ų <20><><EFBFBD><EFBFBD> źȯ <20>Һ<EFBFBD>
|
||||
unsigned short wAmmo = 4003;
|
||||
CItemInstance *lpItem = pGame->m_csStatus.GetInventoryItemfromID(wAmmo);
|
||||
|
||||
if (lpItem && !ClientSocket::IsNSFlagChainChecked(CmdCharUseItem) )
|
||||
{
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ϰ<EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ƴ<EFBFBD> <20><><EFBFBD><EFBFBD> <20><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ϰ<EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ƴ<EFBFBD> <20><><EFBFBD> <20><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||
SendPacket::CharUseItem(g_GameSession,
|
||||
CRYLNetworkData::Instance()->m_dwMyChrID,
|
||||
CRYLNetworkData::Instance()->m_dwMyChrID,
|
||||
&lpItem->m_lpItemBase->GetPos());
|
||||
|
||||
// <20><><EFBFBD>̾ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>ų <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ǵ<EFBFBD> <20>κ<EFBFBD>.
|
||||
// <20><><EFBFBD>̾ <20><><EFBFBD><EFBFBD> <20><>ų <20><><EFBFBD>Ǵ<EFBFBD> <20>κ<EFBFBD>.
|
||||
g_CharacterData.MakeSkillAttackInfo(lpSkillNode->m_dwTargetChrID,
|
||||
lpSkillNode->m_wSkill, lpSkillNode->m_wSkillGrade,
|
||||
lpSkillNode->m_cLevel, lpSkillNode->m_wNumAttack, bGod, bCanDead);
|
||||
@@ -214,7 +214,7 @@ void CSkillSystem::Update()
|
||||
{
|
||||
if (NULL != lpSkillNode->m_lpUseItem)
|
||||
{
|
||||
// <20><>ų <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ؼ<EFBFBD> <20><>ų<EFBFBD><C5B3> <20><><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||
// <20><>ų <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ؼ<EFBFBD> <20><>ų<EFBFBD><C5B3> <20><><EFBFBD><EFBFBD>ϴ<EFBFBD> <20><><EFBFBD>
|
||||
g_pClientSocket->SetStatusFlag( NS_USEITEM ) ;
|
||||
SendPacket::CharUseItem( g_GameSession,
|
||||
CRYLNetworkData::Instance()->m_dwMyChrID, lpSkillNode->m_dwTargetChrID,
|
||||
@@ -223,7 +223,7 @@ void CSkillSystem::Update()
|
||||
else
|
||||
{
|
||||
// edith
|
||||
// <20>Ϲ<EFBFBD><CFB9><EFBFBD><EFBFBD><EFBFBD> <20><>ų <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// <20>Ϲ<EFBFBD><CFB9><EFBFBD><EFBFBD><EFBFBD> <20><>ų <20><><EFBFBD><EFBFBD>
|
||||
g_CharacterData.MakeSkillAttackInfo(lpSkillNode->m_dwTargetChrID,
|
||||
lpSkillNode->m_wSkill, lpSkillNode->m_wSkillGrade,
|
||||
lpSkillNode->m_cLevel, lpSkillNode->m_wNumAttack, bGod, bCanDead);
|
||||
@@ -234,7 +234,7 @@ void CSkillSystem::Update()
|
||||
}
|
||||
}
|
||||
}
|
||||
// Ȱ<>κп<CEBA> <20><><EFBFBD><EFBFBD>. <20><>ų <20>ʱ<EFBFBD>ȭ.
|
||||
// Ȱ<>κп<CEBA> <20><><EFBFBD><EFBFBD>. <20><>ų <20>ʱ<EFBFBD>ȭ.
|
||||
pGame->m_bSkillFlag = FALSE;
|
||||
|
||||
CRYLGameScene* pScene = (CRYLGameScene*)CRYLSceneManager::Instance()->FindScene(GAME_SCENE);
|
||||
@@ -250,7 +250,7 @@ void CSkillSystem::Update()
|
||||
lpSkillNode->m_wSkill != 0x8805 &&
|
||||
Skill::Type::CHANT != lpSkillProtoType->m_eSkillType)
|
||||
{
|
||||
// ForceFeedback : <20><><EFBFBD>̾/<2F><><EFBFBD>ڽ<EFBFBD>/ij<><C4B3><EFBFBD>ö<EFBFBD><C3B6><EFBFBD>/æƮ <20><><EFBFBD><EFBFBD> <20>Ϲ<EFBFBD> <20><>ų <20><><EFBFBD><EFBFBD>
|
||||
// ForceFeedback : <20><><EFBFBD>̾/<2F><><EFBFBD>ڽ<EFBFBD>/ij<><C4B3><EFBFBD>ö<EFBFBD><C3B6><EFBFBD>/æƮ <20><><EFBFBD><EFBFBD> <20>Ϲ<EFBFBD> <20><>ų <20><><EFBFBD>
|
||||
KeyControl::StartForceFeedback(2000, 2000, 1000);
|
||||
}
|
||||
}
|
||||
@@ -320,16 +320,17 @@ void CSkillSystem::Update()
|
||||
if ( !pSelfModel )
|
||||
return;
|
||||
|
||||
int nResult = CSceneManager::GetCharacterEvent( pSelfModel, EVENT_SHOT );
|
||||
int nResult = CSceneManager::GetCharacterEvent( pSelfModel, EVENT_SHOT );
|
||||
|
||||
if ( nResult )
|
||||
{
|
||||
OutputDebugStringA("[GAME] Monster attack event triggered\n");
|
||||
if ( pGame->m_lpInterface->m_dwRangedWeaponTargetChrID != 0xFFFFFFFF )
|
||||
{
|
||||
BOOL bAttackable = FALSE;
|
||||
|
||||
if ( pGame->m_csStatus.m_lstEquipment[ Item::EquipmentPos::WEAPON_HAND1 + pGame->m_csStatus.m_cWeaponPos ] )
|
||||
{
|
||||
{
|
||||
unsigned long dwType = pGame->m_csStatus.m_lstEquipment[Item::EquipmentPos::WEAPON_HAND1 + pGame->m_csStatus.m_cWeaponPos]->GetItemType();
|
||||
|
||||
if ( pGame->m_csStatus.m_lstEquipment[ Item::EquipmentPos::SHIELD_HAND1 + pGame->m_csStatus.m_cWeaponPos ] )
|
||||
@@ -339,23 +340,23 @@ void CSkillSystem::Update()
|
||||
switch(dwType)
|
||||
{
|
||||
case Item::ItemType::BOW:
|
||||
{
|
||||
{
|
||||
if ( dwArrowType == Item::ItemType::ARROW )
|
||||
{
|
||||
lpSkillNode = new CSkillNode;
|
||||
lpSkillNode->Create( pGame->m_lpInterface->m_dwRangedWeaponTargetChrID, AtType::BOW, 0, 0, NULL );
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
case Item::ItemType::CROSSBOW:
|
||||
{
|
||||
{
|
||||
if (dwArrowType == Item::ItemType::BOLT)
|
||||
{
|
||||
lpSkillNode = new CSkillNode;
|
||||
lpSkillNode->Create( pGame->m_lpInterface->m_dwRangedWeaponTargetChrID, AtType::CROSSBOW, 0, 0, NULL );
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -363,8 +364,11 @@ void CSkillSystem::Update()
|
||||
}
|
||||
}
|
||||
|
||||
nResult = CSceneManager::GetCharacterEvent( pSelfModel, EVENT_JUST);
|
||||
nResult = CSceneManager::GetCharacterEvent( pSelfModel, EVENT_JUST);
|
||||
|
||||
if ( nResult ) {
|
||||
OutputDebugStringA("[GAME] Monster attack judgement event\n");
|
||||
}
|
||||
#ifdef _NEW_KEY_
|
||||
if ( nResult && (g_DeviceInput.GetSkillHold() || KeyControl::IsKeyState(KeyControl::KEY_COLUM_CASTING)) )
|
||||
#else
|
||||
@@ -384,7 +388,7 @@ void CSkillSystem::Update()
|
||||
|
||||
if ( pSelfCreature->GetUpperActionID() + 1 == ulAction )
|
||||
{
|
||||
// <20><> <20><>ų<EFBFBD><C5B3> <20><><EFBFBD><EFBFBD> <20><><EFBFBD>õȰ<C3B5> <20><><EFBFBD><EFBFBD> <20><>ų<EFBFBD>϶<EFBFBD> Ŭ<><C5AC><EFBFBD><EFBFBD>
|
||||
// <20><> <20><>ų<EFBFBD><C5B3> <20><><EFBFBD><EFBFBD> <20><><EFBFBD>õȰ<C3B5> <20><><EFBFBD><EFBFBD> <20><>ų<EFBFBD>϶<EFBFBD> Ŭ<><C5AC><EFBFBD><EFBFBD>
|
||||
g_CharacterData.m_bComboSuccess = TRUE;
|
||||
|
||||
if ( strcmp( lpSkill->m_szCastingFileName, "NULL" ) )
|
||||
@@ -392,7 +396,7 @@ void CSkillSystem::Update()
|
||||
pSelfCreature->EndSkill( (char *)lpSkill->m_szCastingFileName );
|
||||
}
|
||||
|
||||
// <20><>ų<EFBFBD><C5B3> <20><><EFBFBD><EFBFBD><EFBFBD>ִ´<EFBFBD>.
|
||||
// <20><>ų<EFBFBD><C5B3> <20><><EFBFBD><EFBFBD>ִ´<D6B4>.
|
||||
unsigned long ulGrade, ulLevel;
|
||||
ulGrade = pSelfCreature->m_ulSkillComboCount;
|
||||
|
||||
@@ -460,7 +464,7 @@ void CSkillSystem::Update()
|
||||
lpSkillNode = GetNormalSkillNode();
|
||||
if (!lpSkillNode)
|
||||
{
|
||||
// <20>Ϲ<EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||
// <20>Ϲ<EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||
lpSkillNode = new CSkillNode;
|
||||
if ( isLeftAttack )
|
||||
{
|
||||
@@ -474,7 +478,7 @@ void CSkillSystem::Update()
|
||||
|
||||
if (!lpSkillNode->m_bFirstAttack)
|
||||
{
|
||||
// ó<><C3B3> <20><><EFBFBD><EFBFBD> <20>϶<EFBFBD> <20><>Ŷ<EFBFBD><C5B6> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
|
||||
// ó<><C3B3> <20><><EFBFBD><EFBFBD> <20>϶<EFBFBD> <20><>Ŷ<EFBFBD><C5B6> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
|
||||
float fAttackRotation[6];
|
||||
fAttackRotation[0] = -55.0f;
|
||||
fAttackRotation[1] = 30.0f;
|
||||
@@ -526,7 +530,7 @@ void CSkillSystem::Update()
|
||||
|
||||
if ( lpSkillNode->m_wNumAttack <= lpSkillNode->m_wNumAttackCount || lpSkillNode->m_wSkill == 0x9305 )
|
||||
{
|
||||
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><>ų <20><><EFBFBD>带 <20><><EFBFBD>ش<EFBFBD>.
|
||||
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><>ų <20><>带 <20><><EFBFBD>ش<EFBFBD>.
|
||||
for ( it = m_lstSkillNode.begin(); it != m_lstSkillNode.end(); it++ )
|
||||
{
|
||||
if ( (*it) == lpSkillNode )
|
||||
@@ -554,9 +558,9 @@ void CSkillSystem::Update()
|
||||
}
|
||||
else
|
||||
{
|
||||
if ( bAttack && ( g_DeviceInput.GetIsLeftMousePress() || g_CharacterData.m_bAutoTargetAttack || KeyControl::IsKeyState(KeyControl::KEY_COLUM_ATTACK)) ) // Ÿ<>̹<EFBFBD><CCB9><EFBFBD> <20>¾<EFBFBD><C2BE><EFBFBD><EFBFBD><EFBFBD>
|
||||
if ( bAttack && ( g_DeviceInput.GetIsLeftMousePress() || g_CharacterData.m_bAutoTargetAttack || KeyControl::IsKeyState(KeyControl::KEY_COLUM_ATTACK)) ) // Ÿ<>̹<EFBFBD><CCB9><EFBFBD> <20>¾<EFBFBD><C2BE><EFBFBD><EFBFBD><EFBFBD>
|
||||
{
|
||||
// <20><><EFBFBD><EFBFBD> <20><EFBFBD><DEBA><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ȴ<EFBFBD>.
|
||||
// <20><><EFBFBD> <20><EFBFBD><DEBA><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ȴ<EFBFBD>.
|
||||
if ( pGame->m_csStatus.m_lstEquipment[ 11 + pGame->m_csStatus.m_cWeaponPos ] )
|
||||
{
|
||||
if ( ++pSelfCreature->m_ulAttackCombo >= g_CharacterData.m_dwMaxCombo )
|
||||
@@ -595,7 +599,7 @@ void CSkillSystem::Update()
|
||||
{
|
||||
(*itEffect)->m_lpEffect->SetStartPos( pSelfCreature->GetPosition()->x, pSelfCreature->GetPosition()->y, pSelfCreature->GetPosition()->z);
|
||||
|
||||
// <20><>ų <20><><EFBFBD><EFBFBD>Ʈ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||
// <20><>ų <20><><EFBFBD><EFBFBD>Ʈ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||
if ( CRYLGameData::GetClientIdentity( pSelfCreature->GetCharID() ) == Creature::CT_MONSTER )
|
||||
{
|
||||
const CMonsterMgr::MonsterProtoType *lpMonster = g_MonsterMgr.GetMonsterProtoType( pSelfCreature->GetCharID() & 0x0000FFFF );
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Reference in New Issue
Block a user