So guten morgen/abend wie man es sehen mag,
Erstmal Screen von der Ganzen Sache:
Kommen wir zu dem einbau, da einige sich etwas schwer tun, sorry Speedy ich meine dich
Ich werde nur den Clientpart erklären weil bei dem Serverpart bin ich der meinung ist gut erklärt und sollte auch jeder hinnbekommen.
Also fangen wir mal an:
Ihr öffnet die "PythonNetworkSteamPhaseGame.cpp" und sucht nach:
Code:
if (on.connected & MESSENGER_CONNECTED_STATE_ONLINE)
und ersezt es komplett mit dem hier:
Code:
if (on.connected & MESSENGER_CONNECTED_STATE_ONLINE)
{
if (char_name[0] == '[')
{
CPythonMessenger::Instance().OnGamemasterLogin(char_name);
}
else
{
CPythonMessenger::Instance().OnFriendLogin(char_name);
}
}
else
{
if (char_name[0] == '[')
{
CPythonMessenger::Instance().OnGamemasterLogout(char_name);
}
else
{
CPythonMessenger::Instance().OnFriendLogout(char_name);
}
}
Sollte so Aussehen:
nun in der gleichen Datei sucht ihr:
Code:
case MESSENGER_SUBHEADER_GC_LOGIN:
und sezt unter:
Code:
CPythonMessenger::Instance().OnFriendLogin(char_name);
das hier:
Code:
if (char_name[0] == '[')
{
CPythonMessenger::Instance().OnGamemasterLogin(char_name);
}
else
{
CPythonMessenger::Instance().OnFriendLogin(char_name);
}
das gleiche bei :
Code:
case MESSENGER_SUBHEADER_GC_LOGOUT:
da unter:
Code:
CPythonMessenger::Instance().OnFriendLogout(char_name);
das hier:
Code:
if (char_name[0] == '[')
{
CPythonMessenger::Instance().OnGamemasterLogout(char_name);
}
else
{
CPythonMessenger::Instance().OnFriendLogout(char_name);
}
Sollte so aussehen:
Da ihr es 2x machen müsst habe ich es gleich auf einen Screen gepackt.
So nun gehen wir in die PythonMessenger.cpp und suchen:
Code:
void CPythonMessenger::OnFriendLogout(const char * c_szKey)
darunter schreiben wir das:
Code:
void CPythonMessenger::OnGamemasterLogin(const char * c_szKey/*, const char * c_szName*/)
{
m_GamemasterNameMap.insert(c_szKey);
if (m_poMessengerHandler)
PyCallClassMemberFunc(m_poMessengerHandler, "OnLogin", Py_BuildValue("(is)", MESSENGER_GRUOP_INDEX_GM, c_szKey));
}
void CPythonMessenger::OnGamemasterLogout(const char * c_szKey)
{
m_GamemasterNameMap.insert(c_szKey);
if (m_poMessengerHandler)
PyCallClassMemberFunc(m_poMessengerHandler, "OnLogout", Py_BuildValue("(is)", MESSENGER_GRUOP_INDEX_GM, c_szKey));
}
Sollte so aussehen:
nun gehen wir in die PythonMessnger.h, und suchen:
Code:
MESSENGER_GRUOP_INDEX_GUILD,
darunter das hier:
Code:
MESSENGER_GRUOP_INDEX_GM,
Screen:
Unter dem hier:
Code:
void OnFriendLogout(const char * c_szKey);
fügt ihr das hier ein:
Code:
void OnGamemasterLogin(const char * c_szKey);
void OnGamemasterLogout(const char * c_szKey);
Screen:
Nun sucht ihr:
Code:
TGuildMemberStateMap m_GuildMemberStateMap;
darunter fügt ihr das ein:
Code:
TGamemasterNameMap m_GamemasterNameMap;
Schaut dann so aus:
als leztes sucht ihr:
Code:
typedef std::map<std::string, BYTE> TGuildMemberStateMap;
und fügt das ein:
Code:
typedef std::set<std::string> TGamemasterNameMap;
Schaut so aus:
Das wars und es solte jezt alles klappen
.Kori