bump
|
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); } }
1 bump every 24h.
I Believe there is nothing wrong in this file..
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) { } }
Post your clickItem instead of clickObject.
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; } } } }
« Previous Thread | Next Thread » |
Thread Information |
Users Browsing this ThreadThere are currently 1 users browsing this thread. (0 members and 1 guests) |