Guest User

Untitled

a guest
Sep 19th, 2018
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 37.29 KB | None | 0 0
  1. package server.model.players;
  2. import java.io.BufferedReader;
  3. import java.io.BufferedWriter;
  4. import java.io.File;
  5. import java.io.FileNotFoundException;
  6. import java.io.FileReader;
  7. import java.io.FileWriter;
  8. import java.io.IOException;
  9.  
  10. import server.Server;
  11. import server.util.Misc;
  12.  
  13. public class PlayerSave
  14. {
  15.  
  16.  
  17.  
  18. /**
  19. *Loading
  20. **/
  21. public static int loadGame(Client p, String playerName, String playerPass) {
  22. String line = "";
  23. String token = "";
  24. String token2 = "";
  25. String[] token3 = new String[3];
  26. boolean EndOfFile = false;
  27. int ReadMode = 0;
  28. BufferedReader characterfile = null;
  29. boolean File1 = false;
  30.  
  31. try {
  32. characterfile = new BufferedReader(new FileReader("./Data/characters/"+playerName+".txt"));
  33. File1 = true;
  34. } catch(FileNotFoundException fileex1) {
  35. }
  36.  
  37. if (File1) {
  38. //new File ("./characters/"+playerName+".txt");
  39. } else {
  40. Misc.println(playerName+": character file not found.");
  41. p.newPlayer = false;
  42. return 0;
  43. }
  44. try {
  45. line = characterfile.readLine();
  46. } catch(IOException ioexception) {
  47. Misc.println(playerName+": error loading file.");
  48. return 3;
  49. }
  50. while(EndOfFile == false && line != null) {
  51. line = line.trim();
  52. int spot = line.indexOf("=");
  53. if (spot > -1) {
  54. token = line.substring(0, spot);
  55. token = token.trim();
  56. token2 = line.substring(spot + 1);
  57. token2 = token2.trim();
  58. token3 = token2.split("\t");
  59. switch (ReadMode) {
  60. case 1:
  61. if (token.equals("character-password")) {
  62. if (playerPass.equalsIgnoreCase(token2) || Misc.basicEncrypt(playerPass).equals(token2)) {
  63. playerPass = token2;
  64. } else {
  65. return 3;
  66. }
  67. }
  68. break;
  69. case 2:
  70. if (token.equals("character-height")) {
  71. p.heightLevel = Integer.parseInt(token2);
  72. } else if (token.equals("character-posx")) {
  73. p.teleportToX = (Integer.parseInt(token2) <= 0 ? 3210 : Integer.parseInt(token2));
  74. } else if (token.equals("character-posy")) {
  75. p.teleportToY = (Integer.parseInt(token2) <= 0 ? 3424 : Integer.parseInt(token2));
  76. } else if (token.equals("character-rights")) {
  77. p.playerRights = Integer.parseInt(token2);
  78. } else if (token.equals("loyaltyPoints")) {
  79. p.loyaltyPoints = Integer.parseInt(token2);
  80. } else if (token.equals("dungPoints")) {
  81. p.dungPoints = Integer.parseInt(token2);
  82. } else if (token.equals("Used-Puremaster")) {
  83. p.pure = Integer.parseInt(token2);
  84. } else if (token.equals("tutorial-progress")) {
  85. p.tutorial = Integer.parseInt(token2);
  86. } else if (token.equals("skull-timer")) {
  87. p.skullTimer = Integer.parseInt(token2);
  88. } else if (token.equals("EP")) {
  89. p.earningPotential = Integer.parseInt(token2);
  90. } else if (token.equals("loyalty-rank")) {
  91. p.loyaltyRank = Integer.parseInt(token2);
  92. } else if (token.equals("snowOn")) {
  93. p.snowOn = Integer.parseInt(token2);
  94. } else if (token.equals("Donor-Points")) {
  95. p.donorPoints = Integer.parseInt(token2);
  96. } else if (token.equals("character-longsword")) {
  97. p.vlsLeft = Integer.parseInt(token2);
  98. } else if (token.equals("character-voteDelay")) {
  99. p.voteDelay = token2;
  100. } else if (token.equals("MoneyOrb")) {
  101. p.MoneyCash = Integer.parseInt(token2);
  102. } else if (token.equals("character-warhammer")) {
  103. p.statLeft = Integer.parseInt(token2);
  104. } else if (token.equals("character-spear")) {
  105. p.vSpearLeft = Integer.parseInt(token2);
  106. } else if (token.equals("character-chainbody")) {
  107. p.vTopLeft = Integer.parseInt(token2);
  108. } else if (token.equals("character-title")) {
  109. p.playerTitle = Integer.parseInt(token2);
  110. } else if (token.equals("shopcollect")) {
  111. p.playerCollect = Integer.parseInt(token2);
  112. } else if (token.equals("character-chainskirt")) {
  113. p.vLegsLeft = Integer.parseInt(token2);
  114. } else if (token.equals("character-full helm")) {
  115. p.sHelmLeft = Integer.parseInt(token2);
  116. } else if (token.equals("character-platebody")) {
  117. p.sTopLeft = Integer.parseInt(token2);
  118. } else if (token.equals("character-platelegs")) {
  119. p.sLegsLeft = Integer.parseInt(token2);
  120. } else if (token.equals("character-hood")) {
  121. p.zHoodLeft = Integer.parseInt(token2);
  122. } else if (token.equals("character-staff")) {
  123. p.zStaffLeft = Integer.parseInt(token2);
  124. } else if (token.equals("character-robe top")) {
  125. p.zTopLeft = Integer.parseInt(token2);
  126. } else if (token.equals("character-robe bottom")) {
  127. p.zBottomLeft = Integer.parseInt(token2);
  128. } else if (token.equals("character-leather body")) {
  129. p.mBodyLeft = Integer.parseInt(token2);
  130. } else if (token.equals("character-chaps")) {
  131. p.mChapsLeft = Integer.parseInt(token2);
  132. } else if (token.equals("magic-book")) {
  133. p.playerMagicBook = Integer.parseInt(token2);
  134. } else if (token.equals("xpLock")) {
  135. p.xpLock = Boolean.parseBoolean(token2);
  136. } else if (token.equals("Jailed")) {
  137. p.Jail = Boolean.parseBoolean(token2);
  138. } else if (token.equals("Agrith")) {
  139. p.Agrith = Boolean.parseBoolean(token2);
  140. } else if (token.equals("degrade")) {
  141. p.degradeTime = Integer.parseInt(token2);
  142. } else if (token.equals("Flambeed")) {
  143. p.Flambeed = Boolean.parseBoolean(token2);
  144. } else if (token.equals("Karamel")) {
  145. p.Karamel = Boolean.parseBoolean(token2);
  146. } else if (token.equals("Dessourt")) {
  147. p.Dessourt = Boolean.parseBoolean(token2);
  148. } else if (token.equals("culin")) {
  149. p.Culin = Boolean.parseBoolean(token2);
  150. } else if (token.equals("brother-info")) {
  151. p.barrowsNpcs[Integer.parseInt(token3[0])][1] = Integer.parseInt(token3[1]);
  152. } else if (token.equals("special-amount")) {
  153. p.specAmount = Double.parseDouble(token2);
  154. } else if (token.equals("selected-coffin")) {
  155. p.randomCoffin = Integer.parseInt(token2);
  156. } else if (token.equals("barrows-killcount")) {
  157. p.pkPoints = Integer.parseInt(token2);
  158. } else if (token.equals("teleblock-length")) {
  159. p.teleBlockDelay = System.currentTimeMillis();
  160. p.teleBlockLength = Integer.parseInt(token2);
  161. } else if (token.equals("pf-points")) {
  162. p.pfPoints = Integer.parseInt(token2);
  163. } else if (token.equals("pc-points")) {
  164. p.pcPoints = Integer.parseInt(token2);
  165. } else if (token.equals("gwdelay")) {
  166. p.gwdelay = Integer.parseInt(token2);
  167. } else if (token.equals("summonSpec")) {
  168. p.summonSpec = Integer.parseInt(token2);
  169. } else if (token.equals("dungRest")) {
  170. p.dungRest = Integer.parseInt(token2);
  171. } else if (token.equals("Altar")) {
  172. p.altarPrayed = Integer.parseInt(token2);
  173. } else if (token.equals("Arma-KC")) {
  174. p.Arma = Integer.parseInt(token2);
  175. } else if (token.equals("Band-KC")) {
  176. p.Band = Integer.parseInt(token2);
  177. } else if (token.equals("Zammy-KC")) {
  178. p.Zammy = Integer.parseInt(token2);
  179. } else if (token.equals("Sara-KC")) {
  180. p.Sara = Integer.parseInt(token2);
  181. } else if (token.equals("pk-points")) {
  182. p.pkPoints = Integer.parseInt(token2);
  183. } else if (token.equals("Donator-Points")) {
  184. p.donorPoints = Integer.parseInt(token2);
  185. } else if (token.equals("isDonator")) {
  186. p.isDonator = Integer.parseInt(token2);
  187. } else if (token.equals("donatorChest")) {
  188. p.donatorChest = Integer.parseInt(token2);
  189. } else if (token.equals("slayerTask")) {
  190. p.slayerTask = Integer.parseInt(token2);
  191. } else if (token.equals("taskAmount")) {
  192. p.taskAmount = Integer.parseInt(token2);
  193. } else if (token.equals("magePoints")) {
  194. p.magePoints = Integer.parseInt(token2);
  195. } else if (line.startsWith("KC")) {
  196. p.KC = Integer.parseInt(token2);
  197. } else if (line.startsWith("DC")) {
  198. p.DC = Integer.parseInt(token2);
  199. } else if (line.startsWith("totalstored")) {
  200. p.totalstored = Integer.parseInt(token2);
  201. } else if (token.equals("autoRet")) {
  202. p.autoRet = Integer.parseInt(token2);
  203. } else if (token.equals("trade11")) {
  204. p.trade11 = Integer.parseInt(token2);
  205. } else if (token.equals("Wheel")) {
  206. p.Wheel = Integer.parseInt(token2);
  207. } else if (token.equals("SpeDelay")) {
  208. p.SpecialDelay = Integer.parseInt(token2);
  209. } else if (token.equals("barrowskillcount")) {
  210. p.barrowsKillCount = Integer.parseInt(token2);
  211. } else if (token.equals("flagged")) {
  212. p.accountFlagged = Boolean.parseBoolean(token2);
  213. } else if (token.equals("Rules")) {
  214. p.readRules = Boolean.parseBoolean(token2);
  215. } else if (token.equals("isShopping")) {
  216. p.isShopping = Boolean.parseBoolean(token2);
  217. } else if (token.equals("SPoints")) {
  218. p.SPoints = Integer.parseInt(token2);
  219. } else if (token.equals("wave")) {
  220. p.waveId = Integer.parseInt(token2);
  221. } else if (token.equals("dfs-charges")) {
  222. p.dfsCount = Integer.parseInt(token2);
  223. } else if (token.equals("lastsummon")) {
  224. p.lastsummon = Integer.parseInt(token2);
  225.  
  226. } else if (token.equals("summoningnpcid")) {
  227. p.summoningnpcid = Integer.parseInt(token2);
  228.  
  229. } else if (token.equals("void")) {
  230. for (int j = 0; j < token3.length; j++) {
  231. p.voidStatus[j] = Integer.parseInt(token3[j]);
  232. }
  233. } else if (token.equals("fightMode")) {
  234. p.fightMode = Integer.parseInt(token2);
  235.  
  236. } else if (token.equals("Black-marks")) {
  237. p.BlackMarks = Integer.parseInt(token2);
  238. }
  239. break;
  240. case 3:
  241. if (token.equals("character-equip")) {
  242. p.playerEquipment[Integer.parseInt(token3[0])] = Integer.parseInt(token3[1]);
  243. p.playerEquipmentN[Integer.parseInt(token3[0])] = Integer.parseInt(token3[2]);
  244. }
  245. break;
  246. case 4:
  247. if (token.equals("character-look")) {
  248. p.playerAppearance[Integer.parseInt(token3[0])] = Integer.parseInt(token3[1]);
  249. }
  250. break;
  251. case 5:
  252. if (token.equals("character-skill")) {
  253. p.playerLevel[Integer.parseInt(token3[0])] = Integer.parseInt(token3[1]);
  254. p.playerXP[Integer.parseInt(token3[0])] = Integer.parseInt(token3[2]);
  255. }
  256. break;
  257. case 6:
  258. if (token.equals("character-item")) {
  259. p.playerItems[Integer.parseInt(token3[0])] = Integer.parseInt(token3[1]);
  260. p.playerItemsN[Integer.parseInt(token3[0])] = Integer.parseInt(token3[2]);
  261. }
  262. break;
  263. case 7:
  264. if (token.equals("character-bank")) {
  265. p.bankItems[Integer.parseInt(token3[0])] = Integer.parseInt(token3[1]);
  266. p.bankItemsN[Integer.parseInt(token3[0])] = Integer.parseInt(token3[2]);
  267. }
  268. break;
  269. case 8:
  270. if (token.equals("character-friend")) {
  271. p.friends[Integer.parseInt(token3[0])] = Long.parseLong(token3[1]);
  272. }
  273. break;
  274. case 9:
  275. /* if (token.equals("character-ignore")) {
  276. ignores[Integer.parseInt(token3[0])] = Long.parseLong(token3[1]);
  277. } */
  278. break;
  279. case 20:
  280. if (token.equals("stored")) {
  281. p.storeditems[Integer.parseInt(token3[0])] = Integer.parseInt(token3[1]);
  282. }
  283. break;
  284.  
  285. case 21:
  286. if (token.equals("occupy")) {
  287. p.occupied[Integer.parseInt(token3[0])] = Boolean.parseBoolean(token3[1]);
  288. }
  289. break;
  290. case 10:
  291. if (token.equals("character-shop")) {
  292. p.playerShop[Integer.parseInt(token3[0])] = Integer.parseInt(token3[1]);
  293. p.playerShopP[Integer.parseInt(token3[0])] = Integer.parseInt(token3[2]);
  294. p.playerShopN[Integer.parseInt(token3[0])] = Integer.parseInt(token3[3]);
  295. }
  296. break;
  297. }
  298. } else {
  299. if (line.equals("[ACCOUNT]")) { ReadMode = 1;
  300. } else if (line.equals("[CHARACTER]")) { ReadMode = 2;
  301. } else if (line.equals("[EQUIPMENT]")) { ReadMode = 3;
  302. } else if (line.equals("[LOOK]")) { ReadMode = 4;
  303. } else if (line.equals("[SKILLS]")) { ReadMode = 5;
  304. } else if (line.equals("[ITEMS]")) { ReadMode = 6;
  305. } else if (line.equals("[BANK]")) { ReadMode = 7;
  306. } else if (line.equals("[FRIENDS]")) { ReadMode = 8;
  307. } else if (line.equals("[IGNORES]")) { ReadMode = 9;
  308. } else if (line.equals("[STORED]")) { ReadMode = 20;
  309. } else if (line.equals("[OCCUPY]")) { ReadMode = 21;
  310. } else if (line.equals("[SHOP]")) { ReadMode = 10;
  311. } else if (line.equals("[EOF]")) { try { characterfile.close(); } catch(IOException ioexception) { } return 1;
  312. }
  313. }
  314. try {
  315. line = characterfile.readLine();
  316. } catch(IOException ioexception1) { EndOfFile = true; }
  317. }
  318. try { characterfile.close(); } catch(IOException ioexception) { }
  319. return 13;
  320. }
  321.  
  322. public static void updateCharString(String charName, String lineContains, String replaceWith) {
  323. String filePath = "./data/characters/"+charName+".txt";
  324. try {
  325.  
  326. FileReader charFile = new FileReader(filePath);
  327. BufferedReader br = new BufferedReader(charFile);
  328. String line1 = br.readLine();
  329. while (line1 != null) {
  330. if (line1.trim().contains(lineContains)) {
  331.  
  332. line1 = replaceWith;
  333. }
  334. BufferedWriter out = new BufferedWriter(new FileWriter(filePath + ".tmp", true));
  335. out.write(line1);
  336. out.newLine();
  337. out.close();
  338.  
  339. line1 = br.readLine();
  340. }
  341. br.close();
  342. charFile.close();
  343. } catch (Exception e) {
  344. e.printStackTrace();
  345. }
  346. File file = new File(filePath);
  347. file.delete();
  348. File file2 = new File(filePath + ".tmp");
  349. file2.renameTo(file);
  350. }
  351.  
  352.  
  353. /**
  354. *Saving
  355. **/
  356. public static boolean saveGame(Client p) {
  357. if(!p.saveFile || p.newPlayer || !p.saveCharacter) {
  358. //System.out.println("first");
  359. return false;
  360. }
  361. if(p.playerName == null || Server.playerHandler.players[p.playerId] == null) {
  362. //System.out.println("second");
  363. return false;
  364. }
  365. p.playerName = p.playerName2;
  366. int tbTime = (int)(p.teleBlockDelay - System.currentTimeMillis() + p.teleBlockLength);
  367. if(tbTime > 300000 || tbTime < 0){
  368. tbTime = 0;
  369. }
  370.  
  371. BufferedWriter characterfile = null;
  372. try {
  373. characterfile = new BufferedWriter(new FileWriter("./Data/characters/"+p.playerName+".txt"));
  374.  
  375. /*ACCOUNT*/
  376. characterfile.write("[ACCOUNT]", 0, 9);
  377. characterfile.newLine();
  378. characterfile.write("character-username = ", 0, 21);
  379. characterfile.write(p.playerName, 0, p.playerName.length());
  380. characterfile.newLine();
  381. characterfile.write("character-password = ", 0, 21);
  382. characterfile.write(p.playerPass, 0, p.playerPass.length());
  383. characterfile.newLine();
  384. characterfile.newLine();
  385. characterfile.write("KC = ", 0, 4);
  386. characterfile.write(Integer.toString(p.KC), 0, Integer.toString(p.KC).length());
  387. characterfile.newLine();
  388. characterfile.write("DC = ", 0, 4);
  389. characterfile.write(Integer.toString(p.DC), 0, Integer.toString(p.DC).length());
  390. characterfile.newLine();
  391.  
  392. /*CHARACTER*/
  393.  
  394. characterfile.write("[CHARACTER]", 0, 11);
  395. characterfile.newLine();
  396. characterfile.write("snowOn = ", 0, 9);
  397. characterfile.write(Integer.toString(p.snowOn), 0, Integer.toString(p.snowOn).length());
  398. characterfile.newLine();
  399. characterfile.write("character-height = ", 0, 19);
  400. characterfile.write(Integer.toString(p.heightLevel), 0, Integer.toString(p.heightLevel).length());
  401. characterfile.newLine();
  402. characterfile.write("character-title = ", 0, 18);
  403. characterfile.write(Integer.toString(p.playerTitle), 0, Integer.toString(p.playerTitle).length());
  404. characterfile.newLine();
  405. characterfile.write("pf-points = ", 0, 12);
  406. characterfile.write(Integer.toString(p.pfPoints), 0, Integer.toString(p.pfPoints).length());
  407. characterfile.newLine();
  408. characterfile.write("character-posx = ", 0, 17);
  409. characterfile.write(Integer.toString(p.absX), 0, Integer.toString(p.absX).length());
  410. characterfile.newLine();
  411. characterfile.write("character-posy = ", 0, 17);
  412. characterfile.write(Integer.toString(p.absY), 0, Integer.toString(p.absY).length());
  413. characterfile.newLine();
  414. characterfile.write("character-rights = ", 0, 19);
  415. characterfile.write(Integer.toString(p.playerRights), 0, Integer.toString(p.playerRights).length());
  416. characterfile.newLine();
  417. characterfile.write("loyaltyPoints = ", 0, 9);
  418. characterfile.write(Integer.toString(p.loyaltyPoints), 0, Integer.toString(p.loyaltyPoints).length());
  419. characterfile.newLine();
  420. characterfile.write("loyalty-rank = ", 0, 15);
  421. characterfile.write(Integer.toString(p.loyaltyRank), 0, Integer
  422. .toString(p.loyaltyRank).length());
  423. characterfile.newLine();
  424. characterfile.write("donorPoints = ", 0, 13);
  425. characterfile.write(Integer.toString(p.donorPoints), 0, Integer.toString(p.donorPoints).length());
  426. characterfile.newLine();
  427. characterfile.write("shopcollect = ", 0, 14);
  428. characterfile.write(Integer.toString(p.playerCollect), 0, Integer.toString(p.playerCollect).length());
  429. characterfile.newLine();
  430. characterfile.write("dungPoints = ", 0, 12);
  431. characterfile.write(Integer.toString(p.dungPoints), 0, Integer.toString(p.dungPoints).length());
  432. characterfile.newLine();
  433. characterfile.write("crystal-bow-shots = ", 0, 20);
  434. characterfile.write(Integer.toString(p.crystalBowArrowCount), 0, Integer.toString(p.crystalBowArrowCount).length());
  435. characterfile.newLine();
  436. characterfile.write("VLS-hits = ", 0, 11);
  437. characterfile.write(Integer.toString(p.degradeTime), 0, Integer.toString(p.degradeTime).length());
  438. /*characterfile.newLine();
  439. characterfile.write("dungPoints = ", 0, 20);
  440. characterfile.write(Integer.toString(p.dungPoints), 0, Integer.toString(p.dungPoints).length());*/
  441. characterfile.newLine();
  442. characterfile.newLine();
  443. characterfile.write("character-voteDelay = ", 0, 22);
  444. characterfile.write(p.voteDelay, 0, p.voteDelay.length());
  445. characterfile.newLine();
  446. characterfile.write("MoneyOrb = ", 0, 11);
  447. characterfile.write(Integer.toString(p.MoneyCash), 0, Integer.toString(p.MoneyCash).length());
  448. characterfile.newLine();
  449. characterfile.write("Wheel = ", 0, 8);
  450. characterfile.write(Integer.toString(p.Wheel), 0, Integer.toString(p.Wheel).length());
  451. characterfile.newLine();
  452. characterfile.write("skull-timer = ", 0, 14);
  453. characterfile.write(Integer.toString(p.skullTimer), 0, Integer.toString(p.skullTimer).length());
  454. characterfile.newLine();
  455. characterfile.write("EP = ", 0, 5);
  456. characterfile.write(Integer.toString(p.earningPotential), 0, Integer.toString(p.earningPotential).length());
  457. characterfile.newLine();
  458. characterfile.write("character-longsword = ", 0, 22);
  459. characterfile.write(Integer.toString(p.vlsLeft), 0, Integer.toString(p.vlsLeft).length());
  460. characterfile.newLine();
  461. characterfile.write("character-warhammer = ", 0, 22);
  462. characterfile.write(Integer.toString(p.statLeft), 0, Integer.toString(p.statLeft).length());
  463. characterfile.newLine();
  464. characterfile.write("character-spear = ", 0, 18);
  465. characterfile.write(Integer.toString(p.vSpearLeft), 0, Integer.toString(p.vSpearLeft).length());
  466. characterfile.newLine();
  467. characterfile.write("character-chainbody = ", 0, 22);
  468. characterfile.write(Integer.toString(p.vTopLeft), 0, Integer.toString(p.vTopLeft).length());
  469. characterfile.newLine();
  470. characterfile.write("character-chainskirt = ", 0, 23);
  471. characterfile.write(Integer.toString(p.vLegsLeft), 0, Integer.toString(p.vLegsLeft).length());
  472. characterfile.newLine();
  473. characterfile.write("character-full helm = ", 0, 22);
  474. characterfile.write(Integer.toString(p.sHelmLeft), 0, Integer.toString(p.sHelmLeft).length());
  475. characterfile.newLine();
  476. characterfile.write("character-platebody = ", 0, 22);
  477. characterfile.write(Integer.toString(p.sTopLeft), 0, Integer.toString(p.sTopLeft).length());
  478. characterfile.newLine();
  479. characterfile.write("character-platelegs = ", 0, 22);
  480. characterfile.write(Integer.toString(p.sLegsLeft), 0, Integer.toString(p.sLegsLeft).length());
  481. characterfile.newLine();
  482. characterfile.write("character-hood = ", 0, 17);
  483. characterfile.write(Integer.toString(p.zHoodLeft), 0, Integer.toString(p.zHoodLeft).length());
  484. characterfile.newLine();
  485. characterfile.write("character-staff = ", 0, 18);
  486. characterfile.write(Integer.toString(p.zStaffLeft), 0, Integer.toString(p.zStaffLeft).length());
  487. characterfile.newLine();
  488. characterfile.write("character-robe top = ", 0, 21);
  489. characterfile.write(Integer.toString(p.zTopLeft), 0, Integer.toString(p.zTopLeft).length());
  490. characterfile.newLine();
  491. characterfile.write("character-robe bottom = ", 0, 24);
  492. characterfile.write(Integer.toString(p.zBottomLeft), 0, Integer.toString(p.zBottomLeft).length());
  493. characterfile.newLine();
  494. characterfile.write("character-leather body = ", 0, 25);
  495. characterfile.write(Integer.toString(p.mBodyLeft), 0, Integer.toString(p.mBodyLeft).length());
  496. characterfile.newLine();
  497. characterfile.write("character-chaps = ", 0, 18);
  498. characterfile.write(Integer.toString(p.mChapsLeft), 0, Integer.toString(p.mChapsLeft).length());
  499. characterfile.newLine();
  500. characterfile.write("magic-book = ", 0, 13);
  501. characterfile.write(Integer.toString(p.playerMagicBook), 0, Integer.toString(p.playerMagicBook).length());
  502. characterfile.newLine();
  503. for (int b = 0; b < p.barrowsNpcs.length; b++) {
  504. characterfile.write("brother-info = ", 0, 15);
  505. characterfile.write(Integer.toString(b), 0, Integer.toString(b).length());
  506. characterfile.write(" ", 0, 1);
  507. characterfile.write(p.barrowsNpcs[b][1] <= 1 ? Integer.toString(0) : Integer.toString(p.barrowsNpcs[b][1]), 0, Integer.toString(p.barrowsNpcs[b][1]).length());
  508. characterfile.newLine();
  509. }
  510. characterfile.write("special-amount = ", 0, 17);
  511. characterfile.write(Double.toString(p.specAmount), 0, Double.toString(p.specAmount).length());
  512. characterfile.newLine();
  513. characterfile.write("selected-coffin = ", 0, 18);
  514. characterfile.write(Integer.toString(p.randomCoffin), 0, Integer.toString(p.randomCoffin).length());
  515. characterfile.newLine();
  516. characterfile.write("barrows-killcount = ", 0, 20);
  517. characterfile.write(Integer.toString(p.barrowsKillCount), 0, Integer.toString(p.barrowsKillCount).length());
  518. characterfile.newLine();
  519. characterfile.write("teleblock-length = ", 0, 19);
  520. characterfile.write(Integer.toString(tbTime), 0, Integer.toString(tbTime).length());
  521. characterfile.newLine();
  522. characterfile.write("pc-points = ", 0, 12);
  523. characterfile.write(Integer.toString(p.pcPoints), 0, Integer.toString(p.pcPoints).length());
  524. characterfile.newLine();
  525. characterfile.write("gwdelay = ", 0, 10);
  526. characterfile.write(Integer.toString(p.gwdelay), 0, Integer.toString(p.gwdelay).length());
  527. characterfile.newLine();
  528. characterfile.write("summonSpec = ", 0, 10);
  529. characterfile.write(Integer.toString(p.summonSpec), 0, Integer.toString(p.summonSpec).length());
  530. characterfile.newLine();
  531. characterfile.write("dungRest = ", 0, 10);
  532. characterfile.write(Integer.toString(p.dungRest), 0, Integer.toString(p.dungRest).length());
  533. characterfile.newLine();
  534. characterfile.write("Altar = ", 0, 8);
  535. characterfile.write(Integer.toString(p.altarPrayed), 0, Integer.toString(p.altarPrayed).length());
  536. characterfile.newLine();
  537. characterfile.write("Arma-KC = ", 0, 10);
  538. characterfile.write(Integer.toString(p.Arma), 0, Integer.toString(p.Arma).length());
  539. characterfile.newLine();
  540. characterfile.write("Band-KC = ", 0, 10);
  541. characterfile.write(Integer.toString(p.Band), 0, Integer.toString(p.Band).length());
  542. characterfile.newLine();
  543. characterfile.write("Zammy-KC = ", 0, 11);
  544. characterfile.write(Integer.toString(p.Zammy), 0, Integer.toString(p.Zammy).length());
  545. characterfile.newLine();
  546. characterfile.write("Sara-KC = ", 0, 10);
  547. characterfile.write(Integer.toString(p.Sara), 0, Integer.toString(p.Sara).length());
  548. characterfile.newLine();
  549. characterfile.newLine();
  550. characterfile.write("pk-points = ", 0, 12);
  551. characterfile.write(Integer.toString(p.pkPoints), 0, Integer.toString(p.pkPoints).length());
  552. characterfile.newLine();
  553. characterfile.newLine();
  554. characterfile.write("isDonator = ", 0, 12);
  555. characterfile.write(Integer.toString(p.isDonator), 0, Integer.toString(p.isDonator).length());
  556. characterfile.newLine();
  557. characterfile.write("Donator-Points = ", 0, 17);
  558. characterfile.write(Integer.toString(p.donorPoints), 0, Integer.toString(p.donorPoints).length());
  559. characterfile.newLine();
  560. characterfile.write("donatorChest = ", 0, 15);
  561. characterfile.write(Integer.toString(p.donatorChest), 0, Integer.toString(p.donatorChest).length());
  562. characterfile.newLine();
  563. characterfile.write("slayerTask = ", 0, 13);
  564. characterfile.write(Integer.toString(p.slayerTask), 0, Integer.toString(p.slayerTask).length());
  565. characterfile.newLine();
  566. characterfile.write("xpLock = ", 0, 9);
  567. characterfile.write(Boolean.toString(p.xpLock), 0, Boolean.toString(p.xpLock).length());
  568. characterfile.newLine();
  569. characterfile.write("Agrith = ", 0, 9);
  570. characterfile.write(Boolean.toString(p.Agrith), 0, Boolean.toString(p.Agrith).length());
  571. characterfile.newLine();
  572. characterfile.write("Flambeed = ", 0, 11);
  573. characterfile.write(Boolean.toString(p.Flambeed), 0, Boolean.toString(p.Flambeed).length());
  574. characterfile.newLine();
  575. characterfile.write("Karamel = ", 0, 10);
  576. characterfile.write(Boolean.toString(p.Karamel), 0, Boolean.toString(p.Karamel).length());
  577. characterfile.newLine();
  578. characterfile.write("Dessourt = ", 0, 11);
  579. characterfile.write(Boolean.toString(p.Dessourt), 0, Boolean.toString(p.Dessourt).length());
  580. characterfile.newLine();
  581. characterfile.write("culin = ", 0, 8);
  582. characterfile.write(Boolean.toString(p.Culin), 0, Boolean.toString(p.Culin).length());
  583. characterfile.newLine();
  584. characterfile.write("taskAmount = ", 0, 13);
  585. characterfile.write(Integer.toString(p.taskAmount), 0, Integer.toString(p.taskAmount).length());
  586. characterfile.newLine();
  587. characterfile.write("magePoints = ", 0, 13);
  588. characterfile.write(Integer.toString(p.magePoints), 0, Integer.toString(p.magePoints).length());
  589. characterfile.newLine();
  590. characterfile.write("KC = ", 0, 4);
  591. characterfile.write(Integer.toString(p.KC), 0, Integer.toString(p.KC).length());
  592. characterfile.newLine();
  593. characterfile.write("DC = ", 0, 4);
  594. characterfile.write(Integer.toString(p.DC), 0, Integer.toString(p.DC).length());
  595. characterfile.newLine();
  596. characterfile.write("totalstored = ", 0, 14);
  597. characterfile.write(Integer.toString(p.totalstored), 0, Integer.toString(p.totalstored).length());
  598. characterfile.newLine();
  599. characterfile.write("autoRet = ", 0, 10);
  600. characterfile.write(Integer.toString(p.autoRet), 0, Integer.toString(p.autoRet).length());
  601. characterfile.newLine();
  602. characterfile.write("trade11 = ", 0, 10);
  603. characterfile.write(Integer.toString(p.trade11), 0, Integer.toString(p.trade11).length());
  604. characterfile.newLine();
  605. characterfile.write("SpeDelay = ", 0, 11);
  606. characterfile.write(Long.toString(p.SpecialDelay), 0, Long.toString(p.SpecialDelay).length());
  607. characterfile.newLine();
  608. characterfile.write("barrowskillcount = ", 0, 19);
  609. characterfile.write(Integer.toString(p.barrowsKillCount), 0, Integer.toString(p.barrowsKillCount).length());
  610. characterfile.newLine();
  611. characterfile.write("flagged = ", 0, 10);
  612. characterfile.write(Boolean.toString(p.accountFlagged), 0, Boolean.toString(p.accountFlagged).length());
  613. characterfile.newLine();
  614. characterfile.write("Rules = ", 0, 8);
  615. characterfile.write(Boolean.toString(p.readRules), 0, Boolean.toString(p.readRules).length());
  616. characterfile.newLine();
  617. characterfile.write("shopping = ", 0, 11);
  618. characterfile.write(Boolean.toString(p.isShopping), 0, Boolean.toString(p.isShopping).length());
  619. characterfile.newLine();
  620. characterfile.write("Jailed = ", 0, 9);
  621. characterfile.write(Boolean.toString(p.Jail), 0, Boolean.toString(p.Jail).length());
  622. characterfile.newLine();
  623. characterfile.write("wave = ", 0, 7);
  624. characterfile.write(Integer.toString(p.waveId), 0, Integer.toString(p.waveId).length());
  625. characterfile.newLine();
  626. characterfile.write("dfs-charges = ", 0, 14);
  627. characterfile.write(Integer.toString(p.dfsCount), 0, Integer.toString(p.dfsCount).length());
  628. characterfile.newLine();
  629. characterfile.write("lastsummon = ", 0, 13);
  630. characterfile.write(Integer.toString(p.lastsummon), 0, Integer.toString(p.lastsummon).length());
  631. characterfile.newLine();
  632. characterfile.write("summoningnpcid = ", 0, 17);
  633. characterfile.write(Integer.toString(p.summoningnpcid), 0, Integer.toString(p.summoningnpcid).length());
  634. characterfile.newLine();
  635. characterfile.write("fightMode = ", 0, 12);
  636. characterfile.write(Integer.toString(p.fightMode), 0, Integer.toString(p.fightMode).length());
  637. characterfile.newLine();
  638. characterfile.write("SPoints = ", 0, 10);
  639. characterfile.write(Integer.toString(p.SPoints), 0, Integer.toString(p.SPoints).length());
  640. characterfile.newLine();
  641. characterfile.write("dungPoints = ", 0, 12);
  642. characterfile.write(Integer.toString(p.dungPoints), 0, Integer.toString(p.dungPoints).length());
  643. characterfile.newLine();
  644. characterfile.write("Black-marks = ", 0, 12);
  645. characterfile.write(Integer.toString(p.BlackMarks), 0, Integer.toString(p.BlackMarks).length());
  646. characterfile.newLine();
  647. characterfile.write("void = ", 0, 7);
  648. String toWrite = p.voidStatus[0] + "\t" + p.voidStatus[1] + "\t" + p.voidStatus[2] + "\t" + p.voidStatus[3] + "\t" + p.voidStatus[4];
  649. characterfile.write(toWrite);
  650. characterfile.newLine();
  651. characterfile.newLine();
  652.  
  653. /*EQUIPMENT*/
  654. characterfile.write("[EQUIPMENT]", 0, 11);
  655. characterfile.newLine();
  656. for (int i = 0; i < p.playerEquipment.length; i++) {
  657. characterfile.write("character-equip = ", 0, 18);
  658. characterfile.write(Integer.toString(i), 0, Integer.toString(i).length());
  659. characterfile.write(" ", 0, 1);
  660. characterfile.write(Integer.toString(p.playerEquipment[i]), 0, Integer.toString(p.playerEquipment[i]).length());
  661. characterfile.write(" ", 0, 1);
  662. characterfile.write(Integer.toString(p.playerEquipmentN[i]), 0, Integer.toString(p.playerEquipmentN[i]).length());
  663. characterfile.write(" ", 0, 1);
  664. characterfile.newLine();
  665. }
  666. characterfile.newLine();
  667.  
  668. /*LOOK*/
  669. characterfile.write("[LOOK]", 0, 6);
  670. characterfile.newLine();
  671. for (int i = 0; i < p.playerAppearance.length; i++) {
  672. characterfile.write("character-look = ", 0, 17);
  673. characterfile.write(Integer.toString(i), 0, Integer.toString(i).length());
  674. characterfile.write(" ", 0, 1);
  675. characterfile.write(Integer.toString(p.playerAppearance[i]), 0, Integer.toString(p.playerAppearance[i]).length());
  676. characterfile.newLine();
  677. }
  678. characterfile.newLine();
  679.  
  680. /*SKILLS*/
  681. characterfile.write("[SKILLS]", 0, 8);
  682. characterfile.newLine();
  683. for (int i = 0; i < p.playerLevel.length; i++) {
  684. characterfile.write("character-skill = ", 0, 18);
  685. characterfile.write(Integer.toString(i), 0, Integer.toString(i).length());
  686. characterfile.write(" ", 0, 1);
  687. characterfile.write(Integer.toString(p.playerLevel[i]), 0, Integer.toString(p.playerLevel[i]).length());
  688. characterfile.write(" ", 0, 1);
  689. characterfile.write(Integer.toString(p.playerXP[i]), 0, Integer.toString(p.playerXP[i]).length());
  690. characterfile.newLine();
  691. }
  692. characterfile.newLine();
  693.  
  694. /*ITEMS*/
  695. characterfile.write("[ITEMS]", 0, 7);
  696. characterfile.newLine();
  697. for (int i = 0; i < p.playerItems.length; i++) {
  698. if (p.playerItems[i] > 0) {
  699. characterfile.write("character-item = ", 0, 17);
  700. characterfile.write(Integer.toString(i), 0, Integer.toString(i).length());
  701. characterfile.write(" ", 0, 1);
  702. characterfile.write(Integer.toString(p.playerItems[i]), 0, Integer.toString(p.playerItems[i]).length());
  703. characterfile.write(" ", 0, 1);
  704. characterfile.write(Integer.toString(p.playerItemsN[i]), 0, Integer.toString(p.playerItemsN[i]).length());
  705. characterfile.newLine();
  706. }
  707. }
  708. characterfile.newLine();
  709.  
  710. /*BANK*/
  711. characterfile.write("[BANK]", 0, 6);
  712. characterfile.newLine();
  713. for (int i = 0; i < p.bankItems.length; i++) {
  714. if (p.bankItems[i] > 0) {
  715. characterfile.write("character-bank = ", 0, 17);
  716. characterfile.write(Integer.toString(i), 0, Integer.toString(i).length());
  717. characterfile.write(" ", 0, 1);
  718. characterfile.write(Integer.toString(p.bankItems[i]), 0, Integer.toString(p.bankItems[i]).length());
  719. characterfile.write(" ", 0, 1);
  720. characterfile.write(Integer.toString(p.bankItemsN[i]), 0, Integer.toString(p.bankItemsN[i]).length());
  721. characterfile.newLine();
  722. }
  723. }
  724. characterfile.newLine();
  725.  
  726. /*FRIENDS*/
  727. characterfile.write("[FRIENDS]", 0, 9);
  728. characterfile.newLine();
  729. for (int i = 0; i < p.friends.length; i++) {
  730. if (p.friends[i] > 0) {
  731. characterfile.write("character-friend = ", 0, 19);
  732. characterfile.write(Integer.toString(i), 0, Integer.toString(i).length());
  733. characterfile.write(" ", 0, 1);
  734. characterfile.write("" + p.friends[i]);
  735. characterfile.newLine();
  736. }
  737. }
  738. characterfile.newLine();
  739.  
  740. /*Storeditems*/
  741. characterfile.write("[STORED]", 0, 8);
  742. characterfile.newLine();
  743. for (int i = 0; i < p.storeditems.length; i++) {
  744. characterfile.write("stored = ", 0, 9);
  745. characterfile.write(Integer.toString(i), 0, Integer.toString(i).length());
  746. characterfile.write(" ", 0, 1);
  747. characterfile.write(Integer.toString(p.storeditems[i]), 0, Integer.toString(p.storeditems[i]).length());
  748. characterfile.newLine();
  749. }
  750. characterfile.newLine();
  751.  
  752. /*Storeditems*/
  753. characterfile.write("[OCCUPY]", 0, 8);
  754. characterfile.newLine();
  755. for (int i = 0; i < p.occupied.length; i++) {
  756. characterfile.write("occupy = ", 0, 9);
  757. characterfile.write(Integer.toString(i), 0, Integer.toString(i).length());
  758. characterfile.write(" ", 0, 1);
  759. characterfile.write(Boolean.toString(p.occupied[i]), 0, Boolean.toString(p.occupied[i]).length());
  760. characterfile.newLine();
  761. }
  762. characterfile.newLine();
  763.  
  764.  
  765. /*SHOP*/
  766. characterfile.write("[SHOP]", 0, 6);
  767. characterfile.newLine();
  768. for (int i = 0; i < p.playerShop.length; i++) {
  769. if (p.playerShop[i] > 0) {
  770. characterfile.write("character-shop = ", 0, 17);
  771. characterfile.write(Integer.toString(i), 0, Integer.toString(i).length());
  772. characterfile.write(" ", 0, 1);
  773. characterfile.write(Integer.toString(p.playerShop[i]), 0, Integer.toString(p.playerShop[i]).length());
  774. characterfile.write(" ", 0, 1);
  775. characterfile.write(Integer.toString(p.playerShopP[i]), 0, Integer.toString(p.playerShopP[i]).length());
  776. characterfile.write(" ", 0, 1);
  777. characterfile.write(Integer.toString(p.playerShopN[i]), 0, Integer.toString(p.playerShopN[i]).length());
  778. characterfile.newLine();
  779. }
  780. }
  781. characterfile.newLine();
  782.  
  783.  
  784.  
  785. /*IGNORES*/
  786. /*characterfile.write("[IGNORES]", 0, 9);
  787. characterfile.newLine();
  788. for (int i = 0; i < ignores.length; i++) {
  789. if (ignores[i] > 0) {
  790. characterfile.write("character-ignore = ", 0, 19);
  791. characterfile.write(Integer.toString(i), 0, Integer.toString(i).length());
  792. characterfile.write(" ", 0, 1);
  793. characterfile.write(Long.toString(ignores[i]), 0, Long.toString(ignores[i]).length());
  794. characterfile.newLine();
  795. }
  796. }
  797. characterfile.newLine();*/
  798. /*EOF*/
  799. characterfile.write("[EOF]", 0, 5);
  800. characterfile.newLine();
  801. characterfile.newLine();
  802. characterfile.close();
  803. } catch(IOException ioexception) {
  804. Misc.println(p.playerName+": error writing file.");
  805. return false;
  806. }
  807. return true;
  808. }
  809.  
  810.  
  811. }
Add Comment
Please, Sign In to add comment