Zaključano

OnVehicleStreamIn

Započeo Yoppa
pre 7 godina
878
pregleda
10
postova
Ova tema je zaključana. Samo moderatori i administratori mogu odgovarati.
Yoppa
Wheel Man
pre 7 godina
Problem(error/warning): Cak i kad sam zaposlen kao bus vozac nece da udje u vozilo
Debug iz server_log(ukoliko je u pitanju crashanje servera - crashdetect log): /
Slika/video ingame problema(obavezno ako je ingame problem): /
Dio skripte:
public OnVehicleStreamIn(vehicleid, forplayerid)
{
    if(vehicleid == BusVozilo || BusVozilo || BusVozilo || BusVozilo || BusVozilo || BusVozilo || BusVozilo || BusVozilo)
    {
        if(forplayerid == POSAO_BUSVOZAC)
        {
        SetVehicleParamsForPlayer(vehicleid, forplayerid, 0, 0);
        }
        else
        {
            SetVehicleParamsForPlayer(vehicleid, forplayerid, 0, 1);
        }
    }
    return 1;
}
Purda121
OG Legend
pre 7 godina
if(PlayerInfo == POSAO_BUSVOZAC)

ili
if(PlayerInfo == POSAO_BUSVOZAC)
Yoppa
Wheel Man
pre 7 godina
Hashtag.Purda wrote on December 16, 2018, 12:55 am:
if(PlayerInfo == POSAO_BUSVOZAC)

ili
if(PlayerInfo == POSAO_BUSVOZAC)


Pokusao sam vec,i dalje isto
Jovan_Vojka
Made Man
pre 7 godina
Yoppa wrote on December 16, 2018, 12:59 am:
Pokusao sam vec,i dalje isto
if(PI == POSAO_BUSVOZAC)
Ivan_Ino
Kingpin
pre 7 godina
Prvo ti ovo nije validna provjera
 if(vehicleid == BusVozilo || BusVozilo || BusVozilo || BusVozilo || BusVozilo || BusVozilo || BusVozilo || BusVozilo)

ovo ti je isto kao
if (vehicleid == BusVozilo || true || true || true...)

trebas svaku vrijednost usporediti sa varijablom, npr
if (vehicleid == BusVozilo || vehicleid == BusVozilo....)


ili preko switch ili for petlje

Drugo parametar forplayerid je ID igraca kojem se streamalo vozilo, znaci id igraca npr. id 1 gdje je forplayerid = 1, a POSAO_BUSVOZAC moze biti bilo sta, u prijevodu imas logicku gresku tu

i Trece, posto je kraca provjera, prvo provjeri da li igrac ima taj posao POSAO_BUSVOZAC, pa tek onda provjeru za odredjena vozila, tako ce ti biti optimiziranije donekle
Yoppa
Wheel Man
pre 7 godina
Ino42O wrote on December 16, 2018, 12:40 pm:
Prvo ti ovo nije validna provjera
 if(vehicleid == BusVozilo || BusVozilo || BusVozilo || BusVozilo || BusVozilo || BusVozilo || BusVozilo || BusVozilo)

ovo ti je isto kao
if (vehicleid == BusVozilo || true || true || true...)

trebas svaku vrijednost usporediti sa varijablom, npr
if (vehicleid == BusVozilo || vehicleid == BusVozilo....)


ili preko switch ili for petlje

Drugo parametar forplayerid je ID igraca kojem se streamalo vozilo, znaci id igraca npr. id 1 gdje je forplayerid = 1, a POSAO_BUSVOZAC moze biti bilo sta, u prijevodu imas logicku gresku tu

i Trece, posto je kraca provjera, prvo provjeri da li igrac ima taj posao POSAO_BUSVOZAC, pa tek onda provjeru za odredjena vozila, tako ce ti biti optimiziranije donekle


Zapravo je totalno drugacije 🙂
public OnVehicleStreamIn(vehicleid, forplayerid)
{
    if(vehicleid == BusVozilo || BusVozilo || BusVozilo || BusVozilo || BusVozilo || BusVozilo || BusVozilo || BusVozilo) //vehicle id je = svako bus vozilo.
    {
        if(forplayerid == POSAO_BUSVOZAC) //forplayerid je za kojeg se strima,isto kao playerid, tako da provjerava ako je igrac zaposlen kao bus vozac.
        {
        SetVehicleParamsForPlayer(vehicleid, forplayerid, 0, 0); //okljucava vozilo za bus vozaca
        }
        else
        {
            SetVehicleParamsForPlayer(vehicleid, forplayerid, 0, 1); //zakljucava vozilo ako nije bus vozac
        }
    }
    return 1;
}
Ivan_Ino
Kingpin
pre 7 godina
Izgleda da me nismo razumili, procitaj ponovo moj post
expressoboy123
Godfather
pre 7 godina
Prouci malo for petlju i bice ti dosta lakse 😄. Inace ovo vecina radi u state change funkciji a ostalo ti je ino objasnio.
Macas
Enforcer
pre 7 godina

public OnVehicleStreamIn(vehicleid, forplayerid)
{
    if(vehicleid == BusVozilo || BusVozilo || BusVozilo || BusVozilo || BusVozilo || BusVozilo || BusVozilo || BusVozilo) //vehicle id je = svako bus vozilo.
    {
        if(forplayerid == POSAO_BUSVOZAC) //forplayerid je za kojeg se strima,isto kao playerid, tako da provjerava ako je igrac zaposlen kao bus vozac.
        {
        SetVehicleParamsForPlayer(vehicleid, forplayerid, 0, 0); //okljucava vozilo za bus vozaca
        }
        else
        {
            SetVehicleParamsForPlayer(vehicleid, forplayerid, 0, 1); //zakljucava vozilo ako nije bus vozac
        }
    }
    return 1;
}
if(vehicleid == BusVozilo || BusVozilo || BusVozilo || BusVozilo || BusVozilo || BusVozilo || BusVozilo || BusVozilo)
//vehicle id je = svako bus vozilo.
Ovako je vehicleid svako bus vozilo
for(new i = 0; i < MAXBUSVOZILA/*primer*/; i++)
{
    if(vehicleid == BusVozilo)
    {
        //kod.....
    }
}

ili
if(vehicleid == BusVozilo || vehicleid == BusVozilo.....)
 if(forplayerid == POSAO_BUSVOZAC) //forplayerid je za kojeg se strima,isto kao playerid, tako da provjerava ako je igrac zaposlen kao bus vozac. 

u ovom slucaju ako je playerid ili kako vec ti nazoves forplayerid jednak POSAO_BUSVOZAC odradice  dalje kod, neka je POSAO_BUSVOZAC broj 1-10 a tvoj id 0 nikad nece odraditi dalje kod
a ovako proverava da li je igrac zaposlen kao vozac
if(PlayerInfo == POSAO_BUSVOZAC)
{
    //kod....
}

ili
if(PlayerInfo == POSAO_BUSVOZAC)
{
    //kod....
}
NatorFlip
Rookie
pre 7 godina
Prvi propust:
public OnVehicleStreamIn(vehicleid, forplayerid)

Sta ako mu je vozilo vec Streamovano ? Mora se odaljit da se odrstimuje pa opet doci do vozila da bi se strimovalo i pokrenula provjera. Trebao bi ako imas komandu duznost na njoj da ubacis ostatak koda.

Drugi propust:
if(vehicleid == BusVozilo || BusVozilo || BusVozilo || BusVozilo || BusVozilo || BusVozilo || BusVozilo || BusVozilo)


Evo kako bi to otprilike trebalo izgledati ako ces ostavit provjeru OnVehicleStreamIn:

public OnVehicleStreamIn(vehicleid, forplayerid)
{
for(new vehid = 0; vehid  < sizeof(BusVozilo); vehid++)
{
    if(BusVozilo == vehicleid)
{
if(PlayerInfo == POSAO_BUSVOZAC) SetVehicleParamsForPlayer(vehicleid, forplayerid, 0, 0);
else SetVehicleParamsForPlayer(vehicleid, forplayerid, 0, 1);
}
}
return 1;
}

Morate biti prijavljeni da biste odgovorili na ovu temu.

Prijava