Skripta koju koristim: Od 0
Detaljan opis problema: Evo pokusao sam sam da napravim ovaj payday sistem, i sad kako da napravim da je plata svakih sat vremena, ovako je kad igrac skupi 30 PDPoena.
public PayDayPoeni(i)
{
if(!IsPlayerConnected(i) || Ulogovan[i])
{
PI[i][PDPoeni] ++;
if(PI[i][PDPoeni] < 30)
{
SCM(i, RED, " >> Niste igrali doboljno dugo da bi ste dobili platu !");
}
else if(PI[i][PDPoeni] >= 30)
{
Payday(i);
}
}
return 1;
}
public Payday(i)
{
if(!IsPlayerConnected(i) || Ulogovan[i] == 0) return 1;
new iskustvo;
PI[i][Exp] ++;
iskustvo = 3 * (PI[i][Level]);
if(PI[i][Exp] < iskustvo )
{
// Ovde plata bez level upa, radice se na tome
}
else if(PI[i][Exp] >= iskustvo )
{
PI[i][Level] ++;
SetPlayerScore(i, PI[i][Level]);
PI[i][Exp] = 0;
SacuvajIgraca(i);
new str[270];
format(str, sizeof(str), "Cestitamo, sada ste level [%d]", PI[i][Level]);
SCM(i, LIGHTBLUE, str);
}
return 1;
}
Dio skripte:
Neke slike/video za lakse dobivanje pomoci(neobavezno):
kad se igrac spavna pokrenes mu timer i on mu broji exp ili sta vec i onda provera ako ima dovoljno pokrece public payday-a
Pa to je i napravljeno , pogledaj kod...
Hocu da mi plata bude svakih 1 sat, ovako je kad napuni 30 poena
Citat: Shoorty poslato Februar 25, 2014, 18:48:05 POSLE PODNE
Pa to je i napravljeno , pogledaj kod...
Hocu da mi plata bude svakih 1 sat, ovako je kad napuni 30 poena
na spawnu mu postavis to svakih 1 sat, a kada se ocita taj 1 sat onda mu ocitas drugi sat, razumes ?
Daj tajmer (ne public) da vidim na koliko min ti daje po 1 poen ako e na 1 min onda stavi na svaki 2 min ili zameni ono < 30 sa 59.
Ovako sam napravio, sad ne znam dal ce da radi.
SetTimer("PayDay",1000,1);
SetTimer("Systems",1000,1);
public Payday()
{
foreach(Player, i)
{
if(PI[i][Minute] >= 60) return SCM(i, LIGHTBLUE, " >> Niste igrali dovoljno dugo da bih ste dobili platu !");
{
new exp = PI[i][Level]*needexp;
if(PI[i][Exp] >= exp)
{
PI[i][Exp] = 0;
PI[i][Level] ++;
SetPlayerScore(i, PI[i][Level]);
SacuvajIgraca(i);
}
}
}
return 1;
}
public Systems()
{
foreach(Player, i)
{
PI[i][Sekunde] ++;
if(PI[i][Sekunde] >= 60)
{
PI[i][Sekunde] = 0;
PI[i][Minute] ++;
}
}
return 1;
}
#define needexp 4
stavi da ti treba 60 paydaypoena za isplatu plate
Pogledaj kako sam ja radio
http://balkan-samp.com/forum/index.php?topic=70258.0