Advertisement
Guest User

Update Dinamicno Pravljenje Vozila Shomy

a guest
Oct 30th, 2017
185
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.92 KB | None | 0 0
  1. //=-=-=-= DINAMICNO PRAVLJENJE VOZILA BY SHOMY =-=-=-=//
  2.  
  3. //=-= INCLUDE =-=//
  4.  
  5. #include < a_samp >
  6.  
  7. #include < zcmd >
  8.  
  9. #include < sscanf2 >
  10.  
  11. #include < YSI\y_ini >
  12.  
  13. //=-= DIALOZI =-=//
  14.  
  15. #define DIALOG_PRAVLJENJE1 1
  16.  
  17. //=-= SKRACENICE =-=//
  18.  
  19. #define SCM SendClientMessage
  20.  
  21. #define SPD ShowPlayerDialog
  22.  
  23. #define DSI DIALOG_STYLE_INPUT
  24.  
  25. //=-= PATH =-=//
  26.  
  27. #define V_FILE "Vozila/%i.ini"
  28.  
  29. #define MAX_CARS 1500
  30.  
  31. //=-= BOJE =-=//
  32.  
  33. #define COL_SERVER "{FF8000}"
  34.  
  35. #define BELA "{FFFFFF}"
  36.  
  37. //=-= ENUM =-=//
  38.  
  39. enum vInfo
  40. {
  41. Float:vPosX,
  42. Float:vPosY,
  43. Float:vPosZ,
  44. Float:vPosA,
  45. vBoja1,
  46. vBoja2,
  47. vID,
  48. vModel
  49. }
  50.  
  51. //=-= FORWARD =-=//
  52.  
  53. forward OcitajVozilo( id, name[], value[] );
  54.  
  55. //=-= NEW =-=//
  56.  
  57. new VehInfo[MAX_VEHICLES][vInfo];
  58.  
  59. //=-= PUBLIC =-=//
  60.  
  61. public OnFilterScriptInit()
  62. {
  63. LoadVehicles();
  64. return 1;
  65. }
  66. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  67. {
  68. if(dialogid == DIALOG_PRAVLJENJE1)
  69. {
  70. if(response)
  71. {
  72. new idvozila, bojavozila1, bojavozila2;
  73. if(sscanf(inputtext, "d d d", idvozila, bojavozila1, bojavozila2))
  74. {
  75. if(idvozila < 400 || idvozila > 611)
  76. {
  77. SPD(playerid, DIALOG_PRAVLJENJE1, DSI, ""COL_SERVER"ID Vozila",""BELA"Unesite ID Vozila ( Model ), pa boju vozila 1, boju vozila 2.",""BELA"Dalje",""BELA"Izlaz");
  78. SCM(playerid, -1, ""COL_SERVER"[GRESKA] "BELA"Unesite ID Vozila 400-611 !");
  79. }
  80. else
  81. {
  82. SPD(playerid, DIALOG_PRAVLJENJE1, DSI, ""COL_SERVER"ID Vozila",""BELA"Unesite ID Vozila ( Model ), pa boju vozila 1, boju vozila 2.",""BELA"Dalje",""BELA"Izlaz");
  83. SCM(playerid, -1, ""COL_SERVER"[GRESKA] "BELA"Unesite ID Vozila 400-611, boju vozila 1 i boju vozila 2 !");
  84. }
  85.  
  86. }
  87. else
  88. {
  89. if(idvozila > 399 || idvozila < 612)
  90. {
  91. new Float:X,Float:Y,Float:Z,Float:A;
  92. GetPlayerPos(playerid, X,Y,Z);
  93. GetPlayerFacingAngle(playerid, A);
  94. new PravljenoVozilo;
  95. new fileauta[ 40 ];
  96. format(fileauta, sizeof( fileauta ), V_FILE, PravljenoVozilo);
  97. if( !fexist( fileauta ) )
  98. {
  99. PravljenoVozilo = CreateVehicle(idvozila,X,Y,Z,A,bojavozila1,bojavozila2,-1);
  100. VehInfo[PravljenoVozilo][vPosX] = X;
  101. VehInfo[PravljenoVozilo][vPosY] = Y;
  102. VehInfo[PravljenoVozilo][vPosZ] = Z;
  103. VehInfo[PravljenoVozilo][vPosA] = A;
  104. VehInfo[PravljenoVozilo][vBoja1] = bojavozila1;
  105. VehInfo[PravljenoVozilo][vBoja2] = bojavozila2;
  106. VehInfo[PravljenoVozilo][vModel] = idvozila;
  107. SacuvajVozilo( PravljenoVozilo );
  108. }
  109. }
  110. else
  111. {
  112. if(idvozila < 400 || idvozila > 611)
  113. {
  114. SPD(playerid, DIALOG_PRAVLJENJE1, DSI, ""COL_SERVER"ID Vozila",""BELA"Unesite ID Vozila ( Model ), pa boju vozila 1, boju vozila 2.",""BELA"Dalje",""BELA"Izlaz");
  115. SCM(playerid, -1, ""COL_SERVER"[GRESKA] "BELA"Unesite ID Vozila 400-611 !");
  116. }
  117. }
  118. }
  119. }
  120. }
  121. return 1;
  122. }
  123.  
  124. //=-= CMD =-=//
  125.  
  126. CMD:kreirajvozilo(playerid, params[])
  127. {
  128. if(IsPlayerAdmin(playerid))
  129. {
  130. SPD(playerid, DIALOG_PRAVLJENJE1, DSI, ""COL_SERVER"ID Vozila",""BELA"Unesite ID Vozila ( Model ), pa boju vozila 1, boju vozila 2.",""BELA"Dalje",""BELA"Izlaz");
  131. }
  132. else return SCM(playerid, -1, ""COL_SERVER"[GRESKA] "BELA"Niste RCON Admin !");
  133. return 1;
  134. }
  135. stock LoadVehicles( ) {
  136.  
  137. for( new i = 1; i < MAX_CARS; i++ ) {
  138.  
  139. VehInfo[ i ][ vID ] = -1;
  140. new vFile[50];
  141. format( vFile, sizeof( vFile ), V_FILE, i );
  142. if( fexist( vFile ) ) {
  143.  
  144. INI_ParseFile( vFile, "OcitajVozilo", .bExtra = true, .extra = i );
  145. VehInfo[ i ][ vID ] = -1;
  146. VehInfo[ i ][ vID ] = CreateVehicle(VehInfo[i][vModel],VehInfo[i][vPosX],VehInfo[i][vPosY],VehInfo[i][vPosZ],VehInfo[i][vPosA],VehInfo[i][vBoja1],VehInfo[i][vBoja2], -1);
  147. }
  148. }
  149. }
  150. public OcitajVozilo( id, name[], value[] ) {
  151.  
  152. INI_Float( "X", VehInfo[ id ][ vPosX ] );
  153. INI_Float( "Y", VehInfo[ id ][ vPosY ] );
  154. INI_Float( "Z", VehInfo[ id ][ vPosZ ] );
  155. INI_Float( "A", VehInfo[ id ][ vPosA ] );
  156. INI_Int( "ID", VehInfo[ id ][ vID ] );
  157. INI_Int( "Boja 1", VehInfo[ id ][ vBoja1 ] );
  158. INI_Int( "Boja 2", VehInfo[ id ][ vBoja2 ] );
  159. INI_Int( "Model", VehInfo[ id ][ vModel ] );
  160. return 1;
  161. }
  162. stock SacuvajVozilo( id )
  163. {
  164. new iFile[ 60 ];
  165. format( iFile, sizeof( iFile ), V_FILE, id );
  166. new INI:File = INI_Open( iFile );
  167. INI_WriteFloat( File, "X", VehInfo[id][vPosX] );
  168. INI_WriteFloat( File, "Y", VehInfo[id][vPosY] );
  169. INI_WriteFloat( File, "Z", VehInfo[id][vPosZ] );
  170. INI_WriteFloat( File, "A", VehInfo[id][vPosA] );
  171. INI_WriteFloat( File, "ID", VehInfo[id][vID] );
  172. INI_WriteFloat( File, "Boja 1", VehInfo[id][vBoja1] );
  173. INI_WriteFloat( File, "Boja 2", VehInfo[id][vBoja2] );
  174. INI_WriteFloat( File, "Model", VehInfo[id][vModel] );
  175. INI_Close(File);
  176. return 1;
  177. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement