[Pomoc]Vrijeme

Započeo shooter, Oktobar 10, 2024, 18:40:09 POSLE PODNE

prethodna tema - sledeća tema

0 članova i 1 gost pregledaju ovu temu.

Pitanje/savjet: Vec sam pisao u prosloj temi ali mi je receno da to nije za onu temu, znaci svakih sat vremena mi se mjenja vremenska prognoza i vrijeme ig ... i sve je dobro kad ne dode do 21 h, 21,22 i 23 h nesto baguje ... kad se to desi i kad vrijeme sa /tod vratim na 20 h ili bilo koje drugo osim tih tri, je sve uredu ...  ispod slike i kod ..
Opširnije: 21h- https://imgur.com/T5cOHYd
22h- https://imgur.com/Ra8tUN6
Dodatno:
public DinamicWeather()
{
	new tmphour,
	    tmpminute,
		tmpsecond;


	gettimeEx(tmphour, tmpminute, tmpsecond);
	FixHour( tmphour );
	tmphour = shifthour;
	
	#if ZIMSKI_MOD == 1
    SetWeather( 14 );
    ServerInfo[ Prognozasys ] = 14;
    #else
	
	if( tmphour >= 6 && tmphour <= 20 ) {

    	new RandomWeather;
    	RandomWeather = random(10);
    	switch(RandomWeather)
    	{
         	case 0:
         	{
            	SetWeather(1);
            	SendClientMessageToAll( NARANDZASTA1, "  *VREMENSKA PROGNOZA: Vreme je suncano i ugodno." );
            	ServerInfo[ Prognozasys ] = 1;
	     	}
	     	case 1:
	     	{
            	SetWeather(7);
	        	SendClientMessageToAll(NARANDZASTA1, "  *VREMENSKA PROGNOZA: Vreme je tmurno i oblacno. ");
	        	ServerInfo[ Prognozasys ] = 7;
	     	}
	     	case 2:
	     	{
	        	SetWeather(8);
	        	SendClientMessageToAll(NARANDZASTA1, "  *VREMENSKA PROGNOZA: Kisa je pocela da pada. Upozoravaju se vozaci da opreznije voze radi skliskih kolnika.");
	        	ServerInfo[ Prognozasys ] = 8;
         	}
	     	case 3:
	     	{
	        	SetWeather(13);
	        	SendClientMessageToAll(NARANDZASTA1, "  *VREMENSKA PROGNOZA: Vreme je suncano i odlicno za odlazak na plazu. Temperatura vode je ugodnih 22C.");
	        	ServerInfo[ Prognozasys ] = 13;
	     	}
         	case 4:
	     	{
	        	SetWeather(15);
	        	SendClientMessageToAll(NARANDZASTA1, "  *VREMENSKA PROGNOZA: Vreme je oblacno i vjetrovito. Brzina vjetra iznosi 20km/h.");
	        	ServerInfo[ Prognozasys ] = 15;
	     	}
 	     	case 5:
         	{
	        	SetWeather(17);
	        	SendClientMessageToAll(NARANDZASTA1, "  *VREMENSKA PROGNOZA: Vreme je oblacno i ugodno za setnje prirodom.");
	        	ServerInfo[ Prognozasys ] = 17;
	    	}
 	     	case 6:
         	{
	        	SetWeather(24);
	        	SendClientMessageToAll(NARANDZASTA1, "  *VREMENSKA PROGNOZA: Vreme je suncano. Preporucuje se da se pije sto vise tekucine radi vrucina.");
	        	ServerInfo[ Prognozasys ] = 24;
	    	}
	     	case 7:
	     	{
	        	SetWeather(10);
	        	SendClientMessageToAll(NARANDZASTA1, "  *VREMENSKA PROGNOZA: Vreme je svjeze i suncano. Temperatura zraka iznosi 29C");
	        	ServerInfo[ Prognozasys ] = 10;
	     	}
	     	case 8:
	     	{
	        	SetWeather(43);
	        	SendClientMessageToAll(NARANDZASTA1, "  *VREMENSKA PROGNOZA: Vreme je maglovito i tmurno.");
	        	SendClientMessageToAll(NARANDZASTA1, "  *VREMENSKA PROGNOZA: Upozoravaju se vozaci da opreznije voze radi slabije vidljivosti na cestama.");
	        	ServerInfo[ Prognozasys ] = 43;
	    	}
	     	case 9:
         	{
	        	SetWeather(40);
	        	SendClientMessageToAll(NARANDZASTA1, "  *VREMENSKA PROGNOZA: Vreme je ugodno i suncano.");
	        	ServerInfo[ Prognozasys ] = 40;
	     	}
		}
	}
	else if( tmphour >= 21 && tmphour <= 5 ) {
		SetWeather( 10 );
		ServerInfo[ Prognozasys ] = 10;
	}
	#endif
	return 1;
}

CMD:tod( playerid, params[] ) {
    if( PlayerInfo[ playerid ][ xAdmin ] >= 4  ) {
        if( !AdminDuty[ playerid ] ) return SendErrorMessage( playerid, "Da bi koristili ovu komandu morate biti admin na duznosti" );
		new vreme;
		if( sscanf( params, "i", vreme ) ) {
		    SendUsageMessage( playerid, "/tod [ vreme(0-23) ]");
			return 1;
	    }
	    SetWorldTime( vreme );
	    ServerInfo[ VremeInGame ] = vreme;
		format( globalstring, sizeof( globalstring ), "Vreme stavljeno na %d sati.", vreme );
		SCMA( ZELENA, globalstring );
	}
	else return SendErrorMessage( playerid, "Niste u mogucnosti koristiti ovu komandu." );
	return 1;
}

CMD:vreme( playerid, params[] ) {
	new vreme;
	if( PlayerInfo[ playerid ][ xAdmin ] < 4 )  return SendErrorMessage( playerid, "Niste u mogucnosti koristiti ovu komandu." );
    if( !AdminDuty[ playerid ] ) return SendErrorMessage( playerid, "Da bi koristili ovu komandu morate biti admin na duznosti" );
	if( sscanf( params, "i", vreme ) ) {
        SendUsageMessage( playerid, "/vreme [ broj ]");
        SCM( playerid, GENIUSGAMING,"_________________________________________________________Genius Gaming Vremesnki Panel____");
        SCM( playerid, GENIUSGAMING, "| "col_white"1: Sunce | 2: Kisa  | 3: Oluja | 4: Magla  | 5: Pjescana Oluja | 6: Toxic | 7: Draw Distance ");
        SCM( playerid, GENIUSGAMING,"_____________________________________________________________________________________");
	}
	if( vreme < 1 || vreme > 7 ) return SendErrorMessage( playerid, "Odabir mora biti veci od 0 i manji od 7");
  	switch( vreme ) {
        case 1: {
	        format( globalstring, sizeof( globalstring ), "VREME | %s je stavio vreme id %d.", ImeIgraca( playerid ), vreme );
	        AdminPoruka( NARACRVENA, globalstring );
	        SetWeather( 6 ); ServerInfo[ Prognozasys ] = 6;
        }
        case 2: {
	        format( globalstring, sizeof( globalstring ), "VREME | %s je stavio vreme id %d.", ImeIgraca( playerid ), vreme );
	        AdminPoruka( NARACRVENA, globalstring );
	        SetWeather( 16 ); ServerInfo[ Prognozasys ] = 16;
        }
        case 3: {
	        format( globalstring, sizeof( globalstring ), "VREME | %s je stavio vreme id %d.", ImeIgraca( playerid ), vreme );
	        AdminPoruka( NARACRVENA, globalstring );
	        SetWeather( 8 ); ServerInfo[ Prognozasys ] = 8;
        }
        case 4: {
	        format( globalstring, sizeof( globalstring ), "VREME | %s je stavio vreme id %d.", ImeIgraca( playerid ), vreme );
	        AdminPoruka( NARACRVENA, globalstring );
	        SetWeather( 9 ); ServerInfo[ Prognozasys ] = 9;
        }
        case 5: {
	        format( globalstring, sizeof( globalstring ), "VREME | %s je stavio vreme id %d.", ImeIgraca( playerid ), vreme );
	        AdminPoruka( NARACRVENA, globalstring );
	        SetWeather( 19 ); ServerInfo[ Prognozasys ] = 19;
        }
        case 6: {
	        format( globalstring, sizeof( globalstring ), "VREME | %s je stavio vreme id %d.", ImeIgraca( playerid ), vreme );
	        AdminPoruka( NARACRVENA, globalstring );
	        SetWeather( 20 ); ServerInfo[ Prognozasys ] = 20;
        }
        case 7: {
	        format( globalstring, sizeof( globalstring ), "VREME | %s je stavio vreme id %d.", ImeIgraca( playerid ), vreme );
	        AdminPoruka( NARACRVENA, globalstring );
	        SetWeather( -1337 );  ServerInfo[ Prognozasys ] = -1337;
		}
	}
	return 1;
}

if( ( tmphour > ghour ) || ( tmphour == 0 && ghour == 23 ) ) {


	    new stringic[ 15 ];
	    format( stringic, sizeof( stringic ), "%d/%d/%d", day, month, year );
		TextDrawSetString( SMLinija[5], stringic );

		format( globalstring, sizeof( globalstring ), "**Genius Gaming RP Server: Trenutno je %d:00 sati.", tmphour );
		OOCNews( ZUTA, globalstring );
		ghour = tmphour;

        if( tmphour == 21 ) {
			SetWeather( 10 );
		}

		if( realtime ) {
			SetWorldTime( tmphour );
			ServerInfo[ VremeInGame ] = tmphour;
		}
		DinamicWeather( );

SetWorldTime( vreme - 3);

Ako je 23, bit ce 20
22 -> 19
21 -> 18

Ako imas modove, mozda zbog njih ti baguje, ili mijenjaj weather, mozda se ne poklapaju kako treba

https://gtaforums.com/topic/736730-red-sky-bug-explaination/