Comanda ban in joc

Totalitatea subiectelor care nu respectă regulamentul impus in sectiunea "Probleme şi Întrebări" vor fi stocate aici.
Deconectat
Avatar utilizator
Zorke
Nivel 4
Nivel 4
Mesaje: 527
Membru din: 05 Sep 2014
Localitate: Arad
Status: Lucrez la servere
Server Metin2: Metin2 Kotoba
Mulțumiri acordate: 0
Mulțumiri primite: 6

Comanda ban in joc

Mesajde Zorke » 07 Iun 2016, 17:37

Salut, cum as putea face comanda /setblock sa fie functionala in joc.. Ar trebuii atunci cand scriu /setblock Nick sa aiba accesul interzis dar nu se intampla nimic .. stie cineva?

Conectat
Avatar utilizator
ToTo™
Nivel 1
Nivel 1
Mesaje: 129
Membru din: 29 Noi 2014
Status: Sunt bine mersi ^.^
Server Metin2: Metin2NewDawn
Regat: Jinno
Mulțumiri acordate: 17
Mulțumiri primite: 1

Re: Comanda ban in joc

Mesajde ToTo™ » 07 Iun 2016, 19:04

Mi se pare ca nu poti da ban din server , doar de pe site :)

Deconectat
Avatar utilizator
Zorke
Nivel 4
Nivel 4
Mesaje: 527
Membru din: 05 Sep 2014
Localitate: Arad
Status: Lucrez la servere
Server Metin2: Metin2 Kotoba
Mulțumiri acordate: 0
Mulțumiri primite: 6

Re: Comanda ban in joc

Mesajde Zorke » 07 Iun 2016, 19:15

Trebuie sa se poata dar nu stiu exact cum .. trebuie facut ceva

Deconectat
Avatar utilizator
Zorke
Nivel 4
Nivel 4
Mesaje: 527
Membru din: 05 Sep 2014
Localitate: Arad
Status: Lucrez la servere
Server Metin2: Metin2 Kotoba
Mulțumiri acordate: 0
Mulțumiri primite: 6

Re: Comanda ban in joc

Mesajde Zorke » 08 Iun 2016, 06:52

up

Deconectat
Avatar utilizator
AlexTzutzu
Mister Just4Metin
Mister Just4Metin
Mesaje: 2265
Membru din: 12 Feb 2014
Localitate: Teleorman
Status: Hate idiot kids
Server Metin2: www.metin2hyx.com
Regat: Jinno
Mulțumiri acordate: 4
Mulțumiri primite: 10
Contact:

Re: Comanda ban in joc

Mesajde AlexTzutzu » 08 Iun 2016, 09:08

Aceasta metoda se face din sursa.
Intrați în /usr/src/your_source/Srcs/Server/game/src
Deschideți cmd.cpp și căutați:

Cod: Selectaţi tot

ACMD(do_block_chat);

Sub el puneți:

Cod: Selectaţi tot

ACMD(do_ban);

Acum căutați:

Cod: Selectaţi tot

{ "block_chat_list",do_block_chat_list, 0,          POS_DEAD,   GM_PLAYER   },

Adăugați sub el:

Cod: Selectaţi tot

{ "ban", do_ban, 0, POS_DEAD, GM_IMPLEMENTOR }

Acum intrați în cmd_gm.cpp și căutați comanda:

Cod: Selectaţi tot

ACMD(do_block_chat)

Sub toată această comandă adăugați:

Cod: Selectaţi tot

ACMD(do_ban)
{
char arg1[256], arg2[256];

const char*  szName;
int          iDuration;
 
one_argument(two_arguments(argument, arg1, sizeof(arg1), arg2, sizeof(arg2));
 
// Invalid syntax
if (!*arg1 || !*arg2)
{
    ch->ChatPacket(CHAT_TYPE_INFO, "Invalid Syntax, usage: <player name> <time in hours> tip: don't use spaces in the reason, use _");
    return;
}
 
szName      = arg1;
iDuration   = atoi(arg2);
szReason    = arg3;
 
if (iDuration <= 0)
{
    ch->ChatPacket(CHAT_TYPE_INFO, "Duration can't be 0 or minus.");
    return;
}
 
LPCHARACTER tch = CHARACTER_MANAGER::instance().FindPC(szName);
 
if (!tch)
{
    ch->ChatPacket(CHAT_TYPE_INFO, "%s nu este conectat", szName);
    return;
}
 
if (!tch->GetDesc())
{
    ch->ChatPacket(CHAT_TYPE_INFO, "%s don't have desc", szName);
    return;
}
 
if (tch == ch)
{
    ch->ChatPacket(CHAT_TYPE_INFO, "Ce este in neregula cu tine? Te banezi singur");
    return;
}
 
if (tch->GetGMLevel() > GM_PLAYER)
{
    ch->ChatPacket(CHAT_TYPE_INFO, "Nu poti bana GM");
    return;
}
 
std::auto_ptr<SQLMsg> msg(DBManager::instance().DirectQuery("UPDATE account.account SET availDt = FROM_UNIXTIME(UNIX_TIMESTAMP(CURRENT_TIMESTAMP()) + %i), iDuration * 3600, tch->GetDesc()->GetAccountTable().id));
 
tch->GetDesc()->DelayedDisconnect(5);
 
sys_log(0, "%s[%d] banned %s for %i hours", ch->GetName(), ch->GetPlayerID(), szName, iDuration);
 
ch->ChatPacket(CHAT_TYPE_INFO, "%s has been banned for %i hours", szName, iDuration);
}

Compilați și gata !

Acum intrați în joc și folosiți comanda:

/ban <Nume jucător> <Timp in ore>

Atentie:Nu am testat aceasta metoda.Nu raspund pentru eventualele erori
Imagine

the quieter you become,the more you are able to hear

Deconectat
Avatar utilizator
Rhys
Super Ad Mod
Super Ad Mod
Mesaje: 1791
Membru din: 22 Noi 2015
Localitate: Bacău
Reputație: Super Ad. Moderator ♠
Fost Helper ♠
Fost Ad. Moderator ♠
Fost Super Moderator ♠
Fost Designer ♠
Ajutor lider moderatori ♠
Nume anterior: Anthony
Status: Still alive
Server Metin2: Îmi plac fetele
Mulțumiri acordate: 11
Mulțumiri primite: 11
Contact:

Re: Comanda ban in joc

Mesajde Rhys » 11 Iun 2016, 10:01

Subiect vechi, arhivat
Imagine

Imagine




Înapoi la “Arhivă Probleme şi Întrebări”

Cine este conectat

Utilizatori ce ce navighează pe acest forum: Aerkoi, AsR0Ck, C-Zeus, danyb112, imKevin, Metin2Kingston, MSNbot Media, paullsmek, remusflorin, Soarecele, Static, Strumful, Vassy și 32 vizitatori