Advertisement
Guest User

Untitled

a guest
Oct 3rd, 2012
127
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.12 KB | None | 0 0
  1. #define MAX_RB 100 //Anzahl der max RB´s
  2.  
  3. enum RBInfo
  4. {
  5. RB_ID,
  6. RB_EX,
  7. RB_TYPE,
  8. Float:RB_X,
  9. Float:RB_Y,
  10. Float:RB_Z,
  11. }
  12. new RB[MAX_RB][RBInfo];
  13.  
  14.  
  15. forward KillRB(ID);
  16. public KillRB(ID)
  17. {
  18. RB[ID][RB_EX] = 0;
  19. DestroyObject(RB[ID][RB_ID]);
  20. }
  21.  
  22. stock RB_Update(playerid)
  23. {
  24. if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
  25. {
  26. for(new ID=0; ID<MAX_RB; ID++)
  27. {
  28. if(RB[ID][RB_EX] == 1 && RB[ID][RB_TYPE] == 4)
  29. {
  30. if(IsPlayerInRangeOfPoint(playerid, 3.0,RB[ID][RB_X],RB[ID][RB_Y],RB[ID][RB_Z]))
  31. {
  32. new platten, tueren, beleuchtung,reifen;
  33. GetVehicleDamageStatus(GetPlayerVehicleID(playerid), platten, tueren, beleuchtung,reifen);
  34. UpdateVehicleDamageStatus(GetPlayerVehicleID(playerid), platten, tueren, beleuchtung,15);
  35. }
  36. }
  37. }
  38. }
  39. return 1;
  40. }
  41.  
  42. stock AddRoadBlock(playerid,type)
  43. {
  44. if(type == 1)
  45. {
  46. for(new ID=0; ID<MAX_RB; ID++)
  47. {
  48. if(RB[ID][RB_EX] == 0)
  49. {
  50. new Float:X,Float:Y,Float:Z,Float:A;
  51. GetPlayerPos(playerid,X,Y,Z);
  52. GetPlayerFacingAngle(playerid,A);
  53. RB[ID][RB_EX] = 1;
  54. RB[ID][RB_TYPE] = 1;
  55. RB[ID][RB_X] = X;
  56. RB[ID][RB_Y] = Y;
  57. RB[ID][RB_Z] = Z-0.25;
  58. RB[ID][RB_ID] = CreateObject(978, RB[ID][RB_X], RB[ID][RB_Y], RB[ID][RB_Z], 0.0, 0.0, A);
  59. return 1;
  60. }
  61. }
  62. }
  63. if(type == 2)
  64. {
  65. for(new ID=0; ID<MAX_RB; ID++)
  66. {
  67. if(RB[ID][RB_EX] == 0)
  68. {
  69. new Float:X,Float:Y,Float:Z,Float:A;
  70. GetPlayerPos(playerid,X,Y,Z);
  71. GetPlayerFacingAngle(playerid,A);
  72. RB[ID][RB_EX] = 1;
  73. RB[ID][RB_TYPE] = 2;
  74. RB[ID][RB_X] = X;
  75. RB[ID][RB_Y] = Y;
  76. RB[ID][RB_Z] = Z-0.45;
  77. RB[ID][RB_ID] = CreateObject(970, RB[ID][RB_X], RB[ID][RB_Y], RB[ID][RB_Z], 0.0, 0.0, A);
  78. return 1;
  79. }
  80. }
  81. return 1;
  82. }
  83. if(type == 3)
  84. {
  85. for(new ID=0; ID<MAX_RB; ID++)
  86. {
  87. if(RB[ID][RB_EX] == 0)
  88. {
  89. new Float:X,Float:Y,Float:Z,Float:A;
  90. GetPlayerPos(playerid,X,Y,Z);
  91. GetPlayerFacingAngle(playerid,A);
  92. RB[ID][RB_EX] = 1;
  93. RB[ID][RB_TYPE] = 3;
  94. RB[ID][RB_X] = X;
  95. RB[ID][RB_Y] = Y;
  96. RB[ID][RB_Z] = Z-0.70;
  97. RB[ID][RB_ID] = CreateObject(1238, RB[ID][RB_X], RB[ID][RB_Y], RB[ID][RB_Z], 0.0, 0.0, A);
  98. return 1;
  99. }
  100. }
  101. return 1;
  102. }
  103. if(type == 4)
  104. {
  105. for(new ID=0; ID<MAX_RB; ID++)
  106. {
  107. if(RB[ID][RB_EX] == 0)
  108. {
  109. new Float:X,Float:Y,Float:Z,Float:A;
  110. GetPlayerPos(playerid,X,Y,Z);
  111. GetPlayerFacingAngle(playerid,A);
  112. RB[ID][RB_EX] = 1;
  113. RB[ID][RB_TYPE] = 4;
  114. RB[ID][RB_X] = X;
  115. RB[ID][RB_Y] = Y;
  116. RB[ID][RB_Z] = Z-0.8;
  117. RB[ID][RB_ID] = CreateObject(2892, RB[ID][RB_X], RB[ID][RB_Y], RB[ID][RB_Z], 0.0, 0.0, A);
  118. return 1;
  119. }
  120. }
  121. return 1;
  122. }
  123. return 0;
  124. }
  125.  
  126. stock RemoveRoadBlock(playerid)
  127. {
  128. new Float:X,Float:Y,Float:Z;
  129. GetPlayerPos(playerid,X,Y,Z);
  130. for(new ID=0; ID<MAX_RB; ID++)
  131. {
  132. if(IsPlayerInRangeOfPoint(playerid,3.0, RB[ID][RB_X],RB[ID][RB_Y],RB[ID][RB_Z]))
  133. {
  134. if(RB[ID][RB_EX] == 1)
  135. {
  136. KillRB(ID);
  137. }
  138. }
  139. }
  140. return 0;
  141. }
  142.  
  143. stock RemoveAllRoadBlock()
  144. {
  145. for(new ID=0; ID<MAX_RB; ID++)
  146. {
  147. if(RB[ID][RB_EX] == 1)
  148. {
  149. KillRB(ID);
  150. }
  151. }
  152. return 0;
  153. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement