Jump to content
  • 0

pomoc Hodiny - menšia chyba


Twixo

Dotaz

Popis problému:

Zdravím, spravil som si hodiny, kt. sa ukazujú v TD. Všetko ide, lenže ak je napr. 9 hodín, tak to ukazuje 9:30, čo neni až tak zlé, ale ak je minuta 1 - 9 to vyzerá strašne (20:9). Snažil som sa to nejak spraviť, ale stále to nešlo, tak ako som si predstavoval a po tejto poslednej úprave ma už nenapadla žiadna možnosť, tak sa opraciam k vám.

 

Chyby/varování kompilátoru a při běhu:

--

 

Kód:

 

// takže keď som chcel by to ukazoval 20:09 a nie 20:9
public HodinyUpdate(playerid)
{
    new string[256], string2[256];
    new hodina, minuta, sekunda;
    new rok, mesiac, den;
    gettime(hodina, minuta, sekunda);
    getdate(rok,mesiac,den);
    format(string,sizeof(string),"%d:%d",hodina,minuta);
    format(string2,sizeof(string2),"%d.%d.%d",den,mesiac,rok);
    PlayerTextDrawSetString(playerid,castext[playerid], string);
    PlayerTextDrawShow(playerid, castext[playerid]);
    PlayerTextDrawSetString(playerid,datumtext[playerid], string2);
    PlayerTextDrawShow(playerid, datumtext[playerid]);
    if( minuta > 10 ) // tu začína ta uprava
    {
    format(string,sizeof(string),"%d:0%d",hodina,minuta); //v TD to ukazuje stále 20:9
    PlayerTextDrawSetString(playerid,castext[playerid], string);
    PlayerTextDrawShow(playerid, castext[playerid]);
    }
    return 1;
}

// a kód, kt. som mal predtým. Viac menej iba bez podmienky if(minuta ...)...

public HodinyUpdate(playerid)
{
    new string[256], string2[256];
    new hodina, minuta, sekunda;
    new rok, mesiac, den;
    gettime(hodina, minuta, sekunda);
    getdate(rok,mesiac,den);
    format(string,sizeof(string),"%d:%d",hodina,minuta);
    format(string2,sizeof(string2),"%d.%d.%d",den,mesiac,rok);
    PlayerTextDrawSetString(playerid,castext[playerid], string);
    PlayerTextDrawShow(playerid, castext[playerid]);
    PlayerTextDrawSetString(playerid,datumtext[playerid], string2);
    PlayerTextDrawShow(playerid, datumtext[playerid]);
    return 1;
}

 

 

 

Dodatečné poznámky:

--

Link to comment
Share on other sites

5 odpovědí na tuto otázku

Recommended Posts

  • 0
  • Globální moderátor

if( minuta > 10 ) // tu začína ta uprava
 

zkus si znova intepretovat slovy tuhle podmínku icon_e_biggrin.gif

pokud je minuta větší než 10

 

 

Jinak to lze vyřešit i bez podmínky takto:

format(string,sizeof(string),"%02d:%02d",hodina,minuta); // padding nulama

Link to comment
Share on other sites

  • 0

Aha, som toto písal 3x a nevšimol som si to :d Je vidieť, že v tom horku sa nedá rozmýšlať.


Ďakujem ti za tvoje riešenie, kt. mi ušetrilo miesto ;) Môžete LOCK

Link to comment
Share on other sites

  • 0
  • Globální moderátor

Skus 

 

format(string,sizeof(string),"%d:%d",hodina,minuta);

 

format(string,sizeof(string),"%02d:%02d",hodina,minuta);

 

Taky by mělo jít icon_e_smile.gif

 

Děkujeme za hodnotný příspěvek, je to přesně to co jsem navrhnul...

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...