Should no longer be possible to obtain a magic carpet

This commit is contained in:
Ceikry
2021-06-24 07:39:20 -05:00
parent 0b54212e6e
commit 86ea038559
2 changed files with 5 additions and 2 deletions
@@ -6,6 +6,7 @@ import core.game.node.item.GroundItemManager;
import core.game.node.item.Item;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
import org.rs09.consts.Items;
import java.nio.ByteBuffer;
import java.util.*;
@@ -538,7 +539,7 @@ public class Container {
int id = Integer.parseInt(i.get("id").toString());
int amount = Integer.parseInt(i.get("amount").toString());
int charge = Integer.parseInt(i.get("charge").toString());
if (id >= ItemDefinition.getDefinitions().size() || id < 0 || slot >= items.length) {
if (id >= ItemDefinition.getDefinitions().size() || id < 0 || slot >= items.length || id == Items.MAGIC_CARPET_5614) {
} else {
Item it = items[slot] = new Item(id,amount,charge);
it.setIndex(slot);
@@ -1,5 +1,7 @@
package core.game.content.dialogue;
import api.Container;
import api.ContentAPI;
import core.cache.def.impl.NPCDefinition;
import core.game.container.impl.EquipmentContainer;
import core.plugin.Initializable;
@@ -286,7 +288,7 @@ public final class RugMerchantDialogue extends DialoguePlugin {
player.getEquipment().replace(new Item(Items.MAGIC_CARPET_5614),EquipmentContainer.SLOT_WEAPON);
player.getPacketDispatch().sendInterfaceConfig(548,69,true);
player.logoutListeners.put("magic-carpet", (pl) -> {
pl.getEquipment().replace(null,EquipmentContainer.SLOT_WEAPON);
ContentAPI.removeItem(pl, Items.MAGIC_CARPET_5614, Container.EQUIPMENT);
return Unit.INSTANCE;
});
GameWorld.getPulser().submit(new Pulse(1, player) {