DestroyVehicle sollte ebenfalls gehookt werden.
Stimmt, das hab ich vergessen...
C
/* SA:MP Include GetVehicleNumberPlate
*
* (c) by Kaliber, 2016
*
*/
#if !defined _samp_included
#include <a_samp>
#endif
#if defined _samp_plate_ex
#endinput
#endif
#define _samp_plate_ex
native __SetVehicleNumberPlate(vehicleid, numberplate[]) = SetVehicleNumberPlate;
native __DestroyVehicle(vehicleid) = DestroyVehicle;
stock _DestroyVehicle(vehicleid)
{
if(existproperty(.value=50+vehicleid)) deleteproperty(.value=50+vehicleid);
return __DestroyVehicle(vehicleid);
}
#if defined _ALS_DestroyVehicle
#undef DestroyVehicle
#else
#define _ALS_DestroyVehicle
#endif
#define DestroyVehicle _DestroyVehicle
stock _SetVehicleNumberPlate(vehicleid, numberplate[])
{
if(strlen(numberplate) > 32) return 0; //Um Schaden zu vermeiden!
setproperty(.value=50+vehicleid,.string=numberplate);
return __SetVehicleNumberPlate(vehicleid, numberplate);
}
#if defined _ALS_SetVehicleNumberPlate
#undef SetVehicleNumberPlate
#else
#define _ALS_SetVehicleNumberPlate
#endif
#define SetVehicleNumberPlate _SetVehicleNumberPlate
/*
native GetVehicleNumberPlate(vehicleid);
*/
stock GetVehicleNumberPlate(vehicleid)
{
new plate[32];
getproperty(.value=50+vehicleid,.string=plate);
strunpack(plate,plate,sizeof(plate));
return plate;
}
Alles anzeigen
Ne, das mit dem Standard setzen find ich bescheuert..weil ist ja eh immer XYZ1234 oder sowas..und man kann ja einfach prüfen ob die Funktion was leeres wiedergibt, dann setzt man halt das Standard Ding..ansonsten das Nummernschild, das wesentlich effizienter