kako da napravim score system sa vremenom

Započeo Kort!NuZ, Jun 29, 2010, 03:13:03 PRE PODNE

prethodna tema - sledeća tema

0 članova i 1 gost pregledaju ovu temu.

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..
Poslednja Izmena: Jun 29, 2010, 10:15:33 PRE PODNE od [ED] ZicMortal
Respekt: [H]265, John, [03]Garsino, LordShigi, Dujma, Carlsson, Randy, Jacobs, Hu5o, Toni, Lukas, Curtis, Ivo, Hawks, Jack, Koksildo, gonss

Haha OMG => http://zaslike.com/files/9rd5urq94yqagvdsx3i.png [ovo nema nigdje]

nastoe

@ 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)
Respekt: [H]265, John, [03]Garsino, LordShigi, Dujma, Carlsson, Randy, Jacobs, Hu5o, Toni, Lukas, Curtis, Ivo, Hawks, Jack, Koksildo, gonss

Haha OMG => http://zaslike.com/files/9rd5urq94yqagvdsx3i.png [ovo nema nigdje]

Pa dobro znam da je tvoje po tome bolje, ali trebalo bi jednako raditi.
Respekt: [H]265, John, [03]Garsino, LordShigi, Dujma, Carlsson, Randy, Jacobs, Hu5o, Toni, Lukas, Curtis, Ivo, Hawks, Jack, Koksildo, gonss

Haha OMG => http://zaslike.com/files/9rd5urq94yqagvdsx3i.png [ovo nema nigdje]

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?



    O meni:
    Geek, gamer, i internet freak :) , bavim se web-designom, umjetnoscu, game developmentom.

    Mape:
    Tutoriali: [/list]

    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
    Poslednja Izmena: Jun 29, 2010, 16:35:09 POSLE PODNE od Christian_Bojic

    Ja se ispricavam mislio sma da si rekao "moje" a ne "tvoje"... Izvini  :-*



      O meni:
      Geek, gamer, i internet freak :) , bavim se web-designom, umjetnoscu, game developmentom.

      Mape:
      Tutoriali: [/list]

      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