problema e undeva din sursa client dar nu stiu de unde,
Tipologie server:
*Resursă folosită:
*ServerFiles utilizat:
*Syserr:
Poză:


Cod: Selectaţi tot
if (LocaleService_IsEUROPE() && GetDefaultCodePage() == 1256)
{
char * p = strchr(buf, ':');
if (p && p[1] == ' ')
p[1] = 0x08;
}
if (kChat.type >= CHAT_TYPE_MAX_NUM)
return true;
if (CHAT_TYPE_COMMAND == kChat.type)
{
ServerCommand(buf);
return true;
}
if (kChat.dwVID != 0)
{
CPythonCharacterManager& rkChrMgr=CPythonCharacterManager::Instance();
CInstanceBase * pkInstChatter = rkChrMgr.GetInstancePtr(kChat.dwVID);
if (NULL == pkInstChatter)
return true;
switch (kChat.type)
{
case CHAT_TYPE_TALKING: /* 그냥 채팅 */
case CHAT_TYPE_PARTY: /* 파티말 */
case CHAT_TYPE_GUILD: /* 길드말 */
case CHAT_TYPE_SHOUT: /* 외치기 */
case CHAT_TYPE_WHISPER: // 서버와는 연동되지 않는 Only Client Enum
{
char * p = strchr(buf, ':');
#ifdef ENABLE_PM_ON_NAME
if (p != NULL) {
p = strchr(p + 1, ':');
}
#endif
if (p)
p += 2;
else
p = buf;
DWORD dwEmoticon;
if (ParseEmoticon(p, &dwEmoticon))
{
pkInstChatter->SetEmoticon(dwEmoticon);
return true;
}
else
{
if (gs_bEmpireLanuageEnable)
{
CInstanceBase* pkInstMain=rkChrMgr.GetMainInstancePtr();
if (pkInstMain)
if (!pkInstMain->IsSameEmpire(*pkInstChatter))
__ConvertEmpireText(pkInstChatter->GetEmpireID(), p);
}
if (m_isEnableChatInsultFilter)
{
if (false == pkInstChatter->IsNPC() && false == pkInstChatter->IsEnemy())
{
__FilterInsult(p, strlen(p));
}
}
_snprintf(line, sizeof(line), "%s", p);
}
}
break;
case CHAT_TYPE_COMMAND: /* 명령 */
case CHAT_TYPE_INFO: /* 정보 (아이템을 집었다, 경험치를 얻었다. 등) */
case CHAT_TYPE_NOTICE: /* 공지사항 */
case CHAT_TYPE_BIG_NOTICE:
case CHAT_TYPE_MAX_NUM:
default:
_snprintf(line, sizeof(line), "%s", buf);
break;
}
if (CHAT_TYPE_SHOUT != kChat.type)
{
CPythonTextTail::Instance().RegisterChatTail(kChat.dwVID, line);
}
if (pkInstChatter->IsPC())
CPythonChat::Instance().AppendChat(kChat.type, buf);
}
else
{
if (CHAT_TYPE_NOTICE == kChat.type)
{
PyCallClassMemberFunc(m_apoPhaseWnd[PHASE_WINDOW_GAME], "BINARY_SetTipMessage", Py_BuildValue("(s)", buf));
}
else if (CHAT_TYPE_BIG_NOTICE == kChat.type)
{
PyCallClassMemberFunc(m_apoPhaseWnd[PHASE_WINDOW_GAME], "BINARY_SetBigMessage", Py_BuildValue("(s)", buf));
}
else if (CHAT_TYPE_SHOUT == kChat.type)
{
char * p = strchr(buf, ':');
if (p)
{
if (m_isEnableChatInsultFilter)
__FilterInsult(p, strlen(p));
}
}
CPythonChat::Instance().AppendChat(kChat.type, buf);
}
return true;
}
Utilizatori ce ce navighează pe acest forum: Bing [Bot] și 166 vizitatori