Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

1Del - zdjęcie

1Del

Rejestracja: 01.02.2011
Aktualnie: Nieaktywny
Poza forum Ostatnio: 13.10.2011 22:59
-----

Moje posty

W temacie: Nick Reservation System by ^Grzyboo^

14.09.2011 19:29

@UP - to jest tylko moja alternatywa (która działa)

Znalazłem kolejny błąd:

public AdminBanCmd(id, level, cid)
{
if( !cmd_access(id, level, cid, 3) ) return PLUGIN_HANDLED;
static arg[35], arg2[51];
read_argv(1, arg, sizeof(arg) - 1);

new target = cmd_target(id, arg, CMDTARGET_NO_BOTS);
if( !target ) return PLUGIN_HANDLED;

read_argv(2, arg2, sizeof(arg2) - 1);

format(stale_haslo[target], 50, "%s", arg2);
ma_haslo[target] = 1;
Zapisz(target);
set_task(5.0, "TaskBanPlayer", id + TASK_BAN);

set_hudmessage(0, 255, 0, 0.1, 0.29, 0, 6.0, 12.0)
show_hudmessage(id, "Gracz %s zostal zbanowany^nAdmin: %s^nCzas: Permanentnie^nBana mozesz wyjasnic na: %s", nazwa_gracza(target), nazwa_gracza(id), FORUM)

log_amx("%s zbanowal %s na konto. Haslo to [%s]", nazwa_gracza(id), nazwa_gracza(target), arg);
return PLUGIN_HANDLED;
}


Wszystko cacy, zmienia hasło "targetowi" po czym "banuje" (tj. kickuje) osobę która wpisała komende:)
Wg mnie powinno być (jeszcze tego nie sprawdzałem):

public AdminBanCmd(id, level, cid)
{
if( !cmd_access(id, level, cid, 3) ) return PLUGIN_HANDLED;
static arg[35], arg2[51];
read_argv(1, arg, sizeof(arg) - 1);

new target = cmd_target(id, arg, CMDTARGET_NO_BOTS);
if( !target ) return PLUGIN_HANDLED;

read_argv(2, arg2, sizeof(arg2) - 1);

format(stale_haslo[target], 50, "%s", arg2);
ma_haslo[target] = 1;
Zapisz(target);
set_task(5.0, "TaskBanPlayer", target + TASK_BAN);

set_hudmessage(0, 255, 0, 0.1, 0.29, 0, 6.0, 12.0)
show_hudmessage(target, "Gracz %s zostal zbanowany^nAdmin: %s^nCzas: Permanentnie^nBana mozesz wyjasnic na: %s", nazwa_gracza(target), nazwa_gracza(id), FORUM)

client_print(target, print_console, "||===========================================||");
client_print(target, print_console, "||[%s] Twoje konto zostalo zbanowane!", PREFIX);
client_print(target, print_console, "||[%s] Bana mozesz wyjasnic na: %s", PREFIX, FORUM);
client_print(target, print_console, "||===========================================||");
log_amx("%s zbanowal %s na konto. Haslo to [%s]", nazwa_gracza(id), nazwa_gracza(target), arg);
return PLUGIN_HANDLED;
}

W temacie: Nick Reservation System by ^Grzyboo^

14.09.2011 19:13

Plugin nie działa poprawnie:

Jeśli gracz np ma hasło "abc" i przy sprawdzaniu wpisze się 3 dowolne znaki (np 123, cba, 213) plugin zaakceptuje hasło jako poprawne.
Sugeruje zmienić:
public SprawdzHaslo(id)
{
static arg[51];
read_argv(1, arg, 50);

if ( !strlen(arg) )
{
client_print(id, print_chat, "Nie moze zostac puste! Wpisz jakas wartosc");
client_cmd(id, "messagemode Sprawdz");
return PLUGIN_HANDLED;
}
new haslo[51], haslo2[51];

if(format(haslo, 50, "%s", stale_haslo[id]) == format(haslo2, 50, "%s", arg))
{
wpisal[id] = true;
ColorChat(id, GREEN, "[%s] Wpisales dobre haslo", PREFIX)
}
else
{
client_print(id, print_chat, "Wpisales zle haslo, sprobuj jeszcze raz!");
client_cmd(id, "messagemode Sprawdz");
}

return PLUGIN_HANDLED;
}

Na:
public SprawdzHaslo(id)
{
static arg[51];
read_argv(1, arg, 50);

if ( !strlen(arg) )
{
client_print(id, print_chat, "Nie moze zostac puste! Wpisz jakas wartosc");
client_cmd(id, "messagemode Sprawdz");
return PLUGIN_HANDLED;
}
format(haslo_gracza[id], 50, "%s", arg);
new spr=strcmp(haslo_gracza[id],stale_haslo[id],0)
if(spr==0)
{
wpisal[id] = true;
ColorChat(id, GREEN, "[%s] Wpisales dobre haslo", PREFIX)
}
else
{
client_print(id, print_chat, "Wpisales zle haslo, sprobuj jeszcze raz!");
client_cmd(id, "messagemode Sprawdz");
}

return PLUGIN_HANDLED;
}

Pozdrawiam:)