Pot face din sursa ca un gm cu gradul GOD sa aiba acces la /reload a , dar nu vreau sa aiba acces si la /reload q sau /reload simplu decat la /reload a
Pot face asa ceva? Daca da cum?
Intrebare /reload a
- [RaffaeL]
-

- Mesaje: 3223
- Membru din: 19 Mar 2016, 12:58
- Server: ...
- Aprecieri: 15
- Mulţumiri: 2502
- Rezolvări prob.: 2
- Discord: Copiază ID
- Contact:
mytzaalex scrie:Pot face din sursa ca un gm cu gradul GOD sa aiba acces la /reload a , dar nu vreau sa aiba acces si la /reload q sau /reload simplu decat la /reload a
Pot face asa ceva? Daca da cum?
Pune acest quest pe server:
quest gmlogin begin
state start begin
when login with pc.is_gm() begin
command ("reload a")
end
end
end
Indiferent de grad, in momentul cand se conecteaza un GM, se executa comanda /reload aIl stiu, dar faza e ca trebuie sa ai grad IMPLEMENTOR[RaffaeL] scrie:mytzaalex scrie:Pot face din sursa ca un gm cu gradul GOD sa aiba acces la /reload a , dar nu vreau sa aiba acces si la /reload q sau /reload simplu decat la /reload a
Pot face asa ceva? Daca da cum?
Pune acest quest pe server:quest gmlogin begin state start begin when login with pc.is_gm() begin command ("reload a") end end endIndiferent de grad, in momentul cand se conecteaza un GM, se executa comanda /reload a
// cmd.cpp
// cmd_gm.cpp
Sau pur si simplu faci o comanda noua cu datele de iesire de la CASE a...
Cod: Selectaţi tot
{ "reload", do_reload, 0, POS_DEAD, GM_GOD },Cod: Selectaţi tot
ACMD(do_reload)
{
char arg1[256];
one_argument(argument, arg1, sizeof(arg1));
if (*arg1 && ch->GetGMLevel() >= GM_GOD)
{
switch (LOWER(*arg1))
{
case 'a':
ch->ChatPacket(CHAT_TYPE_INFO, "Reloading Admin infomation.");
db_clientdesc->DBPacket(HEADER_GD_RELOAD_ADMIN, 0, NULL, 0);
sys_log(0, "Reloading admin infomation.");
break;
}
}
if (ch->GetGMLevel() == GM_IMPLEMENTOR)
{
if (*arg1)
{
switch (LOWER(*arg1))
{
case 'u':
ch->ChatPacket(CHAT_TYPE_INFO, "Reloading state_user_count.");
LoadStateUserCount();
break;
case 'p':
ch->ChatPacket(CHAT_TYPE_INFO, "Reloading prototype tables,");
db_clientdesc->DBPacket(HEADER_GD_RELOAD_PROTO, 0, NULL, 0);
break;
case 's':
ch->ChatPacket(CHAT_TYPE_INFO, "Reloading notice string.");
DBManager::instance().LoadDBString();
break;
case 'q':
ch->ChatPacket(CHAT_TYPE_INFO, "Reloading quest.");
quest::CQuestManager::instance().Reload();
break;
case 'f':
fishing::Initialize();
break;
case 'c':
Cube_init ();
break;
}
}
else
{
ch->ChatPacket(CHAT_TYPE_INFO, "Reloading state_user_count.");
LoadStateUserCount();
ch->ChatPacket(CHAT_TYPE_INFO, "Reloading prototype tables,");
db_clientdesc->DBPacket(HEADER_GD_RELOAD_PROTO, 0, NULL, 0);
ch->ChatPacket(CHAT_TYPE_INFO, "Reloading notice string.");
DBManager::instance().LoadDBString();
}
}
}nu e bine, eu vreau sa aiba acces doar la /reload a daca fac ca tine o sa aiba si la /reload q.s.u.p etcstilledanger scrie:// cmd.cpp// cmd_gm.cppCod: Selectaţi tot
{ "reload", do_reload, 0, POS_DEAD, GM_GOD },Sau pur si simplu faci o comanda noua cu datele de iesire de la CASE a...Cod: Selectaţi tot
ACMD(do_reload) { char arg1[256]; one_argument(argument, arg1, sizeof(arg1)); if (*arg1 && ch->GetGMLevel() >= GM_GOD) { switch (LOWER(*arg1)) { case 'a': ch->ChatPacket(CHAT_TYPE_INFO, "Reloading Admin infomation."); db_clientdesc->DBPacket(HEADER_GD_RELOAD_ADMIN, 0, NULL, 0); sys_log(0, "Reloading admin infomation."); break; } } if (ch->GetGMLevel() == GM_IMPLEMENTOR) { if (*arg1) { switch (LOWER(*arg1)) { case 'u': ch->ChatPacket(CHAT_TYPE_INFO, "Reloading state_user_count."); LoadStateUserCount(); break; case 'p': ch->ChatPacket(CHAT_TYPE_INFO, "Reloading prototype tables,"); db_clientdesc->DBPacket(HEADER_GD_RELOAD_PROTO, 0, NULL, 0); break; case 's': ch->ChatPacket(CHAT_TYPE_INFO, "Reloading notice string."); DBManager::instance().LoadDBString(); break; case 'q': ch->ChatPacket(CHAT_TYPE_INFO, "Reloading quest."); quest::CQuestManager::instance().Reload(); break; case 'f': fishing::Initialize(); break; case 'c': Cube_init (); break; } } else { ch->ChatPacket(CHAT_TYPE_INFO, "Reloading state_user_count."); LoadStateUserCount(); ch->ChatPacket(CHAT_TYPE_INFO, "Reloading prototype tables,"); db_clientdesc->DBPacket(HEADER_GD_RELOAD_PROTO, 0, NULL, 0); ch->ChatPacket(CHAT_TYPE_INFO, "Reloading notice string."); DBManager::instance().LoadDBString(); } } }
Daca tu zici, fie ca tine
Daca citeai codul sau macar testai vedeai ca merge.
La mine merge,reload q si astea nu merg, doar reload a merge pe GOD. A fost testat inainte sa il postez...
Eu nu inteleg ce merge ca ai dat copy paste din sursa nu ai modificat nimicstilledanger scrie:La mine merge,reload q si astea nu merg, doar reload a merge pe GOD. A fost testat inainte sa il postez...
Cum zici tumytzaalex scrie:Eu nu inteleg ce merge ca ai dat copy paste din sursa nu ai modificat nimicstilledanger scrie:La mine merge,reload q si astea nu merg, doar reload a merge pe GOD. A fost testat inainte sa il postez...
-
- Informaţie
-
Cine este conectat
Utilizatori ce ce navighează pe acest forum: Niciun utilizator înregistrat și 31 vizitatori




