Pitanje/Savet
267
267
pregleda
3
3
postova
Ova tema je zaključana. Samo moderatori i administratori mogu odgovarati.
pre 1 godinu
Kreiranje zona auto škole: Definišite zone unutar kojih će biti aktivna zaštita od sudara.
Pratite ulazak i izlazak iz zone: Koristite funkcije poput OnPlayerEnterDynamicArea i OnPlayerExitDynamicArea kako biste pratili kada igrači ulaze i izlaze iz zona auto škole.
Zaštita igrača unutar zone: Kada igrač uđe u zonu auto škole, postavite ga u poseban režim ili aktivirajte zaštitu koja će sprečiti da mu se nanese šteta od sudara.
Odbijanje štete od drugih vozila: Kada drugi vozači pokušaju udariti igrača unutar auto škole, odbijte ili neutralizirajte štetu koju bi ta kolizija inače prouzrokovala.
Podešavanje poruka upozorenja: Dodajte poruke upozorenja ili obavještenja koje će igrače obavijestiti kada uđu u zonu auto škole ili kada su zaštićeni od sudara.
Primjer nekakav kako treba ici
Pratite ulazak i izlazak iz zone: Koristite funkcije poput OnPlayerEnterDynamicArea i OnPlayerExitDynamicArea kako biste pratili kada igrači ulaze i izlaze iz zona auto škole.
Zaštita igrača unutar zone: Kada igrač uđe u zonu auto škole, postavite ga u poseban režim ili aktivirajte zaštitu koja će sprečiti da mu se nanese šteta od sudara.
Odbijanje štete od drugih vozila: Kada drugi vozači pokušaju udariti igrača unutar auto škole, odbijte ili neutralizirajte štetu koju bi ta kolizija inače prouzrokovala.
Podešavanje poruka upozorenja: Dodajte poruke upozorenja ili obavještenja koje će igrače obavijestiti kada uđu u zonu auto škole ili kada su zaštićeni od sudara.
Primjer nekakav kako treba ici
#define AUTO_SKOLA_ZONE 1
public OnPlayerEnterDynamicArea(playerid, areaid)
{
if(areaid == AUTO_SKOLA_ZONE)
{
SetPlayerSpecialAction(playerid, SPECIAL_ACTION_VEHICLE_ENTRY);
SendClientMessage(playerid, COLOR_GREEN, "Dobrodošli u auto školu. Sada ste zaštićeni od štete.");
}
}
public OnPlayerExitDynamicArea(playerid, areaid)
{
if(areaid == AUTO_SKOLA_ZONE)
{
SetPlayerSpecialAction(playerid, SPECIAL_ACTION_NONE);
SendClientMessage(playerid, COLOR_GREEN, "Napustili ste auto školu. Sada niste više zaštićeni.");
}
}
public OnPlayerVehicleCollision(playerid, vehicleid)
{
if(IsPlayerInVehicle(playerid) && GetPlayerVehicleID(playerid) == vehicleid)
{
new Float:playerX, Float:playerY, Float:playerZ;
new Float:vehicleX, Float:vehicleY, Float:vehicleZ;
GetPlayerPos(playerid, playerX, playerY, playerZ);
GetVehiclePos(vehicleid, vehicleX, vehicleY, vehicleZ);
new Float:distance = sqrt(pow(playerX - vehicleX, 2) + pow(playerY - vehicleY, 2) + pow(playerZ - vehicleZ, 2));
if(distance < 3.0) // Ako je igrač u blizini vozila, ignorišite sudar
{
return 0; // Odbacite sudar
}
}
return 1; // Nastavite sa standardnim postupkom sudara
}
pre 1 godinu
https://www.open.mp/docs/scripting/functions/DisableRemoteVehicleCollisions
Gasi collision za igraca to jest moci ce da prolazi kroz ostala okupirana vozila
Gasi collision za igraca to jest moci ce da prolazi kroz ostala okupirana vozila
Morate biti prijavljeni da biste odgovorili na ovu temu.
Prijava