Miliseconds to seconds, minutes and hours - problem
#1

I'm using Emmet callbacks include so I can get function for player being paused and count his time.

Now I'm trying to convert miliseconds to seconds and later to minutes and hours but I keep getting same ammount of miliseconds ingame.

PHP код:
public OnPlayerPause(playerid)
{
    new 
pspms;
    
pms GetPlayerPausedTime(playerid);
    
ps pms 1000;
    new 
Text3D:label Create3DTextLabel("PAUSED"0x888888FF30.040.050.040.00);
    
Attach3DTextLabelToPlayer(labelplayerid0.00.00.7);
    
format(string100"* %s was afk (%dseconds)."GetName(playerid), ps);
        
SendClientMessageToAll(COLOR_DEBUGMSGstring);
    return 
1;
}
public 
OnPlayerResume(playeridtime)
{
    new 
pspms;
    
pms GetPlayerPausedTime(playerid);
    
ps pms 1000;
    if(!
IsPlayerPaused(playerid))
        
Delete3DTextLabel(pausedlabel[playerid]);
        new 
string[100];
        
format(string100"* %s was afk (%dseconds)."GetName(playerid), ps);
        
SendClientMessageToAll(COLOR_DEBUGMSGstring);
    return 
1;

Reply
#2

PHP код:
stock ConvertMillisecondsToTime(milliseconds, &minute, &second, &millisecond)
{
    
minute milliseconds 60000;
    
milliseconds -= minute 60000;

    
second milliseconds 1000;
    
milliseconds -= second 1000;

    
millisecond floatround(59 milliseconds 999);
    return 
1;
}
public 
OnPlayerPause(playerid)
{
    new 
pms;

    
pms GetPlayerPausedTime(playerid);
    new 
minutesecondmillisecond;
    
ConvertMillisecondsToTime(GetTickCount() - minutesecondmillisecond);

    new 
Text3D:label Create3DTextLabel("PAUSED"0x888888FF30.040.050.040.00);
    
Attach3DTextLabelToPlayer(labelplayerid0.00.00.7);

    
format(string100"* %s was afk (%dminute %dseconds %dmilliseconds)."GetName(playerid), minutesecondmilliseconds);
        
SendClientMessageToAll(COLOR_DEBUGMSGstring);

    return 
1;
}
public 
OnPlayerResume(playeridtime)
{
    new 
pspms;
    
pms GetPlayerPausedTime(playerid);
    new 
minutesecondmillisecond;
    
ConvertMillisecondsToTime(GetTickCount() - minutesecondmillisecond);
    if(!
IsPlayerPaused(playerid))
        
Delete3DTextLabel(pausedlabel[playerid]);
        new 
string[100];
        
format(string100"* %s was afk (%dminute %dseconds %dmilliseconds)."GetName(playerid), minutesecondmilliseconds);
        
SendClientMessageToAll(COLOR_DEBUGMSGstring);

    return 
1;

i hope this can work
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)