Skip to content

Commit

Permalink
Fix <npc> and <player> tags in dItems created by opening dInventories
Browse files Browse the repository at this point in the history
  • Loading branch information
Morphan1 committed May 23, 2015
1 parent 6289b71 commit 668b05c
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 6 deletions.
Expand Up @@ -65,17 +65,15 @@ else if (!scriptEntry.hasObject("origin")
&& arg.matchesPrefix("origin", "o", "source", "items", "item", "i", "from", "f")
&& (arg.matchesArgumentTypes(dInventory.class, dEntity.class, dLocation.class)
|| arg.matchesArgumentList(dItem.class))) {
BukkitScriptEntryData data = (BukkitScriptEntryData) scriptEntry.entryData;
scriptEntry.addObject("origin", Conversion.getInventory(arg, data.getPlayer(), data.getNPC()));
scriptEntry.addObject("origin", Conversion.getInventory(arg, scriptEntry));
}

// Check for a destination, which can be a dInventory, dEntity
// or dLocation
else if (!scriptEntry.hasObject("destination")
&& arg.matchesPrefix("destination", "dest", "d", "target", "to", "t")
&& arg.matchesArgumentTypes(dInventory.class, dEntity.class, dLocation.class)) {
BukkitScriptEntryData data = (BukkitScriptEntryData) scriptEntry.entryData;
scriptEntry.addObject("destination", Conversion.getInventory(arg, data.getPlayer(), data.getNPC()));
scriptEntry.addObject("destination", Conversion.getInventory(arg, scriptEntry));
}

// Check for specified slot number
Expand Down
Expand Up @@ -3,10 +3,13 @@
import java.util.ArrayList;
import java.util.List;

import net.aufdemrand.denizen.BukkitScriptEntryData;
import net.aufdemrand.denizen.objects.*;
import net.aufdemrand.denizen.tags.BukkitTagContext;
import net.aufdemrand.denizencore.objects.aH.Argument;

import net.aufdemrand.denizencore.objects.dList;
import net.aufdemrand.denizencore.scripts.ScriptEntry;
import org.bukkit.Color;
import org.bukkit.entity.Entity;
import org.bukkit.inventory.ItemStack;
Expand Down Expand Up @@ -72,11 +75,11 @@ public static List<Entity> convertEntities(List<dEntity> entities) {
* @return The dInventory retrieved by parsing the argument
*/

public static dInventory getInventory(Argument arg, dPlayer player, dNPC npc) {
public static dInventory getInventory(Argument arg, ScriptEntry scriptEntry) {
String string = arg.getValue();

if (dInventory.matches(string)) {
return dInventory.valueOf(string, player, npc);
return dInventory.valueOf(string, ((BukkitScriptEntryData) scriptEntry.getData()).getTagContext());
}
else if (arg.matchesArgumentList(dItem.class)) {
List<dItem> list = dList.valueOf(string).filter(dItem.class);
Expand Down

0 comments on commit 668b05c

Please sign in to comment.