Thread: [PI] Pk points.

Results 1 to 4 of 4
  1. #1 [PI] Pk points. 
    Registered Member
    sadgrills's Avatar
    Join Date
    Dec 2009
    Age
    28
    Posts
    1,419
    Thanks given
    120
    Thanks received
    194
    Rep Power
    863
    Well I decided to start working on Pk Points, and it doesn't turn out too well.
    Code:
    } else if (token.equals("killsz")) {
    p.killsz = Integer.parseInt(token2);
    I added that where it belongs.

    Code:
    characterfile.write("killsz = ", 0, 13);
    			characterfile.write(Integer.toString(p.killsz), 0, Integer.toString(p.killsz).length());
    			characterfile.newLine();
    I also added that where it belongs.
    I declared killsz = 0;
    And in PlayerAssistant.java I added c.killsz += 2; to the kill method? L?
    Can anyone tell me what I'm doing wrong, it's some error that goes on about saving and then deletes the account.


    Reply With Quote  
     

  2. #2  
    Registered Member Devil's Avatar
    Join Date
    Jun 2010
    Posts
    243
    Thanks given
    7
    Thanks received
    6
    Rep Power
    0
    whats the problem?


    Join now : http://buzz.igg.com/igg/2929543 and play for free on one of their games! 25 million are registered for you to make friends along the way.
    Reply With Quote  
     

  3. Thankful user:


  4. #3  
    Registered Member
    sadgrills's Avatar
    Join Date
    Dec 2009
    Age
    28
    Posts
    1,419
    Thanks given
    120
    Thanks received
    194
    Rep Power
    863
    Oh, it doesn't save it just deletes the character saved shit when they log out.
    So Blitzkrieg would be 7kb and then after you log out, it turns to 0kb.


    Reply With Quote  
     

  5. #4  
    Banned

    Join Date
    Jan 2009
    Age
    31
    Posts
    2,661
    Thanks given
    66
    Thanks received
    207
    Rep Power
    0
    i have no idea but my file saving / loading looks like this if you want to modify yours.

    i didn't like the xml or .dat saving / loading and since notepads are just so much easier in my opinion i modifying my server to use notepad saving / loading instead of the xml which was found in rs2hd this is pretty much from scratch but it is basically same as any other server with notepad just a little different.

    Code:
    package com.rs2hd;
    import java.io.FileReader;
    import java.io.FileWriter;
    import java.io.BufferedReader;
    import java.io.BufferedWriter;
    import com.rs2hd.model.Player;
    import com.rs2hd.model.World;
    
    public class FileManager {
    
    private static final String[] DATA = {"[Password]: ","[Rights]: ","[Coords]: ","[Items]: ","[Equip]: ","[Looks]: "};
    	
    	public static int loadGame(Player p)
    	{
    		for(Player p2 : World.getInstance().getPlayerList()) {
    			if(p.getPlayerDetails().getUsername().equals(p2.getPlayerDetails().getUsername())) {
    				return 5; //Already Logged In.
    			}
    		}
    		boolean FoundPlayer  = false;
    		BufferedReader loadFile = null;
    			try {
    				loadFile = new BufferedReader(new FileReader(Constants.getDirectory() + "/data/Characters/"+  p.getPlayerDetails().getUsername() + ".txt"));
    				FoundPlayer = true;
    			} catch (Exception e){}
    			if(FoundPlayer)
    			{
    				String data = null;
    				try {
    					while ((data = loadFile.readLine()) != null) {
    						if(data.startsWith(DATA[0]) && !p.getPlayerDetails().getPassword().equals(data.substring(DATA[0].length()))) {
    							return 3; //Invalid Password.
    						} else if(data.startsWith(DATA[1])) {
    							p.setRights(Integer.valueOf(data.substring(DATA[1].length())));
    						} else if(data.startsWith(DATA[2])) {
    							String[] coords = data.substring(DATA[2].length()).split(",");
    							p.setTeleport(Integer.valueOf(coords[0]),Integer.valueOf(coords[1]),Integer.valueOf(coords[2]));
    						} else if(data.startsWith(DATA[3])) {
    							String[] items = data.substring(DATA[3].length()).split(",");
    							for(int i = 1; i < 29; i++) {
    								p.getSetterGetter().setPlayerItem(i - 1,Integer.valueOf(items[i * 2 - 2]));
    								p.getSetterGetter().setPlayerItemN(i - 1,Integer.valueOf(items[i * 2 - 1]));
    							}
    						} else if(data.startsWith(DATA[4])) {
    							String[] equip = data.substring(DATA[4].length()).split(",");
    							for(int i = 1; i < 15; i++) {
    								p.getSetterGetter().setEquipment(i - 1,Integer.valueOf(equip[i * 2 - 2]));
    								p.getSetterGetter().setEquipmentN(i - 1,Integer.valueOf(equip[i * 2 - 1]));
    							}
    						} else if(data.startsWith(DATA[5])) {
    							String[] looks = data.substring(DATA[5].length()).split(",");
    							int[] looks_ = new int[13];
    							for(int i = 0; i < 13; i++) {
    								looks_[i] = Integer.valueOf(looks[i]);
    							}
    							p.getSetterGetter().setLooks(looks_);
    						}
    					}
    					p.getSetterGetter().setFirstTimePlaying(false);
    					return 2;
    				} catch (Exception e){e.printStackTrace();}
    			} else {
    				p.getSetterGetter().setPlayerDefaultSettings();
    			}
    		return 2;
    	}
    
    	public static void saveGame(Player p)
    	{
    		try {
    		 	BufferedWriter saveFile = null;
    			saveFile = new BufferedWriter(new FileWriter(Constants.getDirectory() + "/data/Characters/"+ p.getPlayerDetails().getUsername() + ".txt"));
    			saveFile.write(DATA[0] + p.getPlayerDetails().getPassword());
    			saveFile.newLine();
    
    			saveFile.write(DATA[1] + p.getRights());
    			saveFile.newLine();	
    
    			saveFile.write(DATA[2]);
    			saveFile.write(p.getLocation().getX() + "," + p.getLocation().getY() + "," + p.getLocation().getZ());
    			saveFile.newLine();
    	
    			saveFile.write(DATA[3]);
    			int[] items = p.getSetterGetter().getPlayerItems();
    			int[] itemsN = p.getSetterGetter().getPlayerItemsN();
    			for(int i = 0; i < 28; i++)
    				saveFile.write(items[i] + "," + itemsN[i] + (i < 27 ? "," : ""));
    			saveFile.newLine();
    
    			saveFile.write(DATA[4]);
    			int[] equip = p.getSetterGetter().getEquipment();
    			int[] equipN = p.getSetterGetter().getEquipmentN();
    			for(int i = 0; i < 14; i++)
    				saveFile.write(equip[i] + "," + equipN[i] + (i < 13 ? "," : ""));
    			saveFile.newLine();
    
    			saveFile.write(DATA[5]);
    			int[] looks = p.getSetterGetter().getLooks();
    			for(int i = 0; i < 13; i++)
    				saveFile.write(looks[i] + (i < 12 ? "," : ""));
    			saveFile.newLine();
    
    			saveFile.close();
    		} catch (Exception e){ }	
    	}
    
    
    	public static void write(String data, String file) {
    		try { 
    			BufferedWriter saveFile = null;
    			saveFile = new BufferedWriter(new FileWriter(Constants.getDirectory() + file + ".txt"));
    			saveFile.write(data);
    			saveFile.newLine();
    			saveFile.close();
    		} catch (Exception e){ }
    	}
    
    }

    A Saved Character will look like this

    Code:
    [Password]: d
    [Rights]: 2
    [Coords]: 2904,5472,0
    [Items]: 11694,1,-1,0,-1,0,-1,0,-1,0,-1,0,-1,0,-1,0,-1,0,-1,0,-1,0,-1,0,-1,0,-1,0,-1,0,-1,0,-1,0,-1,0,-1,0,-1,0,-1,0,-1,0,-1,0,-1,0,-1,0,-1,0,-1,0,-1,0
    [Equip]: -1,0,-1,0,-1,0,-1,0,-1,0,-1,0,-1,0,-1,0,-1,0,-1,0,-1,0,-1,0,-1,0,-1,0
    [Looks]: 0,0,10,18,26,33,36,42,0,0,0,0,0
    Reply With Quote  
     


Thread Information
Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)


User Tag List

Posting Permissions
  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •