GTA Közösség - A magyar GTA fórum

San Andreas Multiplayer (SA-MP) => SA-MP: Szerverfejlesztés => Segítségkérés => A témát indította: SnooP - 2013. július 24. - 13:31:12

Cím: public OnPlayerExitVehicle, vehicleid buggolás kiküszöbölése.
Írta: SnooP - 2013. július 24. - 13:31:12
Helló, van egy ilyen kódom:
 

public OnPlayerExitVehicle(playerid, vehicleid)
{
    PutPlayerInVehicle(playerid, vehicleid, 0);
    printf(\"Lefut, playerid %d, vehicleid: %d\", playerid, vehicleid);
    GameTextForPlayer(playerid, \"Nem szálhatsz ki a jármûbõl\", 3000, 5);
    return 1;
}

 
Valaki megtudná mondani, hogy amikor a játékos beszáll az autóba a vehicleid-nak 411 helyett miért ilyet kapok:
\"width=500http://kepfeltoltes.hu/130724/Untitleadsd_www.kepfeltoltes.hu_.png[/img]
És a másik pedig, hogy hogyan tudnám ezt kiküszöbölni? Elõre is köszönöm.
Cím: public OnPlayerExitVehicle, vehicleid buggolás kiküszöbölése.
Írta: DrAkE - 2013. július 24. - 13:33:14
Mert a jármû idje nem egyenlõ a modell idvel.
A modell id lekérhetõ egyszerûen:
 
GetVehicleModel(vehicleid);
Cím: public OnPlayerExitVehicle, vehicleid buggolás kiküszöbölése.
Írta: SnooP - 2013. július 24. - 14:06:48
Ezt a megoldást én is próbáltam már ebben a formában:
 

public OnPlayerExitVehicle(playerid, vehicleid)
{
    PutPlayerInVehicle(playerid, GetVehicleModel(vehicleid), 0);
    printf(\"Lefut, playerid %d, vehiclemodel: %d, vehicleid: %d\", playerid, GetVehicleModel(vehicleid), vehicleid );
    GameTextForPlayer(playerid, \"Nem szálhatsz ki a jármûbõl\", 3000, 5);
    return 1;
}

 
De hiába a PutPlayerInVehicle valamiért a vehicleid-ra rakja folyton a modelid helyett (gondolom azért mert vehicleid paramétert tudd csak befogadni) lásd itt is ez van:
\"width=500http://kepfeltoltes.hu/130724/1302337472Untitleadsd_www.kepfeltoltes.hu_.png[/img]
E: Az IP-t aki próbálgatná felesleges mivel dinamikus és most váltottam át rajta.
Cím: public OnPlayerExitVehicle, vehicleid buggolás kiküszöbölése.
Írta: anorennia - 2013. július 24. - 14:16:55
próbált ezt:
PutPlayerInVehicle(playerid, vehicleid, 0);
ez helyett:
PutPlayerInVehicle(playerid, GetVehicleModel(vehicleid), 0);
Cím: public OnPlayerExitVehicle, vehicleid buggolás kiküszöbölése.
Írta: DrAkE - 2013. július 24. - 14:18:58
Látom még mindig nem érted, minden egyes jármûnek amit lespawnolsz van IDje, ami alapján a SAMP megkülönbözteti õket. A modell és az egyéb olyan adatok ami a jármûhöz tartoznak (pozíciója, szögei) külön vannak. Amikor egy funkció azt kéri, hogy add meg a vehicleid paramétert, akkor nem a modell számát kell megadni, hanem azt az ID-t ami alapján a rendszer megkülönbözteti a többitõl.
Cím: public OnPlayerExitVehicle, vehicleid buggolás kiküszöbölése.
Írta: SnooP - 2013. július 24. - 14:38:29
Na jó most esett le :D Közbe sikerült megcsinálnom kicsit utána olvastam. Köszönöm szépen DrAke.