Skocz do zawartości
Senior19

brak mozliwosci wchodzenia do auta

Rekomendowane odpowiedzi

Używasz funkcji SetVehicleParamsForPlayer

+ potrzeba jeszcze zabezpieczenie gdyż da się nadal wejść jako pasażer, w callback'u OnPlayerStateChange robisz warunek że jeśli gracz jest zombie i jego nowy status to 2 lub 3 (kierowca lub pasażer) wykonujesz funkcję RemovePlayerFromVehicle lub ClearAnimations

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Nie jestem pewien jak teraz ta funkcja działa, kiedyś działała tylko dla streamowanych pojazdów

ale sprawdź tak:

gdy gracz staje sie zombie:

for(new i; i < MAX_VEHICLES; i++)
{
SetVehicleParamsForPlayer(i, playerid, false, true);
}
I zobacz czy zadziała jak nie to w callback OnVehicleStreamIn(vehicleid, forplayerid) wklej ten kod:
if( /*WARUNEK czy jest zombie, zauważ że nie ma tu playerid tylko forplayerid*/ )
{
SetVehicleParamsForPlayer(vehicleid, forplayerid, false, true);
}
Jak już któryś ze sposobów będzie działać w OnPlayerStateChange daj:
if(/*WARUNEK czy jest zombie*/ && (newstate == 2 || newstate == 3))
{
ClearAnimations(playerid);
}

Druga rzecz jest zabezpieczeniem gdyż klikając G nasza postać biegnie do auta, jeśli dojdzie do drzwi to nie wejdzie, jednak jeśli stanąć na dachu czy w jakimś miejscu gdzie się zablokujemy i zaczniemy klikać spację (szybko biegać) nasza postać wskoczy do auta mimo iż nie będzie przy drzwiach

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
new
Float:pos[3];

GetPlayerPos(playerid, pos[0], pos[1], pos[2]);
if(Gracz jest zombie)
{
SetPlayerPos(playerid, pos[0], pos[1], pos[2]+0.1);
return 1;
}
// Reszta
return 1;
}[/code]

Tyle. :)

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

  • Przeglądający   0 użytkowników

    Brak zarejestrowanych użytkowników przeglądających tę stronę.

×