[POMOC] Samo procitajte.


Započeo crnimajmun, Januar 02, 2016, 22:29:41 POSLE PODNE

prethodna tema - sledeća tema

0 članova i 1 gost pregledaju ovu temu.

Skripta koju koristim: Radim moju.
Detaljan opis problema: Ne izbacuje prox detector kada se pali/gasi motor/svetla.
Dio skripte:
if(newkeys & KEY_SUBMISSION)
	{
	    if(IsPlayerInAnyVehicle(playerid) && GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
	    {
		    new vozilo = GetPlayerVehicleID(playerid);
		    new string[200],motor[20];
		    new engine,lights,alarm,doors,bonnet,boot,objective;
		    GetVehicleParamsEx(vozilo,engine,lights,alarm,doors,bonnet,boot,objective);
		    if(VoziloJeBiciklo(vozilo)) return 1;
		    if(engine == 0 || engine == -1)
		    {
                new Float:ostecenje;
				GetVehicleHealth(vozilo,ostecenje);
                if(ostecenje < 350.0) return SCM(playerid,-1,""CRVENA"[OS:RP]"BELA" Motor je previse ostecen,moras ga popraviti!");
                if(Gorivo[vozilo] == 0) return SCM(playerid,-1,""CRVENA"[OS:RP]"BELA" U vozilu nema vise goriva,ne mozes da upalis motor.");
                SetVehicleParamsEx(vozilo,1,lights,alarm,doors,bonnet,boot,objective);
                format(string,sizeof(string),"%s pali motor na vozilu %s.",GetName(playerid),ImeVozila[vozilo -400]);
                ProxDetector(playerid,10.0,string,PROX);
                format(motor,sizeof(motor),"Motor: ~g~+");
                PlayerTextDrawSetString(playerid,Brzinomer[playerid][8],motor);
                SCM(playerid,-1,""CRVENA"[OS:RP]"BELA" Motor uspesno upaljen!");
			}
		    else if(engine == 1)
		    {
		        SetVehicleParamsEx(vozilo,0,lights,alarm,doors,bonnet,boot,objective);
		        format(string,sizeof(string),"%s gasi motor na vozilu %s.",GetName(playerid),ImeVozila[vozilo -400]);
		        ProxDetector(playerid,10.0,string,PROX);
				format(motor,sizeof(motor),"Motor: ~r~-");
                PlayerTextDrawSetString(playerid,Brzinomer[playerid][8],motor);
                SCM(playerid,-1,""CRVENA"[OS:RP]"BELA" Motor uspesno ugasen!");
			}
		}
	}

Neke slike/video za lakse dobivanje pomoci(neobavezno): /
Ne vidim gresku u kodu.Pored proxa,ne izbacuje ni u chatu ono da je upaljeno/ugaseno...
Sve je sredjeno,imena i to.Pokazuje na brzinometru,znaci radi.Ali kao da na onaj kod gore ne reaguje.Nema returna,SCM-a,promene stringa na TD-u za brzinomer,nista.
POMOC!
Poslednja Izmena: Januar 02, 2016, 22:34:16 POSLE PODNE od crnimajmun

Probaj ovako da stavis prox....
format(string,sizeof(string),"%s pali motor na vozilu %s.",GetName(playerid),ImeVozila[vozilo -400]);
                ProxDetector(playerid,10.0,string,PROX,PROX,PROX,PROX,PROX);
    ~ Member since: 09.13.2013. - 15:30 ~

@Scripter Braun napravio sam ja svoj prox detector.Proverio sam ga sa chatom, /me i /do i ostalim i radi.
forward ProxDetector(playerid,Float:range,string[],boja); je funkcija.


Citat: crnimajmun poslato Januar 03, 2016, 00:48:43 PRE PODNE
@Scripter Braun napravio sam ja svoj prox detector.Proverio sam ga sa chatom, /me i /do i ostalim i radi.
forward ProxDetector(playerid,Float:range,string[],boja); je funkcija.


Evo ti moje pa probaj i jesi probao ovo sto sam ti poslao ???
forward ProxDetector(Float:radi, playerid, string[],col1,col2,col3,col4,col5);
public ProxDetector(Float:radi, playerid, string[],col1,col2,col3,col4,col5)
{
	if(IsPlayerConnected(playerid))
	{
		new Float:posx, Float:posy, Float:posz;
		new Float:oldposx, Float:oldposy, Float:oldposz;
		new Float:tempposx, Float:tempposy, Float:tempposz;
		GetPlayerPos(playerid, oldposx, oldposy, oldposz);
		for(new i = 0; i < MAX_PLAYERS; i++)
		{
			if(IsPlayerConnected(i) && (GetPlayerVirtualWorld(playerid) == GetPlayerVirtualWorld(i)))
			{
				if(!BigEar[i])
				{
					GetPlayerPos(i, posx, posy, posz);
					tempposx = (oldposx -posx);
					tempposy = (oldposy -posy);
					tempposz = (oldposz -posz);
					if (((tempposx < radi/16) && (tempposx > -radi/16)) && ((tempposy < radi/16) && (tempposy > -radi/16)) && ((tempposz < radi/16) && (tempposz > -radi/16)))
					{
						SCM(i, col1, string);
					}
					else if (((tempposx < radi/8) && (tempposx > -radi/8)) && ((tempposy < radi/8) && (tempposy > -radi/8)) && ((tempposz < radi/8) && (tempposz > -radi/8)))
					{
						SCM(i, col2, string);
					}
					else if (((tempposx < radi/4) && (tempposx > -radi/4)) && ((tempposy < radi/4) && (tempposy > -radi/4)) && ((tempposz < radi/4) && (tempposz > -radi/4)))
					{
						SCM(i, col3, string);
					}
					else if (((tempposx < radi/2) && (tempposx > -radi/2)) && ((tempposy < radi/2) && (tempposy > -radi/2)) && ((tempposz < radi/2) && (tempposz > -radi/2)))
					{
						SCM(i, col4, string);
					}
					else if (((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi)))
					{
						SCM(i, col5, string);
					}
			}   }
		}
	}
	return 1;
}
    ~ Member since: 09.13.2013. - 15:30 ~

Nije do prox detectora,nego do formiranja stringa.
format(string,sizeof(string),"%s pali motor na vozilu marke %s.",GetName(playerid),ImeVozila[vozilo - 400]);  <------- NE VALJA!
format(string,sizeof(string),"%s pali motor na vozilu marke %s.",GetName(playerid),ImeVozila[GetVehicleModel(vozilo) - 400]);

**Zaboravljen GetVehicleModel !
Hvala na pomoci svejedno :)
Neko ako moze lock,nov sam :)