Jump to content

návod Jak Vytvořit Jednoduchý Čas


Ronny

Recommended Posts

Ahoj lidi pokud jste hráli GTA SAN ANDREAS SINGLEPLAYER tak jste tam měli as který věžel 20:01 20:02 po sekundě ... Tak já vám ukážu jak na to :)

 

 

Uplně nahoru si dáme

#include <a_samp>
#pragma tabsize 0
#define COLOR_RED 0xAA3333AA

Pak do new

new hodina = 0, minuta = 0, timer;
new Text:Timer1;

 

Pak si tam dáme forward jinak by nám to házelo Warning možná i Error

forward hodiny();

 

A ted Public ..

 

OnGameModeInit

public OnGameModeInit()
{
   SetTimer("OnPlayerUpdateOnSecond",10000,true); // znamená že to půjde každou 1 sekundu

   timer = SetTimer("hodiny",1000,1); // zde taky
Timer1 = TextDrawCreate(551.2, 24.0,"12:00"); Začnete to ve 12:00 a umístění
TextDrawLetterSize(Timer1,0.50, 2.0); // Velikost
TextDrawBackgroundColor(Timer1,0x000000FF); //Barva
TextDrawFont(Timer1,3); // Písmo
TextDrawSetShadow(Timer1,0); // nevím
TextDrawSetOutline(Timer1,2); // nevím
TextDrawColor(Timer1,0xFF2525FF); // barva hodin
return 1;
}

OnGameModeExit

public OnGameModeExit()
{

   KillTimer(timer); // vypne čas
TextDrawDestroy(Timer1);//odstraní ho
return 1;
}

 

OnPlayerSpawn

public OnPlayerSpawn(playerid)
{

   TextDrawShowForPlayer(playerid, Timer1);// Zobrazí se
return 1;
}

 

OnPlayerDeath

public OnPlayerDeath(playerid, killerid, reason)
{
   TextDrawHideForPlayer(playerid, Timer1);//hodiny

return 1;
}

 

A ted public hodiny

 

public hodiny()
{
   if(minuta < 59)
   {
    minuta++;
   }
   else
   {
    if(hodina < 23)
    {
	    hodina++;
	    minuta = 0;
    }
    else
    {
	    hodina = 0;
    }
   }
   SetWorldTime(hodina);
   new str[8];
   if(minuta <= 9 && hodina <= 9) format(str, sizeof(str), "0%d:0%d", hodina, minuta);
   else if(minuta <= 9 && hodina > 9) format(str, sizeof(str), "%d:0%d", hodina, minuta);
   else if(minuta > 9 && hodina <= 9) format(str, sizeof(str), "0%d:%d", hodina, minuta);
   else format(str, sizeof(str), "%d:%d", hodina, minuta);
   TextDrawSetString(Timer1, str);
   return 1;
}
// Aby vedělo že to mají jít po 1 sek

 

Doufám že vám to pomohlo a že si vytovříte mod a použijete tento čas

 

Je to můj první TuT takže Děkuji že mi dáte Reputaci !

 

Nejlepé se to davá do modu nebo jako FS kde nejsou HOdiny jinak se bude křižovat ..

Ronny

Link to comment
Share on other sites

  • Administrátor

bože můj..... SetTimer("OnPlayerUpdateOnSecond",10000,true);// znamená že to půjde každou 1 sekundu a máš tam timer na 10s ...Ten public hodiny to je taky tragedie .... gettime ti nic nerika co .... a %02d taky ne co ? majn gat....

 

public hodiny()

{

new H,M,S;

gettime(H,M,S);

new str[8];

format(str,sizeof(str),"%02d:%02d", H, M);

TextDrawSetString(Timer1, str);

}

Nez zacnes psat navody tak se to aspon nauc proboha...

A pokud chces hodiny ze singlu staci ti TogglePlayerClock();

Případně jestli to chceš takhle tak :

public hodiny()

{

new H,M,S;

gettime(H,M,S);

new str[8];

format(str,sizeof(str),"%02d:%02d", M, S);

TextDrawSetString(Timer1, str);

}

Link to comment
Share on other sites

bože můj..... SetTimer("OnPlayerUpdateOnSecond",10000,true);// znamená že to půjde každou 1 sekundu a máš tam timer na 10s ...Ten public hodiny to je taky tragedie .... gettime ti nic nerika co .... a %02d taky ne co ? majn gat....

 

public hodiny()

{

new H,M,S;

gettime(H,M,S);

new str[8];

format(str,sizeof(str),"%02d:%02d", H, M);

TextDrawSetString(Timer1, str);

}

Nez zacnes psat navody tak se to aspon nauc proboha...

A pokud chces hodiny ze singlu staci ti TogglePlayerClock();

Případně jestli to chceš takhle tak :

public hodiny()

{

new H,M,S;

gettime(H,M,S);

new str[8];

format(str,sizeof(str),"%02d:%02d", M, S);

TextDrawSetString(Timer1, str);

}

 

Sice nevím kdo si ale když jsme to dělal prpové a koukal přitom na mě jeden z nejlepších Adminu tak to je asi dobře stačí když t udělají podle návodu a pojede jim to jak má ...Zkus přemýšlet než něco napíšeš

Link to comment
Share on other sites

  • Administrátor

Sice nevím kdo si ale když jsme to dělal prpové a koukal přitom na mě jeden z nejlepších Adminu tak to je asi dobře stačí když t udělají podle návodu a pojede jim to jak má ...Zkus přemýšlet než něco napíšeš

T

Tak ten admin je hovado no co ti na to mám říct když ti neřekne že 10000ms neni 1 sekunda ale 10 a ze píšeš kraviny zbytečný

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...