forked from 2009Scape/Server
Crafting Gold Jewellery will automatically take gems from the Gold Satchel
This commit is contained in:
parent
bfbfae8391
commit
08ffa6fee6
3 changed files with 23 additions and 4 deletions
|
|
@ -165,6 +165,7 @@ public final class JewelleryInterface extends ComponentPlugin {
|
|||
amount = 5;
|
||||
break;
|
||||
case 124:
|
||||
/* No need to calculate the maximum amount here, because the make() function will perform that step
|
||||
if (data.name().contains("GOLD")) {
|
||||
amount = player.getInventory().getAmount(new Item(GOLD_BAR));
|
||||
} else {
|
||||
|
|
@ -178,6 +179,8 @@ public final class JewelleryInterface extends ComponentPlugin {
|
|||
amount = first;
|
||||
}
|
||||
}
|
||||
*/
|
||||
amount = 99;
|
||||
break;
|
||||
case 199:
|
||||
final JewelleryItem d = data;
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@ import core.game.component.Component;
|
|||
import core.game.node.entity.skill.Skills;
|
||||
import core.game.node.entity.player.Player;
|
||||
import core.game.node.item.Item;
|
||||
import static core.api.ContentAPIKt.*;
|
||||
|
||||
import java.util.HashMap;
|
||||
|
||||
|
|
@ -185,7 +186,9 @@ public class JewelleryCrafting {
|
|||
for (int i = 0; i < data.items.length; i++) {
|
||||
if (player.getInventory().contains(data.getItems()[i], 1)) {
|
||||
length++;
|
||||
}
|
||||
} else if (inEquipmentOrInventory(player, 10881, 1) && player.goldSatchel.contains(data.getItems()[i], 1)){
|
||||
length++;
|
||||
}
|
||||
}
|
||||
if (!player.getInventory().contains(mouldFor(data.name()), 1)) {
|
||||
length--;
|
||||
|
|
@ -235,6 +238,9 @@ public class JewelleryCrafting {
|
|||
amt = player.getInventory().getAmount(new Item(GOLD_BAR));
|
||||
} else {
|
||||
int first = player.getInventory().getAmount(new Item(data.getItems()[0]));
|
||||
if (inEquipmentOrInventory(player, 10881, 1)) {
|
||||
first += player.goldSatchel.getAmount(new Item(data.getItems()[0]));
|
||||
}
|
||||
int second = player.getInventory().getAmount(new Item(data.getItems()[1]));
|
||||
if (first == second) {
|
||||
amt = first;
|
||||
|
|
@ -250,7 +256,9 @@ public class JewelleryCrafting {
|
|||
for (int i = 0; i < data.items.length; i++) {
|
||||
if (player.getInventory().contains(data.getItems()[i], amount)) {
|
||||
length++;
|
||||
}
|
||||
} else if (data.getItems()[i] != GOLD_BAR && inEquipmentOrInventory(player, 10881, 1) && player.goldSatchel.contains(data.getItems()[i], 1)){
|
||||
length++;
|
||||
}
|
||||
}
|
||||
if (length != data.getItems().length) {
|
||||
player.getPacketDispatch().sendMessage("You don't have the required items to make this item.");
|
||||
|
|
|
|||
|
|
@ -67,11 +67,19 @@ public final class JewelleryPulse extends SkillPulse<Item> {
|
|||
if (++ticks % 5 != 0) {
|
||||
return false;
|
||||
}
|
||||
if (player.getInventory().remove(getItems())) {
|
||||
Item items[] = getItems();
|
||||
for (int i = 0; i < items.length; i++) {
|
||||
if (player.getInventory().remove(items[i]) || (items[i].getId() != 2357 && inEquipmentOrInventory(player, 10881, 1) && player.goldSatchel.remove(items[i]))) {
|
||||
continue;
|
||||
} else {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
//if (player.getInventory().remove(getItems())) {
|
||||
final Item item = new Item(type.getSendItem());
|
||||
player.getInventory().add(item);
|
||||
player.getSkills().addExperience(Skills.CRAFTING, type.getExperience(), true);
|
||||
}
|
||||
//}
|
||||
amount--;
|
||||
return amount < 1;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue