В начало мода
PHP код:
#define ShowTimeOfPlayerInGame(%0,%1,%2,%3) ConvertSeconds(gettime() - GetPVarInt(%0, "Time Of Player In Game"), %1, %2, %3)
В OnPlayerConnect
PHP код:
SetPVarInt(playerid, "Time Of Player In Game", gettime());
После новую функцию для конвертации секунд в формат "час/минута/секунда"
PHP код:
stock ConvertSeconds(conv_time, &conv_hour, &conv_minute,&conv_second)
{
if(conv_time <= 60)
{
conv_hour = 0;
conv_minute = 0;
conv_second = conv_time;
}
else if(conv_time > 60 && conv_time < 3600)
{
conv_hour = 0;
conv_minute = conv_time / 60;
conv_second = floatround(conv_time % 60, floatround_tozero);
}
else if(conv_time == 3600){ conv_hour = 1; conv_minute = 0; conv_second = 0; }
else if(conv_time > 3600)
{
new conv_minute_int;
conv_hour = conv_time / 3600;
minutes_int = floatround(conv_time % 3600, floatround_tozero);
conv_minute = conv_minute_int / 60;
conv_second = floatround(conv_minute_int % 60, floatround_tozero);
}
return 1;
}
И пример вывода времени:
PHP код:
new hour_in_game,
minute_in_game,
seconds_in_game;
ShowTimeOfPlayerInGame(playerid, hour_in_game, minute_in_game, seconds_in_game);
printf("Игрок с ID %d провёл в игре %d часов, %d минут и %d секунд", playerid, hour_in_game, minute_in_game, seconds_in_game);
Как-то так. В теории должно работать. Кто проверит - отпишитесь