func.pwn 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. DefaultClickDragObjectData(playerid) {
  2. g_PlayerData[playerid][PLAYER_DATA_CLICKDRAG_POID] = INVALID_OBJECT_ID;
  3. }
  4. RefreshClickDragObject(playerid) {
  5. new
  6. Float:x,
  7. Float:y,
  8. Float:z,
  9. Float:a
  10. ;
  11. switch( g_PlayerData[playerid][PLAYER_DATA_EDIT_IDTYPE] ) {
  12. case ID_TYPE_VEHICLE: {
  13. new vehicleid = g_PlayerData[playerid][PLAYER_DATA_EDIT_ID];
  14. GetVehiclePos(vehicleid, x, y, z);
  15. GetVehicleZAngle(vehicleid, a);
  16. }
  17. case ID_TYPE_PICKUP: {
  18. new pickupid = g_PlayerData[playerid][PLAYER_DATA_EDIT_ID];
  19. x = g_PickupData[pickupid][PICKUP_DATA_X];
  20. y = g_PickupData[pickupid][PICKUP_DATA_Y];
  21. z = g_PickupData[pickupid][PICKUP_DATA_Z];
  22. }
  23. case ID_TYPE_ACTOR: {
  24. new actorid = g_PlayerData[playerid][PLAYER_DATA_EDIT_ID];
  25. GetActorPos(actorid, x, y, z);
  26. GetActorFacingAngle(actorid, a);
  27. }
  28. default: {
  29. return INVALID_OBJECT_ID;
  30. }
  31. }
  32. if( g_PlayerData[playerid][PLAYER_DATA_CLICKDRAG_POID] == INVALID_OBJECT_ID ) {
  33. g_PlayerData[playerid][PLAYER_DATA_CLICKDRAG_POID] = CreatePlayerObject(playerid, 19300, x, y, z, 0.0, 0.0, a);
  34. } else {
  35. SetPlayerObjectPos(playerid, g_PlayerData[playerid][PLAYER_DATA_CLICKDRAG_POID], x, y, z);
  36. SetPlayerObjectRot(playerid, g_PlayerData[playerid][PLAYER_DATA_CLICKDRAG_POID], 0.0, 0.0, a);
  37. }
  38. return g_PlayerData[playerid][PLAYER_DATA_CLICKDRAG_POID];
  39. }
  40. DestroyClickDragObject(playerid) {
  41. if( g_PlayerData[playerid][PLAYER_DATA_CLICKDRAG_POID] != INVALID_OBJECT_ID ) {
  42. DestroyPlayerObject(playerid, g_PlayerData[playerid][PLAYER_DATA_CLICKDRAG_POID]);
  43. g_PlayerData[playerid][PLAYER_DATA_CLICKDRAG_POID] = INVALID_OBJECT_ID;
  44. }
  45. }