forked from 2009Scape/Server
fixup add doubles
This commit is contained in:
parent
059564e47e
commit
15465f2044
28 changed files with 105 additions and 31 deletions
|
|
@ -173,7 +173,9 @@ public class CookingProperties {
|
|||
public boolean cook(final Food food, final Player player, final GameObject object, final boolean burned) {
|
||||
if (player.getInventory().remove(food.getRaw())) {
|
||||
if (!burned) {
|
||||
Perks.addDouble(player, food.getItem());
|
||||
Item item = food.getItem();
|
||||
player.getInventory().add(item);
|
||||
Perks.addDouble(player, item);
|
||||
} else {
|
||||
player.getInventory().add(food.getBurnt());
|
||||
}
|
||||
|
|
|
|||
|
|
@ -100,7 +100,9 @@ public final class DragonCraftPulse extends SkillPulse<Item> {
|
|||
} else {
|
||||
player.getPacketDispatch().sendMessage("You make " + (StringUtils.isPlusN(ItemDefinition.forId(hide.getProduct()).getName().toLowerCase()) ? "an" : "a") + " " + ItemDefinition.forId(hide.getProduct()).getName().toLowerCase() + ".");
|
||||
}
|
||||
Perks.addDouble(player, new Item(hide.getProduct()));
|
||||
Item item = new Item(hide.getProduct());
|
||||
player.getInventory().add(item);
|
||||
Perks.addDouble(player, item);
|
||||
|
||||
if (player.getDetails().getShop().hasPerk(Perks.GOLDEN_NEEDLE) && RandomFunction.random(100) <= 10) {
|
||||
player.getSkills().addExperience(Skills.CRAFTING, (hide.getExperience() * 0.35), true);
|
||||
|
|
|
|||
|
|
@ -80,7 +80,9 @@ public final class HardCraftPulse extends SkillPulse<Item> {
|
|||
}
|
||||
}
|
||||
if (player.getInventory().remove(new Item(LeatherCrafting.HARD_LEATHER))) {
|
||||
Perks.addDouble(player, new Item(1131));
|
||||
Item item = new Item(1131);
|
||||
player.getInventory().add(item);
|
||||
Perks.addDouble(player, item);
|
||||
if (player.getDetails().getShop().hasPerk(Perks.GOLDEN_NEEDLE) && RandomFunction.random(100) <= 10) {
|
||||
player.getSkills().addExperience(Skills.CRAFTING, (35 * 0.35), true);
|
||||
player.sendMessage("Your golden needle rewards you with some extra XP!");
|
||||
|
|
|
|||
|
|
@ -87,7 +87,9 @@ public final class SnakeSkinPulse extends SkillPulse<Item> {
|
|||
}
|
||||
}
|
||||
if (player.getInventory().remove(new Item(6289, skin.getRequiredAmount()))) {
|
||||
Perks.addDouble(player, skin.getProduct());
|
||||
Item item = skin.getProduct();
|
||||
player.getInventory().add(item);
|
||||
Perks.addDouble(player, item);
|
||||
if (player.getDetails().getShop().hasPerk(Perks.GOLDEN_NEEDLE) && RandomFunction.random(100) <= 10) {
|
||||
player.getSkills().addExperience(Skills.CRAFTING, (skin.getExperience() * 0.35), true);
|
||||
player.sendMessage("Your golden needle rewards you with some extra XP!");
|
||||
|
|
|
|||
|
|
@ -98,7 +98,9 @@ public final class SoftCraftPulse extends SkillPulse<Item> {
|
|||
} else {
|
||||
player.getPacketDispatch().sendMessage("You make " + (StringUtils.isPlusN(soft.getProduct().getName()) ? "an" : "a") + " " + soft.getProduct().getName().toLowerCase() + ".");
|
||||
}
|
||||
Perks.addDouble(player, soft.getProduct());
|
||||
Item item = soft.getProduct();
|
||||
player.getInventory().add(item);
|
||||
Perks.addDouble(player, item);
|
||||
if (player.getDetails().getShop().hasPerk(Perks.GOLDEN_NEEDLE) && RandomFunction.random(100) <= 10) {
|
||||
player.getSkills().addExperience(Skills.CRAFTING, (soft.getExperience() * 0.35), true);
|
||||
player.sendMessage("Your golden needle rewards you with some extra XP!");
|
||||
|
|
|
|||
|
|
@ -73,7 +73,9 @@ public final class GemCutPulse extends SkillPulse<Item> {
|
|||
return false;
|
||||
}
|
||||
if (player.getInventory().remove(gem.getUncut())) {
|
||||
Perks.addDouble(player, gem.getGem());
|
||||
final Item item = gem.getGem();
|
||||
player.getInventory().add(item);
|
||||
Perks.addDouble(player, item);
|
||||
player.getSkills().addExperience(Skills.CRAFTING, gem.getExp(), true);
|
||||
}
|
||||
amount--;
|
||||
|
|
|
|||
|
|
@ -66,7 +66,9 @@ public final class JewelleryPulse extends SkillPulse<Item> {
|
|||
return false;
|
||||
}
|
||||
if (player.getInventory().remove(getItems())) {
|
||||
Perks.addDouble(player, new Item(type.getSendItem()));
|
||||
final Item item = new Item(type.getSendItem());
|
||||
player.getInventory().add(item);
|
||||
Perks.addDouble(player, item);
|
||||
player.getSkills().addExperience(Skills.CRAFTING, type.getExperience(), true);
|
||||
}
|
||||
amount--;
|
||||
|
|
|
|||
|
|
@ -75,7 +75,9 @@ public final class FirePotteryPulse extends SkillPulse<Item> {
|
|||
if (player.getLocation().getY() == 3408 && player.getAttribute("spun-bowl", false) && !player.getAchievementDiaryManager().getDiary(DiaryType.VARROCK).isComplete(0, 9)) {
|
||||
player.getAchievementDiaryManager().getDiary(DiaryType.VARROCK).updateTask(player, 0, 9, true);
|
||||
}
|
||||
Perks.addDouble(player, pottery.getProduct());
|
||||
final Item item = pottery.getProduct();
|
||||
player.getInventory().add(item);
|
||||
Perks.addDouble(player, item);
|
||||
player.getSkills().addExperience(Skills.CRAFTING, pottery.getFireExp(), true);
|
||||
player.getPacketDispatch().sendMessage("You put the " + pottery.getUnfinished().getName().toLowerCase() + " in the oven.");
|
||||
player.getPacketDispatch().sendMessage("You remove a " + pottery.getProduct().getName().toLowerCase() + " from the oven.");
|
||||
|
|
|
|||
|
|
@ -81,7 +81,9 @@ public final class PotteryPulse extends SkillPulse<Item> {
|
|||
if (pottery == PotteryItem.BOWL && player.getLocation().getX() == 3086) {
|
||||
player.setAttribute("spun-bowl", true);
|
||||
}
|
||||
Perks.addDouble(player, pottery.getUnfinished());
|
||||
final Item item = pottery.getUnfinished();
|
||||
player.getInventory().add(item);
|
||||
Perks.addDouble(player, item);
|
||||
player.getSkills().addExperience(Skills.CRAFTING, pottery.getExp(), true);
|
||||
player.getPacketDispatch().sendMessage("You make the soft clay into " + (StringUtils.isPlusN(pottery.getUnfinished().getName()) ? "an" : "a") + " " + pottery.getUnfinished().getName().toLowerCase() + ".");
|
||||
}
|
||||
|
|
|
|||
|
|
@ -72,7 +72,9 @@ public final class SpinningPulse extends SkillPulse<Item> {
|
|||
return false;
|
||||
}
|
||||
if (player.getInventory().remove(new Item(type.getNeed(), 1))) {
|
||||
Perks.addDouble(player, new Item(type.getProduct(), 1));
|
||||
final Item item = new Item(type.getProduct(), 1);
|
||||
player.getInventory().add(item);
|
||||
Perks.addDouble(player, item);
|
||||
player.getSkills().addExperience(Skills.CRAFTING, type.getExp(), true);
|
||||
}
|
||||
ammount--;
|
||||
|
|
|
|||
|
|
@ -184,7 +184,9 @@ public final class FishingPulse extends SkillPulse<NPC> {
|
|||
if (GlobalEventManager.get().isActive("Plenty of fish"))
|
||||
player.getInventory().add(fish.getItem());
|
||||
SkillingPets.checkPetDrop(player, SkillingPets.HERON);
|
||||
Perks.addDouble(player, fish.getItem());
|
||||
final Item item = fish.getItem();
|
||||
player.getInventory().add(item);
|
||||
Perks.addDouble(player, item);
|
||||
player.getSkills().addExperience(Skills.FISHING, fish.getExperience(), true);
|
||||
message(2);
|
||||
if (TutorialSession.getExtension(player).getStage() == 13) {
|
||||
|
|
|
|||
|
|
@ -161,7 +161,9 @@ public final class GatheringSkillPulse extends SkillPulse<GameObject> {
|
|||
applyAchievementTask(reward);
|
||||
// Give the player the items
|
||||
int rewardAmount = calculateRewardAmount(reward);
|
||||
player.getInventory().add(new Item(reward, rewardAmount));
|
||||
Item item = new Item(reward, rewardAmount);
|
||||
player.getInventory().add(item);
|
||||
Perks.addDouble(player, item);
|
||||
// Apply the experience points
|
||||
double experience = calculateExperience(reward, rewardAmount);
|
||||
player.getSkills().addExperience(resource.getSkillId(), experience, true);
|
||||
|
|
@ -369,7 +371,6 @@ public final class GatheringSkillPulse extends SkillPulse<GameObject> {
|
|||
}
|
||||
|
||||
SkillingPets.checkPetDrop(player, isMining ? SkillingPets.GOLEM : SkillingPets.BEAVER);
|
||||
Perks.addDouble(player, new Item(reward, 1));
|
||||
|
||||
return amount;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -175,6 +175,7 @@ public final class RuneCraftPulse extends SkillPulse<Item> {
|
|||
if (altar == Altar.COSMIC && i.getAmount() == 56 && !player.getAchievementDiaryManager().getDiary(DiaryType.LUMBRIDGE).isComplete(2, 1)) {
|
||||
player.getAchievementDiaryManager().updateTask(player, DiaryType.LUMBRIDGE, 2, 1, true);
|
||||
}
|
||||
player.getInventory().add(i);
|
||||
Perks.addDouble(player, i);
|
||||
player.getSkills().addExperience(Skills.RUNECRAFTING, rune.getExperience() * amount, true);
|
||||
}
|
||||
|
|
@ -193,7 +194,9 @@ public final class RuneCraftPulse extends SkillPulse<Item> {
|
|||
}
|
||||
}
|
||||
player.getSkills().addExperience(Skills.RUNECRAFTING, rune.getExperience() * 2, true);
|
||||
Perks.addDouble(player, rune.getRune());
|
||||
Item runeItem = rune.getRune();
|
||||
player.getInventory().add(runeItem);
|
||||
Perks.addDouble(player, runeItem);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -300,6 +303,7 @@ public final class RuneCraftPulse extends SkillPulse<Item> {
|
|||
i++;
|
||||
}
|
||||
}
|
||||
|
||||
if (player.hasPerk(Perks.RUNESTONE_KNOWLEDGE) && (altar == Altar.DEATH || altar == Altar.LAW || altar == Altar.COSMIC || altar == Altar.BLOOD || altar == Altar.NATURE)) {
|
||||
i *= 2;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -80,7 +80,9 @@ public class SmithingPulse extends SkillPulse<Item> {
|
|||
return false;
|
||||
}
|
||||
player.getInventory().remove(new Item(bar.getBarType().getBarType(), bar.getSmithingType().getRequired()));
|
||||
Perks.addDouble(player, (new Item(node.getId(), bar.getSmithingType().getProductAmount())));
|
||||
final Item item = new Item(node.getId(), bar.getSmithingType().getProductAmount());
|
||||
player.getInventory().add(item);
|
||||
Perks.addDouble(player, item);
|
||||
player.getSkills().addExperience(Skills.SMITHING, bar.getBarType().getExperience() * bar.getSmithingType().getRequired(), true);
|
||||
String message = StringUtils.isPlusN(ItemDefinition.forId(bar.getProduct()).getName().toLowerCase()) == true ? "an" : "a";
|
||||
player.getPacketDispatch().sendMessage("You hammer the " + bar.getBarType().getBarName().toLowerCase().replace("smithing", "") + "and make " + message + " " + ItemDefinition.forId(bar.getProduct()).getName().toLowerCase() + ".");
|
||||
|
|
|
|||
|
|
@ -178,7 +178,9 @@ public final class SpadePulse extends ToolAction {
|
|||
* @return {@code True} if harvested.
|
||||
*/
|
||||
private boolean harvestPatch() {
|
||||
Perks.addDouble(player, wrapper.getNode().getProduct());
|
||||
final Item item = wrapper.getNode().getProduct();
|
||||
player.getInventory().add(item);
|
||||
Perks.addDouble(player, item);
|
||||
player.getSkills().addExperience(Skills.FARMING, wrapper.getNode().getExperiences()[1], true);
|
||||
wrapper.getCycle().setHarvestAmount(wrapper.getCycle().getHarvestAmount() - 1);
|
||||
if (wrapper.getCycle().getHarvestAmount() < 1) {
|
||||
|
|
|
|||
|
|
@ -64,7 +64,9 @@ public final class FletchingPulse extends SkillPulse<Item> {
|
|||
return false;
|
||||
}
|
||||
if (player.getInventory().remove(fletch.getType().getLog())) {
|
||||
Perks.addDouble(player, fletch.getProduct());
|
||||
final Item item = fletch.getProduct();
|
||||
player.getInventory().add(item);
|
||||
Perks.addDouble(player, item);
|
||||
player.getSkills().addExperience(Skills.FLETCHING, fletch.getExperience(), true);
|
||||
String message = getMessage();
|
||||
player.getPacketDispatch().sendMessage(message);
|
||||
|
|
|
|||
|
|
@ -84,7 +84,9 @@ public final class HerbTarPulse extends SkillPulse<Item> {
|
|||
return false;
|
||||
}
|
||||
if (player.getInventory().containsItem(SWAMP_TAR) && player.getInventory().containsItem(tar.getIngredient()) && player.getInventory().remove(SWAMP_TAR) && player.getInventory().remove(tar.getIngredient())) {
|
||||
Perks.addDouble(player, new Item(tar.getTar().getId(), 15));
|
||||
final Item item = new Item(tar.getTar().getId(), 15);
|
||||
player.getInventory().add(item);
|
||||
Perks.addDouble(player, item);
|
||||
player.getSkills().addExperience(Skills.HERBLORE, tar.getExperience(), true);
|
||||
player.getPacketDispatch().sendMessage("You add the " + tar.getIngredient().getName().toLowerCase().replace("clean", "").trim() + " to the swamp tar.");
|
||||
} else {
|
||||
|
|
|
|||
|
|
@ -115,7 +115,9 @@ public final class HerblorePulse extends SkillPulse<Item> {
|
|||
player.animate(ANIMATION);
|
||||
}
|
||||
if ((player.getInventory().containsItem(potion.getBase()) && player.getInventory().containsItem(potion.getIngredient())) && player.getInventory().remove(potion.getBase(), potion.getIngredient())) {
|
||||
Perks.addDouble(player, potion.getProduct());
|
||||
final Item item = potion.getProduct();
|
||||
player.getInventory().add(item);
|
||||
Perks.addDouble(player, item);
|
||||
player.getPacketDispatch().sendMessage("You put the" + StringUtils.formatDisplayName(potion.getIngredient().getName().replace("Clean", "")) + " Leaf into the vial of water.");
|
||||
if (cycles++ == 3) {
|
||||
player.animate(ANIMATION);
|
||||
|
|
@ -129,7 +131,9 @@ public final class HerblorePulse extends SkillPulse<Item> {
|
|||
*/
|
||||
public void handleFinished() {
|
||||
if ((player.getInventory().containsItem(potion.getBase()) && player.getInventory().containsItem(potion.getIngredient())) && player.getInventory().remove(potion.getBase(), potion.getIngredient())) {
|
||||
Perks.addDouble(player, potion.getProduct());
|
||||
final Item item = potion.getProduct();
|
||||
player.getInventory().add(item);
|
||||
Perks.addDouble(player, item);
|
||||
player.getSkills().addExperience(Skills.HERBLORE, potion.getExperience(), true);
|
||||
player.getPacketDispatch().sendMessage("You mix the " + potion.getIngredient().getName().toLowerCase() + " into your potion.");
|
||||
player.animate(ANIMATION);
|
||||
|
|
|
|||
|
|
@ -74,7 +74,9 @@ public class BNetNode {
|
|||
public void reward(Player player, NPC npc) {
|
||||
if (!isBareHand(player)) {
|
||||
if (player.getInventory().remove(getJar())) {
|
||||
Perks.addDouble(player, getReward());
|
||||
final Item item = getReward();
|
||||
player.getInventory().add(item);
|
||||
Perks.addDouble(player, item);
|
||||
player.getSkills().addExperience(Skills.HUNTER, getExperience(player), true);
|
||||
}
|
||||
} else {
|
||||
|
|
|
|||
|
|
@ -168,7 +168,9 @@ public final class SummoningCreator {
|
|||
}
|
||||
}
|
||||
if (player.getInventory().remove(type.getRequired())) {
|
||||
Perks.addDouble(player, type.getProduct());
|
||||
final Item item = type.getProduct();
|
||||
player.getInventory().add(item);
|
||||
Perks.addDouble(player, item);
|
||||
player.getSkills().addExperience(Skills.SUMMONING, type.getExperience(), true);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -162,6 +162,7 @@ public enum Pickpocket {
|
|||
if (this == MARTIN_THE_MASTER_GARDENER) {
|
||||
return RandomFunction.getChanceItem(MARTIN_REWARDS).getRandomItem();
|
||||
}
|
||||
// 5/250 chance for easy clue scroll?
|
||||
if ((this == FEMALE_HAM_MEMBER || this == MALE_HAM_MEMBER) && RandomFunction.random(250) <= 5 && !player.getTreasureTrailManager().hasClue()) {
|
||||
return ClueScrollPlugin.getClue(ClueLevel.EASY);
|
||||
}
|
||||
|
|
@ -169,12 +170,16 @@ public enum Pickpocket {
|
|||
if (loot.length == 1) {
|
||||
loot = new int[] { loot[0], 1 };
|
||||
}
|
||||
|
||||
|
||||
// Calculate any bonus multipliers
|
||||
int bonusMultiplier = 1;
|
||||
if (loot[0] == 995) {
|
||||
if(GlobalEventManager.get().isActive("Thieves jackpot")) {
|
||||
loot[1] *= 3;
|
||||
bonusMultiplier *= 3;
|
||||
}
|
||||
}
|
||||
return new Item(loot[0], loot[1]);
|
||||
return new Item(loot[0], loot[1] * bonusMultiplier);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -12,6 +12,7 @@ import org.crandor.game.node.entity.player.info.portal.Perks;
|
|||
import org.crandor.game.node.entity.player.link.audio.Audio;
|
||||
import org.crandor.game.node.entity.player.link.diary.DiaryType;
|
||||
import org.crandor.game.node.entity.state.EntityState;
|
||||
import org.crandor.game.node.item.Item;
|
||||
import org.crandor.game.world.GameWorld;
|
||||
import org.crandor.game.world.update.flag.context.Animation;
|
||||
import org.crandor.tools.RandomFunction;
|
||||
|
|
@ -101,7 +102,9 @@ public final class PickpocketPulse extends SkillPulse<NPC> {
|
|||
player.getAchievementDiaryManager().getDiary(DiaryType.LUMBRIDGE).updateTask(player, 1, 6, true);
|
||||
}
|
||||
player.getSkills().addExperience(Skills.THIEVING, type.getExperience(), true);
|
||||
Perks.addDouble(player, type.getRandomLoot(player), true);
|
||||
Item loot = type.getRandomLoot(player);
|
||||
player.getInventory().add(loot);
|
||||
Perks.addDouble(player, loot, true);
|
||||
player.getPacketDispatch().sendMessage(type.getRewardMessage().replace("@name", node.getName().toLowerCase()));
|
||||
} else {
|
||||
node.animate(NPC_ANIM);
|
||||
|
|
|
|||
|
|
@ -11,9 +11,27 @@ import org.crandor.tools.RandomFunction;
|
|||
* @author 'Vexia
|
||||
*/
|
||||
public enum Stall {
|
||||
VEGETABLE_STALL(new int[] { 4706, 4708, }, 2, new int[][] { { 1957, 1 }, { 1965, 1 }, { 1942, 1 } }, "some vegetables from the vegetable's merchant stall.", 10, 634, 10), BAKER_STALL(new int[] { 2561, 6163, 34384 }, 5, new int[][] { { 1891, 1 }, { 2309, 1 }, { 1901, 1 } }, "a cake from the baker's stall.", 16, 634, 11), CRAFTING_STALL(new int[] { 6166 }, 5, new int[][] { { 1755, 1 }, { 1592, 1 }, { 1901, 1 }, { 1597, 1 } }, "some crafting equipment from the crafting merchant stall", 16, 634, 18), TEA_STALL(new int[] { 635, 6574 }, 5, new int[][] { { 712, 1 } }, "a cup of tea.", 16, 634, 10), SILK_STALL(new int[] { 34383, 2560 }, 20, new int[][] { { 950, 1 } }, "some silk from the silk stall.", 24, 634, 10), WINE_STALL(new int[] { 34383, 14011 }, 22, new int[][] { { 1937, 1 }, { 1993, 1 }, { 1987, 1 }, { 1935, 1 }, { 7919, 1 } }, "some wine from the wine stall.", 27, 634, 20), SEED_STALL(new int[] { 7053 }, 27, new int[][] { { 5305, 1 }, { 5306, 1 }, { 5308, 1 }, { 5319, 3 }, { 5318, 2 }, { 5324, 1 }, { 5322, 2 } }, "some seed's from the seed merchant's stall.", 10, 634, 10), FUR_STALL(new int[] { 34387, 2563 }, 35, new int[][] { { 6814, 1 }, { 958, 1 } }, "some fur from the fur stall.", 36, 634, 22), FISH_STAILL(new int[] { 4277, 4705, 4707 }, 42, new int[][] { { 331, 1 }, { 359, 1 }, { 377, 1 } }, "some fish from the fish stall.", 42, 634, 22), CROSSBOW_STALL(new int[] { 4277, 4705, 4707 }, 49, new int[][] { { 9375, 3 }, { 9420, 1 }, { 9440, 1 } }, "something from the crossbow stall.", 52, 634, 22), SILVER_STALL(new int[] { 2565, 6164, 34382 }, 50, new int[][] { { 442, 1 } }, "some silver from the silver stall.", 54, 634, 50), SPICE_STALL(new int[] { 2564, 34386 }, 65, new int[][] { { 2007, 1 } }, "some spice from the spice stall.", 81, 634, 100), MAGIC_STALL(new int[] { 4705, 4707 }, 65, new int[][] { { 556, 1 }, { 557, 1 }, { 554, 1 }, { 555, 1 }, { 563, 1 } }, "some runes from the rune's stall.", 100, 634, 100), SCIMITAR_STALL(new int[] { 4705, 4707 }, 65, new int[][] { { 1323, 1 } }, "a scimitar from the scimitar stall.", 100, 634, 100), GEM_STALL(new int[] { 2562, 6162, 34385 }, 75, new int[][] { { 1623, 1 } }, "a gem from the gem stall.", 160, 634, 340),
|
||||
VEGETABLE_STALL(new int[] { 4706, 4708, }, 2, new int[][] { { 1957, 1 }, { 1965, 1 }, { 1942, 1 } }, "some vegetables from the vegetable's merchant stall.", 10, 634, 10),
|
||||
BAKER_STALL(new int[] { 2561, 6163, 34384 }, 5, new int[][] { { 1891, 1 }, { 2309, 1 }, { 1901, 1 } }, "a cake from the baker's stall.", 16, 634, 11),
|
||||
CRAFTING_STALL(new int[] { 6166 }, 5, new int[][] { { 1755, 1 }, { 1592, 1 }, { 1901, 1 }, { 1597, 1 } }, "some crafting equipment from the crafting merchant stall", 16, 634, 18),
|
||||
TEA_STALL(new int[] { 635, 6574 }, 5, new int[][] { { 712, 1 } }, "a cup of tea.", 16, 634, 10),
|
||||
SILK_STALL(new int[] { 34383, 2560 }, 20, new int[][] { { 950, 1 } }, "some silk from the silk stall.", 24, 634, 10),
|
||||
WINE_STALL(new int[] { 34383, 14011 }, 22, new int[][] { { 1937, 1 }, { 1993, 1 }, { 1987, 1 }, { 1935, 1 }, { 7919, 1 } }, "some wine from the wine stall.", 27, 634, 20),
|
||||
SEED_STALL(new int[] { 7053 }, 27, new int[][] { { 5305, 1 }, { 5306, 1 }, { 5308, 1 }, { 5319, 3 }, { 5318, 2 }, { 5324, 1 }, { 5322, 2 } }, "some seed's from the seed merchant's stall.", 10, 634, 10),
|
||||
FUR_STALL(new int[] { 34387, 2563 }, 35, new int[][] { { 6814, 1 }, { 958, 1 } }, "some fur from the fur stall.", 36, 634, 22),
|
||||
FISH_STAILL(new int[] { 4277, 4705, 4707 }, 42, new int[][] { { 331, 1 }, { 359, 1 }, { 377, 1 } }, "some fish from the fish stall.", 42, 634, 22),
|
||||
CROSSBOW_STALL(new int[] { 4277, 4705, 4707 }, 49, new int[][] { { 9375, 3 }, { 9420, 1 }, { 9440, 1 } }, "something from the crossbow stall.", 52, 634, 22),
|
||||
SILVER_STALL(new int[] { 2565, 6164, 34382 }, 50, new int[][] { { 442, 1 } }, "some silver from the silver stall.", 54, 634, 50),
|
||||
SPICE_STALL(new int[] { 2564, 34386 }, 65, new int[][] { { 2007, 1 } }, "some spice from the spice stall.", 81, 634, 100),
|
||||
MAGIC_STALL(new int[] { 4705, 4707 }, 65, new int[][] { { 556, 1 }, { 557, 1 }, { 554, 1 }, { 555, 1 }, { 563, 1 } }, "some runes from the rune's stall.", 100, 634, 100),
|
||||
SCIMITAR_STALL(new int[] { 4705, 4707 }, 65, new int[][] { { 1323, 1 } }, "a scimitar from the scimitar stall.", 100, 634, 100),
|
||||
GEM_STALL(new int[] { 2562, 6162, 34385 }, 75, new int[][] { { 1623, 1 } }, "a gem from the gem stall.", 160, 634, 340),
|
||||
// ape atoll:
|
||||
SCIMITAR_APE_STALL(new int[] { 4878 }, 65, new int[][] { { 1323, 1 } }, "a scimitar from the scimitar stall.", 100, 4797, 120), MAGIC_APE_STALL(new int[] { 4877 }, 65, new int[][] { { 556, 1 }, { 557, 1 }, { 554, 1 }, { 555, 1 }, { 563, 1 } }, "some runes from the magic stall.", 100, 4797, 120), MONEKY_GENERAL(new int[] { 4876 }, 5, new int[][] { { 1931, 1 }, { 2347, 1 }, { 590, 1 } }, "a general item from the general stall.", 16, 4797, 10), MONKEY_FOOD(new int[] { 4875 }, 5, new int[][] { { 1963, 1 } }, "a banana from the food stall.", 16, 4797, 10), CRAFTING_APE(new int[] { 4874 }, 5, new int[][] { { 1755, 1 }, { 1592, 1 }, { 1901, 1 }, { 1597, 1 } }, "a crafting item from the crafting stall.", 16, 4797, 10);
|
||||
SCIMITAR_APE_STALL(new int[] { 4878 }, 65, new int[][] { { 1323, 1 } }, "a scimitar from the scimitar stall.", 100, 4797, 120),
|
||||
MAGIC_APE_STALL(new int[] { 4877 }, 65, new int[][] { { 556, 1 }, { 557, 1 }, { 554, 1 }, { 555, 1 }, { 563, 1 } }, "some runes from the magic stall.", 100, 4797, 120),
|
||||
MONEKY_GENERAL(new int[] { 4876 }, 5, new int[][] { { 1931, 1 }, { 2347, 1 }, { 590, 1 } }, "a general item from the general stall.", 16, 4797, 10),
|
||||
MONKEY_FOOD(new int[] { 4875 }, 5, new int[][] { { 1963, 1 } }, "a banana from the food stall.", 16, 4797, 10),
|
||||
CRAFTING_APE(new int[] { 4874 }, 5, new int[][] { { 1755, 1 }, { 1592, 1 }, { 1901, 1 }, { 1597, 1 } }, "a crafting item from the crafting stall.", 16, 4797, 10);
|
||||
|
||||
/**
|
||||
* Constructs a new {@code Stall} {@code Object}.
|
||||
|
|
|
|||
|
|
@ -96,7 +96,6 @@ public final class StallThiefPulse extends SkillPulse<GameObject> {
|
|||
}
|
||||
final boolean success = success();
|
||||
if (success) {
|
||||
final Item item = stall.getRandomLoot();
|
||||
if (stall == Stall.SILK_STALL) {
|
||||
player.getSavedData().getGlobalData().setSilkSteal(System.currentTimeMillis() + 1800000);
|
||||
}
|
||||
|
|
@ -106,6 +105,8 @@ public final class StallThiefPulse extends SkillPulse<GameObject> {
|
|||
if (node.isActive()) {
|
||||
ObjectBuilder.replace(((GameObject) node), ((GameObject) node).transform(stall.getTemporary()), stall.getDelay());
|
||||
}
|
||||
final Item item = stall.getRandomLoot();
|
||||
player.getInventory().add(item);
|
||||
Perks.addDouble(player, item, true);
|
||||
player.getSkills().addExperience(Skills.THIEVING, stall.getExperience(), true);
|
||||
if (item.getId() == 1987) {
|
||||
|
|
|
|||
|
|
@ -100,8 +100,8 @@ public enum Perks {
|
|||
* @return the item.
|
||||
*/
|
||||
public static boolean addDouble(Player player, Item item, boolean ground, int maxRand) {
|
||||
// 10 % chance to give an extra item
|
||||
if (!player.hasPerk(DOUBLE_TROUBLE) || RandomFunction.random(maxRand) > 10) {
|
||||
// 5% chance to give an extra item
|
||||
if (!player.hasPerk(DOUBLE_TROUBLE) || RandomFunction.random(maxRand) > 5) {
|
||||
return false;
|
||||
}
|
||||
// Give the player the extra item(s)!
|
||||
|
|
|
|||
|
|
@ -168,6 +168,7 @@ public class ThievingGuidePlugin extends OptionHandler {
|
|||
}
|
||||
tries++;
|
||||
}
|
||||
player.getInventory().add(item);
|
||||
Perks.addDouble(player, item);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -235,7 +235,9 @@ public class WildernessAreaZone extends MapZone implements Plugin<Object> {
|
|||
}
|
||||
node.transform(8667);
|
||||
node.setAttribute("reward-tick", GameWorld.getTicks() + resource.getRespawnDuration());
|
||||
Perks.addDouble(player, new Item(resource.getReward()));
|
||||
final Item item = new Item(resource.getReward());
|
||||
player.getInventory().add(item);
|
||||
Perks.addDouble(player, item);
|
||||
player.getSkills().addExperience(resource.getSkillId(), resource.getExperience(), true);
|
||||
return true;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -139,6 +139,7 @@ public class YakArmourPlugin extends UseWithHandler {
|
|||
}
|
||||
int reqAmount = index == 1 ? 1 : 2;
|
||||
if (player.getInventory().remove(new Item(10820, reqAmount))) {
|
||||
player.getInventory().add(node);
|
||||
Perks.addDouble(player, node);
|
||||
if (player.getDetails().getShop().hasPerk(Perks.GOLDEN_NEEDLE) && RandomFunction.random(100) <= 10) {
|
||||
player.getSkills().addExperience(Skills.CRAFTING, (32 * 0.35), true);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue