Guest User

Barricade System

a guest
Apr 6th, 2013
338
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.64 KB | None | 0 0
  1. #include <a_samp>
  2. #include <gl_common>
  3. #include <ZCMD>
  4. #include <streamer>
  5.  
  6. #define MAX_CADES 20
  7. #define DIALOG_CADES 4320
  8. #define COLOR_GREY 0xAFAFAFAA
  9.  
  10. new cade[MAX_CADES];
  11. new Float:Position[4];
  12. public OnFilterScriptInit()
  13. {
  14. print(" ____________________________");
  15. print(" -Dynamic Barricade System-");
  16. print(" -Scripted by Drake Pistilli-");
  17. print(" ____________________________");
  18. return 1;
  19. }
  20.  
  21. CMD:cade(playerid, params[])
  22. {
  23. if(IsPlayerInAnyVehicle(playerid))
  24. {
  25. SendClientMessage(playerid, COLOR_GREY, "You can't be inside a vehicle when useing this command.");
  26. return 1;
  27. }
  28. for(new i; i<MAX_CADES; i++)
  29. {
  30. if(cade[i] == 0)
  31. {
  32. ShowPlayerDialog(playerid, DIALOG_CADES, DIALOG_STYLE_LIST, "Barricade Deployment", "Water Barrel\nDetour Sign\nSmall Roadblock\nNormal Roadblock\nNormal Barricade\nLarge Barricade", "Select", "Cancel");
  33. SetPVarInt(playerid, "cadeid", i);
  34. }
  35. }
  36. return 1;
  37. }
  38. CMD:destroycade(playerid, params[])
  39. {
  40. if(IsPlayerInAnyVehicle(playerid))
  41. {
  42. SendClientMessage(playerid, COLOR_GREY, "You can't be inside a vehicle when useing this command.");
  43. return 1;
  44. }
  45. for(new i; i<MAX_CADES; i++)
  46. {
  47. GetDynamicObjectPos(cade[i], Position[0], Position[1], Position[2]);
  48.  
  49. if(IsPlayerInRangeOfPoint(playerid, 5.0, Position[0], Position[1], Position[2]))
  50. {
  51. DestroyDynamicObject(cade[i]);
  52. cade[i] = 0;
  53. }
  54. }
  55. return 1;
  56. }
  57.  
  58. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  59. {
  60. if(dialogid == DIALOG_CADES)
  61. {
  62. if(response)
  63. {
  64. switch(listitem)
  65. {
  66. case 0:
  67. {
  68. new i = GetPVarInt(playerid, "cadeid");
  69. GetPlayerPos(playerid, Position[0], Position[1], Position[2]);
  70. cade[i] = CreateDynamicObject(1237, Position[0], Position[1], Position[2]-1.1, 0.0, 0.0, 0.0, -1, -1, -1, 200.0);
  71. }
  72. case 1:
  73. {
  74. new i = GetPVarInt(playerid, "cadeid");
  75. GetPlayerPos(playerid, Position[0], Position[1], Position[2]);
  76. GetPlayerFacingAngle(playerid, Position[3]);
  77. cade[i] = CreateDynamicObject(1425, Position[0], Position[1], Position[2]-0.6, 0.0, 0.0, Position[3]+180.0, -1, -1, -1, 200.0);
  78. }
  79. case 2:
  80. {
  81. new i = GetPVarInt(playerid, "cadeid");
  82. GetPlayerPos(playerid, Position[0], Position[1], Position[2]);
  83. GetPlayerFacingAngle(playerid, Position[3]);
  84. cade[i] = CreateDynamicObject(1459, Position[0], Position[1], Position[2]-0.5, 0.0, 0.0, Position[3]+180.0, -1, -1, -1, 200.0);
  85. }
  86. case 3:
  87. {
  88. new i = GetPVarInt(playerid, "cadeid");
  89. GetPlayerPos(playerid, Position[0], Position[1], Position[2]);
  90. GetPlayerFacingAngle(playerid, Position[3]);
  91. cade[i] = CreateDynamicObject(973, Position[0], Position[1], Position[2]-0.2, 0.0, 0.0, Position[3]+180.0, -1, -1, -1, 200.0);
  92. }
  93. case 4:
  94. {
  95. new i = GetPVarInt(playerid, "cadeid");
  96. GetPlayerPos(playerid, Position[0], Position[1], Position[2]);
  97. GetPlayerFacingAngle(playerid, Position[3]);
  98. SetPlayerPos(playerid, Position[0], Position[1], Position[2]+2.0);
  99. cade[i] = CreateDynamicObject(3578, Position[0], Position[1], Position[2]-0.3, 0.0, 0.0, Position[3]+180.0, -1, -1, -1, 200.0);
  100. }
  101. case 5:
  102. {
  103. new i = GetPVarInt(playerid, "cadeid");
  104. GetPlayerPos(playerid, Position[0], Position[1], Position[2]);
  105. GetPlayerFacingAngle(playerid, Position[3]);
  106. SetPlayerPos(playerid, Position[0]+1.0, Position[1]+1.0, Position[2]);
  107. cade[i] = CreateDynamicObject(981, Position[0], Position[1], Position[2]-0.3, 0.0, 0.0, Position[3]+180.0, -1, -1, -1, 200.0);
  108. }
  109. }
  110. }
  111. }
  112. return 1;
  113. }
Add Comment
Please, Sign In to add comment