|
@@ -222,11 +222,7 @@ public class MinecraftFunctions
|
|
|
((EntityPlayer) in[0].get(sc)).inventory.clear();
|
|
|
return Void.TYPE;
|
|
|
});
|
|
|
- parser.registerFunction("player.inventorytolist", (sc, in) ->
|
|
|
- {
|
|
|
- in[0].set(sc, ((EntityPlayer) in[1].get(sc)).inventory.mainInventory);
|
|
|
- return Void.TYPE;
|
|
|
- });
|
|
|
+ parser.registerFunction("player.inventorytolist", (sc, in) -> ((EntityPlayer) in[1].get(sc)).inventory.mainInventory);
|
|
|
parser.registerFunction("player.getnearest", (sc, in) ->
|
|
|
{
|
|
|
Location l = (Location) in[0].get(sc);
|
|
@@ -473,21 +469,12 @@ public class MinecraftFunctions
|
|
|
// Players-library
|
|
|
// ---------------------------------------------------------------------
|
|
|
parser.registerFunction("players.getamount", (sc, in) -> (double) KajetansMod.server.getCurrentPlayerCount());
|
|
|
- parser.registerFunction("players.tolist", (sc, in) ->
|
|
|
- {
|
|
|
- in[0].set(sc, new ArrayList(KajetansMod.server.getPlayerList().getPlayers()));
|
|
|
- return Void.TYPE;
|
|
|
- });
|
|
|
- parser.registerFunction("players.toworldlist", (sc, in) ->
|
|
|
- {
|
|
|
- in[0].set(sc, new ArrayList(((World) in[1].get(sc)).playerEntities));
|
|
|
- return Void.TYPE;
|
|
|
- });
|
|
|
+ parser.registerFunction("players.tolist", (sc, in) -> new ArrayList(KajetansMod.server.getPlayerList().getPlayers()));
|
|
|
+ parser.registerFunction("players.toworldlist", (sc, in) -> new ArrayList(((World) in[0].get(sc)).playerEntities));
|
|
|
parser.registerFunction("players.near", (sc, in) ->
|
|
|
{
|
|
|
Location l = (Location) in[1].get(sc);
|
|
|
- in[0].set(sc, Utils.getPlayers(l.getWorld(), l.getX(), l.getY(), l.getZ(), in[2].getDouble(sc)));
|
|
|
- return Void.TYPE;
|
|
|
+ return Utils.getPlayers(l.getWorld(), l.getX(), l.getY(), l.getZ(), in[2].getDouble(sc));
|
|
|
});
|
|
|
|
|
|
// ---------------------------------------------------------------------
|
|
@@ -703,8 +690,7 @@ public class MinecraftFunctions
|
|
|
});
|
|
|
parser.registerFunction("item.getlore", (sc, in) ->
|
|
|
{
|
|
|
- in[0].set(sc, ItemStackUtils.getLore((ItemStack) in[1].get(sc)));
|
|
|
- return Void.TYPE;
|
|
|
+ return ItemStackUtils.getLore((ItemStack) in[1].get(sc));
|
|
|
});
|
|
|
parser.registerFunction("item.setlore", (sc, in) ->
|
|
|
{
|
|
@@ -772,6 +758,7 @@ public class MinecraftFunctions
|
|
|
}
|
|
|
return Void.TYPE;
|
|
|
});
|
|
|
+ parser.registerFunction("item.clone", (sc, in) -> ((ItemStack) in[0].get(sc)).copy());
|
|
|
|
|
|
// ---------------------------------------------------------------------
|
|
|
// Location-library
|
|
@@ -1750,7 +1737,6 @@ public class MinecraftFunctions
|
|
|
parser.registerFunction("databank.workerexecute", (sc, in) ->
|
|
|
{
|
|
|
final PreparedStatement p = (PreparedStatement) in[0].get(sc);
|
|
|
- final String name = sc.getName();
|
|
|
KajetansMod.scheduler.getWorker().add(() ->
|
|
|
{
|
|
|
try
|
|
@@ -1761,8 +1747,7 @@ public class MinecraftFunctions
|
|
|
{
|
|
|
KajetansMod.scheduler.scheduleTask(() ->
|
|
|
{
|
|
|
- ChatChannel.getDevChannel().sendWarning("Worker error in script '" + name + "'");
|
|
|
- ChatChannel.getDevChannel().sendWarning(ex.getLocalizedMessage());
|
|
|
+ sc.getLogger().print("Worker error", ex, null, sc.getName(), sc, -1);
|
|
|
});
|
|
|
}
|
|
|
sc.removeCloseable(p);
|
|
@@ -1774,8 +1759,7 @@ public class MinecraftFunctions
|
|
|
{
|
|
|
KajetansMod.scheduler.scheduleTask(() ->
|
|
|
{
|
|
|
- ChatChannel.getDevChannel().sendWarning("Worker error in script '" + name + "'");
|
|
|
- ChatChannel.getDevChannel().sendWarning(ex.getLocalizedMessage());
|
|
|
+ sc.getLogger().print("Worker error", ex, null, sc.getName(), sc, -1);
|
|
|
});
|
|
|
}
|
|
|
});
|
|
@@ -1818,11 +1802,7 @@ public class MinecraftFunctions
|
|
|
// ---------------------------------------------------------------------
|
|
|
// Script-library
|
|
|
// ---------------------------------------------------------------------
|
|
|
- parser.registerFunction("script.playerstolist", (sc, in) ->
|
|
|
- {
|
|
|
- in[0].set(sc, new ArrayList<>(KajetansMod.scripts.getPlayerList(sc.getId())));
|
|
|
- return Void.TYPE;
|
|
|
- });
|
|
|
+ parser.registerFunction("script.playerstolist", (sc, in) -> new ArrayList<>(KajetansMod.scripts.getPlayerList(sc.getId())));
|
|
|
parser.registerFunction("script.getplayeramount", (sc, in) -> (double) KajetansMod.scripts.getPlayerList(sc.getId()).size());
|
|
|
parser.registerFunction("script.start", (sc, in) ->
|
|
|
{
|
|
@@ -1840,12 +1820,11 @@ public class MinecraftFunctions
|
|
|
names[0] = o.toString();
|
|
|
for(int i = 1; i < in.length; i++)
|
|
|
{
|
|
|
- names[i - 1] = in[i].getString(sc);
|
|
|
+ names[i] = in[i].getString(sc);
|
|
|
}
|
|
|
KajetansMod.scripts.startScript(names);
|
|
|
return true;
|
|
|
});
|
|
|
- parser.registerFunction("script.get", (sc, in) -> KajetansMod.scripts.getScript(in[0].getString(sc)));
|
|
|
parser.registerFunction("script.join", (sc, in) -> KajetansMod.scripts.registerPlayer((Script) in[0].get(sc), (EntityPlayer) in[1].get(sc)));
|
|
|
parser.registerFunction("script.kick", (sc, in) -> KajetansMod.scripts.unregisterPlayer(sc, (EntityPlayer) in[0].get(sc)));
|
|
|
parser.registerFunction("script.getleader", (sc, in) ->
|
|
@@ -1984,23 +1963,12 @@ public class MinecraftFunctions
|
|
|
// ---------------------------------------------------------------------
|
|
|
// Inventory-library
|
|
|
// ---------------------------------------------------------------------
|
|
|
- parser.registerFunction("inv.new", (sc, in) ->
|
|
|
- {
|
|
|
- in[0].set(sc, new SnuviInventory(in[2].getString(sc), in[1].getInt(sc), inventoryIds++));
|
|
|
- return Void.TYPE;
|
|
|
- });
|
|
|
- parser.registerFunction("inv.newdynamic", (sc, in) ->
|
|
|
- {
|
|
|
- in[0].set(sc, new SnuviInventory(in[2].getString(sc), in[1].getString(sc), inventoryIds++));
|
|
|
- return Void.TYPE;
|
|
|
- });
|
|
|
- parser.registerFunction("inv.getid", (sc, in) ->
|
|
|
- {
|
|
|
- return (double) ((SnuviInventory) in[0].get(sc)).getId();
|
|
|
- });
|
|
|
+ parser.registerFunction("inv.new", (sc, in) -> new SnuviInventory(in[1].getString(sc), in[0].getString(sc), inventoryIds++));
|
|
|
+ parser.registerAlias("inv.new", "inv.newdynamic");
|
|
|
+ parser.registerFunction("inv.getid", (sc, in) -> (double) ((SnuviInventory) in[0].get(sc)).getId());
|
|
|
parser.registerFunction("inv.loadblock", (sc, in) ->
|
|
|
{
|
|
|
- Location l = (Location) in[1].get(sc);
|
|
|
+ Location l = (Location) in[0].get(sc);
|
|
|
TileEntityChest chest = (TileEntityChest) l.getWorld().getTileEntity(l.getBlockPos());
|
|
|
int size = chest.getSizeInventory();
|
|
|
if(size % 9 != 0)
|
|
@@ -2009,13 +1977,12 @@ public class MinecraftFunctions
|
|
|
size++;
|
|
|
size *= 9;
|
|
|
}
|
|
|
- SnuviInventory inv = new SnuviInventory(in[2].getString(sc), size, inventoryIds++);
|
|
|
+ SnuviInventory inv = new SnuviInventory(in[1].getString(sc), size, inventoryIds++);
|
|
|
for(int i = 0; i < chest.getSizeInventory(); i++)
|
|
|
{
|
|
|
inv.setInventorySlotContents(i, chest.getStackInSlot(i).copy());
|
|
|
}
|
|
|
- in[0].set(sc, inv);
|
|
|
- return Void.TYPE;
|
|
|
+ return inv;
|
|
|
});
|
|
|
parser.registerFunction("inv.setitem", (sc, in) ->
|
|
|
{
|
|
@@ -2279,18 +2246,6 @@ public class MinecraftFunctions
|
|
|
return Void.TYPE;
|
|
|
});
|
|
|
parser.registerFunction("removeformat", (sc, in) -> SnuviUtils.connect(sc, in, 0).replaceAll("§.", ""));
|
|
|
- parser.registerFunction("concatspace", (sc, in) -> SnuviUtils.connect(sc, in, " ", 0));
|
|
|
- parser.registerFunction("onlyletters", (sc, in) ->
|
|
|
- {
|
|
|
- for(char c : SnuviUtils.connect(sc, in, 0).toCharArray())
|
|
|
- {
|
|
|
- if(!Character.isLetter(c))
|
|
|
- {
|
|
|
- return false;
|
|
|
- }
|
|
|
- }
|
|
|
- return true;
|
|
|
- });
|
|
|
parser.registerFunction("command", (sc, in) ->
|
|
|
{
|
|
|
final String s = SnuviUtils.connect(sc, in, 0);
|
|
@@ -2339,7 +2294,7 @@ public class MinecraftFunctions
|
|
|
{
|
|
|
if(group instanceof String)
|
|
|
{
|
|
|
- switch(group.toString())
|
|
|
+ switch(group.toString().toLowerCase())
|
|
|
{
|
|
|
case "all":
|
|
|
PlayerList list = KajetansMod.server.getPlayerList();
|