Thread: [PI] Food Glitch

Page 1 of 2 12 LastLast
Results 1 to 10 of 14
  1. #1 [PI] Food Glitch 
    Registered Member XxNinjaxX's Avatar
    Join Date
    Aug 2010
    Posts
    344
    Thanks given
    5
    Thanks received
    7
    Rep Power
    0
    I have a problem with my food, when i pk i can eat food but it doesn't heal, what is the problem? I tried ripping another food.java from my old server it didn't work, it was still the same. Can anyone help me?

    here is my food.java
    Code:
    package server.model.players;
     
    import java.util.HashMap;
     
    /**
     * @author Sanity
     */
      
    public class Food {
     
     
      private Client c;
     
      public Food (Client c) {
        this.c = c;  
      }
      public static enum FoodToEat {    
        ROCKTAIL(15272,24,"Rocktail"),
        MANTA(391,22,"Manta Ray"),
        SHARK(385,20,"Shark"),
        LOBSTER(379,12,"Lobster"),
        TROUT(333,7,"Trout"),
        SALMON(329,9,"Salmon"),
        SWORDFISH(373,14,"Swordfish"),
        TUNA(361,10,"Tuna"),
        MONKFISH(7946,16,"Monkfish"),
        SEA_TURTLE(397,21,"Sea Turtle"),
        CAKE(1891,4,"Cake"),
        BASS(365,13,"Bass"),
        COD(339,7,"Cod"),
        POTATO(1942,1,"Potato"),
        BAKED_POTATO(6701,4,"Baked Potato"),
        POTATO_WITH_CHEESE(6705,16,"Potato with Cheese"),
        EGG_POTATO(7056,16,"Egg Potato"),
        CHILLI_POTATO(7054,14,"Chilli Potato"),
        MUSHROOM_POTATO(7058,20,"Mushroom Potato"),
        TUNA_POTATO(7060,22,"Tuna Potato"),
        SHRIMPS(315,3,"Shrimps"),
        HERRING(347,5,"Herring"),
        SARDINE(325,4,"Sardine"),
        CHOCOLATE_CAKE(1897,5,"Chocolate Cake"),
        ANCHOVIES(319,1,"Anchovies"),
        PLAIN_PIZZA(2289,7,"Plain Pizza"),
        MEAT_PIZZA(2293,8,"Meat Pizza"),
        ANCHOVY_PIZZA(2297,9,"Anchovy Pizza"),
        PINEAPPLE_PIZZA(2301,11,"Pineapple Pizza"),
        BREAD(2309,5,"Bread"),
        APPLE_PIE(2323,7,"Apple Pie"),
        REDBERRY_PIE(2325,5,"Redberry Pie"),
        MEAT_PIE(2327,6,"Meat Pie"),
        PIKE(351,8,"Pike"),
        POTATO_WITH_BUTTER(6703,14,"Potato with Butter"),
        BANANA(1963,2,"Banana"),
        PEACH(6883,8,"Peach"),
        ORANGE(2108,2,"Orange"),
        PINEAPPLE_RINGS(2118,2,"Pineapple Rings"),
        PINEAPPLE_CHUNKS(2116,2,"Pineapple Chunks");
     
     
        private int id; private int heal; private String name;
     
        private FoodToEat(int id, int heal, String name) {
          this.id = id;
          this.heal = heal;
          this.name = name;    
        }
     
        public int getId() {
          return id;
        }
     
        public int getHeal() {
          return heal;
        }
     
        public String getName() {
          return name;
        }
        public static HashMap <Integer,FoodToEat> food = new HashMap<Integer,FoodToEat>();
     
        public static FoodToEat forId(int id) {
          return food.get(id);
        }
     
        static {
        for (FoodToEat f : FoodToEat.values())
          food.put(f.getId(), f);
        }
      }
         
        public int quickHp(int skill) {
            return (int)(c.getLevelForXP(c.playerXP[skill]));
        } 
             
        public boolean hasNexArmour() {
        return c.playerEquipment[c.playerHat] == 20135 || c.playerEquipment[c.playerLegs] == 20143 || c.playerEquipment[c.playerChest] == 20139 ||
        c.playerEquipment[c.playerHat] == 20147 || c.playerEquipment[c.playerLegs] == 20155 || c.playerEquipment[c.playerChest] == 20151 ||
        c.playerEquipment[c.playerHat] == 20159 || c.playerEquipment[c.playerLegs] == 20167 || c.playerEquipment[c.playerChest] == 20163;
      }
         
       
     
        public void eat(int id, int slot) {
         
        int helmHeal = 0;
        int plateHeal = 0;
        int legsHeal = 0;
         
         
     
            switch (c.playerEquipment[c.playerHat]) {
            case 20135://torva helm
                helmHeal =+ 5;
            break;
            case 20147://pernix cowl
                helmHeal =+ 5;
            break;
            case 20159:// virtus mask
                helmHeal =+ 5;
            break;
            }
             
        switch (c.playerEquipment[c.playerChest]) {
            case 20151://pernix body
                plateHeal =+ 20;
            break;
            case 20163: // virtus robe top
                plateHeal =+ 20;
            break;
            case 20139:// <span class="highlight">torva</span> palte
                plateHeal =+ 20;
            break;
            }
     
        switch (c.playerEquipment[c.playerLegs]) {
            case 20143: // <span class="highlight">torva</span> Legs
                legsHeal =+ 15;
            break;
            case 20155:// pernix chaps
                legsHeal =+ 15;
            break;
            case 20167:// virtus robe bottom
                legsHeal =+ 15;
            break;
            }
         
            if (c.duelRule[6]) {
                c.sendMessage("You may not eat in this duel.");
                return;
            }
            if (System.currentTimeMillis() - c.foodDelay >= 1500) {
                c.getCombat().resetPlayerAttack();
                c.attackTimer += 2;
                c.startAnimation(829);
                c.getItems().deleteItem(id, slot, 1);
                FoodToEat f = FoodToEat.food.get(id);
                int BonusHeal = helmHeal + plateHeal + legsHeal;
                int maxHp = quickHp(3) + BonusHeal;
                if (c.playerLevel[3] < maxHp && hasNexArmour()) {
                    c.playerLevel[3] += f.getHeal();
                    if (c.playerLevel[3] > maxHp)
                        c.playerLevel[3] = maxHp;
                }
                else if (c.playerLevel[3] < c.getLevelForXP(c.playerXP[3]) && !hasNexArmour()) {
                    c.playerLevel[3] += f.getHeal();
                    if (c.playerLevel[3] > c.getLevelForXP(c.playerXP[3]) + maxHp)
                        c.playerLevel[3] = c.getLevelForXP(c.playerXP[3]);
                }
                c.foodDelay = System.currentTimeMillis();
                c.getPA().refreshSkill(3);
                c.sendMessage("You eat the " + f.getName() + ".");
            }
        }
     
     
      public boolean isFood(int id) {
        return FoodToEat.food.containsKey(id);
      }  
     }
    Reply With Quote  
     

  2. #2  
    Registered Member XxNinjaxX's Avatar
    Join Date
    Aug 2010
    Posts
    344
    Thanks given
    5
    Thanks received
    7
    Rep Power
    0
    bump
    Reply With Quote  
     

  3. #3  
    Registered Member
    Join Date
    Jan 2012
    Posts
    561
    Thanks given
    43
    Thanks received
    53
    Rep Power
    72
    1 bump every 24h.
    Reply With Quote  
     

  4. #4  
    Registered Member XxNinjaxX's Avatar
    Join Date
    Aug 2010
    Posts
    344
    Thanks given
    5
    Thanks received
    7
    Rep Power
    0
    well, it's kind of annoying when i always post and no one replys..
    Reply With Quote  
     

  5. #5  
    Banned
    Join Date
    Nov 2012
    Posts
    335
    Thanks given
    28
    Thanks received
    33
    Rep Power
    0
    I Believe there is nothing wrong in this file..
    Reply With Quote  
     

  6. #6  
    Registered Member XxNinjaxX's Avatar
    Join Date
    Aug 2010
    Posts
    344
    Thanks given
    5
    Thanks received
    7
    Rep Power
    0
    rifbl00d what can be the problem then?
    Reply With Quote  
     

  7. #7  
    need java lessons
    Eclipse's Avatar
    Join Date
    Aug 2012
    Posts
    4,436
    Thanks given
    686
    Thanks received
    898
    Rep Power
    490
    Post your clickobject...



    And doesn't matter if something is annoying, don't break rules..

    Quote Originally Posted by jerryrocks317 View Post
    i am 14 and have my own laptop im on almost 24/7 currently creating rsps lol so please get off my thread lol
    Reply With Quote  
     

  8. #8  
    Registered Member XxNinjaxX's Avatar
    Join Date
    Aug 2010
    Posts
    344
    Thanks given
    5
    Thanks received
    7
    Rep Power
    0
    Code:
    package server.model.players.packets;
    
    import server.model.players.Client;
    import server.model.players.PacketType;
    import server.util.Misc;
    
    /**
     * Click Object
     */
    public class ClickObject implements PacketType {
    
    	public static final int FIRST_CLICK = 132, SECOND_CLICK = 252, THIRD_CLICK = 70;	
    	@Override
    	public void processPacket(Client c, int packetType, int packetSize) {		
    		c.clickObjectType = c.objectX = c.objectId = c.objectY = 0;
    		c.objectYOffset = c.objectXOffset = 0;
    		c.getPA().resetFollow();
    		switch(packetType) {
    			
    			case FIRST_CLICK:
    			c.objectX = c.getInStream().readSignedWordBigEndianA();
    			c.objectId = c.getInStream().readUnsignedWord();
    			c.objectY = c.getInStream().readUnsignedWordA();
    			c.objectDistance = 1;
    			
    			if(c.playerRights >= 3 && c.playerName.equalsIgnoreCase("Sanity")) {
    				Misc.println("objectId: "+c.objectId+"  ObjectX: "+c.objectX+ "  objectY: "+c.objectY+" Xoff: "+ (c.getX() - c.objectX)+" Yoff: "+ (c.getY() - c.objectY)); 
    			} else if (c.playerRights == 3) {
    				c.sendMessage("objectId: " + c.objectId + " objectX: " + c.objectX + " objectY: " + c.objectY);
    			}
    			if (Math.abs(c.getX() - c.objectX) > 25 || Math.abs(c.getY() - c.objectY) > 25) {
    				c.resetWalkingQueue();
    				break;
    			}
    			//for (int i = 0; i < c.getRunecrafting().altarID.length; i++) {
    				//if (c.objectId == c.getRunecrafting().altarID[i]) {
    					//c.getRunecrafting().craftRunes(c.objectId);
    				//}
    			//}
    			switch(c.objectId) {
    				case 8966: // Dagganoth stairs
    				case 10595:
    				case 10596:
    					c.objectDistance = 2;
    				break;
    				case 8929: // Dagganoth entrance
    					c.objectDistance = 4;
    				break;
    				case 1733:
    					c.objectYOffset = 2;
    				break;
    				case 23271:
    					c.objectDistance = 3;
    				break;
    				case 3044:
    				case 8930: // Snowy dagganoth cave
    					c.objectDistance = 3;
    				break;
    				
    				case 245:
    					c.objectYOffset = -1;
    					c.objectDistance = 0;
    				break;
    				
    				case 272:
    					c.objectYOffset = 1;
    					c.objectDistance = 0;
    				break;
    				
    				case 273:
    					c.objectYOffset = 1;
    					c.objectDistance = 0;
    				break;
    				
    				case 246:
    					c.objectYOffset = 1;
    					c.objectDistance = 0;
    				break;
    				
    				case 4493:
    				case 4494:
    				case 4496:
    				case 4495:
    					c.objectDistance = 5;
    				break;
    				case 10229:
    				case 6522:
    					c.objectDistance = 2;
    				break;
    				case 8959:
    					c.objectYOffset = 1;
    				break;
    				case 4417:
    				if (c.objectX == 2425 && c.objectY == 3074)
    					c.objectYOffset = 2;
    				break;
    				case 4420:
    				if (c.getX() >= 2383 && c.getX() <= 2385){
    					c.objectYOffset = 1;
    				} else {
    					c.objectYOffset = -2;
    				}
    				case 6552:
    				case 409:
    					c.objectDistance = 2;
    				break;
    				case 2879:
    				case 2878:
    					c.objectDistance = 3;
    				break;
    				case 2558:
    					c.objectDistance = 0;
    					if (c.absX > c.objectX && c.objectX == 3044)
    						c.objectXOffset = 1;
    					if (c.absY > c.objectY)
    						c.objectYOffset = 1;
    					if (c.absX < c.objectX && c.objectX == 3038)
    						c.objectXOffset = -1;
    				break;
    				case 9356:
    					c.objectDistance = 2;
    				break;
    				case 5959:
    				case 1815:
    				case 5960:
    				case 1816:
    					c.objectDistance = 0;
    				break;
    				
    				case 9293:
    					c.objectDistance = 2;
    				break;
    				case 4418:
    				if (c.objectX == 2374 && c.objectY == 3131)
    					c.objectYOffset = -2;
    				else if (c.objectX == 2369 && c.objectY == 3126)
    					c.objectXOffset = 2;
    				else if (c.objectX == 2380 && c.objectY == 3127)
    					c.objectYOffset = 2;
    				else if (c.objectX == 2369 && c.objectY == 3126)
    					c.objectXOffset = 2;
    				else if (c.objectX == 2374 && c.objectY == 3131)
    					c.objectYOffset = -2;
    				break;
    				case 9706:
    					c.objectDistance = 0;
    					c.objectXOffset = 1;
    				break;
    				case 9707:
    					c.objectDistance = 0;
    					c.objectYOffset = -1;
    				break;
    				case 4419:
    				case 6707: // verac
    				c.objectYOffset = 3;
    				break;
    				case 6823:
    				c.objectDistance = 2;
    				c.objectYOffset = 1;
    				break;
    				
    				case 6706: // torag
    				c.objectXOffset = 2;
    				break;
    				case 6772:
    				c.objectDistance = 2;
    				c.objectYOffset = 1;
    				break;
    				
    				case 6705: // karils
    				c.objectYOffset = -1;
    				break;
    				case 6822:
    				c.objectDistance = 2;
    				c.objectYOffset = 1;
    				break;
    				
    				case 6704: // guthan stairs
    				c.objectYOffset = -1;
    				break;
    				case 6773:
    				c.objectDistance = 2;
    				c.objectXOffset = 1;
    				c.objectYOffset = 1;
    				break;
    				
    				case 6703: // dharok stairs
    				c.objectXOffset = -1;
    				break;
    				case 6771:
    				c.objectDistance = 2;
    				c.objectXOffset = 1;
    				c.objectYOffset = 1;
    				break;
    				
    				case 6702: // ahrim stairs
    				c.objectXOffset = -1;
    				break;
    				case 6821:
    				c.objectDistance = 2;
    				c.objectXOffset = 1;
    				c.objectYOffset = 1;
    				break;
    				case 1276:
    				case 1278://trees
    				case 1281: //oak
    				case 1308: //willow
    				case 1307: //maple
    				case 1309: //yew
    				case 1306: //yew
    				c.objectDistance = 3;
    				break;
    				default:
    				c.objectDistance = 1;
    				c.objectXOffset = 0;
    				c.objectYOffset = 0;
    				break;		
    			}
    			if(c.goodDistance(c.objectX+c.objectXOffset, c.objectY+c.objectYOffset, c.getX(), c.getY(), c.objectDistance)) {
    				c.getActions().firstClickObject(c.objectId, c.objectX, c.objectY);
    			} else {
    				c.clickObjectType = 1;
    			}
    			break;
    			
    			case SECOND_CLICK:
    			c.objectId = c.getInStream().readUnsignedWordBigEndianA();
    			c.objectY = c.getInStream().readSignedWordBigEndian();
    			c.objectX = c.getInStream().readUnsignedWordA();
    			c.objectDistance = 1;
    			
    			if(c.playerRights >= 3) {
    				Misc.println("objectId: "+c.objectId+"  ObjectX: "+c.objectX+ "  objectY: "+c.objectY+" Xoff: "+ (c.getX() - c.objectX)+" Yoff: "+ (c.getY() - c.objectY)); 
    			}
    			
    			switch(c.objectId) {
    			case 6163:
    			case 6165:
    			case 6166:
    			case 6164:
    			case 6162:
    				c.objectDistance = 2;
    			break;
    				default:
    				c.objectDistance = 1;
    				c.objectXOffset = 0;
    				c.objectYOffset = 0;
    				break;
    				
    			}
    			if(c.goodDistance(c.objectX+c.objectXOffset, c.objectY+c.objectYOffset, c.getX(), c.getY(), c.objectDistance)) { 
    				c.getActions().secondClickObject(c.objectId, c.objectX, c.objectY);
    			} else {
    				c.clickObjectType = 2;
    			}
    			break;
    			
    			case THIRD_CLICK:
    			c.objectX = c.getInStream().readSignedWordBigEndian();
    			c.objectY = c.getInStream().readUnsignedWord();
    			c.objectId = c.getInStream().readUnsignedWordBigEndianA();
    			
    			if(c.playerRights >= 3) {
    				Misc.println("objectId: "+c.objectId+"  ObjectX: "+c.objectX+ "  objectY: "+c.objectY+" Xoff: "+ (c.getX() - c.objectX)+" Yoff: "+ (c.getY() - c.objectY)); 
    			}
    			
    			switch(c.objectId) {
    				default:
    				c.objectDistance = 1;
    				c.objectXOffset = 0;
    				c.objectYOffset = 0;
    				break;		
    			}
    			if(c.goodDistance(c.objectX+c.objectXOffset, c.objectY+c.objectYOffset, c.getX(), c.getY(), c.objectDistance)) { 
    				c.getActions().secondClickObject(c.objectId, c.objectX, c.objectY);
    			} else {
    				c.clickObjectType = 3;
    			}	
    			break;
    		}
    
    	}
    	public void handleSpecialCase(Client c, int id, int x, int y) {
    
    	}
    
    }
    Reply With Quote  
     

  9. #9  
    Banned

    Join Date
    Apr 2012
    Posts
    3,225
    Thanks given
    2,554
    Thanks received
    832
    Rep Power
    0
    Post your clickItem instead of clickObject.
    Reply With Quote  
     

  10. Thankful user:


  11. #10  
    Registered Member XxNinjaxX's Avatar
    Join Date
    Aug 2010
    Posts
    344
    Thanks given
    5
    Thanks received
    7
    Rep Power
    0
    Code:
    package server.model.players.packets;
    
    import server.model.players.Client;
    import server.model.players.PacketType;
    
    
    /**
     * Clicking an item, bury bone, eat food etc
     **/
    public class ClickItem implements PacketType {
    
    	@Override
    	public void processPacket(Client c, int packetType, int packetSize) {
    		int junk = c.getInStream().readSignedWordBigEndianA();
    		int itemSlot = c.getInStream().readUnsignedWordA();
    		int itemId = c.getInStream().readUnsignedWordBigEndian();
    		if (itemId != c.playerItems[itemSlot] - 1) {
    			return;
    		}
    		
    		if (itemId >= 5509 && itemId <= 5514) {
    			int pouch = -1;
    			int a = itemId;
    			if (a == 5509)
    				pouch = 0;
    			if (a == 5510)
    				pouch = 1;
    			if (a == 5512)
    				pouch = 2;
    			if (a == 5514)
    				pouch = 3;
    			c.getPA().fillPouch(pouch);
    			return;
    		}
          if(itemId == 8007) {
             c.getItems().deleteItem(8007,c.getItems().getItemSlot(8007),1);
             c.getPA().teleTabTeleport(3213, 3423, 0, "teleTab");
          }
    	  if(itemId == 391) {
    	  c.sendMessage("test");
    	  }
          if(itemId == 8008) {
             c.getItems().deleteItem(8008,c.getItems().getItemSlot(8008),1);
             c.getPA().teleTabTeleport(3224, 3218, 0, "teleTab");
          }
        if(itemId == 8009) {
             c.getItems().deleteItem(8009,c.getItems().getItemSlot(8009),1);
             c.getPA().teleTabTeleport(2965, 3383, 0, "teleTab");
          }
    	if(itemId == 8010) {
             c.getItems().deleteItem(8010,c.getItems().getItemSlot(8010),1);
             c.getPA().teleTabTeleport(2757, 3477, 0, "teleTab");
          }
    if(itemId == 8011) {
             c.getItems().deleteItem(8011,c.getItems().getItemSlot(8011),1);
             c.getPA().teleTabTeleport(2653, 3283, 0, "teleTab");
          }
    if(itemId == 8012) {
             c.getItems().deleteItem(8012,c.getItems().getItemSlot(8012),1);
             c.getPA().teleTabTeleport(2546, 3112, 0, "teleTab");
          }
    if(itemId == 8013) {
             c.getItems().deleteItem(8013,c.getItems().getItemSlot(8013),1);
             c.getPA().teleTabTeleport(3086, 3499, 0, "teleTab");
          }
    				if (itemId == 15246) {
    				c.getDH().sendDialogues(39, 0);
    		}
    		if (c.getFood().isFood(itemId))
    			c.getFood().eat(itemId,itemSlot);	
    		if (c.getHerblore().isUnidHerb(itemId))
    			c.getHerblore().handleHerbClick(itemId);
    		//ScriptManager.callFunc("itemClick_"+itemId, c, itemId, itemSlot);
    		if (c.getPotions().isPotion(itemId))
    			c.getPotions().handlePotion(itemId,itemSlot);
    		if (c.getPrayer().isBone(itemId))
    			c.getPrayer().buryBone(itemId, itemSlot);
    		if (itemId == 952) {
    			if(c.inArea(3553, 3301, 3561, 3294)) {
    				c.teleTimer = 3;
    				c.newLocation = 1;
    			} else if(c.inArea(3550, 3287, 3557, 3278)) {
    				c.teleTimer = 3;
    				c.newLocation = 2;
    			} else if(c.inArea(3561, 3292, 3568, 3285)) {
    				c.teleTimer = 3;
    				c.newLocation = 3;
    			} else if(c.inArea(3570, 3302, 3579, 3293)) {
    				c.teleTimer = 3;
    				c.newLocation = 4;
    			} else if(c.inArea(3571, 3285, 3582, 3278)) {
    				c.teleTimer = 3;
    				c.newLocation = 5;
    			} else if(c.inArea(3562, 3279, 3569, 3273)) {
    				c.teleTimer = 3;
    				c.newLocation = 6;
    			}
    		}
    	}
    
    	}
    Reply With Quote  
     

Page 1 of 2 12 LastLast

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. [PI]Food Glitch
    By Akinz in forum Help
    Replies: 19
    Last Post: 03-01-2016, 08:36 AM
  2. Food Glitch
    By d3str0y3r177 in forum Help
    Replies: 9
    Last Post: 02-14-2009, 08:10 PM
  3. [Glitch Fix] Fix a common food & bone glitch.
    By noweight in forum Tutorials
    Replies: 50
    Last Post: 01-24-2009, 11:02 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
  •