pull/17/head
jakub 1 year ago
parent 886a17621e
commit db73025bfb
  1. 71
      src/main/java/xyz/soukup/mineconomiaCoreV2/commands/admin.java
  2. 21
      src/main/java/xyz/soukup/mineconomiaCoreV2/commands/money.java
  3. 8
      src/main/java/xyz/soukup/mineconomiaCoreV2/variables/Transaction.java
  4. 4
      src/main/resources/lang/czech.yml
  5. 12
      src/main/resources/plugin.yml

@ -1,5 +1,6 @@
package xyz.soukup.mineconomiaCoreV2.commands; package xyz.soukup.mineconomiaCoreV2.commands;
import org.bukkit.Bukkit;
import org.bukkit.Material; import org.bukkit.Material;
import org.bukkit.command.Command; import org.bukkit.command.Command;
import org.bukkit.command.CommandSender; import org.bukkit.command.CommandSender;
@ -12,8 +13,10 @@ import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable; import org.jetbrains.annotations.Nullable;
import xyz.soukup.mineconomiaCoreV2.tools.LangManager; import xyz.soukup.mineconomiaCoreV2.tools.LangManager;
import xyz.soukup.mineconomiaCoreV2.tools.PDC; import xyz.soukup.mineconomiaCoreV2.tools.PDC;
import xyz.soukup.mineconomiaCoreV2.variables.Transaction;
import java.io.IOException; import java.io.IOException;
import java.sql.SQLException;
import java.util.List; import java.util.List;
import static xyz.soukup.mineconomiaCoreV2.core.sharedValues.config; import static xyz.soukup.mineconomiaCoreV2.core.sharedValues.config;
@ -22,27 +25,68 @@ public class admin implements TabExecutor {
@Override @Override
public boolean onCommand(@NotNull CommandSender commandSender, @NotNull Command command, @NotNull String s, @NotNull String[] strings) { public boolean onCommand(@NotNull CommandSender commandSender, @NotNull Command command, @NotNull String s, @NotNull String[] strings) {
if (commandSender instanceof Player) {
Player player = (Player) commandSender;
if (!player.isOp() || strings.length == 0) { if (!commandSender.isOp()) {
LangManager.message(commandSender, "error.command.no-permissions");
return false;
}
if (strings.length == 0){
LangManager.message(commandSender, "error.command.not-enough-arguments");
}
LangManager.message(commandSender, "error.command.admin.setruleritem.no-permissions"); switch (strings[0].toLowerCase()){
case "setruleritem":
setRulerItem(commandSender);
return true; return true;
case "givemoney":
try {
giveMoney(commandSender, strings);
} catch (SQLException e) {
throw new RuntimeException(e);
}
return true;
}
return false;
}
@Override
public @Nullable List<String> onTabComplete(@NotNull CommandSender commandSender, @NotNull Command command, @NotNull String s, @NotNull String[] strings) {
if (strings.length == 1 && commandSender.isOp()) {
return List.of("setRulerItem", "giveMoney");
}
return List.of();
}
private void giveMoney(CommandSender commandSender, String[] strings) throws SQLException {
if (strings.length < 3){
LangManager.message(commandSender, "error.command.not-enough-arguments");
return;
} }
if (strings[0].equalsIgnoreCase("setRulerItem")) { Float amount = Float.valueOf(strings[2]);
Transaction.prepareTransaction("server", "server", strings[1], "player", amount, "admin").process();
LangManager.message(commandSender, "success.command.admin.give-money");
}
private void setRulerItem(CommandSender commandSender){
Player player = (Player) commandSender;
ItemStack playerHand = player.getInventory().getItemInMainHand(); ItemStack playerHand = player.getInventory().getItemInMainHand();
if (playerHand.getType() == Material.AIR) { if (playerHand.getType() == Material.AIR) {
LangManager.message(commandSender, "error.command.admin.setruleritem.invalid-item"); LangManager.message(commandSender, "error.command.admin.setruleritem.invalid-item");
return true; return;
} }
ItemMeta meta = playerHand.getItemMeta(); ItemMeta meta = playerHand.getItemMeta();
assert meta != null;
PDC.WriteItemMetaPDC(meta, "ruler", PersistentDataType.INTEGER, 1); PDC.WriteItemMetaPDC(meta, "ruler", PersistentDataType.INTEGER, 1);
playerHand.setItemMeta(meta); playerHand.setItemMeta(meta);
@ -55,19 +99,6 @@ public class admin implements TabExecutor {
} }
LangManager.message(commandSender, "success.command.admin.setruleritem"); LangManager.message(commandSender, "success.command.admin.setruleritem");
return true;
}
}
return false;
}
@Override
public @Nullable List<String> onTabComplete(@NotNull CommandSender commandSender, @NotNull Command command, @NotNull String s, @NotNull String[] strings) {
if (strings.length == 1 && commandSender.isOp()) {
return List.of("setRulerItem");
}
return List.of();
} }
} }

@ -0,0 +1,21 @@
package xyz.soukup.mineconomiaCoreV2.commands;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.command.TabExecutor;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import java.util.List;
public class money implements TabExecutor {
@Override
public boolean onCommand(@NotNull CommandSender commandSender, @NotNull Command command, @NotNull String s, @NotNull String[] strings) {
return false;
}
@Override
public @Nullable List<String> onTabComplete(@NotNull CommandSender commandSender, @NotNull Command command, @NotNull String s, @NotNull String[] strings) {
return List.of();
}
}

@ -224,5 +224,13 @@ public class Transaction {
return transaction; return transaction;
} }
public static Transaction prepareTransaction(Player senderPlayer, Player receiverPlayer, Float amount){
String sender = senderPlayer.getDisplayName();
String receiver = receiverPlayer.getDisplayName();
return prepareTransaction(sender, "player", receiver, "player", amount, "playertoplayer");
}
} }

@ -5,6 +5,8 @@ error:
wrong-argument-count: "&cNesprávný počet parametrů!" wrong-argument-count: "&cNesprávný počet parametrů!"
no-permissions: "&cNemáš oprávnění!" no-permissions: "&cNemáš oprávnění!"
invalid-player: "&cTento hráč neexistuje!" invalid-player: "&cTento hráč neexistuje!"
invalid-arguments: "&cChybně zadané parametry!"
not-enough-arguments: "&cNedostatek parametrů!"
tpw: tpw:
invalid-world: "&cTento svět neexistuje!" invalid-world: "&cTento svět neexistuje!"
already-in-world-self: "&cJiž jsi v tomto světě" already-in-world-self: "&cJiž jsi v tomto světě"
@ -12,7 +14,7 @@ error:
admin: admin:
setruleritem: setruleritem:
invalid-item: "&cNedržíš nic v ruce!" invalid-item: "&cNedržíš nic v ruce!"
no-permissions: "&cNemáš oprávnění!"
success: success:
command: command:
tpw: tpw:

@ -5,9 +5,17 @@ api-version: '1.21'
commands: commands:
tpw: tpw:
description: "Teleportuje tě do jiného světa" description: "Teleportuje tě do jiného světa"
usage: /<command> [arguments] usage: /tpw <world> [player]
tractor: tractor:
description: "blieat" description: "blieat"
admin: admin:
description: "Utility command pro adminy" description: "Utility command pro adminy"
usage: /<command> [arguments] usage: /admin <util>
money:
description: "check current money balance"
usage: /money [player]
aliases: [penize, peníze, balance]
pay:
description: "let go of your money :D"
usage: /pay <player name/group> [group name] <amount>
aliases: [zaplatit, platit]

Loading…
Cancel
Save