←  Pytania

AMXX.pl: Support AMX Mod X i SourceMod

»

Plugin na określony czas

  • +
  • -
nosound5 - zdjęcie nosound5 12.10.2011

Witam,
czy istnieje / da się zrobić funkcję aby plugin działał do odpowiedniej daty. Coś w w stylu działania pluginu na 1 adresie IP.


Z góry dzięki za pomoc.
Odpowiedz

  • +
  • -
Muzzi - zdjęcie Muzzi 12.10.2011

Pobierasz czas za pomocą format_time a potem to contain i if.
Odpowiedz

  • +
  • -
nosound5 - zdjęcie nosound5 12.10.2011

mógł byś mi to zademonstrować na przykładzie ??
Odpowiedz

  • +
  • -
Muzzi - zdjęcie Muzzi 12.10.2011

Coś takiego:

format_time(gTime, charsmax(gTime), "%twojaflaga");
if(contain(gTime,"Odpowiednie_dane_do_flagi"))
set_fail_state("Wygasla mozliwosc korzystania z pluginu");


tutaj flagi: http://www.amxmodx.o...?go=func&id=250
Odpowiedz

  • +
  • -
nosound5 - zdjęcie nosound5 29.11.2011

przepraszam że tak długo nie odzywałem się w temacie ale zrobiłem stock a w sumie to przerobiłem kod diablixa

stock is_allowed_server_czas(){
new gTime[11];
format_time(gTime, charsmax(gTime), "%Y:%m:%d");
if(!contain("2011:10:10", gTime)){
set_fail_state("Ten plugin dziala tylko na okreslony czas)");
return false;
}
return true;
}



ale wydaje mi sie że ten stock będzie łapał tylko dokładną dade tu jest "2011:10:10" a nie mniejszą od podanej.
Proszę o pomoc.
Odpowiedz

  • +
  • -
Cypis' - zdjęcie Cypis' 01.12.2011

może taki ci coś odpowiada:

stock is_allowed_server_czas()
{
new gTime[3][12];
get_time("%Y", gTime[0], 11);
if(str_to_num(gTime[0]) > 2011)
{
set_fail_state("Ten plugin dziala tylko na okreslony czas)");
return false;
}

get_time("%m", gTime[1], 11);
if(str_to_num(gTime[1]) > 10)
{
set_fail_state("Ten plugin dziala tylko na okreslony czas)");
return false;
}

get_time("%d", gTime[2], 11);
if(str_to_num(gTime[2]) > 10){
set_fail_state("Ten plugin dziala tylko na okreslony czas)");
return false;
}
return true;
}

Użytkownik Cypis' edytował ten post 01.12.2011 20:01
Odpowiedz

  • +
  • -
diablix - zdjęcie diablix 01.12.2011


stock is_allowed_server_czas(iYear, iMonth, iDay){
new sTime[3][12], iDane[3]; iDane[0] = iYear; iDane[1] = iMonth; iDane[2] = iDay;
get_time("%Y", sTime[0], sizeof sTime[]);
get_time("%m", sTime[1], sizeof sTime[]);
get_time("%d", sTime[2], sizeof sTime[]);

for(new i ; i < 3 ; i++){
if(str_to_num(sTime[i]) > iDane[i]){
set_fail_state("Ten plugin dziala tylko na okreslony czas");
return false;
}
}
return true;
}
Odpowiedz