Balkan SA:MP

PAWN skriptanje, gamemodovi, filterskripte, include fajlovi, mape, pluginovi => Razgovor u vezi PAWN - skriptanja => Temu započeo: Arkoo poslato Mart 20, 2016, 13:11:00 POSLE PODNE

Naslov: [POMOC]Registracija Vozila
Poruka od: Arkoo poslato Mart 20, 2016, 13:11:00 POSLE PODNE
Skripta koju koristim:N/A
Detaljan opis problema: Kako da napravim da kad igrac udje u vozilo ako vozilo nije registrovano da mu ispise tekst, napravio sam ovo dole ali onda na svim vozilima izbaciva taj tekst
Dio skripte:
[pawn]if(newstate == PLAYER_STATE_DRIVER)
   {
       new vozilo = GetPlayerVehicleID(playerid);
          if(VoziloInfo[vozilo][vRegistrovan] == 0)
          {
              if(!VoziloJeBicikla(vozilo))
              {
                  SCM(playerid, -1, "Vozilo u koje ste usli nije registrovano, a to je kaznjivo. Pazite se policije!");
            }
      }
   }[/pawn]

Neke slike/video za lakse dobivanje pomoci(neobavezno):   
Naslov: Odg: [POMOC]Registracija Vozila
Poruka od: K ROSE poslato Mart 20, 2016, 13:16:10 POSLE PODNE
Moras napraviti provjeru da ide kroz kupljena vozila a ne za vozila po id-u.
Pretrazi skriptu i nadji provjeru za kupljena vozila, kod mene se ta provjera zove [pawn]if(IsAnOwnableCar(vehicleid))[/pawn]
Naslov: Odg: [POMOC]Registracija Vozila
Poruka od: Arkoo poslato Mart 20, 2016, 13:39:40 POSLE PODNE
Nemam te provjere, nesto ovako
[pawn]

FUNCTION: IsAnOwnableCar(carid)
{
   if(carid >= MAX_AUTA && carid <= brojauta)
   {
      return true;
   }
   return false;
}

[/pawn]
ownable auta su mi definisana kao #define MAX_AUTA        1500
nez kako bi drugacije to gore
Naslov: Odg: [POMOC]Registracija Vozila
Poruka od: K ROSE poslato Mart 20, 2016, 13:46:22 POSLE PODNE
[pawn]new ownedcar[sizeof(CarInfo)];[/pawn]

Kad kupuješ vozilo ovako treba da ti bude

[pawn]ownedcar[carid] = CreateVehicle(CarInfo[carid][cModel],CarInfo[carid][cLocationx],CarInfo[carid][cLocationy],CarInfo[carid][cLocationz]+1.0,CarInfo[carid][cAngle],CarInfo[carid][cColorOne],CarInfo[carid][cColorTwo],60000);[/pawn]

[pawn]public IsAnOwnableCar(carid)
{
   for(new i = 0; i < sizeof(ownedcar); i++)
   {
       if(carid == ownedcar) return 1;
   }
   return 0;
}[/pawn]

Naslov: Odg: [POMOC]Registracija Vozila
Poruka od: Letic poslato Mart 20, 2016, 22:23:43 POSLE PODNE
Moras napraviti proveru da li je GetPlayerVehicleID jednak vID-u tog vozila to jeste njegovom ID-u na serveru.
Naslov: Odg: [POMOC]Registracija Vozila
Poruka od: Arkoo poslato Mart 21, 2016, 00:00:46 PRE PODNE
Citat: YaguaR1337 poslato Mart 20, 2016, 22:23:43 POSLE PODNE
Moras napraviti proveru da li je GetPlayerVehicleID jednak vID-u tog vozila to jeste njegovom ID-u na serveru.
Moze neki primjer kako da to uradim?
Naslov: Odg: [POMOC]Registracija Vozila
Poruka od: Letic poslato Mart 21, 2016, 19:08:12 POSLE PODNE
Ne smes nikada ovako VoziloInfo[ GetPlayerVehicleID( playerid ) ][ Registrovan ] ovo ne smes da radis.Ovako:
[pawn]
for(new h; h < sizeof( VoziloInfo ); h++) {
       new File[80];
       format(File, sizeof(File), file_vozilo, h);
       if(fexist(File)) {
        if( VoziloInfo[ h ][ vID ] == GetPlayerVehicleID( playerid ) ) {
                    //ovde pises sve ono sto se desava ako je igrac u dobrom vozilu i dodaj tu jos onu proveru da li je vozilo kupljeno i da li je registrovano
             }
       }
}
[/pawn]
NAPOMENA: I sve to prilagodi svojoj skripti!
Naslov: Odg: [POMOC]Registracija Vozila
Poruka od: Arkoo poslato Mart 21, 2016, 20:22:50 POSLE PODNE
Citat: YaguaR1337 poslato Mart 21, 2016, 19:08:12 POSLE PODNE
Ne smes nikada ovako VoziloInfo[ GetPlayerVehicleID( playerid ) ][ Registrovan ] ovo ne smes da radis.Ovako:
[pawn]
for(new h; h < sizeof( VoziloInfo ); h++) {
       new File[80];
       format(File, sizeof(File), file_vozilo, h);
       if(fexist(File)) {
        if( VoziloInfo[ h ][ vID ] == GetPlayerVehicleID( playerid ) ) {
                    //ovde pises sve ono sto se desava ako je igrac u dobrom vozilu i dodaj tu jos onu proveru da li je vozilo kupljeno i da li je registrovano
             }
       }
}
[/pawn]
NAPOMENA: I sve to prilagodi svojoj skripti!
Hvala ti puno kralju! :D