ljudi imam jedno pitanje
kako da kad je neko online 1 minut score mu se poveca za 1
ali kad predje 100 score da pocne sa 2 minuta da mu se povecava 1
tako i za 1000 3 minuta za 2000 5 minuta i 5000 10 minuta
i kako da moze da koristi komandu posle 1000 score?
(reko sam veliki score jer sam nesto lupnuo samo da znam kako da napravim u gamemode)
Citat: Christian_Bojic poslato Jun 29, 2010, 03:13:03 PRE PODNE
ljudi imam jedno pitanje
kako da kad je neko online 1 minut score mu se poveca za 1
ali kad predje 100 score da pocne sa 2 minuta da mu se povecava 1
tako i za 1000 3 minuta za 2000 5 minuta i 5000 10 minuta
i kako da moze da koristi komandu posle 1000 score?
(reko sam veliki score jer sam nesto lupnuo samo da znam kako da napravim u gamemode)
de malo pojasni kakav score to si tu nabaco neke primjere isus bog te nekuzi
new LevScore;
for(new i=0; i<MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
LevScore = PlayerInfo[i][pLevel];
SetPlayerScore(i, LevScore);
}
}
Eh ovo ti je DollahScoreUpdate, ja se nerazumijem bas u ovo ,ali probaj napravit slicno ovome sa GetPlayerScore...
Evo probat cu ti slozit nest...
forward ScoreUpdate();
public ScoreUpdate()
{
new score;
score = GetPlayerScore(playerid);
for(new i=0; i<MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
SetPlayerScore(i, score+1);
}
}
return 1;
}
Eh sad bi ti ja predlozio da ti to malo izmjenis... dakle to za jednu minutu probaj napravit.. (neki timer u ongamemodeinit)
Eh sad trebalo bi ti jos nesto za timer neki...
Al ovo je malo komplicirano sta si ti zadao...
Probaj recimo tri timera (ili vise) [za jednu minutu - ove sa score ispod 100, 2 minute, 3 minute], kad tako uspijes slozit tri publica sve bude ok...
Sad evo neobaziri se na ovo iznad... pogledaj ovo ispod..
forward ScoreUpdate();
forward ScoreUpdate2();
forward ScoreUpdate3();
new supdate;
new supdate2;
new supdate3;
public ScoreUpdate()
{
new score;
score = GetPlayerScore(playerid);
if(GetPlayerScore(playerid ) > 101)
{
for(new i=0; i<MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
SetPlayerScore(i, score+1);
}
}
return 1;
}
return 1;
}
public ScoreUpdate2()
{
new score;
score = GetPlayerScore(playerid);
if(GetPlayerScore(playerid ) > 1001)
{
for(new i=0; i<MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
SetPlayerScore(i, score+1);
}
}
return 1;
}
return 1;
}
public ScoreUpdate3()
{
new score;
score = GetPlayerScore(playerid);
if(GetPlayerScore(playerid ) > 2001)
{
for(new i=0; i<MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
SetPlayerScore(i, score+1);
}
}
return 1;
}
return 1;
}
public ongamemodeinit() // stavi te timere, Ctrl + f , ongamemodeinit i stavi negdje te timere, moras imat i ove newove gore...
supdate = SetTimer("ScoreUpdate",60000,true); // 60 000 ti je jedna minuta
supdate2 = SetTimer("ScoreUpdate2",120000,true); // 120 000 ti je dvije minute
supdate2 = SetTimer("ScoreUpdate2",180000,true); // 120 000 ti je tri minute
Nadam se da sam pomogao...
I jos jedna stvar, probaj uskladit ovo sa svojom skriptom sto se tice igraca (kao OnPlayerUpdate u GodFatheru) zbog toga da ti zapamti u statsima taj score kod igraca..
@ ZicMortal nauci malo osnova vise...
@ Luka, ljep primjer svida mi se
Vi niste ni pogledali ovo moje, a vec se pravite pametni... ali ja vjerujem da bi obje trebalo radit.. (mozda ako sam fualo sa GetPlayerScore)
Pa dobro znam da je tvoje po tome bolje, ali trebalo bi jednako raditi.
Citat: Luka P. poslato Jun 29, 2010, 10:46:04 PRE PODNE
Citat: [ED] ZicMortal poslato Jun 29, 2010, 10:39:58 PRE PODNE
Vi niste ni pogledali ovo moje, a vec se pravite pametni... ali ja vjerujem da bi obje trebalo radit.. (mozda ako sam fualo sa GetPlayerScore)
Svejedno, mislim da je tvoje malo efikasnije, zato Å¡to u mom kodu, Å¡to je veći broj igraÄa, viÅ¡e se timera stvara (za svakog igraÄa jedan), a u tvom su samo tri globalna timera.
Od kada je to bolje imat 50 timera umjesto 3?
ma netreba da se svadjate :D
naucio sam od vas, oba sam probao oba rade
hvala ljudi
EDIT: evo da ne postam opet zbog nesto jer bi mozda bio spam pa pitam da kako kad predje nekoliko score npr. 1000 da mu se pojavi GameTextForPlayer: PROMOTED TO LEVEL %d
Ja se ispricavam mislio sma da si rekao "moje" a ne "tvoje"... Izvini :-*
Citat: Luka P. poslato Jun 29, 2010, 16:24:32 POSLE PODNE
Citat: iYoko |v.2.0 poslato Jun 29, 2010, 16:12:40 POSLE PODNE
Ja se ispricavam mislio sma da si rekao "moje" a ne "tvoje"... Izvini :-*
Jel ima negdje blizu tvog mjesta okluista? :D
EDIT: Christian, ako koristiš moj kod onda to staviš u ScoreUpdate
if(GetPlayerScore(playerid) >= 1000 && GetPlayerScore(playerid) <= 2000)
{
KillTimer(ScoreTimer[playerid]);
ScoreTimer[playerid] = SetTimerEx("ScoreUpdate", 180000, 1, "i", playerid);
// Ovdje možeš staviti taj GameTextForPlayer
return 1;
}
nekoristim tvoj nego Xtreme Stuntages