Fitri_Fahim

Untitled

Jun 30th, 2013
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.32 KB | None | 0 0
  1. // This is a comment
  2. // uncomment the line below if you want to write a filterscript
  3. //#define FILTERSCRIPT
  4.  
  5. #include <a_samp>
  6. #include <zcmd>
  7. #include <sscanf2>
  8. #include <streamer>
  9.  
  10. #define MAX_BLOCKS 100
  11.  
  12. #define Loop(%0,%1) for(new %0 = 0; %0 < %1; %0++)
  13.  
  14. #define ALLBLOCK Loop(i, MAX_BLOCKS)
  15.  
  16. enum BInfo
  17. {
  18. Float:OffX,
  19. Float:OffY,
  20. Float:OffZ,
  21. Float:RX,
  22. Float:RY,
  23. Float:RZ
  24. }
  25. new BlockInfo[MAX_BLOCKS][BInfo];
  26. new AllBlock[MAX_BLOCKS];
  27. new IsPlayerCreateBlock[MAX_PLAYERS][MAX_BLOCKS];
  28. new BID;
  29.  
  30. public OnFilterScriptInit()
  31. {
  32. print("\n--------------------------------------");
  33. print(" Blank Filterscript by your name here");
  34. print("--------------------------------------\n");
  35. return 1;
  36. }
  37.  
  38. public OnFilterScriptExit()
  39. {
  40. return 1;
  41. }
  42.  
  43. CMD:createblock(playerid,params[])
  44. {
  45. new type;
  46. if(sscanf(params, "i",type)) return SendClientMessage(playerid,-1,"/createblock <1-5>");
  47. {
  48. new Float:X,Float:Y,Float:Z;
  49. IsPlayerCreateBlock[playerid][BID] = 1;
  50. GetPlayerPos(playerid,X,Y,Z);
  51. CreateDynamicBlock(type,X,Y,Z,0.00,0.00,0.00);
  52. new str[128];
  53. format(str, sizeof(str), "Object Id: %d", BID);
  54. CreatePlayer3DTextLabel(playerid,str,0x008080FF,X,Y,Z,40.0);
  55. }
  56. return 1;
  57. }
  58.  
  59.  
  60.  
  61.  
  62. stock CreateDynamicBlock(type,Float:X,Float:Y,Float:Z,Float:RotX,Float:RotY,Float:RotZ)
  63. {
  64. if(type == 1)
  65. {
  66. BlockInfo[BID][OffX] = X;
  67. BlockInfo[BID][OffY] = Y;
  68. BlockInfo[BID][OffZ] = Z;
  69. BlockInfo[BID][RX] = RotX;
  70. BlockInfo[BID][RY] = RotX;
  71. BlockInfo[BID][RZ] = RotZ;
  72. AllBlock[BID] = CreateDynamicObject(3799,X,Y,Z,RotX,RotY,RotZ);
  73. SetDynamicObjectMaterial(AllBlock[BID], 0, 18646, "MatColours", "red", 0xFFFFFF10);
  74. BID++;
  75. }
  76. if(type == 2)
  77. {
  78. BlockInfo[BID][OffX] = X;
  79. BlockInfo[BID][OffY] = Y;
  80. BlockInfo[BID][OffZ] = Z;
  81. BlockInfo[BID][RX] = RotX;
  82. BlockInfo[BID][RY] = RotX;
  83. BlockInfo[BID][RZ] = RotZ;
  84. AllBlock[BID] = CreateDynamicObject(3799,X,Y,Z,RotX,RotY,RotZ);
  85. SetDynamicObjectMaterial(AllBlock[BID], 0, 18646, "MatColours", "green", 0xFFFFFF10);
  86. BID++;
  87. }
  88. if(type == 3)
  89. {
  90. BlockInfo[BID][OffX] = X;
  91. BlockInfo[BID][OffY] = Y;
  92. BlockInfo[BID][OffZ] = Z;
  93. BlockInfo[BID][RX] = RotX;
  94. BlockInfo[BID][RY] = RotX;
  95. BlockInfo[BID][RZ] = RotZ;
  96. AllBlock[BID] = CreateDynamicObject(3799,X,Y,Z,RotX,RotY,RotZ);
  97. SetDynamicObjectMaterial(AllBlock[BID], 0, 18646, "MatColours", "orange", 0xFFFFFF10);
  98. BID++;
  99. }
  100. if(type == 4)
  101. {
  102. BlockInfo[BID][OffX] = X;
  103. BlockInfo[BID][OffY] = Y;
  104. BlockInfo[BID][OffZ] = Z;
  105. BlockInfo[BID][RX] = RotX;
  106. BlockInfo[BID][RY] = RotX;
  107. BlockInfo[BID][RZ] = RotZ;
  108. AllBlock[BID] = CreateDynamicObject(3799,X,Y,Z,RotX,RotY,RotZ);
  109. SetDynamicObjectMaterial(AllBlock[BID], 0, 18646, "MatColours", "yellow", 0xFFFFFF10);
  110. BID++;
  111. }
  112. else
  113. {
  114. //create black block
  115. BlockInfo[BID][OffX] = X;
  116. BlockInfo[BID][OffY] = Y;
  117. BlockInfo[BID][OffZ] = Z;
  118. BlockInfo[BID][RX] = RotX;
  119. BlockInfo[BID][RY] = RotX;
  120. BlockInfo[BID][RZ] = RotZ;
  121. AllBlock[BID] = CreateDynamicObject(3799,X,Y,Z,RotX,RotY,RotZ);
  122. SetDynamicObjectMaterial(AllBlock[BID], 0, 18646, "MatColours", "blue", 0xFFFFFF10);
  123. BID++;
  124. }
  125. return 1;
  126. }
Advertisement
Add Comment
Please, Sign In to add comment