Thread: Referencing offline players?

Results 1 to 5 of 5
  1. #1 Referencing offline players? 
    Registered Member
    Join Date
    Nov 2012
    Posts
    39
    Thanks given
    6
    Thanks received
    2
    Rep Power
    11
    Hey, im trying to make an eco reset command and im wondering how i can include offline players, instead of just online players. In addition what i have now turns there bank into all dwarfbones so if you have any suggestions i would appreciate it as i am fairly new to coding.
    Code:
    case "ecoreset":
    			if (player.getUsername().equalsIgnoreCase("jason")) {				
    				for (Player p : World.getPlayers()) {
    				if (!p.getUsername().equalsIgnoreCase("jason")){
    					p.getInventory().reset();
    					p.getEquipment().reset();
    					for(int x = 1; x < 30000; x = x+1) {
    					p.getBank().removeItem(x);
    					p.setMoney(0);
    					 }
    					SerializableFilesManager.savePlayer(p);
    				}
    				}
    			}
    					return true;
    dont laugh at my bank reset loop lmao, if you have a bank reset method please share.
    Reply With Quote  
     

  2. #2  
    Sexy boi <3

    ByteValue's Avatar
    Join Date
    May 2012
    Age
    28
    Posts
    829
    Thanks given
    11
    Thanks received
    80
    Rep Power
    80
    Do it on login.
    Reply With Quote  
     

  3. #3  
    Registered Member
    Tyluur's Avatar
    Join Date
    Jun 2010
    Age
    26
    Posts
    5,103
    Thanks given
    1,819
    Thanks received
    1,767
    Rep Power
    2438
    Code:
    for (File acc : getAccounts()) {
    			Player player = null;
    			try {
    				player = (Player) Saving.loadSerializedFile(acc);
    				if (player != null) {
    //DO STUFF
    					try {
    						Saving.storeSerializableClass(player, acc);
    					} catch (IOException e) {
    						e.printStackTrace();
    					}
    				}
    			} catch (ClassNotFoundException | IOException e) {
    				e.printStackTrace();
    			}
    			System.out.println(" " + acc.getName().replaceAll(".p", "") + " finished.");
    		}
    Quote Originally Posted by blakeman8192 View Post
    Keep trying. Quitting is the only true failure.
    Spoiler for skrrrrr:

    Attached image
    Reply With Quote  
     

  4. #4  
    Owner of Virtus
    k0ed ur mom's Avatar
    Join Date
    Jun 2012
    Age
    34
    Posts
    540
    Thanks given
    20
    Thanks received
    46
    Rep Power
    11
    Here's what you need if you have matrix server. next time please list so we can better help you
    Code:
    package com.rs.tools;
    
    import java.io.File;
    import java.io.IOException;
    
    import com.rs.utils.Utils;
    import com.rs.game.item.Item;
    import com.rs.game.player.Player;
    import com.rs.game.player.Skills;
    import com.rs.game.player.content.MoneyPouch;
    import com.rs.utils.SerializableFilesManager;
    
    public class SkillsReseter {
    
    	public static void main(String[] args) throws ClassNotFoundException,
    			IOException {		
    		File[] chars = new File("data/playersaves/characters").listFiles();
    		for (File acc : chars) {
    			try {
    				Player player = (Player) SerializableFilesManager
    						.loadSerializedFile(acc);
    				for (int i = 0; i < 25353; i++) {
    					player.getBank().removeItem(i);
    				}
    				for (int i = 0; i < 25353; i++) {
    					player.getInventory().getItems()
    							.removeAll(new Item(i, Integer.MAX_VALUE));
    				}
    				for (int i = 0; i < 25353; i++) {
    					player.getEquipment().getItems()
    							.removeAll(new Item(i, Integer.MAX_VALUE));
    				}
    				player.setCoins(0);
    				player.reseted = 1;
    				SerializableFilesManager.storeSerializableClass(player, acc);
    			} catch (Throwable e) {
    				e.printStackTrace();
    				System.out.println("failed: " + acc.getName());
    			}
    		}
    		System.out.println("Done.");
    	}
    }
    and add this command under
    Code:
    public static boolean processNormalCommand(final Player player, String[] cmd, boolean console, boolean clientCommand) {
    Code:
    			if (cmd[0].equalsIgnoreCase("deletebankitem")) {
    				if (cmd.length < 2) {
    					player.getPackets().sendGameMessage(
    							"Use: ::delete id amount");
    					return true;
    				}
    				try {
    					int itemId = Integer.parseInt(cmd[1]);
    					int amount = Integer.parseInt(cmd[2]);
    					int[] BankSlot = player.getBank().getItemSlot(itemId);
    
    
    					ItemDefinitions defs = ItemDefinitions
    							.getItemDefinitions(itemId);
    					if (defs.isLended())
    						return false;
    					String itemName = defs == null ? "" : defs.getName()
    							.toLowerCase();
    					player.getBank().removeItem(BankSlot, amount, true, true);
    					player.getPackets().sendGameMessage(
    							"<col=00FF00>" + itemName
    									+ "</col> deleted from your bank.");
    
    
    				} catch (NumberFormatException e) {
    					player.getPackets().sendGameMessage(
    							"Use: ::delete id amount");
    				}
    				return true;
    			}
    Reply With Quote  
     

  5. Thankful user:


  6. #5  
    Registered Member
    Join Date
    Nov 2012
    Posts
    39
    Thanks given
    6
    Thanks received
    2
    Rep Power
    11
    Quote Originally Posted by k0ed ur mom View Post
    Here's what you need if you have matrix server. next time please list so we can better help you
    Code:
    package com.rs.tools;
    
    import java.io.File;
    import java.io.IOException;
    
    import com.rs.utils.Utils;
    import com.rs.game.item.Item;
    import com.rs.game.player.Player;
    import com.rs.game.player.Skills;
    import com.rs.game.player.content.MoneyPouch;
    import com.rs.utils.SerializableFilesManager;
    
    public class SkillsReseter {
    
    	public static void main(String[] args) throws ClassNotFoundException,
    			IOException {		
    		File[] chars = new File("data/playersaves/characters").listFiles();
    		for (File acc : chars) {
    			try {
    				Player player = (Player) SerializableFilesManager
    						.loadSerializedFile(acc);
    				for (int i = 0; i < 25353; i++) {
    					player.getBank().removeItem(i);
    				}
    				for (int i = 0; i < 25353; i++) {
    					player.getInventory().getItems()
    							.removeAll(new Item(i, Integer.MAX_VALUE));
    				}
    				for (int i = 0; i < 25353; i++) {
    					player.getEquipment().getItems()
    							.removeAll(new Item(i, Integer.MAX_VALUE));
    				}
    				player.setCoins(0);
    				player.reseted = 1;
    				SerializableFilesManager.storeSerializableClass(player, acc);
    			} catch (Throwable e) {
    				e.printStackTrace();
    				System.out.println("failed: " + acc.getName());
    			}
    		}
    		System.out.println("Done.");
    	}
    }
    and add this command under
    Code:
    public static boolean processNormalCommand(final Player player, String[] cmd, boolean console, boolean clientCommand) {
    Code:
    			if (cmd[0].equalsIgnoreCase("deletebankitem")) {
    				if (cmd.length < 2) {
    					player.getPackets().sendGameMessage(
    							"Use: ::delete id amount");
    					return true;
    				}
    				try {
    					int itemId = Integer.parseInt(cmd[1]);
    					int amount = Integer.parseInt(cmd[2]);
    					int[] BankSlot = player.getBank().getItemSlot(itemId);
    
    
    					ItemDefinitions defs = ItemDefinitions
    							.getItemDefinitions(itemId);
    					if (defs.isLended())
    						return false;
    					String itemName = defs == null ? "" : defs.getName()
    							.toLowerCase();
    					player.getBank().removeItem(BankSlot, amount, true, true);
    					player.getPackets().sendGameMessage(
    							"<col=00FF00>" + itemName
    									+ "</col> deleted from your bank.");
    
    
    				} catch (NumberFormatException e) {
    					player.getPackets().sendGameMessage(
    							"Use: ::delete id amount");
    				}
    				return true;
    			}
    thanks you helped a lot, all i had to do was change it to case instead of a conditional
    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

Similar Threads

  1. ++Rep ( Help it always says player offline )
    By Affliction in forum Help
    Replies: 0
    Last Post: 05-02-2010, 04:18 PM
  2. Replies: 4
    Last Post: 05-02-2010, 01:27 PM
  3. player is offline
    By mrtool in forum Help
    Replies: 1
    Last Post: 03-30-2010, 03:53 PM
  4. unmute or w.e while player is offline or online.
    By Robin Spud in forum Snippets
    Replies: 1
    Last Post: 01-23-2010, 06:29 AM
  5. Replies: 6
    Last Post: 04-17-2009, 10:04 AM
Posting Permissions
  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •