SA-MP Forums Archive
Giving player +1 score every minute - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: SA-MP Scripting and Plugins (https://sampforum.blast.hk/forumdisplay.php?fid=8)
+--- Forum: Scripting Help (https://sampforum.blast.hk/forumdisplay.php?fid=12)
+--- Thread: Giving player +1 score every minute (/showthread.php?tid=459305)



Giving player +1 score every minute - Ponii - 22.08.2013

Giving player +1 score every minute

Can anyone help me with this? Thanks!


Re: Giving player +1 score every minute - detter - 22.08.2013

Код:
forward TIMER_score_incremet(id);
public TIMER_score_incremet(id)
{
    new n = GetPlayerScore(id);
    SetPlayerScore(id ,n + 1);
     
    return 1;
}

OnPlayerConnect(playerid)
{
    SetTimerEx("TIMER_score_incremet" ,60 * 1000 ,true ,"d" ,playerid);
}



Re: Giving player +1 score every minute - ProjectMan - 22.08.2013

pawn Код:
new OneScoreOneMinuteTimer;

public OnGameModeInit()
{
 OneScoreOneMinuteTimer = SetTimer("OneScoreOneMinute",60000,1);
 return 1;
}

forward OneScoreOneMinute();
public OneScoreOneMinute()
{
      for(new i = 0; i < MAX_PLAYERS+1; i++)
     {
         if (IsPlayerConnected(i))
      {
             SetPlayerScore(i,GetPlayerScore(i)+1);
          }
      }
      return 1;
}



Re : Giving player +1 score every minute - Matnix - 22.08.2013

It's not so hard to do, create a timer who give you each 60000m.s he will get a score.

pawn Код:
SetTimer("Rewards",60000, true); // on game mode init

forward Rewards();
public Rewards()
{
    // your code
    return 1;
}



Re: Giving player +1 score every minute - Sinner - 22.08.2013

With y_timers:

pawn Код:
ptask GiveScoreEveryMinute[60 * 1000](playerid) {
    GivePlayerScore(playerid, 1);
}



Re: Giving player +1 score every minute - Shaneisace - 22.08.2013

Код:
// Timer Name: ScoreUpdater
// TickRate: 1 Minutes.
task ScoreUpdater[60000]() {
	foreach(new i: Player)
	{
		// Code here
	}
}
I prefer doing it as a task rather than a "SetTimer".

EDIT: just like Sinner there


Re: Giving player +1 score every minute - Giroud12 - 22.08.2013

pawn Код:
new seconds[MAX_PLAYERS];
public OnGameModeInit()
{
    SetTimer("scoretimer", 1000, true);
    return 1;
}
public OnPlayerConnect(playerid)
{
    seconds[playerid] = 0;
    return 1;
}


forward scoretimer();
public scoretimer()
{
    for(new i; i<MAX_PLAYERS; i++)
    {
        if(!IsPlayerConnected(i)) continue;
        seconds[i] ++;
        if(seconds[i] == 60)
        {
            SetPlayerScore(i, GetPlayerScore(i) + 1);
            seconds[i] = 0;
        }
    }
    return 1;
}



Re: Giving player +1 score every minute - OmarAshraf - 23.08.2013

I got same problem too


Re: Giving player +1 score every minute - Vanter - 23.08.2013

simple
pawn Код:
//OnPlayerSpawn
        SetTimerEx("ScoreTimer",60000,false,"i",playerid);

forward ScoreTimer(playerid);
Public ScoreTimer
{
    SetPlayerScore(playerid, GetPlayerScore(playerid) +1);
    SetTimerEx("ScoreTimer",60000,false,"i",playerid);
    return 1;
}