Szerző Téma: Real Time  (Megtekintve 701 alkalommal)

Nem elérhető Flips

Real Time
« Dátum: 2017. Március 03. - 12:15:43 »
0
Helló! Régen kértem már bármit is, de most megint szeretném segítségeteket kérni. Annyi lenne a lényege a scriptnek hogy Magyar idő szerint jobb felső sarokban textdrawwal írja az időt, Óra:Perc:Másodperc, dátum nem kell. Tudnátok nekem ebbe segíteni?
Előre is köszönöm!

Nem elérhető whadez

  • 719
  • DEFEATER
    • Profil megtekintése
Real Time
« Válasz #1 Dátum: 2017. Március 03. - 12:43:58 »
0
Jobban kifejezhetted volna magad. Ez olyan mint ha bemész egy autókereskedésbe és szólsz az eladónak hogy \"Kell egy autó.\"
 
UNIX Time, Idő formatálás.
 
Külföldi fórumon biztos van valami.

Nem elérhető 1Mark6

  • 437
    • Profil megtekintése
Real Time
« Válasz #2 Dátum: 2017. Március 03. - 13:30:56 »
0
A határokat feszegetve, de sikerült megcsinálni, ezt a lehetetlennek tűnő feladatot ! Egyébként körülbelül annyi, idő volt megcsinálni, mint neked megírni ezt a témát. De tessék.
 

#include <a_samp>
#define RefreshTime 1 // MP-ben megadva !
#define forpub%0(%1) forward%0(%1); public%0(%1)
new Text:Textdraw_Time;
new Timer_Time;
public OnFilterScriptInit()
{
print(\"\\nFilterscript: Real Time - script loaded ! Editor: 1Mark6\\n\");

Textdraw_Time = TextDrawCreate(608.000000, 23.000000, \"23:59:59\");
TextDrawAlignment(Textdraw_Time, 3);
TextDrawBackgroundColor(Textdraw_Time, 255);
TextDrawFont(Textdraw_Time, 2);
TextDrawLetterSize(Textdraw_Time, 0.319999, 2.099999);
TextDrawColor(Textdraw_Time, -1);
TextDrawSetOutline(Textdraw_Time, 1);
TextDrawSetProportional(Textdraw_Time, 1);
TextDrawSetSelectable(Textdraw_Time, 0);

Timer_Time = SetTimer(\"Timer_RefreshTime\",RefreshTime*1000,true);

for(new i = 0; i < GetPlayerPoolSize(); i++)
   TextDrawShowForPlayer(i,Textdraw_Time);
return 1;
}
public OnFilterScriptExit()
{
TextDrawDestroy(Textdraw_Time);
KillTimer(Timer_Time);
return 1;
}
public OnPlayerConnect(playerid)
{   
TextDrawShowForPlayer(playerid,Textdraw_Time);
return 1;
}
forpub Timer_RefreshTime()
{
TextDrawSetString(Textdraw_Time,GetFormatedTime());
return 1;
}
stock GetFormatedTime()
{
new time[3],temp[4],time_string[9];
gettime(time[0],time[1],time[2]);

if(time[0] < 10) format(temp,sizeof(temp),\"0%d:\",time[0]);
else format(temp,sizeof(temp),\"%d:\",time[0]);
strcat(time_string,temp);

if(time[1] < 10) format(temp,sizeof(temp),\"0%d:\",time[1]);
else format(temp,sizeof(temp),\"%d:\",time[1]);
strcat(time_string,temp);

if(time[2] < 10) format(temp,sizeof(temp),\"0%d\",time[2]);
else format(temp,sizeof(temp),\"%d\",time[2]);
strcat(time_string,temp);

return time_string;
}

 
A formázott idő lekérdezést, meglehet ciklussal is csinálni, de én így jobban szeretem :D
« Utoljára szerkesztve: 2017. Március 03. - 13:34:26 írta 1Mark6 »

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal