Thread: Wont let me drop items

Results 1 to 4 of 4
  1. #1 Wont let me drop items 
    Registered Member
    Join Date
    Nov 2011
    Posts
    120
    Thanks given
    7
    Thanks received
    1
    Rep Power
    11
    Well when I try to drop something from my inventory it won't let me, because nothing happends, it's not only for administrators it's for normal players aswell...

    This is my DropItem.java

    Code:
    package server.model.players.packets;
    
    import server.Config;
    import server.Server;
    import server.model.players.Client;
    import server.model.players.PacketType;
    
    /**
     * Drop Item
     **/
    public class DropItem implements PacketType {
    
    	@Override
    	public void processPacket(Client c, int packetType, int packetSize) {
    		int itemId = c.getInStream().readUnsignedWordA();
    		c.getInStream().readUnsignedByte();
    		c.getInStream().readUnsignedByte();
    		int slot = c.getInStream().readUnsignedWordA();
    		if (System.currentTimeMillis() - c.alchDelay < 1800) {
    			return;
    		}
    		if (c.arenas()) {
    			c.sendMessage("You can't drop items inside the arena!");
    			return;
    		}
    		if (c.inTrade) {
    			c.sendMessage("You can't drop items while trading!");
    			return;
    		}
    
    		boolean droppable = true;
    		for (int i : Config.UNDROPPABLE_ITEMS) {
    			if (i == itemId) {
    				droppable = false;
    				break;
    			}
    		}
    
    		if (itemId == 4045) {
    			int explosiveHit = 15;
    			c.startAnimation(827);
    			c.getItems().deleteItem(itemId, slot, c.playerItemsN[slot]);
    			c.handleHitMask(explosiveHit);
    			c.dealDamage(explosiveHit);
    			c.getPA().refreshSkill(3);
    			c.forcedText = "Ow! That really hurt!";
    			c.forcedChatUpdateRequired = true;
    			c.updateRequired = true;
    
    			if (itemId == 2379) {
    				int rockCakeDamage = 50;
    				c.startAnimation(827);
    				c.getItems().deleteItem(itemId, slot, c.playerItemsN[slot]);
    				c.handleHitMask(rockCakeDamage);
    				c.dealDamage(rockCakeDamage);
    				c.getPA().refreshSkill(3);
    				c.forcedChatUpdateRequired = true;
    				c.updateRequired = true;
    
    			}
    			if (c.playerItemsN[slot] != 0 && itemId != -1
    					&& c.playerItems[slot] == itemId + 1) {
    				if (droppable) {
    					if (c.underAttackBy > 0) {
    						if (c.getShops().getItemShopValue(itemId) > 1000) {
    							c.sendMessage("You may not drop items worth more than 1000 while in combat.");
    							return;
    						}
    					}
    					Server.itemHandler.createGroundItem(c, itemId, c.getX(),
    							c.getY(), c.playerItemsN[slot], c.getId());
    					c.getItems().deleteItem(itemId, slot, c.playerItemsN[slot]);
    				} else {
    					c.sendMessage("This items cannot be dropped.");
    				}
    			}
    
    		}
    	}
    }
    Reply With Quote  
     

  2. #2  
    Registered Member
    Join Date
    Nov 2011
    Posts
    120
    Thanks given
    7
    Thanks received
    1
    Rep Power
    11
    Anyone?
    Reply With Quote  
     

  3. #3  
    Banned Wont let me drop items Market Banned


    Join Date
    Jan 2011
    Age
    26
    Posts
    3,112
    Thanks given
    1,198
    Thanks received
    1,479
    Rep Power
    0
    fixed, ill give you the before and after so you can see the mistake you made


    before

    Code:
    package server.model.players.packets;
    
    import server.Config;
    import server.Server;
    import server.model.players.Client;
    import server.model.players.PacketType;
    
    /**
     * Drop Item
     **/
    public class DropItem implements PacketType {
    
    	@Override
    	public void processPacket(Client c, int packetType, int packetSize) {
    		int itemId = c.getInStream().readUnsignedWordA();
    		c.getInStream().readUnsignedByte();
    		c.getInStream().readUnsignedByte();
    		int slot = c.getInStream().readUnsignedWordA();
    		if (System.currentTimeMillis() - c.alchDelay < 1800) {
    			return;
    		}
    		if (c.arenas()) {
    			c.sendMessage("You can't drop items inside the arena!");
    			return;
    		}
    		if (c.inTrade) {
    			c.sendMessage("You can't drop items while trading!");
    			return;
    		}
    
    		boolean droppable = true;
    		for (int i : Config.UNDROPPABLE_ITEMS) {
    			if (i == itemId) {
    				droppable = false;
    				break;
    			}
    		}
    
    if (itemId == 4045) {
    			int explosiveHit = 15;
    			c.startAnimation(827);
    			c.getItems().deleteItem(itemId, slot, c.playerItemsN[slot]);
    			c.handleHitMask(explosiveHit);
    			c.dealDamage(explosiveHit);
    			c.getPA().refreshSkill(3);
    			c.forcedText = "Ow! That really hurt!";
    			c.forcedChatUpdateRequired = true;
    			c.updateRequired = true;
    
    // ORDERING OF BRACKETS IS IMPORTANT!!!! WITH THIS CODE IT WILL ONLY DROP THE ITEM IF THE ID IS 4045
    			if (itemId == 2379) {
    				int rockCakeDamage = 50;
    				c.startAnimation(827);
    				c.getItems().deleteItem(itemId, slot, c.playerItemsN[slot]);
    				c.handleHitMask(rockCakeDamage);
    				c.dealDamage(rockCakeDamage);
    				c.getPA().refreshSkill(3);
    				c.forcedChatUpdateRequired = true;
    				c.updateRequired = true;
    
    			}
    			if (c.playerItemsN[slot] != 0 && itemId != -1
    					&& c.playerItems[slot] == itemId + 1) {
    				if (droppable) {
    					if (c.underAttackBy > 0) {
    						if (c.getShops().getItemShopValue(itemId) > 1000) {
    							c.sendMessage("You may not drop items worth more than 1000 while in combat.");
    							return;
    						}
    					}
    					Server.itemHandler.createGroundItem(c, itemId, c.getX(),
    							c.getY(), c.playerItemsN[slot], c.getId());
    					c.getItems().deleteItem(itemId, slot, c.playerItemsN[slot]);
    				} else {
    					c.sendMessage("This items cannot be dropped.");
    				}
    			}
    
    		}
    	}

    after

    Code:
    package server.model.players.packets;
    
    import server.Config;
    import server.Server;
    import server.model.players.Client;
    import server.model.players.PacketType;
    
    /**
     * Drop Item
     **/
    public class DropItem implements PacketType {
    
    	@Override
    	public void processPacket(Client c, int packetType, int packetSize) {
    		int itemId = c.getInStream().readUnsignedWordA();
    		c.getInStream().readUnsignedByte();
    		c.getInStream().readUnsignedByte();
    		int slot = c.getInStream().readUnsignedWordA();
    		if (System.currentTimeMillis() - c.alchDelay < 1800) {
    			return;
    		}
    		if (c.arenas()) {
    			c.sendMessage("You can't drop items inside the arena!");
    			return;
    		}
    		if (c.inTrade) {
    			c.sendMessage("You can't drop items while trading!");
    			return;
    		}
    
    		boolean droppable = true;
    		for (int i : Config.UNDROPPABLE_ITEMS) {
    			if (i == itemId) {
    				droppable = false;
    				break;
    			}
    		}
    
    if (itemId == 4045) {
    			int explosiveHit = 15;
    			c.startAnimation(827);
    			c.getItems().deleteItem(itemId, slot, c.playerItemsN[slot]);
    			c.handleHitMask(explosiveHit);
    			c.dealDamage(explosiveHit);
    			c.getPA().refreshSkill(3);
    			c.forcedText = "Ow! That really hurt!";
    			c.forcedChatUpdateRequired = true;
    			c.updateRequired = true;
    }
    			if (itemId == 2379) {
    				int rockCakeDamage = 50;
    				c.startAnimation(827);
    				c.getItems().deleteItem(itemId, slot, c.playerItemsN[slot]);
    				c.handleHitMask(rockCakeDamage);
    				c.dealDamage(rockCakeDamage);
    				c.getPA().refreshSkill(3);
    				c.forcedChatUpdateRequired = true;
    				c.updateRequired = true;
    
    			}
    			if (c.playerItemsN[slot] != 0 && itemId != -1
    					&& c.playerItems[slot] == itemId + 1) {
    				if (droppable) {
    					if (c.underAttackBy > 0) {
    						if (c.getShops().getItemShopValue(itemId) > 1000) {
    							c.sendMessage("You may not drop items worth more than 1000 while in combat.");
    							return;
    						}
    					}
    					Server.itemHandler.createGroundItem(c, itemId, c.getX(),
    							c.getY(), c.playerItemsN[slot], c.getId());
    					c.getItems().deleteItem(itemId, slot, c.playerItemsN[slot]);
    				} else {
    					c.sendMessage("This items cannot be dropped.");
    				}
    			}
    	}
    Reply With Quote  
     

  4. Thankful user:


  5. #4  
    Registered Member
    Join Date
    Nov 2011
    Posts
    120
    Thanks given
    7
    Thanks received
    1
    Rep Power
    11
    Quote Originally Posted by lare96 View Post
    fixed, ill give you the before and after so you can see the mistake you made


    before

    Code:
    package server.model.players.packets;
    
    import server.Config;
    import server.Server;
    import server.model.players.Client;
    import server.model.players.PacketType;
    
    /**
     * Drop Item
     **/
    public class DropItem implements PacketType {
    
    	@Override
    	public void processPacket(Client c, int packetType, int packetSize) {
    		int itemId = c.getInStream().readUnsignedWordA();
    		c.getInStream().readUnsignedByte();
    		c.getInStream().readUnsignedByte();
    		int slot = c.getInStream().readUnsignedWordA();
    		if (System.currentTimeMillis() - c.alchDelay < 1800) {
    			return;
    		}
    		if (c.arenas()) {
    			c.sendMessage("You can't drop items inside the arena!");
    			return;
    		}
    		if (c.inTrade) {
    			c.sendMessage("You can't drop items while trading!");
    			return;
    		}
    
    		boolean droppable = true;
    		for (int i : Config.UNDROPPABLE_ITEMS) {
    			if (i == itemId) {
    				droppable = false;
    				break;
    			}
    		}
    
    if (itemId == 4045) {
    			int explosiveHit = 15;
    			c.startAnimation(827);
    			c.getItems().deleteItem(itemId, slot, c.playerItemsN[slot]);
    			c.handleHitMask(explosiveHit);
    			c.dealDamage(explosiveHit);
    			c.getPA().refreshSkill(3);
    			c.forcedText = "Ow! That really hurt!";
    			c.forcedChatUpdateRequired = true;
    			c.updateRequired = true;
    
    // ORDERING OF BRACKETS IS IMPORTANT!!!! WITH THIS CODE IT WILL ONLY DROP THE ITEM IF THE ID IS 4045
    			if (itemId == 2379) {
    				int rockCakeDamage = 50;
    				c.startAnimation(827);
    				c.getItems().deleteItem(itemId, slot, c.playerItemsN[slot]);
    				c.handleHitMask(rockCakeDamage);
    				c.dealDamage(rockCakeDamage);
    				c.getPA().refreshSkill(3);
    				c.forcedChatUpdateRequired = true;
    				c.updateRequired = true;
    
    			}
    			if (c.playerItemsN[slot] != 0 && itemId != -1
    					&& c.playerItems[slot] == itemId + 1) {
    				if (droppable) {
    					if (c.underAttackBy > 0) {
    						if (c.getShops().getItemShopValue(itemId) > 1000) {
    							c.sendMessage("You may not drop items worth more than 1000 while in combat.");
    							return;
    						}
    					}
    					Server.itemHandler.createGroundItem(c, itemId, c.getX(),
    							c.getY(), c.playerItemsN[slot], c.getId());
    					c.getItems().deleteItem(itemId, slot, c.playerItemsN[slot]);
    				} else {
    					c.sendMessage("This items cannot be dropped.");
    				}
    			}
    
    		}
    	}

    after

    Code:
    package server.model.players.packets;
    
    import server.Config;
    import server.Server;
    import server.model.players.Client;
    import server.model.players.PacketType;
    
    /**
     * Drop Item
     **/
    public class DropItem implements PacketType {
    
    	@Override
    	public void processPacket(Client c, int packetType, int packetSize) {
    		int itemId = c.getInStream().readUnsignedWordA();
    		c.getInStream().readUnsignedByte();
    		c.getInStream().readUnsignedByte();
    		int slot = c.getInStream().readUnsignedWordA();
    		if (System.currentTimeMillis() - c.alchDelay < 1800) {
    			return;
    		}
    		if (c.arenas()) {
    			c.sendMessage("You can't drop items inside the arena!");
    			return;
    		}
    		if (c.inTrade) {
    			c.sendMessage("You can't drop items while trading!");
    			return;
    		}
    
    		boolean droppable = true;
    		for (int i : Config.UNDROPPABLE_ITEMS) {
    			if (i == itemId) {
    				droppable = false;
    				break;
    			}
    		}
    
    if (itemId == 4045) {
    			int explosiveHit = 15;
    			c.startAnimation(827);
    			c.getItems().deleteItem(itemId, slot, c.playerItemsN[slot]);
    			c.handleHitMask(explosiveHit);
    			c.dealDamage(explosiveHit);
    			c.getPA().refreshSkill(3);
    			c.forcedText = "Ow! That really hurt!";
    			c.forcedChatUpdateRequired = true;
    			c.updateRequired = true;
    }
    			if (itemId == 2379) {
    				int rockCakeDamage = 50;
    				c.startAnimation(827);
    				c.getItems().deleteItem(itemId, slot, c.playerItemsN[slot]);
    				c.handleHitMask(rockCakeDamage);
    				c.dealDamage(rockCakeDamage);
    				c.getPA().refreshSkill(3);
    				c.forcedChatUpdateRequired = true;
    				c.updateRequired = true;
    
    			}
    			if (c.playerItemsN[slot] != 0 && itemId != -1
    					&& c.playerItems[slot] == itemId + 1) {
    				if (droppable) {
    					if (c.underAttackBy > 0) {
    						if (c.getShops().getItemShopValue(itemId) > 1000) {
    							c.sendMessage("You may not drop items worth more than 1000 while in combat.");
    							return;
    						}
    					}
    					Server.itemHandler.createGroundItem(c, itemId, c.getX(),
    							c.getY(), c.playerItemsN[slot], c.getId());
    					c.getItems().deleteItem(itemId, slot, c.playerItemsN[slot]);
    				} else {
    					c.sendMessage("This items cannot be dropped.");
    				}
    			}
    	}

    Thank you soo much!!! Worked omg ily - nohomo
    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. item.cfg wont let me run my server
    By carmex in forum Help
    Replies: 4
    Last Post: 05-29-2013, 11:54 PM
  2. Replies: 5
    Last Post: 02-29-2012, 07:17 PM
  3. It wont let me run final devolution....
    By Bonez buzzin in forum Help
    Replies: 5
    Last Post: 07-28-2009, 03:20 AM
  4. Replies: 6
    Last Post: 05-30-2009, 08:56 AM
  5. [508] shops won't let me buy items
    By Silicity in forum Help
    Replies: 2
    Last Post: 02-20-2009, 09:47 PM
Posting Permissions
  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •