Skip to content

Commit

Permalink
Add in_area to player drags in inventory
Browse files Browse the repository at this point in the history
  • Loading branch information
mcmonkey4eva committed Jul 28, 2015
1 parent d57c12b commit ad635e1
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 11 deletions.
Expand Up @@ -12,12 +12,16 @@
public abstract class BukkitScriptEvent extends ScriptEvent {

public boolean runInCheck(ScriptContainer scriptContainer, String s, String lower, Location location) {
return runInCheck(scriptContainer, s, lower, location, "in");
}

public boolean runInCheck(ScriptContainer scriptContainer, String s, String lower, Location location, String innote) {
List<String> data = CoreUtilities.split(lower, ' ');

int index;

for (index = 0; index < data.size(); index++) {
if (data.get(index).equals("in")) {
if (data.get(index).equals(innote)) {
break;
}
}
Expand Down
Expand Up @@ -24,8 +24,8 @@ public class PlayerDragsInInvScriptEvent extends BukkitScriptEvent implements Li

// <--[event]
// @Events
// player drags in inventory
// player drags (<item>) (in <inventory type>)
// player drags in inventory (in_area <area>)
// player drags (<item>) (in <inventory type>) (in_area <area>)
//
// @Triggers when a player drags in an inventory.
//
Expand Down Expand Up @@ -73,14 +73,12 @@ public boolean matches(ScriptContainer scriptContainer, String s) {
if (!arg2.equals("in") && !tryItem(item, arg2)) {
return false;
}
return true;
// TODO: add this back when mcmonkey fixed runInCheck
// return runInCheck(scriptContainer, s, lower, dInv.getLocation());
return runInCheck(scriptContainer, s, lower, entity.getLocation(), "in_area");
}

@Override
public String getName() {
return "PlayerDragsInInv";
return "PlayerDragsInInventory";
}

@Override
Expand All @@ -103,7 +101,6 @@ public boolean applyDetermination(ScriptContainer container, String determinatio

@Override
public ScriptEntryData getScriptEntryData() {
// TODO: Store the player / npc?
return new BukkitScriptEntryData(entity, null);
}

Expand All @@ -124,9 +121,12 @@ else if (name.equals("item")) {
return super.getContext(name);
}

@EventHandler
@EventHandler(ignoreCancelled = true)
public void onPlayerDragsInInv(InventoryDragEvent event) {
entity = dEntity.getPlayerFrom((Player) event.getWhoClicked());
if (dEntity.isCitizensNPC(event.getWhoClicked())) {
return;
}
entity = dEntity.getPlayerFrom(event.getWhoClicked());
inventory = event.getInventory();
dInv = dInventory.mirrorBukkitInventory(inventory);
item = new dItem(event.getOldCursor());
Expand All @@ -148,8 +148,9 @@ public void onPlayerDragsInInv(InventoryDragEvent event) {
@Override
public void run() {
entity.getPlayerEntity().updateInventory();
if (holder != null && holder instanceof Player)
if (holder != null && holder instanceof Player) {
((Player) holder).updateInventory();
}
}
}.runTaskLater(DenizenAPI.getCurrentInstance(), 1);
}
Expand Down

0 comments on commit ad635e1

Please sign in to comment.