Skripta koju koristim:CountrySide by dimi
Opis problema o kojem se radi: Kad zakljucam vozilo, a vlasnik sam, izadjem iz vozila i pise da je zakljucan, da nemogu uc, sad neznam kako da napravim da vlasnik automatski udje
Dio skripte: for(new i; i < sizeof(VI); i++) {
if(VI[i][vID] == vehicleid) {
if(VI[i][vKupljen] == 1) {
if(VI[i][vZakljucan] == 0 || PI[playerid][xAdmin] == 6) {
if(PI [playerid][xAdmin] == 6) SCMF(playerid, NARANDZASTA, "Ulazite u vozilo ID: {FFFFFF}%d.", i);
SCMF(playerid, NARANDZASTA, "Privatno Auto {FFFFFF}| {FFAF00}Vlasnik: {FFFFFF}%s.", VI[i][vVlasnik]);
return true; }
if(VI[i][vZakljucan] == 1) {
new Float:Poz[3];
GetPlayerPos(playerid, Poz[0], Poz[1], Poz[2]);
SetPlayerPos(playerid, Poz[0], Poz[1], Poz[2]);
SCMF(playerid, NARANDZASTA, "Auto Zakljucan {FFFFFF}| {FFAF00}Vlasnik: {FFFFFF}%s.", VI [i][vVlasnik]);
RemovePlayerFromVehicle(playerid);
TogglePlayerControllable(playerid, 1);
Slika (neobavezno): //
Probaj ovako:
for(new i; i < sizeof(VI); i++) {
if(VI[i][vID] == vehicleid) {
if(VI[i][vKupljen] == 1) {
if(VI[i][vZakljucan] == 0 || PI[playerid][xAdmin] == 6) {
if(PI [playerid][xAdmin] == 6) SCMF(playerid, NARANDZASTA, "Ulazite u vozilo ID: {FFFFFF}%d.", i);
SCMF(playerid, NARANDZASTA, "Privatno Auto {FFFFFF}| {FFAF00}Vlasnik: {FFFFFF}%s.", VI[i][vVlasnik]);
return true; }
if(VI[i][vZakljucan] == 1 && PI[playerid][xAdmin] != 6) {
new Float:Poz[3];
GetPlayerPos(playerid, Poz[0], Poz[1], Poz[2]);
SetPlayerPos(playerid, Poz[0], Poz[1], Poz[2]);
SCMF(playerid, NARANDZASTA, "Auto Zakljucan {FFFFFF}| {FFAF00}Vlasnik: {FFFFFF}%s.", VI [i][vVlasnik]);
RemovePlayerFromVehicle(playerid);
TogglePlayerControllable(playerid, 1);
Stavio si da admin moze uci kolko vidim. A treba mi da vlasnik vozila udje..
Pokusaj ovako:
[pawn]for(new i; i < sizeof(VI); i++) {
if(VI[vID] == vehicleid) {
if(VI[vKupljen] == 1) {
if(VI[vZakljucan] == 0 || PI[playerid][xAdmin] == 6) {
if(PI [playerid][xAdmin] == 6) SCMF(playerid, NARANDZASTA, "Ulazite u vozilo ID: {FFFFFF}%d.", i);
SCMF(playerid, NARANDZASTA, "Privatno Auto {FFFFFF}| {FFAF00}Vlasnik: {FFFFFF}%s.", VI[vVlasnik]);
return true; }
if(VI[vZakljucan] == 1 && strcmp(GetName(playerid), VI[ i ][ vVlasnik ], false) == 0)) {
new Float:Poz[3];
GetPlayerPos(playerid, Poz[0], Poz[1], Poz[2]);
SetPlayerPos(playerid, Poz[0], Poz[1], Poz[2]);
SCMF(playerid, NARANDZASTA, "Auto Zakljucan {FFFFFF}| {FFAF00}Vlasnik: {FFFFFF}%s.", VI [vVlasnik]);
RemovePlayerFromVehicle(playerid);
TogglePlayerControllable(playerid, 1); [/pawn]
Kako da stavim da kad je blizu auta, da moze otkljucat i zakljucat, da nemora uc u njega ?
if(dialogid == DIALOG_VOZILO && response) {
new autoid = PI[playerid][xVoziloID];
if(listitem == 0) {
if(GetPlayerVehicleID(playerid) != VI[autoid][vID]) return SCM(playerid, CRVENA, "Moras biti u svom vozilu!");
new string1[256], string2[256], string[500], z[5];
if(VI[autoid][vZakljucan] == 1) z = "Da"; else z = "Ne";
new cs[50];
if(VI[autoid][vReg] == 0) cs = "Nema";
new h = VI[autoid][vID];
if(VI[autoid][vReg] == 1) {
if(10>h) {
new tablice[50];
format(tablice, sizeof(tablice), "LS 00%d-CS.", h);
cs = tablice; }
else if(10 <= h && h < 100) {
new tablice[50];
format(tablice, sizeof(tablice), "LS 0%d-CS.", h);
cs = tablice; }
else if(100 <=h && h < 1000) {
new tablice[50];
format(tablice, sizeof(tablice), "LS %d-CS.", h);
cs = tablice; } }
format(string1,sizeof(string1),"{A6A6A6}Ime Vozila : {FFFFFF}%s | {A6A6A6}Zakljucano : {FFFFFF}%s | {A6A6A6}Registracija: {FFFFFF}%s", ImeVozila[GetVehicleModel(GetPlayerVehicleID(playerid))-400], z, cs);
format(string2,sizeof(string2),"{A6A6A6}Vlasnik vozila : {FFFFFF}%s | {A6A6A6}Droga : {FFFFFF}%d | {A6A6A6}Materijali : {FFFFFF}%d", VI[autoid][vVlasnik], VI[autoid][vDroga], VI[autoid][vMats]);
format(string, sizeof(string), "%s\n%s", string1, string2);
SPD(playerid, DIALOG_VINFO, DSMSG, D_NASLOV, string, D_ODABERI, D_ODUSTANI); }
if(listitem == 1) {
if(GetPlayerVehicleID(playerid) != VI[autoid][vID]) return SCM(playerid, CRVENA, "Moras biti u svom vozilu!");
SPD(playerid, DIALOG_VLOCK, DSMSG, D_NASLOV, "Molimo vas da odaberete:", "Otkljucate", "Zakljucate"); }
if(listitem == 2) {
new Float:PozAS[4], Float:HP;
if(GetPlayerVehicleID(playerid) != VI[autoid][vID]) return SCM(playerid, CRVENA, "Moras biti u svom vozilu!");
if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SCM(playerid, CRVENA, "Niste na mestu vozaca!");
GetVehicleHealth(GetPlayerVehicleID(playerid), HP);
if(HP < 700.0) return SCM(playerid, CRVENA, "Vozilo vam je previse osteceno, ne mozete ga parkirati!");
GetVehiclePos(VI[autoid][vID], PozAS[0], PozAS[1], PozAS[2]);
GetVehicleZAngle(VI[autoid][vID], PozAS[3]);
VI[autoid][vLokacijaX] = PozAS[0]; VI[autoid][vLokacijaY] = PozAS[1]; VI[autoid][vLokacijaZ] = PozAS[2];
VI[autoid][vLokacijaA] = PozAS[3]; DestroyVehicle(VI[autoid][vID]);
VI[autoid][vID] = CreateVehicle(VI[autoid][vModel], VI[autoid][vLokacijaX], VI[autoid][vLokacijaY], VI[autoid][vLokacijaZ], VI[autoid][vLokacijaA], VI[autoid][vBoja1], VI[autoid][vBoja2], 30000);
SCM(playerid, ZELENA, "Vozilo je uspjesno parkirano! ");
//izmeni dodaj ovde tablicerespawn
SacuvajVozilo(autoid); SetVehicleToRespawn(VI[autoid][vID]); }
if(listitem == 3) {
SPD(playerid, DIALOG_VGEPEK, DSL, D_NASLOV, "Oruzje\nDroga\nMaterijali", D_ODABERI, D_ODUSTANI); }
if(listitem == 4) {
new Float:Poz[3];
GetVehiclePos(VI[autoid][vID], Poz[0], Poz[1], Poz[2]);
SPC(playerid, Poz[0], Poz[1], Poz[2], 10.0);
CP[playerid] = 1;
SCM(playerid, ZELENA, "Vozilo je uspjesno locirano i njegova pozicija je oznacena na radaru!"); }
if(listitem == 5) {
new string[280];
if(GetPlayerVehicleID(playerid) != VI[autoid][vID]) return SCM(playerid, CRVENA, "Moras biti u svom vozilu!");
if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SCM(playerid, CRVENA, "Niste na mestu vozaca!");
format(string,sizeof(string), "Prodaja auta drzavi\n\nDa li ste sigurni da zelite da prodate auto drzavi za %d$!\n\nAko ste sigurni kliknite na 'Prodaj' ako ne kliknite na 'Izlaz'", VI[autoid][vCena]/2);
SPD(playerid, DIALOG_VSELL, DSMSG, D_NASLOV, string, "Prodaj", D_ODUSTANI); }
if(listitem == 6) {
if(GetPlayerVehicleID(playerid) != VI[autoid][vID]) return SCM(playerid, CRVENA, "Niste u svom vozilu!");
if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SCM(playerid, CRVENA, "Niste na mestu vozaca!");
SPD(playerid, DIALOG_VSELLTP, DSI, D_NASLOV, "Unesite ID igraca kome zelite da prodate vozilo i cenu koju zelite!", D_ODABERI, D_ODUSTANI); }
if(listitem == 7) {
if(GetPlayerVehicleID(playerid) != VI[autoid][vID]) return SCM(playerid, CRVENA, "Niste u svom vozilu!");
if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SCM(playerid, CRVENA, "Niste na mestu vozaca!");
if(VI[autoid][vRadio] == 1) { SPD(playerid, DIALOG_RADIO, DSL, D_NASLOV, "Radio Pink\nRadio Folk\nRadio TDI\nJuzni Vetar Radio\nBalkan DJ Radio", D_ODABERI, D_ODUSTANI); }
else { SCM(playerid, CRVENA, "Nemate radio, kupite u prodavnici i ugradite"); } }
}
NAPOMENA: vehicleid = tvoje vozilo
[pawn]
new Float: Pos[ 3 ];
GetVehiclePos( vehicleid, Pos[ 0 ], Pos[ 1 ], Pos[ 2 ] );
if( IsPlayerInRangeOfPoint( playerid, 3.0, Pos[ 0 ], Pos[ 1 ], Pos[ 2 ] )) {
SCM( playerid, -1, "Vozilo otkljucano/zakljucano!");
}
else return SCM( playerid, -1, "Ne nalazite se blizu svog vozila!");[/pawn]
Daj po onom kodu gore uradi, neznam di ovo trebam.
Ne mozemo mi sve da vam radimo, morate i sami nesto da skontate, umesto ovoga stavi ono sto sam postavio iznad:
[pawn]if(GetPlayerVehicleID(playerid) != VI[autoid][vID]) return SCM(playerid, CRVENA, "Moras biti u svom vozilu!");[/pawn]
Zamijenio sam, nista se ne dogada, molim te da postavis po onom kodu gore. hvala