*Resursă folosită (sistem/funcție/modificare): system-event-manager-full-testat-fix-t279
*Syserr: nimic
*Fișier(e) cu problema (link pastebin / code):
*Poze / Video:
Nu aveţi permisiunea de a vizualiza fişierele ataşate acestui mesaj.
#ifdef ENABLE_EVENT_MANAGER
ACMD(do_event_manager)
{
std::vector<std::string> vecArgs;
split_argument(argument, vecArgs);
if (vecArgs.size() < 2)
{
ch->ChatPacket(CHAT_TYPE_INFO, "Usage: event_manager <info|remove|update>");
return;
}
if (vecArgs[1] == "info")
{
CHARACTER_MANAGER::Instance().SendDataPlayer(ch);
return;
}
if (vecArgs[1] == "remove")
{
if (!ch->IsGM())
return;
if (vecArgs.size() < 3)
{
ch->ChatPacket(CHAT_TYPE_INFO, "Usage: event_manager remove <index>");
return;
}
DWORD removeIndex = 0;
if (!str_to_number(removeIndex, vecArgs[2].c_str()))
{
ch->ChatPacket(CHAT_TYPE_INFO, "Invalid event index!");
return;
}
if (CHARACTER_MANAGER::Instance().CloseEventManuel(removeIndex))
ch->ChatPacket(CHAT_TYPE_INFO, "Event removed successfully!");
else
ch->ChatPacket(CHAT_TYPE_INFO, "Event not found!");
return;
}
if (vecArgs[1] == "update")
{
if (!ch->IsGM())
return;
const BYTE subHeader = EVENT_MANAGER_UPDATE;
if (!db_clientdesc)
{
ch->ChatPacket(CHAT_TYPE_INFO, "DB connection is not available!");
return;
}
db_clientdesc->DBPacket(
HEADER_GD_EVENT_MANAGER,
0,
&subHeader,
sizeof(subHeader)
);
ch->ChatPacket(CHAT_TYPE_INFO, "Event Manager update sent!");
return;
}
ch->ChatPacket(CHAT_TYPE_INFO, "Unknown Event Manager command.");
}
#endif
in syserr nu am nimicnainferoce69 scrie: ↑ Salut, încearcă pe un caracter GM comanda:
/event_manager update
Din ce văd în source, comanda trimite update-ul către DB prin HEADER_GD_EVENT_MANAGER cu EVENT_MANAGER_UPDATE.
Dacă îți apare mesajul Event Manager update sent!, dar evenimentele tot nu pornesc, atunci cel mai probabil problema e mai departe pe partea de DB, unde este tratat packet-ul ăsta.
Verifică și dacă ai ENABLE_EVENT_MANAGER activ și dacă comanda event_manager este adăugată corect în command table.
Dacă tot nu merge, pune aici handler-ul din DB pentru HEADER_GD_EVENT_MANAGER + ce îți apare în syserr și ne uităm mai exact unde se oprește.
Nu aveţi permisiunea de a vizualiza fişierele ataşate acestui mesaj.
Nu aveţi permisiunea de a vizualiza fişierele ataşate acestui mesaj.
Nu aveţi permisiunea de a vizualiza fişierele ataşate acestui mesaj.