Zaloguj się by uzyskać pełen dostęp. Nie masz jeszcze konta? Założ je już teraz w kilka sekund.

Wysłany: 2017-12-31, 13:35


KoQ







Wiek: 24
Na forum: 3179 dni
Posty: 32

Piwa: 6

Respekt: 50

Witam chcia?bym zrobi? system priv pojazd?w lecz narazie chc? si? nauczy? przypisywa? pojazdy do gracza i mam taki ma?y kodzik niby wszystko ok ale nwm dlaczego jak inny gracz wejdzie do pojazdu to go nie wyrzuca.
Kod:


CMD:pp(playerid, cmdtext[])
{
new priv[500];
new Gname[MAX_PLAYER_NAME];
new Float:x,Float:y,Float:z,Float:a;
GetPlayerFacingAngle(playerid, a);
GetPlayerName(playerid, Gname, sizeof(Gname));
GetPlayerPos(playerid, x,y,z);
format(priv, sizeof(priv), "/Pojazdy/%s.ini",Gname);
dini_Create(priv);
PrywatneAuto[playerid] = CreateVehicle(515, x, y, z, a, 0, 0, -1, 1);
dini_Set(priv,"Owner",PlayerName(playerid));
return 1;
}

Kod:


public OnPlayerStateChange(playerid, newstate, oldstate)
{
new priv[500];
new WlascicielP[300];
WlascicielP = dini_Get(priv, "Owner");
if(newstate == PLAYER_STATE_DRIVER && strcmp(WlascicielP,PlayerName(playerid),true))
{
SendClientMessage(playerid, COLOR_RED, "NIE Twoj Pojazd");
RemovePlayerFromVehicle(playerid);
return 1;
}
return 1;
}


Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-12-31, 13:51


Zamek







Wiek: 26
Na forum: 3788 dni
Posty: 168
Nick w MP: Zamek

Piwa: 276

Respekt: 295,8
Respekt: 295,8Respekt: 295,8Respekt: 295,8

Tutaj
Pawn

public OnPlayerStateChange(playeridnewstateoldstate)


Brakuje Ci
Pawn

format(privsizeof(priv), "/Pojazdy/%s.ini",Gname); 


Pod Gname dajesz nick gracza, tak mi si? wydaje.

Podpis
Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-12-31, 13:55


Destinn







Wiek: 26
Na forum: 3094 dni
Posty: 104
Nick w MP: Destin

Piwa: 25

Respekt: 90

Albo mi si? zdaje albo ty wykonujesz warunek dla w?a?ciciela auta, a nie dla intruza.

Wi?c;

Kod:

public OnPlayerStateChange(playerid, newstate, oldstate)
{
new priv[500];
new WlascicielP[300];
WlascicielP = dini_Get(priv, "Owner");
if(newstate == PLAYER_STATE_DRIVER && ! strcmp(WlascicielP,PlayerName(playerid),true))
{
SendClientMessage(playerid, COLOR_RED, "NIE Twoj Pojazd");
RemovePlayerFromVehicle(playerid);
return 1;
}
return 1;
}


Powinno dzia?a?, ale nie znam si? za bardzo na dini, bardzo ma?o w ?yciu u?ywa?em tego syfu. Dlaczego syfu? Ot?? jest to przestarza?y i wolny system (zapisu, wczytywania) danych.
Polecam przerzuci? si? na mySQL - nie jest trudny, ale 90% aktualnych skrypt?w pisana jest w?a?nie w nim.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2018-01-01, 14:13


KoQ







Wiek: 24
Na forum: 3179 dni
Posty: 32

Piwa: 6

Respekt: 50

Sorki ch?opaki ale dalej nic :/

Postaw piwo autorowi tego posta
 

 
Wysłany: 2018-01-01, 14:59


Combacior







Wiek: 29
Na forum: 5795 dni
Posty: 1516

Piwa: 2161

Respekt: 1060
Respekt: 1060

Ostrzeżeń: 20%
Kod:

new priv[500];
new WlascicielP[300];
WlascicielP = dini_Get(priv, "Owner");


Jak to ma dzia?a?, skoro w tym callbacku nie ma ?adnej informacji o w?a?cicielu pojazdu? Naj?atwiej b?dzie zrobi? tablic? na wszystkie pojazdy, w kt?rej b?dziesz przechowywa? ID gracza-w?a?ciciela

Kod:

new gVehicleOwnerID[MAX_VEHICLES];

//podczas tworzenia pojazdu
gVehicleOwnerID[vehicleid] = playerid;

//callback
if(gVehicleOwnerID[vehicleid] != playerid)
{
//gracz nie jest wlascicielem, wypad
}


Nie zapomnij przypisa? w?a?ciciela do pojazdu podczas wej?cia gracza na serwer. Przy usuwaniu pojazdu (albo przy tworzeniu zwyk?ego pojazdu) tak?e musisz zresetowa? warto?? tablicy, ?eby nie przej?? jej inny pojazd.

Tak jak wy?ej pisano, dini jest do duszy, w tych czasach u?ywa si? MySQL albo SQLite.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2018-01-01, 15:55


KoQ







Wiek: 24
Na forum: 3179 dni
Posty: 32

Piwa: 6

Respekt: 50

Wiem lecz ucz? si? na jakiej zasadzie dzia?a zapisywanie

Postaw piwo autorowi tego posta
 

 
Tagi: przypisywanie :: pojazdu :: gracza
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » PAWN Ten temat jest zablokowany bez możliwości zmiany postów lub pisania odpowiedzi

Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Dodaj temat do Ulubionych
Wersja do druku