Posts: 789
Threads: 36
Joined: Dec 2013
Reputation:
0
OnGameModeInit se llama cuando se enciende el servidor amigo, entonces si colocas la funciуn en dicho callback sуlo ejecutarнa la funciуn HoraEnPunto(); cuando lo enciendas.
Posts: 4,930
Threads: 467
Joined: Dec 2010
pawn Код:
forward HoraEnPunto();
public HoraEnPunto()
{
new hora,minuto,segundo;
gettime(hora,minuto,segundo);
if(minuto >= 60) //compueba si los minutos es mayor o igual a 60 (60 minutos igual a una hora)
{
SendClientMessageToAll(-1,"Ha pasado una hora");
//aqui le colocas la variable que guardara las horas jugadas
/*
EJEMPLO:
variable ++;
*/
}
}
Posts: 4,930
Threads: 467
Joined: Dec 2010
pawn Код:
static MinutosGuardados[MAX_PLAYERS];
//en OnPlayerConnect
MinutosGuardados[playerid] = 0;
forward HoraEnPunto();
public HoraEnPunto()//el timer colocas en 1000 milisegundos igual a un segundo
//el timer debe ser con un bucle o untimerEx con el parametro playerid y destruir y crear cuando se conecta el jugador.
{
new hora,minuto,segundo;
gettime(hora,minuto,segundo);
if(segundo >= 60)
{
MinutosGuardados[playerid]++; //cada un minuto guardarda la variable
}
if(minuto >= 60) //veifica que haya pasado 60 minutos igual una hora.
{
if( MinutosGuardados[playerid] >= minuto) //verifica si la variable que contaba los minutos es igual o mayor a los minutos actuales (que anteriormente es 60)
{
SendClientMessageToAll(-1,"Ha pasado una hora");
MinutosGuardados[playerid] = 0;//resetea la variable que cuenta los minutos para volver a contar.
//lo demas
}
}
}
Posts: 4,930
Threads: 467
Joined: Dec 2010
exacto, no te olvides de resetear la variable que contara los minutos..
Posts: 558
Threads: 30
Joined: Jun 2014
Reputation:
0
Deberнa guardar entonces tambiйn los minutos jugados, porque la cuenta en SI cumplirнa la hora jugada, y las funciones que yo harнa serнa que si el jugador con su cuenta cumplio una hora, o cuatro horas.
Entonces indicarнa que minutosguardados es 0 al conectar, pero cargar los mismos del file.
Posts: 4,930
Threads: 467
Joined: Dec 2010
¬¬...
dentro de if( MinutosGuardados[playerid] >= minuto) le colocas otro if con las horasmaxima para obtener tal funcion.
y arriba del if( MinutosGuardados[playerid] >= minuto) le colocas la variable que suma las horas como sumaste los minutos (osea pHorasJugadas).
PD: los minutos los debes de contar cuando el jugador esta jugando cuando se desconecta y conecta de nuevo debes de contar de nuevo los minutos.