Vip Sistem

Započeo Fergosonn
20. Maj 2021.
1,006
pregleda
7
postova
Fergosonn
4
Made Man
20. Maj 2021.
Problem(error/warning): Ovako kako da napravim Isticanje Vipova sistem je napravljen samo me interesuje kako da napravim da oduzima od vremene cak i kad je igrac offline
Deo skripte:
//

Debug iz server_log(ukoliko je u pitanju crashanje servera - crashdetect log):
///
Garadooo
5
Forum Don
20. Maj 2021.
Uzmes mu vrijeme kad se disconnecta i ponovo kada udje, te poredis ta dva vremena?
Fergosonn
4
Made Man
20. Maj 2021.
Galardo wrote on May 20, 2021, 2:40 pm:
Uzmes mu vrijeme kad se disconnecta i ponovo kada udje, te poredis ta dva vremena?

Ako ti nije tesko kod da mi das brate bio bi ti zahvalan puno bi mi znacilo
Fergosonn
4
Made Man
21. Maj 2021.
Galardo wrote on May 20, 2021, 2:40 pm:
Uzmes mu vrijeme kad se disconnecta i ponovo kada udje, te poredis ta dva vremena?

Ako ti nije problem malo dateljnije objasniti ako jeste ond nmvz
NegativeIQ
5
Kingpin
21. Maj 2021.
Lepo brate koristi timestamp. Kada mu dodelis VIP, na trenutni timestamp dodaj jos koliko bi hteo da taj VIP traje. Takodje kada mu dodelis taj VIP i kada se igrac connect, proveri da li je taj timestamp veci od trenutnog, ako jeste onda jos uvek ima VIP i postavi tajmer za preostalo vreme da mu skine (ako VIP istekne za vreme igre). Naravno taj timestamp moras da cuvas i loadujes.
David||BM
5
Made Man
🔥13
21. Maj 2021.
Ja bi to ovako uradio ne znam koliko je tacno testirao nisam neka me neko ispravi ukoliko gresim cod
enum PInfo{
          pVip,
          pVipDan,
          pVipMesec,
          pVipGodina
}
Pinfo


sada proveras to sve na OnPlayerConnectu
public OnplayerConnect( playerid ){
    Pinfo = 0; ( zavisi ukoliko ti je sa vipom pocetni stats stavis koji ti je vip pocetni )
    Pinfo = 0;
    Pinfo = 0;
    Pinfo = 0;
}


e sada ja ne znam da li ti je mysql ili ini eo ti za ini ne verujem da ti je mysql procesor cuvanje

komanda
CMD:postavivipa( playerplayer, params[]) {
    if(UlogovanProvera == 0) return SendClientMessage(playerplayer, 0xFF6347FF, "* Morate da se ulogujete !");
    if(Pinfo != 1)
        return SendClientMessage(playerplayer, 0xFF6347FF, "* Nemate ovlascenje za upotrebu ove komande."); // stavi tvoju varijablu
if( !AdminDuty[ playerplayer ] ) return SendClientMessage(playerplayer, 0xFF6347FF, "* Da bi koristili ovu komandu morate biti na duznosti." );
{
new player, level;
if(sscanf(params, "ud", player, level)) return SCM(playerplayer, NS_YELLOW, " "BELA"/postavivipa [player/Ime] [Level (1-7)");
if(!IsPlayerConnected(player)) return SendClientMessage(playerplayer, 0xFF6347FF, "* Pogresan player!");
if(level < 0 || level > 7) return SendClientMessage(playerplayer, 0xFF6347FF, "* Vip Level ne moze biti manji od 0 i veci od 7!");
if(level >= 1)
{
Pinfo = level;
va_SendClientMessage(player,NS_YELLOW,"  "BELA"Cestitamo, postavljen vam je VIP level %d od strane vlasnika %s", level, GetName(playerplayer));
va_SendClientMessage(player,NS_YELLOW,"  "BELA"Postavili ste igracu %s VIP level %d.", GetName(player), level);

// provjera za to sto ti zelis

new d,me,y,bx,ca;
getdate(y,me,d);
bx = d+30;
if(me == 12 && bx > 31) { ca = bx-31; me = 1; y++; }
else if(bx > 31 && me == 1) { ca = bx-31; me++; }
else if(me == 2 && bx > 29 && y == 2015) { ca = bx-29; me++; }
else if(me == 2 && bx > 28 && y == 2016) { ca = bx-28; me++; }
else if(bx > 31 && me == 3) { ca = bx-31; me++; }
else if(bx > 30 && me == 4) { ca = bx-30; me++; }
else if(bx > 31 && me == 5) { ca = bx-31; me++; }
else if(bx > 30 && me == 6) { ca = bx-30; me++; }
else if(bx > 31 && me == 7) { ca = bx-31; me++; }
else if(bx > 31 && me == 8) { ca = bx-31; me++; }
else if(bx > 30 && me == 9) { ca = bx-30; me++; }
else if(bx > 31 && me == 10) { ca = bx-31; me++; }
else if(bx > 30 && me == 11) { ca = bx-30; me++; }
else if(bx > 31 && me == 12) { ca = bx-31; me++; }
else ca = bx;
Pinfo = ca;
Pinfo = me;
Pinfo = y;
va_SendClinetMessage( playerid, 0xFF6347FF, "#Warn: Njegov VIP paket istice: %d/%d/%d godine.", Pinfo,Pinfo,Pinfo);
va_SendClientMessage( player, 0xFF6347FF, "#! Vas VIP paket istice: %d/%d/%d godine.", Pinfo,Pinfo,Pinfo);

save_acount(player);
}
else if(level == 0)
{
va_SendClientMessage(player,NS_YELLOW,"  "BELA"Skinuli ste igracu %s vipa.",GetName(player));
va_SendClientMessage(player,NS_YELLOW,"  "BELA"Vlasnik %s vam je skinuo vipa.",GetName(playerplayer));
Pinfo = 0;
Pinfo = 0;
Pinfo = 0;
Pinfo = 0;
save_acount(player);
}
}
return 1;
}


ucitavanje
 forward load_user(playerid,name[],value[]);
          public load_user(playerid,name[],value[]);{
                  INI_Int("VipDan",Pinfo);
    INI_Int("VipMesec",Pinfo);
    INI_Int("VipGodina",Pinfo);
    return 1;
}


cuvanje
{FF6347} ne moras stock a i mozes kako ti lepsi kod
 {FFFFFF} save_acount(playerid) { 
            INI_WriteInt(File,"VipDan",PlayerInfo);
    INI_WriteInt(File,"VipMesec",PlayerInfo);
    INI_WriteInt(File,"VipGodina",PlayerInfo);
}


i samo dodas na login provjeru dan/mesec/godinu koliko mu ostalo vipa i to je to...
Fergosonn
4
Made Man
21. Maj 2021.
Skorpija_026 wrote on May 21, 2021, 5:46 pm:
Ja bi to ovako uradio ne znam koliko je tacno testirao nisam neka me neko ispravi ukoliko gresim cod
enum PInfo{
          pVip,
          pVipDan,
          pVipMesec,
          pVipGodina
}
Pinfo


sada proveras to sve na OnPlayerConnectu
public OnplayerConnect( playerid ){
    Pinfo = 0; ( zavisi ukoliko ti je sa vipom pocetni stats stavis koji ti je vip pocetni )
    Pinfo = 0;
    Pinfo = 0;
    Pinfo = 0;
}


e sada ja ne znam da li ti je mysql ili ini eo ti za ini ne verujem da ti je mysql procesor cuvanje

komanda
CMD:postavivipa( playerplayer, params[]) {
    if(UlogovanProvera == 0) return SendClientMessage(playerplayer, 0xFF6347FF, "* Morate da se ulogujete !");
    if(Pinfo != 1)
        return SendClientMessage(playerplayer, 0xFF6347FF, "* Nemate ovlascenje za upotrebu ove komande."); // stavi tvoju varijablu
if( !AdminDuty[ playerplayer ] ) return SendClientMessage(playerplayer, 0xFF6347FF, "* Da bi koristili ovu komandu morate biti na duznosti." );
{
new player, level;
if(sscanf(params, "ud", player, level)) return SCM(playerplayer, NS_YELLOW, " "BELA"/postavivipa [player/Ime] [Level (1-7)");
if(!IsPlayerConnected(player)) return SendClientMessage(playerplayer, 0xFF6347FF, "* Pogresan player!");
if(level < 0 || level > 7) return SendClientMessage(playerplayer, 0xFF6347FF, "* Vip Level ne moze biti manji od 0 i veci od 7!");
if(level >= 1)
{
Pinfo = level;
va_SendClientMessage(player,NS_YELLOW,"  "BELA"Cestitamo, postavljen vam je VIP level %d od strane vlasnika %s", level, GetName(playerplayer));
va_SendClientMessage(player,NS_YELLOW,"  "BELA"Postavili ste igracu %s VIP level %d.", GetName(player), level);

// provjera za to sto ti zelis

new d,me,y,bx,ca;
getdate(y,me,d);
bx = d+30;
if(me == 12 && bx > 31) { ca = bx-31; me = 1; y++; }
else if(bx > 31 && me == 1) { ca = bx-31; me++; }
else if(me == 2 && bx > 29 && y == 2015) { ca = bx-29; me++; }
else if(me == 2 && bx > 28 && y == 2016) { ca = bx-28; me++; }
else if(bx > 31 && me == 3) { ca = bx-31; me++; }
else if(bx > 30 && me == 4) { ca = bx-30; me++; }
else if(bx > 31 && me == 5) { ca = bx-31; me++; }
else if(bx > 30 && me == 6) { ca = bx-30; me++; }
else if(bx > 31 && me == 7) { ca = bx-31; me++; }
else if(bx > 31 && me == 8) { ca = bx-31; me++; }
else if(bx > 30 && me == 9) { ca = bx-30; me++; }
else if(bx > 31 && me == 10) { ca = bx-31; me++; }
else if(bx > 30 && me == 11) { ca = bx-30; me++; }
else if(bx > 31 && me == 12) { ca = bx-31; me++; }
else ca = bx;
Pinfo = ca;
Pinfo = me;
Pinfo = y;
va_SendClinetMessage( playerid, 0xFF6347FF, "#Warn: Njegov VIP paket istice: %d/%d/%d godine.", Pinfo,Pinfo,Pinfo);
va_SendClientMessage( player, 0xFF6347FF, "#! Vas VIP paket istice: %d/%d/%d godine.", Pinfo,Pinfo,Pinfo);

save_acount(player);
}
else if(level == 0)
{
va_SendClientMessage(player,NS_YELLOW,"  "BELA"Skinuli ste igracu %s vipa.",GetName(player));
va_SendClientMessage(player,NS_YELLOW,"  "BELA"Vlasnik %s vam je skinuo vipa.",GetName(playerplayer));
Pinfo = 0;
Pinfo = 0;
Pinfo = 0;
Pinfo = 0;
save_acount(player);
}
}
return 1;
}


ucitavanje
 forward load_user(playerid,name[],value[]);
          public load_user(playerid,name[],value[]);{
                  INI_Int("VipDan",Pinfo);
    INI_Int("VipMesec",Pinfo);
    INI_Int("VipGodina",Pinfo);
    return 1;
}


cuvanje
{FF6347} ne moras stock a i mozes kako ti lepsi kod
 {FFFFFF} save_acount(playerid) { 
            INI_WriteInt(File,"VipDan",PlayerInfo);
    INI_WriteInt(File,"VipMesec",PlayerInfo);
    INI_WriteInt(File,"VipGodina",PlayerInfo);
}


i samo dodas na login provjeru dan/mesec/godinu koliko mu ostalo vipa i to je to...

TJt hvala puno i lock

Morate biti prijavljeni da biste odgovorili na ovu temu.

Prijava

© 2026 SmartShark. All rights reserved.

Powered by Momentum|v2026.3.001 Alpha