Advertisement
Guest User

Untitled

a guest
Oct 26th, 2013
167
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 10.97 KB | None | 0 0
  1. #pragma dynamic 50000
  2.  
  3. #define bCini_Criar(%0) if(!fexist(%0)) fclose(fopen(%0,io_write))
  4. #define bCini_Existe(%0) fexist(%0)
  5. #define bCini_Remover(%0) if(fexist(%0)) fremove(%0)
  6.  
  7. #define bCini_SetarInt(%0,%1,%2) format(bCiniFiles,sizeof(bCiniFiles),"%d",%2) && bCini_SetarTexto(%0,%1,bCiniFiles)
  8. #define bCini_SetarBool(%0,%1,%2) format(bCiniFiles,sizeof(bCiniFiles),"%d",%2) && bCini_SetarTexto(%0,%1,bCiniFiles)
  9. #define bCini_SetarFloat(%0,%1,%2) format(bCiniFiles,sizeof(bCiniFiles),"%f",%2) && bCini_SetarTexto(%0,%1,bCiniFiles)
  10.  
  11. #define bCini_GetarInt(%0,%1) strval(bCini_GetarTexto(%0,%1))
  12. #define bCini_GetarBool(%0,%1) bool:strval(bCini_GetarTexto(%0,%1))
  13. #define bCini_GetarFloat(%0,%1) floatstr(bCini_GetarTexto(%0,%1))
  14.  
  15. #define bCini_Capacidade 5000
  16.  
  17. stock bCache[128];
  18. stock bCiniFiles[128];
  19. stock FileOpen;
  20. stock File:File2;
  21.  
  22. bCini_Iniciar()
  23. {
  24. if(!FileOpen)
  25. {
  26. bCini_AbrirArquivo("bCini",2);
  27. }
  28. return 1;
  29. }
  30. bCini_Encerrar()
  31. {
  32. if(FileOpen)
  33. {
  34. fclose(File2);
  35. FileOpen = 0;
  36.  
  37. strmid(bCache,"bCini",0,strlen("bCini"),5);
  38. }
  39. return 1;
  40. }
  41. stock bCini_AbrirArquivo(arquivo[],tipo)
  42. {
  43. if(FileOpen)
  44. {
  45. bCini_FecharArquivo();
  46. }
  47. if(tipo == 0)
  48. {
  49. File2 = fopen(arquivo,io_read);
  50. FileOpen = 1;
  51.  
  52. strmid(bCache,"bCini",0,strlen("bCini"),5);
  53. }
  54. if(tipo == 1)
  55. {
  56. File2 = fopen(arquivo,io_write);
  57. FileOpen = 1;
  58.  
  59. strmid(bCache,"bCini",0,strlen("bCini"),5);
  60. }
  61. if(tipo == 2)
  62. {
  63. File2 = fopen(arquivo,io_readwrite);
  64. FileOpen = 1;
  65.  
  66. strmid(bCache,"bCini",0,strlen("bCini"),5);
  67. }
  68. if(tipo == 3)
  69. {
  70. File2 = fopen(arquivo,io_append);
  71. FileOpen = 1;
  72.  
  73. strmid(bCache,"bCini",0,strlen("bCini"),5);
  74. }
  75. return 0;
  76. }
  77. stock bCini_FecharArquivo()
  78. {
  79. if(FileOpen)
  80. {
  81. fclose(File2);
  82. FileOpen = 0;
  83.  
  84. strmid(bCache,"bCini",0,strlen("bCini"),5);
  85. }
  86. return 1;
  87. }
  88. stock bCini_SetarTexto(arquivo[],linha[],valor[])
  89. {
  90. new Set = 0,bCiniFiles2[128];
  91.  
  92. if(!fexist(arquivo))
  93. {
  94. goto Setar;
  95. }
  96. new Arquivo[bCini_Capacidade];
  97.  
  98. if(!FileOpen)
  99. {
  100. bCini_AbrirArquivo(arquivo,1);
  101. }
  102. if(strcmp(bCache,arquivo,true) == 0)
  103. {
  104. while(fread(File2, bCiniFiles2))
  105. {
  106. static Biel, bCiniFiles3[0xFF]; Biel = strfind(bCiniFiles2,"=");
  107.  
  108. if(Biel != -1)
  109. {
  110. format(bCiniFiles3, sizeof(bCiniFiles3), bCiniFiles2); bCiniFiles3[Biel] = EOS;
  111.  
  112. if(strcmp(linha, bCiniFiles3, true) == 0)
  113. {
  114. Set = 1; format(bCiniFiles2,sizeof(bCiniFiles2),"%s=%s\r\n",linha,valor);
  115. }
  116. format(Arquivo,sizeof(Arquivo),"%s%s",Arquivo,bCiniFiles2);
  117. }
  118. }
  119. if(!Set)
  120. {
  121. Setar:
  122.  
  123. format(bCiniFiles2,sizeof(bCiniFiles2),"%s=%s\r\n",linha,valor);
  124. format(Arquivo,sizeof(Arquivo),"%s%s",Arquivo,bCiniFiles2);
  125.  
  126. fwrite(File2,Arquivo);
  127. }
  128. }
  129. else
  130. {
  131. bCini_AbrirArquivo(arquivo,1);
  132.  
  133. while(fread(File2, bCiniFiles2))
  134. {
  135. static Biel, bCiniFiles3[0xFF]; Biel = strfind(bCiniFiles2,"=");
  136.  
  137. if(Biel != -1)
  138. {
  139. format(bCiniFiles3, sizeof(bCiniFiles3), bCiniFiles2); bCiniFiles3[Biel] = EOS;
  140.  
  141. if(strcmp(linha, bCiniFiles3, true) == 0)
  142. {
  143. Set = 1; format(bCiniFiles2,sizeof(bCiniFiles2),"%s=%s\r\n",linha,valor);
  144. }
  145. format(Arquivo,sizeof(Arquivo),"%s%s",Arquivo,bCiniFiles2);
  146. }
  147. }
  148. if(!Set)
  149. {
  150. Setar:
  151.  
  152. format(bCiniFiles2,sizeof(bCiniFiles2),"%s=%s\r\n",linha,valor);
  153. format(Arquivo,sizeof(Arquivo),"%s%s",Arquivo,bCiniFiles2);
  154.  
  155. fwrite(File2,Arquivo);
  156. }
  157. }
  158. return 1;
  159. }
  160. stock bCini_GetarTexto(arquivo[],linha[])
  161. {
  162. new bCiniFiles2[128],NovaLinha = strlen(linha);
  163.  
  164. if(NovaLinha == 0 || NovaLinha+2 > 128)
  165. {
  166. return bCiniFiles2;
  167. }
  168. if(!File2)
  169. {
  170. return bCiniFiles2;
  171. }
  172. if(!FileOpen)
  173. {
  174. bCini_AbrirArquivo(arquivo,0);
  175. }
  176. if(strcmp(bCache,arquivo,true) == 0)
  177. {
  178. while(fread(File2,bCiniFiles2))
  179. {
  180. if(bCiniFiles2[NovaLinha] == '=')
  181. {
  182. if(!strcmp(bCiniFiles2,linha,true,NovaLinha))
  183. {
  184. bCini_NovaLinha(bCiniFiles2); strmid(bCiniFiles2,bCiniFiles2,NovaLinha+1,strlen(bCiniFiles2),128); fclose(File2); return bCiniFiles2;
  185. }
  186. }
  187. }
  188. }
  189. else
  190. {
  191. bCini_AbrirArquivo(arquivo,0);
  192.  
  193. while(fread(File2,bCiniFiles2))
  194. {
  195. if(bCiniFiles2[NovaLinha] == '=')
  196. {
  197. if(!strcmp(bCiniFiles2,linha,true,NovaLinha))
  198. {
  199. bCini_NovaLinha(bCiniFiles2); strmid(bCiniFiles2,bCiniFiles2,NovaLinha+1,strlen(bCiniFiles2),128); fclose(File2); return bCiniFiles2;
  200. }
  201. }
  202. }
  203. }
  204. return bCiniFiles2;
  205. }
  206. stock bCini_Copiar(arquivo[],arquivo2[],deletar)
  207. {
  208. if(fexist(arquivo))
  209. {
  210. if(!fexist(arquivo2))
  211. {
  212. new Arquivo[bCini_Capacidade]; new bCiniFiles2[128];
  213.  
  214. if(!FileOpen)
  215. {
  216. bCini_AbrirArquivo(arquivo,0);
  217. }
  218. if(strcmp(bCache,arquivo,true) == 0)
  219. {
  220. while(fread(File2, bCiniFiles2))
  221. {
  222. static Biel, bCiniFiles3[0xFF]; Biel = strfind(bCiniFiles2,"=");
  223.  
  224. if(Biel != -1)
  225. {
  226. format(bCiniFiles3, sizeof(bCiniFiles3), bCiniFiles2); bCiniFiles3[Biel] = EOS; format(Arquivo,sizeof(Arquivo),"%s%s",Arquivo,bCiniFiles2);
  227. }
  228. }
  229. }
  230. else
  231. {
  232. bCini_AbrirArquivo(arquivo,0);
  233.  
  234. while(fread(File2, bCiniFiles2))
  235. {
  236. static Biel, bCiniFiles3[0xFF]; Biel = strfind(bCiniFiles2,"=");
  237.  
  238. if(Biel != -1)
  239. {
  240. format(bCiniFiles3, sizeof(bCiniFiles3), bCiniFiles2); bCiniFiles3[Biel] = EOS; format(Arquivo,sizeof(Arquivo),"%s%s",Arquivo,bCiniFiles2);
  241. }
  242. }
  243. }
  244. new File:File3 = fopen(arquivo2,io_write);
  245.  
  246. fwrite(File3,Arquivo);
  247. fclose(File3);
  248.  
  249. if(deletar == 1)
  250. {
  251. fremove(arquivo);
  252. }
  253. }
  254. }
  255. return 1;
  256. }
  257. stock bCini_Console(arquivo[])
  258. {
  259. if(fexist(arquivo))
  260. {
  261. new Arquivo[bCini_Capacidade]; new bCiniFiles2[128];
  262.  
  263. if(!FileOpen)
  264. {
  265. bCini_AbrirArquivo(arquivo,0);
  266. }
  267. if(strcmp(bCache,arquivo,true) == 0)
  268. {
  269. while(fread(File2, bCiniFiles2))
  270. {
  271. static Biel, bCiniFiles3[0xFF]; Biel = strfind(bCiniFiles2,"=");
  272.  
  273. if(Biel != -1)
  274. {
  275. format(bCiniFiles3, sizeof(bCiniFiles3), bCiniFiles2); bCiniFiles3[Biel] = EOS; format(Arquivo,sizeof(Arquivo),"%s%s\n",Arquivo,bCiniFiles2);
  276. }
  277. }
  278. }
  279. else
  280. {
  281. bCini_AbrirArquivo(arquivo,0);
  282.  
  283. while(fread(File2, bCiniFiles2))
  284. {
  285. static Biel, bCiniFiles3[0xFF]; Biel = strfind(bCiniFiles2,"=");
  286.  
  287. if(Biel != -1)
  288. {
  289. format(bCiniFiles3, sizeof(bCiniFiles3), bCiniFiles2); bCiniFiles3[Biel] = EOS; format(Arquivo,sizeof(Arquivo),"%s%s\n",Arquivo,bCiniFiles2);
  290. }
  291. }
  292. }
  293. printf("Arquivo: %s\n\n%s",arquivo,Arquivo);
  294. }
  295. return 1;
  296. }
  297. stock bCini_LimparArquivo(arquivo[])
  298. {
  299. if(fexist(arquivo))
  300. {
  301. if(!FileOpen)
  302. {
  303. bCini_AbrirArquivo(arquivo,0);
  304. }
  305. if(strcmp(bCache,arquivo,true) == 0)
  306. {
  307. fwrite(File2,"");
  308. }
  309. else
  310. {
  311. bCini_AbrirArquivo(arquivo,0);
  312. fwrite(File2,"");
  313. }
  314. }
  315. return 1;
  316. }
  317. stock bCini_Setado(arquivo[],linha[])
  318. {
  319. new bCiniFiles2[128],NovaLinha = strlen(linha);
  320.  
  321. if(NovaLinha == 0 || NovaLinha+2 > 128)
  322. {
  323. return bCiniFiles2;
  324. }
  325. if(!File2)
  326. {
  327. return bCiniFiles2;
  328. }
  329. if(!FileOpen)
  330. {
  331. bCini_AbrirArquivo(arquivo,0);
  332. }
  333. if(strcmp(bCache,arquivo,true) == 0)
  334. {
  335. while(fread(File2,bCiniFiles2))
  336. {
  337. if(bCiniFiles2[NovaLinha] == '=')
  338. {
  339. if(!strcmp(bCiniFiles2,linha,true,NovaLinha))
  340. {
  341. return 1;
  342. }
  343. }
  344. }
  345. }
  346. else
  347. {
  348. bCini_AbrirArquivo(arquivo,0);
  349.  
  350. while(fread(File2,bCiniFiles2))
  351. {
  352. if(bCiniFiles2[NovaLinha] == '=')
  353. {
  354. if(!strcmp(bCiniFiles2,linha,true,NovaLinha))
  355. {
  356. return 1;
  357. }
  358. }
  359. }
  360. }
  361. return 0;
  362. }
  363. stock bCini_Desescrever(arquivo,linha[])
  364. {
  365. new bCiniFiles2[128],NovaLinha = strlen(linha);
  366.  
  367. if(NovaLinha == 0 || NovaLinha+2 > 128)
  368. {
  369. return bCiniFiles2;
  370. }
  371. if(!File2)
  372. {
  373. return bCiniFiles2;
  374. }
  375. if(!FileOpen)
  376. {
  377. bCini_AbrirArquivo(arquivo,0);
  378. }
  379. if(strcmp(bCache,arquivo,true) == 0)
  380. {
  381. while(fread(File2,bCiniFiles2))
  382. {
  383. if(bCiniFiles2[NovaLinha] == '=')
  384. {
  385. if(!strcmp(bCiniFiles2,linha,true,NovaLinha))
  386. {
  387. bCini_NovaLinha(bCiniFiles2);
  388.  
  389. fwrite(File2,bCiniFiles2);
  390. fwrite(File2,"\r\n");
  391. }
  392. }
  393. }
  394. }
  395. else
  396. {
  397. bCini_AbrirArquivo(arquivo,0);
  398.  
  399. while(fread(File2,bCiniFiles2))
  400. {
  401. if(bCiniFiles2[NovaLinha] == '=')
  402. {
  403. if(!strcmp(bCiniFiles2,linha,true,NovaLinha))
  404. {
  405. bCini_NovaLinha(bCiniFiles2);
  406.  
  407. fwrite(File2,bCiniFiles2);
  408. fwrite(File2,"\r\n");
  409. }
  410. }
  411. }
  412. }
  413. return 0;
  414. }
  415. // Não usado
  416.  
  417. stock bCini_NovaLinha(linha[])
  418. {
  419. new NovaLinha = strlen(linha);
  420.  
  421. if(linha[0] != 0)
  422. {
  423. if(linha[NovaLinha-1] == '\n' || linha[NovaLinha-1] == '\r')
  424. {
  425. linha[NovaLinha-1] = 0;
  426. }
  427. if(linha[0] != 0)
  428. {
  429. if(linha[NovaLinha-2] == '\n' || linha[NovaLinha-2] == '\r')
  430. {
  431. linha[NovaLinha-2] = 0;
  432. }
  433. }
  434. return 1;
  435. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement