1
0

dudb.inc 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539
  1. /*
  2. * DUDB 1.2
  3. * (c) Copyright 2006 by DracoBlue
  4. *
  5. * @author : DracoBlue (http://dracoblue.com)
  6. * @date : 8th May 2006
  7. * @update : 31st July 2006
  8. * @require : DUtils 1.3
  9. *
  10. * This file is provided as is (no warranties).
  11. *
  12. * Feel free to use it, a little message in
  13. * about box is honouring thing, isn't it?
  14. *
  15. * Versão especial para uso no MPA® PoWeR RPG
  16. *
  17. * SA:MP 0.2 Ready Version
  18. */
  19. #if defined _dudb_included
  20. #endinput
  21. #endif
  22. #define _dudb_included
  23. #pragma library dutils
  24. #include <a_samp>
  25. #include <dutils>
  26. //---Forwards---//
  27. forward udb_hash(buf[]);
  28. forward udb_Exists(nickname[]);
  29. forward udb_Remove(nickname[]);
  30. forward udp_PRIVATE_clearbroken(nicknameenc[]);
  31. forward udb_Save(nickname[], pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag[], Float:X, Float:Y, Float:Z, Float:ang, Float:health);
  32. forward udb_Load(nickname[], &pwd_hash, &creditos, &acc_state, &skin, &bank_money, &gasoline, &habaerea, &habterre, &habnauti, &prisao, &prof, clantag[], &Float:X, &Float:Y, &Float:Z, &Float:ang, &Float:health);
  33. forward udb_getPwdHash(nickname[]);
  34. forward udb_getCreditos(nickname[]);
  35. forward udb_getAccState(nickname[]);
  36. forward udb_getPosition(nickname[], &Float:X, &Float:Y, &Float:Z);
  37. forward udb_getAng(nickname[], &Float:ang);
  38. forward udb_getSkin(nickname[]);
  39. forward udb_getBankMoney(nickname[]);
  40. forward udb_getHealth(nickname[], &Float:health);
  41. forward udb_getGasoline(nickname[]);
  42. forward udb_getHabaerea(nickname[]);
  43. forward udb_gethabterre(nickname[]);
  44. forward udb_getHabnauti(nickname[]);
  45. forward udb_getPrisao(nickname[]);
  46. forward udb_getProf(nickname[]);
  47. forward udb_setClantag(nickname[], new_clantag[]);
  48. forward udb_setPwdHash(nickname[], new_pwdhash);
  49. forward udb_setCreditos(nickname[], new_creditos);
  50. forward udb_setAccState(nickname[], new_accstate);
  51. forward udb_setPosition(nickname[], Float:new_x, Float:new_y, Float:new_z);
  52. forward udb_setAng(nickname[], Float:new_ang);
  53. forward udb_setSkin(nickname[], new_skin);
  54. forward udb_setBankMoney(nickname[], new_bankmoney);
  55. forward udb_setHealth(nickname[], Float:new_health);
  56. forward udb_setGasoline(nickname[], new_gasoline);
  57. forward udb_setHabaerea(nickname[], new_habaerea);
  58. forward udb_setHabterre(nickname[], new_habterre);
  59. forward udb_setHabnauti(nickname[], new_habnauti);
  60. forward udb_setPrisao(nickname[], new_prisao);
  61. forward udb_setProf(nickname[], new_prof);
  62. forward udb_CheckLogin(nickname[], pwd[]);
  63. forward udb_setPassword(nickname[], pwd[]);
  64. forward udb_Create(nickname[], pwd[], creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag[], Float:X, Float:Y, Float:Z, Float:ang, Float:health);
  65. //--------------//
  66. public udb_hash(buf[]) {
  67. new length=strlen(buf);
  68. new s1 = 1;
  69. new s2 = 0;
  70. new n;
  71. for (n=0; n<length; n++)
  72. {
  73. s1 = (s1 + buf[n]) % 65521;
  74. s2 = (s2 + s1) % 65521;
  75. }
  76. return (s2 << 16) + s1;
  77. }
  78. stock udb_encode(nickname[]) {
  79. new tmp[MAX_STRING];
  80. set(tmp,nickname);
  81. tmp=strreplace("/"," 03",tmp);
  82. tmp=strreplace("\\"," 04",tmp);
  83. tmp=strreplace("?"," 07",tmp);
  84. tmp=strreplace("*"," 09",tmp);
  85. tmp=strreplace("<"," 10",tmp);
  86. tmp=strreplace(">"," 11",tmp);
  87. tmp=strreplace(":"," 14",tmp);
  88. tmp=strreplace("|"," 15",tmp);
  89. return tmp;
  90. }
  91. stock udb_decode(nickname[]) {
  92. new tmp[MAX_STRING];
  93. set(tmp,nickname);
  94. tmp=strreplace(" 03","/",tmp);
  95. tmp=strreplace(" 04","\\",tmp);
  96. tmp=strreplace(" 07","?",tmp);
  97. tmp=strreplace(" 09","*",tmp);
  98. tmp=strreplace(" 10","<",tmp);
  99. tmp=strreplace(" 11",">",tmp);
  100. tmp=strreplace(" 14",":",tmp);
  101. tmp=strreplace(" 15","|",tmp);
  102. return tmp;
  103. }
  104. public udb_Exists(nickname[]) {
  105. new tmp[MAX_STRING];
  106. new tmp2[MAX_STRING];
  107. set(tmp2,udb_encode(nickname));
  108. set(tmp,tmp2);
  109. strcat(tmp,".1.player");
  110. if (fexist(tmp)) return true;
  111. set(tmp,tmp2);
  112. strcat(tmp,".2.player");
  113. if (fexist(tmp)) return true;
  114. set(tmp,tmp2);
  115. strcat(tmp,".3.player");
  116. if (fexist(tmp)) return true;
  117. return false;
  118. }
  119. public udb_Remove(nickname[]) {
  120. new tmp[MAX_STRING];
  121. new tmp2[MAX_STRING];
  122. if (!udb_Exists(nickname)) return false;
  123. set(tmp2,udb_encode(nickname));
  124. set(tmp,tmp2);
  125. strcat(tmp,".1.player");
  126. fremove(tmp);
  127. set(tmp,tmp2);
  128. strcat(tmp,".2.player");
  129. fremove(tmp);
  130. set(tmp,tmp2);
  131. strcat(tmp,".3.player");
  132. fremove(tmp);
  133. return true;
  134. }
  135. public udp_PRIVATE_clearbroken(nicknameenc[]) {
  136. new tmp2[MAX_STRING];
  137. new tmp_a[MAX_STRING];
  138. new tmp_b[MAX_STRING];
  139. set(tmp2,nicknameenc);
  140. set(tmp_a,tmp2);strcat(tmp_a,".1.player");
  141. set(tmp_b,tmp2);strcat(tmp_b,".2.player");
  142. if ((fexist(tmp_a))&&(fexist(tmp_b))) {
  143. fremove(tmp_b);
  144. } else {
  145. set(tmp_a,tmp2);strcat(tmp_a,".2.player");
  146. set(tmp_b,tmp2);strcat(tmp_b,".3.player");
  147. if ((fexist(tmp_a))&&(fexist(tmp_b))) {
  148. fremove(tmp_b);
  149. } else {
  150. set(tmp_a,tmp2);strcat(tmp_a,".3.player");
  151. set(tmp_b,tmp2);strcat(tmp_b,".1.player");
  152. if ((fexist(tmp_a))&&(fexist(tmp_b))) {
  153. fremove(tmp_b);
  154. } else {
  155. }
  156. }
  157. }
  158. }
  159. public udb_Save(nickname[], pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag[], Float:X, Float:Y, Float:Z, Float:ang, Float:health) {
  160. new tmpres[MAX_STRING];
  161. tmpres[0]=0;
  162. new tmp[MAX_STRING];
  163. new File:fhnd;
  164. valstr(tmp,pwd_hash); strcat(tmpres,tmp); strcat(tmpres,";");
  165. valstr(tmp,creditos); strcat(tmpres,tmp); strcat(tmpres,";");
  166. valstr(tmp,acc_state); strcat(tmpres,tmp); strcat(tmpres,";");
  167. valstr(tmp,skin); strcat(tmpres,tmp); strcat(tmpres,";");
  168. valstr(tmp,bank_money);strcat(tmpres,tmp); strcat(tmpres,";");
  169. valstr(tmp,gasoline); strcat(tmpres,tmp); strcat(tmpres,";");
  170. valstr(tmp,habaerea); strcat(tmpres,tmp); strcat(tmpres,";");
  171. valstr(tmp,habterre); strcat(tmpres,tmp); strcat(tmpres,";");
  172. valstr(tmp,habnauti); strcat(tmpres,tmp); strcat(tmpres,";");
  173. valstr(tmp,prisao); strcat(tmpres,tmp); strcat(tmpres,";");
  174. valstr(tmp,prof); strcat(tmpres,tmp); strcat(tmpres,";");
  175. strcat(tmpres,clantag);
  176. format(tmpres,sizeof(tmpres),"%s;%f;%f;%f;%f;%f", tmpres, X, Y, Z, ang, health);
  177. new tmp2[MAX_STRING];
  178. new tmp_a[MAX_STRING];
  179. new tmp_b[MAX_STRING];
  180. set(tmp2,udb_encode(nickname));
  181. udp_PRIVATE_clearbroken(tmp2);
  182. set(tmp_a,tmp2);strcat(tmp_a,".1.player");
  183. set(tmp_b,tmp2);strcat(tmp_b,".2.player");
  184. if ((fexist(tmp_a))) {
  185. fhnd=fopen(tmp_b,io_write);
  186. fwrite(fhnd,tmpres);
  187. fclose(fhnd);
  188. fremove(tmp_a);
  189. return true;
  190. }
  191. set(tmp_a,tmp2);strcat(tmp_a,".2.player");
  192. set(tmp_b,tmp2);strcat(tmp_b,".3.player");
  193. if ((fexist(tmp_a))) {
  194. fhnd=fopen(tmp_b,io_write);
  195. fwrite(fhnd,tmpres);
  196. fclose(fhnd);
  197. fremove(tmp_a);
  198. return true;
  199. }
  200. set(tmp_a,tmp2);strcat(tmp_a,".3.player");
  201. set(tmp_b,tmp2);strcat(tmp_b,".1.player");
  202. if ((fexist(tmp_a))) {
  203. fhnd=fopen(tmp_b,io_write);
  204. fwrite(fhnd,tmpres);
  205. fclose(fhnd);
  206. fremove(tmp_a);
  207. return true;
  208. }
  209. fhnd=fopen(tmp_b,io_write);
  210. fwrite(fhnd,tmpres);
  211. fclose(fhnd);
  212. return false;
  213. }
  214. public udb_Load(nickname[], &pwd_hash, &creditos, &acc_state, &skin, &bank_money, &gasoline, &habaerea, &habterre, &habnauti, &prisao, &prof, clantag[], &Float:X, &Float:Y, &Float:Z, &Float:ang, &Float:health) {
  215. new tmpres[MAX_STRING];
  216. tmpres[0]=0;
  217. pwd_hash=0; creditos=0; acc_state=0; skin=0; bank_money=0; gasoline=0; habaerea=0; habterre=0; habnauti=0; prisao=0; prof=0; clantag[0]=0; X=0; Y=0; Z=0; ang=0; health=0;
  218. new File:fhnd;
  219. new tmp2[MAX_STRING];
  220. new tmp_a[MAX_STRING];
  221. set(tmp2,udb_encode(nickname));
  222. udp_PRIVATE_clearbroken(tmp2);
  223. set(tmp_a,tmp2);strcat(tmp_a,".1.player");
  224. if ((fexist(tmp_a))) {
  225. fhnd=fopen(tmp_a,io_read);
  226. fread(fhnd,tmpres);
  227. fclose(fhnd);
  228. }
  229. set(tmp_a,tmp2);strcat(tmp_a,".2.player");
  230. if ((fexist(tmp_a))) {
  231. fhnd=fopen(tmp_a,io_read);
  232. fread(fhnd,tmpres);
  233. fclose(fhnd);
  234. }
  235. set(tmp_a,tmp2);strcat(tmp_a,".3.player");
  236. if ((fexist(tmp_a))) {
  237. fhnd=fopen(tmp_a,io_read);
  238. fread(fhnd,tmpres);
  239. fclose(fhnd);
  240. }
  241. StripNewLine(tmpres);
  242. if (tmpres[0]!=0) {
  243. new i;
  244. pwd_hash = strval(strtok(tmpres,i,';'));
  245. creditos = strval(strtok(tmpres,i,';'));
  246. acc_state = strval(strtok(tmpres,i,';'));
  247. skin = strval(strtok(tmpres,i,';'));
  248. bank_money = strval(strtok(tmpres,i,';'));
  249. gasoline = strval(strtok(tmpres,i,';'));
  250. habaerea = strval(strtok(tmpres,i,';'));
  251. habterre = strval(strtok(tmpres,i,';'));
  252. habnauti = strval(strtok(tmpres,i,';'));
  253. prisao = strval(strtok(tmpres,i,';'));
  254. prof = strval(strtok(tmpres,i,';'));
  255. set(clantag,strtok(tmpres,i,';'));
  256. X = Float:floatstr(strtok(tmpres,i,';'));
  257. Y = Float:floatstr(strtok(tmpres,i,';'));
  258. Z = Float:floatstr(strtok(tmpres,i,';'));
  259. ang = Float:floatstr(strtok(tmpres,i,';'));
  260. health = Float:floatstr(strtok(tmpres,i,';'));
  261. return true;
  262. }
  263. return false;
  264. }
  265. stock udb_getClantag(nickname[]) {
  266. new pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag[MAX_STRING], Float:X, Float:Y, Float:Z, Float:ang, Float:health;
  267. if (udb_Load(nickname, pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag, X, Y, Z, ang, health)) return clantag;
  268. clantag[0]=0;
  269. return clantag;
  270. }
  271. public udb_getPwdHash(nickname[]) {
  272. new pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag[MAX_STRING], Float:X, Float:Y, Float:Z, Float:ang, Float:health;
  273. if (udb_Load(nickname, pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag, X, Y, Z, ang, health)) return pwd_hash;
  274. return 0;
  275. }
  276. public udb_getCreditos(nickname[]) {
  277. new pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag[MAX_STRING], Float:X, Float:Y, Float:Z, Float:ang, Float:health;
  278. if (udb_Load(nickname, pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag, X, Y, Z, ang, health)) return creditos;
  279. return -1;
  280. }
  281. public udb_getAccState(nickname[]) {
  282. new pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag[MAX_STRING], Float:X, Float:Y, Float:Z, Float:ang, Float:health;
  283. if (udb_Load(nickname, pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag, X, Y, Z, ang, health)) return acc_state;
  284. return -1;
  285. }
  286. public udb_getPosition(nickname[], &Float:X, &Float:Y, &Float:Z) {
  287. new pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag[MAX_STRING], Float:ang, Float:health;
  288. if (udb_Load(nickname, pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag, X, Y, Z, ang, health)) return true;
  289. return false;
  290. }
  291. public udb_getAng(nickname[], &Float:ang) {
  292. new pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag[MAX_STRING], Float:X, Float:Y, Float:Z, Float:health;
  293. if (udb_Load(nickname, pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag, X, Y, Z, ang, health)) return true;
  294. return false;
  295. }
  296. public udb_getSkin(nickname[]) {
  297. new pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag[MAX_STRING], Float:X, Float:Y, Float:Z, Float:ang, Float:health;
  298. if (udb_Load(nickname, pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag, X, Y, Z, ang, health)) return skin;
  299. return 0;
  300. }
  301. public udb_getBankMoney(nickname[]) {
  302. new pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag[MAX_STRING], Float:X, Float:Y, Float:Z, Float:ang, Float:health;
  303. if (udb_Load(nickname, pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag, X, Y, Z, ang, health)) return bank_money;
  304. return 0;
  305. }
  306. public udb_getHealth(nickname[], &Float:health) {
  307. new pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag[MAX_STRING], Float:X, Float:Y, Float:Z, Float:ang;
  308. if (udb_Load(nickname, pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag, X, Y, Z, ang, health)) return true;
  309. return false;
  310. }
  311. public udb_getGasoline(nickname[]) {
  312. new pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag[MAX_STRING], Float:X, Float:Y, Float:Z, Float:ang, Float:health;
  313. if (udb_Load(nickname, pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag, X, Y, Z, ang, health)) return gasoline;
  314. return 0;
  315. }
  316. public udb_getHabaerea(nickname[]) {
  317. new pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag[MAX_STRING], Float:X, Float:Y, Float:Z, Float:ang, Float:health;
  318. if (udb_Load(nickname, pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag, X, Y, Z, ang, health)) return habaerea;
  319. return 0;
  320. }
  321. public udb_gethabterre(nickname[]) {
  322. new pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag[MAX_STRING], Float:X, Float:Y, Float:Z, Float:ang, Float:health;
  323. if (udb_Load(nickname, pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag, X, Y, Z, ang, health)) return habterre;
  324. return 0;
  325. }
  326. public udb_getHabnauti(nickname[]) {
  327. new pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag[MAX_STRING], Float:X, Float:Y, Float:Z, Float:ang, Float:health;
  328. if (udb_Load(nickname, pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag, X, Y, Z, ang, health)) return habnauti;
  329. return 0;
  330. }
  331. public udb_getPrisao(nickname[]) {
  332. new pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag[MAX_STRING], Float:X, Float:Y, Float:Z, Float:ang, Float:health;
  333. if (udb_Load(nickname, pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag, X, Y, Z, ang, health)) return prisao;
  334. return 0;
  335. }
  336. public udb_getProf(nickname[]) {
  337. new pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag[MAX_STRING], Float:X, Float:Y, Float:Z, Float:ang, Float:health;
  338. if (udb_Load(nickname, pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag, X, Y, Z, ang, health)) return prof;
  339. return 0;
  340. }
  341. public udb_setClantag(nickname[], new_clantag[]) {
  342. new pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag[MAX_STRING], Float:X, Float:Y, Float:Z, Float:ang, Float:health;
  343. if (udb_Load(nickname, pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag, X, Y, Z, ang, health)) {
  344. udb_Save(nickname, pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, new_clantag, X, Y, Z, ang, health);
  345. return true;
  346. }
  347. return false;
  348. }
  349. public udb_setPwdHash(nickname[], new_pwdhash) {
  350. new pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag[MAX_STRING], Float:X, Float:Y, Float:Z, Float:ang, Float:health;
  351. if (udb_Load(nickname, pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag, X, Y, Z, ang, health)) {
  352. udb_Save(nickname, new_pwdhash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag, X, Y, Z, ang, health);
  353. return true;
  354. }
  355. return false;
  356. }
  357. public udb_setPassword(nickname[], pwd[]) {
  358. return udb_setPwdHash(nickname, udb_hash(pwd));
  359. }
  360. public udb_setAccState(nickname[], new_accstate) {
  361. new pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag[MAX_STRING], Float:X, Float:Y, Float:Z, Float:ang, Float:health;
  362. if (udb_Load(nickname, pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag, X, Y, Z, ang, health)) {
  363. udb_Save(nickname, pwd_hash, creditos, new_accstate, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag, X, Y, Z, ang, health);
  364. return true;
  365. }
  366. return false;
  367. }
  368. public udb_CheckLogin(nickname[], pwd[]) {
  369. new pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag[MAX_STRING], Float:X, Float:Y, Float:Z, Float:ang, Float:health;
  370. if((udb_Load(nickname, pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag, X, Y, Z, ang, health))&&(udb_hash(pwd)==pwd_hash)) return true;
  371. return false;
  372. }
  373. public udb_Create(nickname[], pwd[], creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag[], Float:X, Float:Y, Float:Z, Float:ang, Float:health) {
  374. if (udb_Exists(nickname)) return false;
  375. udb_Save(nickname, udb_hash(pwd), creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag, X, Y, Z, ang, health);
  376. return true;
  377. }
  378. public udb_setPosition(nickname[], Float:new_x, Float:new_y, Float:new_z) {
  379. new pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag[MAX_STRING], Float:X, Float:Y, Float:Z, Float:ang, Float:health;
  380. if(udb_Load(nickname, pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag, X, Y, Z, ang, health)) {
  381. udb_Save(nickname, pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag, new_x, new_y, new_z, ang, health);
  382. return true;
  383. }
  384. return false;
  385. }
  386. public udb_setAng(nickname[], Float:new_ang) {
  387. new pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag[MAX_STRING], Float:X, Float:Y, Float:Z, Float:ang, Float:health;
  388. if (udb_Load(nickname, pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag, X, Y, Z, ang, health)) {
  389. udb_Save(nickname, pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag, X, Y, Z, new_ang, health);
  390. return true;
  391. }
  392. return false;
  393. }
  394. public udb_setCreditos(nickname[], new_creditos) {
  395. new pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag[MAX_STRING], Float:X, Float:Y, Float:Z, Float:ang, Float:health;
  396. if (udb_Load(nickname, pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag, X, Y, Z, ang, health)) {
  397. udb_Save(nickname, pwd_hash, new_creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag, X, Y, Z, ang, health);
  398. return true;
  399. }
  400. return false;
  401. }
  402. public udb_setSkin(nickname[], new_skin) {
  403. new pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag[MAX_STRING], Float:X, Float:Y, Float:Z, Float:ang, Float:health;
  404. if (udb_Load(nickname, pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag, X, Y, Z, ang, health)) {
  405. udb_Save(nickname, pwd_hash, creditos, acc_state, new_skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag, X, Y, Z, ang, health);
  406. return true;
  407. }
  408. return false;
  409. }
  410. public udb_setBankMoney(nickname[], new_bankmoney) {
  411. new pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag[MAX_STRING], Float:X, Float:Y, Float:Z, Float:ang, Float:health;
  412. if (udb_Load(nickname, pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag, X, Y, Z, ang, health)) {
  413. udb_Save(nickname, pwd_hash, creditos, acc_state, skin, new_bankmoney, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag, X, Y, Z, ang, health);
  414. return true;
  415. }
  416. return false;
  417. }
  418. public udb_setHealth(nickname[], Float:new_health) {
  419. new pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag[MAX_STRING], Float:X, Float:Y, Float:Z, Float:ang, Float:health;
  420. if (udb_Load(nickname, pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag, X, Y, Z, ang, health)) {
  421. udb_Save(nickname, pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag, X, Y, Z, ang, new_health);
  422. return true;
  423. }
  424. return false;
  425. }
  426. public udb_setGasoline(nickname[], new_gasoline) {
  427. new pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag[MAX_STRING], Float:X, Float:Y, Float:Z, Float:ang, Float:health;
  428. if (udb_Load(nickname, pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag, X, Y, Z, ang, health)) {
  429. udb_Save(nickname, pwd_hash, creditos, acc_state, skin, bank_money, new_gasoline, habaerea, habterre, habnauti, prisao, prof, clantag, X, Y, Z, ang, health);
  430. return true;
  431. }
  432. return false;
  433. }
  434. public udb_setHabaerea(nickname[], new_habaerea) {
  435. new pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag[MAX_STRING], Float:X, Float:Y, Float:Z, Float:ang, Float:health;
  436. if (udb_Load(nickname, pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag, X, Y, Z, ang, health)) {
  437. udb_Save(nickname, pwd_hash, creditos, acc_state, skin, bank_money, gasoline, new_habaerea, habterre, habnauti, prisao, prof, clantag, X, Y, Z, ang, health);
  438. return true;
  439. }
  440. return false;
  441. }
  442. public udb_setHabterre(nickname[], new_habterre) {
  443. new pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag[MAX_STRING], Float:X, Float:Y, Float:Z, Float:ang, Float:health;
  444. if (udb_Load(nickname, pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag, X, Y, Z, ang, health)) {
  445. udb_Save(nickname, pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, new_habterre, habnauti, prisao, prof, clantag, X, Y, Z, ang, health);
  446. return true;
  447. }
  448. return false;
  449. }
  450. public udb_setHabnauti(nickname[], new_habnauti) {
  451. new pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag[MAX_STRING], Float:X, Float:Y, Float:Z, Float:ang, Float:health;
  452. if (udb_Load(nickname, pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag, X, Y, Z, ang, health)) {
  453. udb_Save(nickname, pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, new_habnauti, prisao, prof, clantag, X, Y, Z, ang, health);
  454. return true;
  455. }
  456. return false;
  457. }
  458. public udb_setPrisao(nickname[], new_prisao) {
  459. new pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag[MAX_STRING], Float:X, Float:Y, Float:Z, Float:ang, Float:health;
  460. if (udb_Load(nickname, pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag, X, Y, Z, ang, health)) {
  461. udb_Save(nickname, pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, new_prisao, prof, clantag, X, Y, Z, ang, health);
  462. return true;
  463. }
  464. return false;
  465. }
  466. public udb_setProf(nickname[], new_prof) {
  467. new pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag[MAX_STRING], Float:X, Float:Y, Float:Z, Float:ang, Float:health;
  468. if (udb_Load(nickname, pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, prof, clantag, X, Y, Z, ang, health)) {
  469. udb_Save(nickname, pwd_hash, creditos, acc_state, skin, bank_money, gasoline, habaerea, habterre, habnauti, prisao, new_prof, clantag, X, Y, Z, ang, health);
  470. return true;
  471. }
  472. return false;
  473. }