mirror of
https://gitlab.com/2009scape/2009scape.git
synced 2025-12-09 16:45:44 -07:00
Merge branch 'bf-fixes' into 'master'
Prevent furnace temperature from going negative and deduplicate bar handling. See merge request 2009scape/2009scape!379
This commit is contained in:
commit
eca439b99e
3 changed files with 83 additions and 267 deletions
|
|
@ -97,3 +97,4 @@
|
|||
- Can now pickpocket women in ardy (npc ID 25)
|
||||
- Can now travel on free charter boats without having money in inventory
|
||||
- Emerald and diamond bracelet enchants no longer produce noted items
|
||||
- Prevent furnace temperature from going negative and deduplicate bar handling.
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@ import core.game.container.impl.EquipmentContainer
|
|||
import core.game.node.entity.player.Player
|
||||
import core.game.node.entity.skill.Skills
|
||||
import core.game.node.item.Item
|
||||
import core.game.node.entity.skill.smithing.smelting.Bar
|
||||
import core.game.system.task.Pulse
|
||||
import core.game.world.map.Location
|
||||
import core.tools.RandomFunction
|
||||
|
|
@ -125,8 +126,8 @@ object BlastFurnace {
|
|||
furnaceTemp += 2
|
||||
} else if (stoveTemp > 0 && pumping && furnaceTemp < 100 && (!pumpPipeBroken || !pumpPipeBroken)) {
|
||||
furnaceTemp += 1
|
||||
} else if (furnaceTemp > 0 && getWorldTicks() % 2 == 0) {
|
||||
furnaceTemp -= 2
|
||||
} else if (furnaceTemp > 0) {
|
||||
furnaceTemp -= 1
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -148,96 +149,50 @@ object BlastFurnace {
|
|||
}else if (makeBars && playerOre.isNotEmpty() && barsAmountFree > 0 && totalAmount < 56 && player.getAttribute("OreInPot",false) == true) {
|
||||
playerOre.forEach { oreID ->
|
||||
playerCoal = player.blastCoal.getAmount(Items.COAL_453)
|
||||
if (oreID.id == Items.RUNITE_ORE_451 && player.blastOre.getAmount(451) * 4 <= playerCoal) {
|
||||
player.varpManager.get(543).setVarbit(8, 1).send(player)
|
||||
barsHot = true
|
||||
player.blastBars.add(Item(Items.RUNITE_BAR_2363, 1))
|
||||
player.blastOre.remove(Item(Items.RUNITE_ORE_451, 1))
|
||||
rewardXP(player, Skills.SMITHING,50.0)
|
||||
player.blastCoal.remove(Item(453, 4))
|
||||
totalAmount = barsAmount + oreAmount
|
||||
giveSmithXp++
|
||||
var bars = arrayOf(Bar.forOre(oreID.id)!!)
|
||||
if(oreID.id == Items.IRON_ORE_440) {
|
||||
bars = arrayOf(Bar.STEEL, Bar.IRON)
|
||||
}
|
||||
else if (oreID.id == Items.ADAMANTITE_ORE_449 && player.blastOre.getAmount(449) * 3 <= playerCoal) {
|
||||
player.varpManager.get(543).setVarbit(8, 1).send(player)
|
||||
barsHot = true
|
||||
player.blastBars.add(Item(Items.ADAMANTITE_BAR_2361, 1))
|
||||
player.blastOre.remove(Item(Items.ADAMANTITE_ORE_449, 1))
|
||||
rewardXP(player, Skills.SMITHING,37.5)
|
||||
player.blastCoal.remove(Item(453, 3))
|
||||
totalAmount = barsAmount + oreAmount
|
||||
giveSmithXp++
|
||||
}
|
||||
else if (oreID.id == Items.MITHRIL_ORE_447 && player.blastOre.getAmount(447) * 2 <= playerCoal) {
|
||||
player.varpManager.get(543).setVarbit(8, 1).send(player)
|
||||
barsHot = true
|
||||
player.blastBars.add(Item(Items.MITHRIL_BAR_2359, 1))
|
||||
player.blastOre.remove(Item(Items.MITHRIL_ORE_447, 1))
|
||||
rewardXP(player, Skills.SMITHING,30.0)
|
||||
player.blastCoal.remove(Item(453, 2))
|
||||
totalAmount = barsAmount + oreAmount
|
||||
giveSmithXp++
|
||||
}
|
||||
else if (oreID.id == Items.IRON_ORE_440 && player.blastOre.getAmount(447) <= playerCoal) {
|
||||
player.varpManager.get(543).setVarbit(8, 1).send(player)
|
||||
barsHot = true
|
||||
player.blastBars.add(Item(Items.STEEL_BAR_2353, 1))
|
||||
player.blastOre.remove(Item(Items.MITHRIL_ORE_447, 1))
|
||||
rewardXP(player, Skills.SMITHING,17.5)
|
||||
player.blastCoal.remove(Item(453, 1))
|
||||
totalAmount = barsAmount + oreAmount
|
||||
giveSmithXp++
|
||||
}
|
||||
else if (oreID.id == Items.IRON_ORE_440) {
|
||||
player.varpManager.get(543).setVarbit(8, 1).send(player)
|
||||
barsHot = true
|
||||
player.blastBars.add(Item(Items.IRON_BAR_2351, 1))
|
||||
player.blastOre.remove(Item(Items.IRON_ORE_440, 1))
|
||||
rewardXP(player, Skills.SMITHING,12.5)
|
||||
totalAmount = barsAmount + oreAmount
|
||||
giveSmithXp++
|
||||
}
|
||||
else if (oreID.id == Items.SILVER_ORE_442) {
|
||||
player.varpManager.get(543).setVarbit(8, 1).send(player)
|
||||
barsHot = true
|
||||
player.blastBars.add(Item(Items.SILVER_BAR_2355, 1))
|
||||
rewardXP(player, Skills.SMITHING,13.6)
|
||||
player.blastOre.remove(Item(Items.SILVER_ORE_442, 1))
|
||||
totalAmount = barsAmount + oreAmount
|
||||
giveSmithXp++
|
||||
}
|
||||
else if (oreID.id == Items.GOLD_ORE_444) {
|
||||
player.varpManager.get(543).setVarbit(8, 1).send(player)
|
||||
barsHot = true
|
||||
player.blastBars.add(Item(Items.GOLD_BAR_2357, 1))
|
||||
if((player.equipment[EquipmentContainer.SLOT_HANDS] != null && player.equipment[EquipmentContainer.SLOT_HANDS].id == GOLDSMITH_GAUNTLETS_776)){
|
||||
rewardXP(player, Skills.SMITHING,56.2)
|
||||
}else{
|
||||
rewardXP(player, Skills.SMITHING,22.5)
|
||||
inner@ for(bar in bars) {
|
||||
var hasRequirements = true
|
||||
for(required in bar.ores) {
|
||||
if(required.id == Items.COAL_453) {
|
||||
if(!player.blastCoal.contains(Items.COAL_453, required.amount / 2)) {
|
||||
hasRequirements = false
|
||||
}
|
||||
} else if(!player.blastOre.containsItem(required)) {
|
||||
hasRequirements = false
|
||||
}
|
||||
}
|
||||
if(hasRequirements) {
|
||||
var removed = true
|
||||
for(required in bar.ores) {
|
||||
if(required.id == Items.COAL_453) {
|
||||
if(!player.blastCoal.remove(Item(Items.COAL_453, required.amount / 2))) {
|
||||
removed = false
|
||||
}
|
||||
} else {
|
||||
if(!player.blastOre.remove(required)) {
|
||||
removed = false
|
||||
}
|
||||
}
|
||||
}
|
||||
if(removed) {
|
||||
player.varpManager.get(543).setVarbit(8, 1).send(player)
|
||||
barsHot = true
|
||||
player.blastBars.add(bar.product)
|
||||
var experience = bar.experience
|
||||
if(bar.product.id == Items.GOLD_BAR_2357 &&
|
||||
player.equipment[EquipmentContainer.SLOT_HANDS] != null &&
|
||||
player.equipment[EquipmentContainer.SLOT_HANDS].id == GOLDSMITH_GAUNTLETS_776) {
|
||||
experience *= 2.5;
|
||||
}
|
||||
rewardXP(player, Skills.SMITHING, experience)
|
||||
totalAmount = barsAmount + oreAmount
|
||||
giveSmithXp++
|
||||
break@inner
|
||||
}
|
||||
}
|
||||
player.blastOre.remove(Item(Items.GOLD_ORE_444, 1))
|
||||
totalAmount = barsAmount + oreAmount
|
||||
giveSmithXp++
|
||||
}
|
||||
else if (oreID.id == Items.COPPER_ORE_436 && player.blastOre.containsAtLeastOneItem(438)) {
|
||||
player.varpManager.get(543).setVarbit(8, 1).send(player)
|
||||
barsHot = true
|
||||
player.blastOre.remove(Item(Items.TIN_ORE_438, 1))
|
||||
player.blastOre.remove(Item(Items.COPPER_ORE_436, 1))
|
||||
player.blastBars.add(Item(Items.BRONZE_BAR_2349, 1))
|
||||
rewardXP(player, Skills.SMITHING,6.2)
|
||||
totalAmount = barsAmount + oreAmount
|
||||
giveSmithXp++
|
||||
}
|
||||
else if(oreID.id == Items.TIN_ORE_438 && player.blastOre.containsAtLeastOneItem(436)){
|
||||
player.varpManager.get(543).setVarbit(8, 1).send(player)
|
||||
barsHot = true
|
||||
player.blastOre.remove(Item(Items.COPPER_ORE_436, 1))
|
||||
player.blastOre.remove(Item(Items.TIN_ORE_438, 1))
|
||||
player.blastBars.add(Item(Items.BRONZE_BAR_2349, 1))
|
||||
rewardXP(player, Skills.SMITHING,6.2)
|
||||
totalAmount = barsAmount + oreAmount
|
||||
giveSmithXp++
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -402,4 +357,4 @@ object BlastFurnace {
|
|||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ import api.Container
|
|||
import api.*
|
||||
import core.game.node.entity.skill.Skills
|
||||
import core.game.node.item.Item
|
||||
import core.game.node.entity.skill.smithing.smelting.Bar
|
||||
import core.game.system.task.Pulse
|
||||
import rs09.game.interaction.InteractionListener
|
||||
import core.game.world.map.Location
|
||||
|
|
@ -195,100 +196,27 @@ class BlastFurnaceListeners : InteractionListener() {
|
|||
oreToActuallyAdd--
|
||||
}
|
||||
}
|
||||
when(oreID){
|
||||
Items.COAL_453 -> {
|
||||
if (coalToActuallyAdd > 0 && getStatLevel(player, Skills.SMITHING) >= 30) {
|
||||
player.blastCoal.add(Item(Items.COAL_453,coalToActuallyAdd))
|
||||
removeItem(player, Item(oreID, coalToActuallyAdd), Container.INVENTORY)
|
||||
BlastFurnaceOre(player, BFOreVariant.values()[playerOre.indexOf(oreID)],coalToActuallyAdd).init()
|
||||
}
|
||||
else if(getStatLevel(player, Skills.SMITHING) < 30){
|
||||
sendDialogue(player, "My Smithing level is not high enough to use Coal!")
|
||||
}
|
||||
else sendDialogue(player, "It looks like the melting pot is already full of coal!")
|
||||
val bar = Bar.forOre(oreID)
|
||||
if(oreID == Items.COAL_453) {
|
||||
if (coalToActuallyAdd > 0 && getStatLevel(player, Skills.SMITHING) >= 30) {
|
||||
player.blastCoal.add(Item(Items.COAL_453,coalToActuallyAdd))
|
||||
removeItem(player, Item(oreID, coalToActuallyAdd), Container.INVENTORY)
|
||||
BlastFurnaceOre(player, BFOreVariant.values()[playerOre.indexOf(oreID)],coalToActuallyAdd).init()
|
||||
}
|
||||
Items.RUNITE_ORE_451 -> {
|
||||
if (oreToActuallyAdd > 0 && getStatLevel(player, Skills.SMITHING) >= 85) {
|
||||
player.blastOre.add(Item(oreID,oreToActuallyAdd))
|
||||
removeItem(player, Item(oreID, oreToActuallyAdd), Container.INVENTORY)
|
||||
BlastFurnaceOre(player, BFOreVariant.values()[playerOre.indexOf(oreID)],oreToActuallyAdd).init()
|
||||
}
|
||||
else if(getStatLevel(player, Skills.SMITHING) < 85){
|
||||
sendDialogue(player, "My Smithing level is not high enough to smelt Runite!")
|
||||
}
|
||||
else sendDialogue(player, "It looks like the melting pot is already full of ore!")
|
||||
else if(getStatLevel(player, Skills.SMITHING) < 30){
|
||||
sendDialogue(player, "My Smithing level is not high enough to use Coal!")
|
||||
}
|
||||
Items.ADAMANTITE_ORE_449 -> {
|
||||
if (oreToActuallyAdd > 0 && getStatLevel(player, Skills.SMITHING) >= 70) {
|
||||
player.blastOre.add(Item(oreID,oreToActuallyAdd))
|
||||
removeItem(player, Item(oreID, oreToActuallyAdd), Container.INVENTORY)
|
||||
BlastFurnaceOre(player, BFOreVariant.values()[playerOre.indexOf(oreID)],oreToActuallyAdd).init()
|
||||
}
|
||||
else if(getStatLevel(player, Skills.SMITHING) < 70){
|
||||
sendDialogue(player, "My Smithing level is not high enough to smelt Adamantite!")
|
||||
}
|
||||
else sendDialogue(player, "It looks like the melting pot is already full of ore!")
|
||||
else sendDialogue(player, "It looks like the melting pot is already full of coal!")
|
||||
} else if (bar != null) {
|
||||
if (oreToActuallyAdd > 0 && getStatLevel(player, Skills.SMITHING) >= bar.level) {
|
||||
player.blastOre.add(Item(oreID,oreToActuallyAdd))
|
||||
removeItem(player, Item(oreID, oreToActuallyAdd), Container.INVENTORY)
|
||||
BlastFurnaceOre(player, BFOreVariant.values()[playerOre.indexOf(oreID)],oreToActuallyAdd).init()
|
||||
}
|
||||
Items.MITHRIL_ORE_447 -> {
|
||||
if (oreToActuallyAdd > 0 && getStatLevel(player, Skills.SMITHING) >= 50) {
|
||||
player.blastOre.add(Item(oreID,oreToActuallyAdd))
|
||||
removeItem(player, Item(oreID, oreToActuallyAdd), Container.INVENTORY)
|
||||
BlastFurnaceOre(player, BFOreVariant.values()[playerOre.indexOf(oreID)],oreToActuallyAdd).init()
|
||||
}
|
||||
else if(getStatLevel(player, Skills.SMITHING) < 50){
|
||||
sendDialogue(player, "My Smithing level is not high enough to smelt Mithril!")
|
||||
}
|
||||
else sendDialogue(player, "It looks like the melting pot is already full of ore!")
|
||||
}
|
||||
Items.IRON_ORE_440 -> {
|
||||
if (oreToActuallyAdd > 0 && getStatLevel(player, Skills.SMITHING) >= 15) {
|
||||
player.blastOre.add(Item(oreID,oreToActuallyAdd))
|
||||
removeItem(player, Item(oreID, oreToActuallyAdd), Container.INVENTORY)
|
||||
BlastFurnaceOre(player, BFOreVariant.values()[playerOre.indexOf(oreID)],oreToActuallyAdd).init()
|
||||
}
|
||||
else if(getStatLevel(player, Skills.SMITHING) < 15){
|
||||
sendDialogue(player, "My Smithing level is not high enough to smelt Iron!")
|
||||
}
|
||||
else sendDialogue(player, "It looks like the melting pot is already full of ore!")
|
||||
}
|
||||
Items.SILVER_ORE_442 -> {
|
||||
if (oreToActuallyAdd > 0 && getStatLevel(player, Skills.SMITHING) >= 20) {
|
||||
player.blastOre.add(Item(oreID,oreToActuallyAdd))
|
||||
removeItem(player, Item(oreID, oreToActuallyAdd), Container.INVENTORY)
|
||||
BlastFurnaceOre(player, BFOreVariant.values()[playerOre.indexOf(oreID)],oreToActuallyAdd).init()
|
||||
}
|
||||
else if(getStatLevel(player, Skills.SMITHING) < 20){
|
||||
sendDialogue(player, "My Smithing level is not high enough to smelt Silver!")
|
||||
}
|
||||
else sendDialogue(player, "It looks like the melting pot is already full of ore!")
|
||||
}
|
||||
Items.GOLD_ORE_444 -> {
|
||||
if (oreToActuallyAdd > 0 && getStatLevel(player, Skills.SMITHING) >= 40) {
|
||||
player.blastOre.add(Item(oreID,oreToActuallyAdd))
|
||||
removeItem(player, Item(oreID, oreToActuallyAdd), Container.INVENTORY)
|
||||
BlastFurnaceOre(player, BFOreVariant.values()[playerOre.indexOf(oreID)],oreToActuallyAdd).init()
|
||||
}
|
||||
else if(getStatLevel(player, Skills.SMITHING) < 40){
|
||||
sendDialogue(player, "My Smithing level is not high enough to smelt Gold!")
|
||||
}
|
||||
else sendDialogue(player, "It looks like the melting pot is already full of ore!")
|
||||
}
|
||||
Items.COPPER_ORE_436 -> {
|
||||
if (oreToActuallyAdd > 0) {
|
||||
player.blastOre.add(Item(oreID,oreToActuallyAdd))
|
||||
removeItem(player, Item(oreID, oreToActuallyAdd), Container.INVENTORY)
|
||||
BlastFurnaceOre(player, BFOreVariant.values()[playerOre.indexOf(oreID)],oreToActuallyAdd).init()
|
||||
}
|
||||
else sendDialogue(player, "It looks like the melting pot is already full of ore!")
|
||||
}
|
||||
Items.TIN_ORE_438 -> {
|
||||
if (oreToActuallyAdd > 0) {
|
||||
player.blastOre.add(Item(oreID,oreToActuallyAdd))
|
||||
removeItem(player, Item(oreID, oreToActuallyAdd), Container.INVENTORY)
|
||||
BlastFurnaceOre(player, BFOreVariant.values()[playerOre.indexOf(oreID)],oreToActuallyAdd).init()
|
||||
}
|
||||
else sendDialogue(player, "It looks like the melting pot is already full of ore!")
|
||||
else if(getStatLevel(player, Skills.SMITHING) < bar.level){
|
||||
sendDialogue(player, "My Smithing level is not high enough to smelt ${bar.name.toLowerCase()}!")
|
||||
}
|
||||
else sendDialogue(player, "It looks like the melting pot is already full of ore!")
|
||||
}
|
||||
}
|
||||
}else if (button == 2 && rocksInInven.isEmpty()){
|
||||
|
|
@ -329,93 +257,25 @@ class BlastFurnaceListeners : InteractionListener() {
|
|||
amountToAdd--
|
||||
}
|
||||
}
|
||||
when(oreType.id){
|
||||
Items.TIN_ORE_438 ->{
|
||||
if (amountToAdd > 0) {
|
||||
player.blastOre.add(Item(oreType.id,amountToAdd))
|
||||
removeItem(player, Item(oreType.id, amountToAdd), Container.INVENTORY)
|
||||
BlastFurnaceOre(player, BFOreVariant.values()[playerOre.indexOf(oreType.id)],amountToAdd).init()
|
||||
}
|
||||
else sendDialogue(player, "It looks like the melting pot is already full of ore!")
|
||||
val bar = Bar.forOre(oreType.id)
|
||||
if(oreType.id == Items.COAL_453) {
|
||||
if (amountToAdd > 0 && getStatLevel(player, Skills.SMITHING) >= 30) {
|
||||
player.blastCoal.add(Item(oreType.id,amountToAdd))
|
||||
removeItem(player, Item(oreType.id, amountToAdd), Container.INVENTORY)
|
||||
BlastFurnaceOre(player, BFOreVariant.values()[playerOre.indexOf(oreType.id)],amountToAdd).init()
|
||||
}else if(getStatLevel(player,Skills.SMITHING) < 30){
|
||||
sendDialogue(player,"My Smithing level is not high enough to use Coal!")
|
||||
}
|
||||
Items.COPPER_ORE_436 ->{
|
||||
if (amountToAdd > 0) {
|
||||
player.blastOre.add(Item(oreType.id,amountToAdd))
|
||||
removeItem(player, Item(oreType.id, amountToAdd), Container.INVENTORY)
|
||||
BlastFurnaceOre(player, BFOreVariant.values()[playerOre.indexOf(oreType.id)],amountToAdd).init()
|
||||
}
|
||||
else sendDialogue(player, "It looks like the melting pot is already full of ore!")
|
||||
}
|
||||
Items.IRON_ORE_440 ->{
|
||||
if (amountToAdd > 0 && getStatLevel(player, Skills.SMITHING) >= 15) {
|
||||
player.blastOre.add(Item(oreType.id,amountToAdd))
|
||||
removeItem(player, Item(oreType.id, amountToAdd), Container.INVENTORY)
|
||||
BlastFurnaceOre(player, BFOreVariant.values()[playerOre.indexOf(oreType.id)],amountToAdd).init()
|
||||
}else if(getStatLevel(player,Skills.SMITHING) < 15){
|
||||
sendDialogue(player,"My Smithing level is not high enough to smelt Iron!")
|
||||
}
|
||||
else sendDialogue(player, "It looks like the melting pot is already full of ore!")
|
||||
}
|
||||
Items.MITHRIL_ORE_447 ->{
|
||||
if (amountToAdd > 0 && getStatLevel(player, Skills.SMITHING) >= 50) {
|
||||
player.blastOre.add(Item(oreType.id,amountToAdd))
|
||||
removeItem(player, Item(oreType.id, amountToAdd), Container.INVENTORY)
|
||||
BlastFurnaceOre(player, BFOreVariant.values()[playerOre.indexOf(oreType.id)],amountToAdd).init()
|
||||
}else if(getStatLevel(player,Skills.SMITHING) < 50){
|
||||
sendDialogue(player,"My Smithing level is not high enough to smelt Mithril!")
|
||||
}
|
||||
else sendDialogue(player, "It looks like the melting pot is already full of ore!")
|
||||
}
|
||||
Items.GOLD_ORE_444 ->{
|
||||
if (amountToAdd > 0 && getStatLevel(player, Skills.SMITHING) >= 40) {
|
||||
player.blastOre.add(Item(oreType.id,amountToAdd))
|
||||
removeItem(player, Item(oreType.id, amountToAdd), Container.INVENTORY)
|
||||
BlastFurnaceOre(player, BFOreVariant.values()[playerOre.indexOf(oreType.id)],amountToAdd).init()
|
||||
}else if(getStatLevel(player,Skills.SMITHING) < 40){
|
||||
sendDialogue(player,"My Smithing level is not high enough to smelt Gold!")
|
||||
}
|
||||
else sendDialogue(player, "It looks like the melting pot is already full of ore!")
|
||||
}
|
||||
Items.SILVER_ORE_442 ->{
|
||||
if (amountToAdd > 0 && getStatLevel(player, Skills.SMITHING) >= 20) {
|
||||
player.blastOre.add(Item(oreType.id,amountToAdd))
|
||||
removeItem(player, Item(oreType.id, amountToAdd), Container.INVENTORY)
|
||||
BlastFurnaceOre(player, BFOreVariant.values()[playerOre.indexOf(oreType.id)],amountToAdd).init()
|
||||
}else if(getStatLevel(player,Skills.SMITHING) < 20){
|
||||
sendDialogue(player,"My Smithing level is not high enough to smelt Silver!")
|
||||
}
|
||||
else sendDialogue(player, "It looks like the melting pot is already full of ore!")
|
||||
}
|
||||
Items.ADAMANTITE_ORE_449 ->{
|
||||
if (amountToAdd > 0 && getStatLevel(player, Skills.SMITHING) >= 70) {
|
||||
player.blastOre.add(Item(oreType.id,amountToAdd))
|
||||
removeItem(player, Item(oreType.id, amountToAdd), Container.INVENTORY)
|
||||
BlastFurnaceOre(player, BFOreVariant.values()[playerOre.indexOf(oreType.id)],amountToAdd).init()
|
||||
}else if(getStatLevel(player,Skills.SMITHING) < 70){
|
||||
sendDialogue(player,"My Smithing level is not high enough to smelt Adamantite!")
|
||||
}
|
||||
else sendDialogue(player, "It looks like the melting pot is already full of ore!")
|
||||
}
|
||||
Items.RUNITE_ORE_451 ->{
|
||||
if (amountToAdd > 0 && getStatLevel(player, Skills.SMITHING) >= 85) {
|
||||
player.blastOre.add(Item(oreType.id,amountToAdd))
|
||||
removeItem(player, Item(oreType.id, amountToAdd), Container.INVENTORY)
|
||||
BlastFurnaceOre(player, BFOreVariant.values()[playerOre.indexOf(oreType.id)],amountToAdd).init()
|
||||
}else if(getStatLevel(player,Skills.SMITHING) < 85){
|
||||
sendDialogue(player,"My Smithing level is not high enough to smelt Runite!")
|
||||
}
|
||||
else sendDialogue(player, "It looks like the melting pot is already full of ore!")
|
||||
}
|
||||
Items.COAL_453 ->{
|
||||
if (amountToAdd > 0 && getStatLevel(player, Skills.SMITHING) >= 30) {
|
||||
player.blastOre.add(Item(oreType.id,amountToAdd))
|
||||
removeItem(player, Item(oreType.id, amountToAdd), Container.INVENTORY)
|
||||
BlastFurnaceOre(player, BFOreVariant.values()[playerOre.indexOf(oreType.id)],amountToAdd).init()
|
||||
}else if(getStatLevel(player,Skills.SMITHING) < 30){
|
||||
sendDialogue(player,"My Smithing level is not high enough to use Coal!")
|
||||
}
|
||||
else sendDialogue(player, "It looks like the melting pot is already full of ore!")
|
||||
else sendDialogue(player, "It looks like the melting pot is already full of ore!")
|
||||
} else if(bar != null) {
|
||||
if (amountToAdd > 0 && getStatLevel(player, Skills.SMITHING) >= bar.level) {
|
||||
player.blastOre.add(Item(oreType.id,amountToAdd))
|
||||
removeItem(player, Item(oreType.id, amountToAdd), Container.INVENTORY)
|
||||
BlastFurnaceOre(player, BFOreVariant.values()[playerOre.indexOf(oreType.id)],amountToAdd).init()
|
||||
}else if(getStatLevel(player,Skills.SMITHING) < bar.level){
|
||||
sendDialogue(player,"My Smithing level is not high enough to smelt Iron!")
|
||||
}
|
||||
else sendDialogue(player, "It looks like the melting pot is already full of ore!")
|
||||
}
|
||||
return@onUseWith true
|
||||
}
|
||||
|
|
@ -501,4 +361,4 @@ class BlastFurnaceListeners : InteractionListener() {
|
|||
return@on true
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue