Guest User

Pause System

a guest
Jul 13th, 2013
458
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.94 KB | None | 0 0
  1. //Pause System Created By ScRipTeRi
  2.  
  3. #include <a_samp>
  4.  
  5. //COLORS
  6. #define COLOR_RED1 0xF00000FF
  7. //Pause System
  8. new Float:PosX[MAX_PLAYERS], Float:PosY[MAX_PLAYERS], Float:PosZ[MAX_PLAYERS], Float:PosA[MAX_PLAYERS], PosI[MAX_PLAYERS];
  9. // PRESSED(keys)
  10. #define PRESSED(%0) \
  11. (((newkeys & (%0)) == (%0)) && ((oldkeys & (%0)) != (%0)))
  12. new IsPause[MAX_PLAYERS];
  13. new Text:info;
  14. //Pause Time
  15. new Pause[MAX_PLAYERS];
  16. new PTimer[MAX_PLAYERS];
  17.  
  18. public OnGameModeInit()
  19. {
  20. //Pause info
  21. info = TextDrawCreate(16, 250, " ");
  22. TextDrawFont(info , 2);
  23. TextDrawLetterSize(info , 0.2, 1.0);
  24. TextDrawColor(info , 0xFFFFFFFF);
  25. TextDrawSetOutline(info , 1);
  26. TextDrawSetProportional(info , 1);
  27. TextDrawSetShadow(info , 1);
  28. return 1;
  29. }
  30. public OnPlayerConnect(playerid)
  31. {
  32. IsPause[playerid] = 0;
  33. return 1;
  34. }
  35. public OnPlayerCommandText(playerid, cmdtext[])
  36. {
  37. if (strcmp("/pause", cmdtext, true, 10) == 0)
  38. {
  39. if(IsPlayerInAnyVehicle(playerid))
  40. {
  41. SendClientMessage(playerid,COLOR_RED1,"ERROR: Please leave from this vehicle first.");
  42. return 1;
  43. }
  44. new Float:x, Float:y, Float:z;
  45. GetPlayerPos(playerid, x, y, z);
  46. PTimer[playerid] = SetTimerEx("SpawnPause", 9000, 1, "ifff", playerid, x, y, z);
  47. SendClientMessage(playerid, 0xE89B5BBB, "Changing in 10 secondes, please don't move...");
  48. Pause[playerid] = SetTimerEx("SpPause",10000,0,"i",playerid);
  49. }
  50. return 1;
  51. }
  52. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  53. {
  54. if(newkeys == KEY_WALK)
  55. {
  56. if(IsPause[playerid] == 0)
  57. {
  58. return 1;
  59. }
  60. if(IsPause[playerid] == 1)
  61. {
  62. TextDrawHideForPlayer(playerid, info);
  63. SetPlayerPos(playerid, PosX[playerid], PosY[playerid], PosZ[playerid]);
  64. SetPlayerFacingAngle(playerid, PosA[playerid]);
  65. SetCameraBehindPlayer(playerid);
  66. SetPlayerInterior(playerid, PosI[playerid]);
  67. TogglePlayerControllable(playerid,1);
  68. SetPlayerArmedWeapon(playerid,1); //Enable weapons
  69. IsPause[playerid] = 0;
  70. }
  71. }
  72. return 1;
  73. }
Advertisement
Add Comment
Please, Sign In to add comment