Advertisement
Guest User

Untitled

a guest
Apr 22nd, 2011
258
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.58 KB | None | 0 0
  1. #if defined _vehicleplate_included
  2. #endinput
  3. #endif
  4.  
  5. #define _vehicleplate_included
  6.  
  7. #include <a_samp>
  8.  
  9. #pragma tabsize 0
  10.  
  11. /* VehiclePlate v1.0
  12. * By: Dr_Pawno
  13. *
  14. */
  15.  
  16. /*
  17. native SetVehicleRandomPlate(vehicleid);
  18. native GetVehicleRandomPlate(vehicleid);
  19. native SaveVehiclesRandomPlate(Arquivo);
  20. native LoadVehiclesRandomPlate(Arquivo);
  21. native GetLetter(number);
  22. native split(const strsrc[], strdest[][], delimiter);
  23. */
  24.  
  25. new VehicleRandomPlate[MAX_VEHICLES][15];
  26. new VehicleUsingRandomPlate[MAX_VEHICLES] = 0;
  27.  
  28. stock SetVehicleRandomPlate(vehicleid)
  29. {
  30. new letter[4],
  31. number[15],
  32. plate[15];
  33. letter[0] = random(26)+1; letter[2] = random(26)+1; letter[3] = random(26)+1;
  34. new rnumber = random(10);
  35. new rnumber2 = random(10);
  36. new rnumber3 = random(10);
  37. format(number, 15, "%d%d%d", rnumber, rnumber2, rnumber3);
  38. format(plate, 15, "%s%s%s%s %s", GetLetter(letter[0]), GetLetter(letter[1]), GetLetter(letter[2]), GetLetter(letter[3]), number);
  39. SetVehicleNumberPlate(vehicleid, plate);
  40. VehicleRandomPlate[vehicleid] = plate;
  41. VehicleUsingRandomPlate[vehicleid] = 1;
  42. return 1;
  43. }
  44.  
  45. stock GetVehicleRandomPlate(vehicleid)
  46. {
  47. new plate[15];
  48. if(VehicleUsingRandomPlate[vehicleid] == 0)
  49. {
  50. plate = "XYZR 000");
  51. }
  52. else
  53. {
  54. plate = VehicleRandomPlate[vehicleid];
  55. }
  56. return plate;
  57. }
  58.  
  59. stock GetLetter(number)
  60. {
  61. new letter[5];
  62. if(number == 1){letter="A";}if(number == 2){letter="B";}if(number == 3){letter="C";}if(number == 4){letter="D";}if(number == 5){letter="E";}if(number == 6){letter="F";}if(number == 7){letter="G";}if(number == 8){letter="H";}
  63. if(number == 9){letter="I";}if(number == 10){letter="J";}if(number == 11){letter="K";}if(number == 12){letter="L";}if(number == 13){letter="M";}if(number == 14){letter="N";}if(number == 15){letter="O";}if(number == 16){letter="P";}
  64. if(number == 17){letter="Q";}if(number == 18){letter="R";}if(number == 19){letter="S";}if(number == 20){letter="T";}if(number == 21){letter="U";}if(number == 22){letter="V";}if(number == 23){letter="W";}if(number == 24){letter="X";}
  65. if(number == 25){letter="Y";}if(number == 26){letter="Z";} return letter;
  66. }
  67.  
  68. stock LoadVehiclesRandomPlate(Arquivo[])
  69. {
  70. new arrCoords[2][64];
  71. new strFromFile2[256];
  72. if (fexist(Arquivo))
  73. {
  74. new File:file = fopen(Arquivo, io_read);
  75. new vehid = 1;
  76. while (vehid <= MAX_VEHICLES)
  77. {
  78. fread(file, strFromFile2);
  79. split(strFromFile2, arrCoords, '|');
  80. VehicleUsingRandomPlate[vehid] = strval(arrCoords[0]);
  81. strmid(VehicleRandomPlate[vehid], arrCoords[1], 0, strlen(arrCoords[1]), 255);
  82. if(VehicleUsingRandomPlate[vehid] == 1)
  83. {
  84. SetVehicleNumberPlate(vehid, VehicleRandomPlate[vehid]);
  85. }
  86. vehid++;
  87. }
  88. fclose(file);
  89. }
  90. return 1;
  91. }
  92.  
  93. stock SaveVehiclesRandomPlate(Arquivo[])
  94. {
  95. new vehid = 1;
  96. new File: file2;
  97. while (vehid <= MAX_VEHICLES)
  98. {
  99. new coordsstring[256];
  100. format(coordsstring, sizeof(coordsstring), "%d|%s\n",
  101. VehicleUsingRandomPlate[vehid],
  102. VehicleRandomPlate[vehid]);
  103. if(vehid == 2)
  104. {
  105. file2 = fopen(Arquivo, io_write);
  106. }
  107. else
  108. {
  109. file2 = fopen(Arquivo, io_append);
  110. }
  111. fwrite(file2, coordsstring);
  112. vehid++;
  113. fclose(file2);
  114. }
  115. return 1;
  116. }
  117.  
  118. forward split(const strsrc[], strdest[][], delimiter);
  119.  
  120. public split(const strsrc[], strdest[][], delimiter)
  121. {
  122. new i, li;
  123. new aNum;
  124. new len;
  125. while(i <= strlen(strsrc)){
  126. if(strsrc[i]==delimiter || i==strlen(strsrc)){
  127. len = strmid(strdest[aNum], strsrc, li, i, 128);
  128. strdest[aNum][len] = 0;
  129. li = i+1;
  130. aNum++;
  131. }
  132. i++;
  133. }
  134. return 1;
  135. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement