GetGift pe timp
#1

Salut am pe server comanda /getgift,poate fi folosita doar daca ai 3 puncte de gift.Am scos punctele si vreau sa o fac pe timp,adica sa poate fi folosita din 6 in 6 ore.Cum pot face asta ?
Reply
#2

cu un timer si o variabila booleana (care poate fi 0 sau 1).
Definesti pentru fiecare player acea variabila si la conextiune o setezi ca 1.
Timer-ul il lasi oprit
Cand primeste gift-ul setezi variabila 0, pornesti timer-ul si il setezi sa nu se repete.
Cand timer-ul termina de numarat, variabila player-ului trebuie sa devina iar 1.
Si pui comanda in functie de valoarea aia.
Reply
#3

Quote:
Originally Posted by HeLiOn_PrImE
Посмотреть сообщение
cu un timer si o variabila booleana (care poate fi 0 sau 1).
Definesti pentru fiecare player acea variabila si la conextiune o setezi ca 1.
Timer-ul il lasi oprit
Cand primeste gift-ul setezi variabila 0, pornesti timer-ul si il setezi sa nu se repete.
Cand timer-ul termina de numarat, variabila player-ului trebuie sa devina iar 1.
Si pui comanda in functie de valoarea aia.
De ce sa foloseasca un timer cand poate folosi un timestamp via gettime() ?

Ceva gen:

if(variable <= gettime()) return // comanda
else return variable = gettime() + (6 * 3600), // altceva
Reply
#4

Quote:
Originally Posted by TheMaxXx
Посмотреть сообщение
De ce sa foloseasca un timer cand poate folosi un timestamp via gettime() ?

Ceva gen:

if(variable <= gettime()) return // comanda
else return variable = gettime() + (6 * 3600), // altceva
Poate ca omu vrea sa fie 6 ore jucate fara AFK. Eu am facut un timer care sa se repete odata la o secunda si acolo folosesc o variabila ce stocheaza numarul de secunde dorit. Bineinteles pe fiecare secunda se scade -1
Reply
#5

Scuze,nu prea am inteles nimic,nu pot sa imi dau seama..Comanda /getgift sa fie folosita din 6 in 6 ore chiar daca jucatorul isi petrece 6 ore afk.
Reply
#6

Nu folosesti getstamp daca vrei sa fie 6 ore ingame. E cum a spus Jamal.

Oricum nu e bine sa ii fortezi sa stea pe server pentru chestii de genul asta.
Eu ca server owner mi-ar placea sa indemn jucatorii sa isi rationeze timpul liber cum trebuie. Prea mult calculator strica.

6 ore sunt 360 de minute, sau 21600 secunde. Daca deduci asta prin metoda lui MaxXx, merge foarte bine.
Reply
#7

Helion ce spui tu provoaca lag la mai mult de 200 playeri, bine asta in conditiile in care mai ai cateva bool-uri.. recomadarea mea este sa te folosesti de functia de la PayDay, adica daca player i-a PayDay faci o variabila gen: PlayerInfo[playerid][pOreGift]++; si tot aici pui conditia: if(PlayerInfo[playerid][pOreGift] == 5) sa faci o variabila gen: statusgift[playerid] = 1; si sa setezi OreGift pe 0, apoi la comanda getgift pui conditia ca sa fie statusgift pe 1, iar daca e pe 1 sa o seteze pe 0 si sa ii de-a playerului gift-ul, e ce-a mai simpla metoda in care te folosesti deja de o functie existenta in Gm. daca nu te descurci da un PM.
Reply
#8

Am inteles cat de cat.Dar imi poti face ceva gen :
Код:
if(dddd)
{
ddd
}
s.a.m.d
Doar un model,nu vreau sa imi faci totul..
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)