Okay Leute...
zum Aufbau der OnJoin Funktion:
die besteht aus einem try{}catch(...){} Block
Im Verlauf der Funktion werden der nOnError Variable Werte zugewießen und wenn jetzt im try Block was net klappt, dann gehts ab in den catchblock, wo Charactername und nOnError ausgegeben werden
Für nOnError 4 steht folgendes im Code:
Code:
#ifdef __ON_ERROR
nOnError = 4;
#endif // __ON_ERROR
ar.ReadString( pUser->m_szPartyName, 32 );
ar.ReadString( pUser->m_szBankPass, 5 );
ar >> dwSavePlayerTime;
pUser->SetPlayerTime( dwSavePlayerTime );
#ifndef __JEFF_9_20
ar >> dwSaveFlyTime;
pUser->SetSaveFlyTime( dwSaveFlyTime );
#endif // __JEFF_9_20
ar >> nMaximumLevel;
// ÂÊÁö¸¦ ÀоîµéÀδÙ.
short nTagCount;
ar >> nTagCount;
TAG_ENTRY tags[MAX_TAGS];
for( short i=0; i<nTagCount; ++i )
{
ar >> tags[i].idFrom; // ´©±¸¿¡°Ô¼*
ar >> tags[i].dwDate; // ¾ðÁ¦
ar.ReadString( tags[i].szString, 256 ); // ÂÊÁö ³»¿ë
}
char GuildMemberTime[15] = {0,};
ar.ReadString( GuildMemberTime, 15 );
char cYear[5] = {0,};
char cMonth[3] = {0,};
char cDay[3] = {0,};
char cHour[3] = {0,};
char cMin[3] = {0,};
strncpy(cYear, GuildMemberTime, 4);
strncpy(cMonth, GuildMemberTime + 4, 2 );
strncpy(cDay, GuildMemberTime + 6, 2 );
strncpy(cHour, GuildMemberTime + 8, 2 );
strncpy(cMin, GuildMemberTime + 10, 2 );
CTime tGuildMember( atoi(cYear), atoi(cMonth), atoi(cDay), atoi(cHour), atoi(cMin), 0 );
pUser->m_tGuildMember = tGuildMember;
ar >> pUser->m_dwReturnWorldID;
ar >> pUser->m_vReturnPos;
#ifdef __EVENT_1101
#ifdef __EVENT_1101_2
ar >> pUser->m_nEventFlag;
#else // __EVENT_1101_2
ar >> pUser->m_dwEventFlag;
#endif // __EVENT_1101_2
ar >> pUser->m_dwEventTime;
ar >> pUser->m_dwEventElapsed;
#endif // __EVENT_1101
#ifdef __EXP_ANGELEXP_LOG
ar >> pUser->m_nExpLog;
ar >> pUser->m_nAngelExpLog;
#endif // __EXP_ANGELEXP_LOG
#ifdef __EVENTLUA_COUPON
ar >> pUser->m_nCoupon;
#endif // __EVENTLUA_COUPON
#if __VER >= 14 // __PCBANG
DWORD dwPCBangClass;
ar >> dwPCBangClass;
#endif // __PCBANG
#if __VER >= 15 // __GUILD_HOUSE
int nRestPoint; time_t tLogOut;
ar >> nRestPoint >> tLogOut;
if( pUser->m_idGuild != 0 )
pUser->SetRestPoint( nRestPoint );
#endif // __GUILD_HOUSE
Ich kann dir jetzt leider nicht genau sagen, wo dein Fehler liegt, aber nur soviel zu dem worum sich Ancient und Sedrika streiten ^^