Balkan SA:MP

PAWN skriptanje, gamemodovi, filterskripte, include fajlovi, mape, pluginovi => Razgovor u vezi PAWN - skriptanja => Temu započeo: ... poslato Januar 12, 2020, 08:57:32 PRE PODNE

Naslov: Dani u sedmici
Poruka od: ... poslato Januar 12, 2020, 08:57:32 PRE PODNE
Problem(error/warning): Da li je moguce uraditi kada se starta mod ako je npr danas petak i u igri da bude petak,treba mi za tdove,za otvaranje salona(subotom),i za jos neke sisteme koje sam uradio. Jel to moguce ?
Dio skripte: //
Debug iz server_log(ukoliko je u pitanju crashanje servera - crashdetect log): //
Slika/video ingame problema(obavezno ako je ingame problem): //
Naslov: Odg: Dani u sedmici
Poruka od: Arkoo poslato Januar 12, 2020, 13:20:03 POSLE PODNE
Evo nešto što sam našao na ggl
[pawn]stock GetDayName(d=0,m=0,y=0) {
    /*
    0=Invalid date
    1=Sunday
    2=Monday
    ...
    7=Saturday
    */
    if(d==0&&m==0&&y==0) { //set to today if no values passed
        getdate(y, m, d);
    }

    new month[] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31},
        i;

    if (y % 4 == 0 && (y % 100 != 0 || y % 400 == 0))
        month[1] = 29;

    if (y < 1900 || m < 1 || m > 12 || d < 1 || d > month[m - 1])
        return 0;

    for (i = 1900; i < y; i++) {
        if (i % 4 == 0 && (i % 100 != 0 || i % 400 == 0))
            d += 366;
        else
            d += 365;
    }

    for (i = 0; i < m - 1; i++) {
        d += month;
    }

    return d%7+1;
}[/pawn]
[pawn]new day=GetDayName();
if(day == 1) // Nedjelja
if(day == 2) // Ponedjeljak
if(day == 3) // Utorak
if(day == 4) // Srijeda
if(day == 5) // Cetvrtak
if(day == 6) // Petak
if(day == 7) // Subota[/pawn]
provjeri radi li
ima i ovaj drugi
[pawn]GetWeekDay(day=0, month=0, year=0)
{
  if (!day)
    getdate(year, month, day);

  new
    weekday_str[10],
    j,
    e
  ;

  if (month <= 2)
  {
    month += 12;
    --year;
  }

  j = year % 100;
  e = year / 100;

  switch ((day + (month+1)*26/10 + j + j/4 + e/4 - 2*e) % 7)
  {
    case 0: weekday_str = "Saturday";
    case 1: weekday_str = "Sunday";
    case 2: weekday_str = "Monday";
    case 3: weekday_str = "Tuesday";
    case 4: weekday_str = "Wednesday";
    case 5: weekday_str = "Thursday";
    case 6: weekday_str = "Friday";
  }

  return weekday_str;
}[/pawn][pawn]GetWeekDay(); //should return the weekday of today
GetWeekDay(13, 3, 2009); //should return "Friday"[/pawn]