diff --git a/.github/ISSUE_TEMPLATE/bug.yml b/.github/ISSUE_TEMPLATE/bug.yml new file mode 100644 index 00000000..8bfc3fbc --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug.yml @@ -0,0 +1,41 @@ +name: I found a bug! +description: "Report some other kind of issue. You should ask in the Discord first to make sure it's actually a bug with Numismatics." +labels: [ "type: bug" ] +body: + - type: textarea + attributes: + label: Description + description: " + Please describe the issue with as much detail as possible. + Explain what happened, and what should have happened instead. + Add images, screenshots, or videos if they could be useful." + validations: + required: true + + - type: input + attributes: + label: Game Log + description: " + We need the game log for additional information about the bug. + This file can be found in the \"logs\" folder of your Minecraft folder as \"latest.log\". + Please upload the file to https://mclo.gs/ and put the link here. + Do **not** paste the *contents* of the file here, because that will make this issue very hard to read. + " + validations: + required: true + + - type: textarea + attributes: + label: Debug Information + description: " + Please run the \"/create debuginfo\" command in-game. + This will copy useful information to your clipboard that will greatly help with debugging. + Please paste this information here. + If this command does not exist, you can skip this part. + " + validations: + required: false + + - type: markdown + attributes: + value: "Thank you for taking the time to make a report and help improve Numismatics!" \ No newline at end of file diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml deleted file mode 100644 index aa8479e8..00000000 --- a/.github/ISSUE_TEMPLATE/bug_report.yml +++ /dev/null @@ -1,97 +0,0 @@ -name: Bug Report -description: Create a bug report to help us improve Numismatics -labels: [ "type: bug" ] -body: - - type: textarea - attributes: - label: Describe the Bug - description: A clear and concise description of what the bug is - validations: - required: true - - type: textarea - attributes: - label: Reproduction Steps - description: Tell us about the steps to reproduce the bug. - value: | - 1. - 2. - 3. - ... - validations: - required: true - - type: textarea - attributes: - label: Expected Result - description: A clear and concise description of what you expected to happen - validations: - required: true - - type: textarea - attributes: - label: Screenshots and Videos - description: If applicable, add screenshots or videos to help explain your problem. - validations: - required: false - - type: input - attributes: - label: Crash Report or Log - description: If applicable, please add a **link** to the crash report or log that was created when this issue occurred. You can upload the crash report to a site like [mclogs](https://mclo.gs) or [Pastebin](https://pastebin.com). Please **do not** paste the whole crash report in this issue. - validations: - required: false - - type: input - attributes: - label: Operating System - description: The operating system you were using when the bug occurred - placeholder: Windows 11 - validations: - required: true - - type: dropdown - attributes: - label: Mod Version - description: The version of the mod you were using when the bug occurred - options: - - "1.0.6" - - "1.0.5" - - "1.0.4" - - "1.0.2" - - "1.0.1" - - "1.0.0" - validations: - required: true - - type: dropdown - attributes: - label: Create Mod Version - description: The version of **Create Mod** you were using when the bug occurred - options: - - "0.5.1f" - validations: - required: true - - type: dropdown - attributes: - label: Minecraft Version - description: The version of Minecraft you were using when the bug occurred - options: - - "1.20.1" - validations: - required: true - - type: input - attributes: - label: ModLoader and Version - description: The **modloader** and **version** of the modloader using when the bug occurred - placeholder: Fabric/Forge x.x.x - validations: - required: true - - type: textarea - attributes: - label: Other Mods - description: Please list any other mods that were running when the crash happened. - validations: - required: false - - type: textarea - attributes: - label: Additional Context - description: Add any extra context about the bug here - validations: - required: false - - type: markdown - attributes: - value: "Thank you for taking the time to make this bug report and helping improve Numismatics!" \ No newline at end of file diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 00000000..8d0b844b --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1,11 @@ +blank_issues_enabled: true +contact_links: + - name: I have a question! + url: https://discord.gg/create-steam-n-rails-706277846389227612 + about: Join us on Discord and ask the community. + - name: I have a suggestion or idea! + url: https://discord.gg/create-steam-n-rails-706277846389227612 + about: These are best discussed with the community and submitted on Discord. + - name: Talk to us on Discord. + url: https://discord.gg/create-steam-n-rails-706277846389227612 + about: Ask questions and get help from the community. diff --git a/.github/ISSUE_TEMPLATE/crash.yml b/.github/ISSUE_TEMPLATE/crash.yml new file mode 100644 index 00000000..a830202e --- /dev/null +++ b/.github/ISSUE_TEMPLATE/crash.yml @@ -0,0 +1,27 @@ +name: My game crashed! +description: Report an issue that crashes the game. +labels: [ "type: crash" ] +body: + - type: textarea + attributes: + label: Context + description: What were you doing when the game crashed? Add images, screenshots, or videos if they could be useful. + validations: + required: true + + - type: input + attributes: + label: Crash Report + description: " + We need the crash report to figure out why the crash happened. + This file can be found in the \"crash-reports\" folder of your Minecraft folder. + It will be the newest file there. + Please upload the file to https://mclo.gs/ and put the link here. + Do **not** paste the *contents* of the file here, because that will make this issue very hard to read. + " + validations: + required: true + + - type: markdown + attributes: + value: "Thank you for taking the time to make a report and help improve Numismatics!" \ No newline at end of file diff --git a/.github/ISSUE_TEMPLATE/suggestion.yml b/.github/ISSUE_TEMPLATE/suggestion.yml deleted file mode 100644 index dc2a78be..00000000 --- a/.github/ISSUE_TEMPLATE/suggestion.yml +++ /dev/null @@ -1,25 +0,0 @@ -name: Suggestion -description: Suggest something that would improve Numismatics -labels: [ "type: suggestion" ] -body: - - type: textarea - attributes: - label: Describe the Suggestion - description: What should we add or change to make Numismatics better? - validations: - required: true - - type: textarea - attributes: - label: Screenshots and Videos - description: If applicable, add screenshots or videos to help explain your suggestion. - validations: - required: false - - type: textarea - attributes: - label: Additional Context - description: Add any extra context about the suggestion here. - validations: - required: false - - type: markdown - attributes: - value: "Thank you for taking the time to make this suggestion and helping improve Numismatics!" \ No newline at end of file diff --git a/common/src/main/java/dev/ithundxr/createnumismatics/compat/computercraft/implementation/peripherals/BankTerminalPeripheral.java b/common/src/main/java/dev/ithundxr/createnumismatics/compat/computercraft/implementation/peripherals/BankTerminalPeripheral.java index 8cb0bece..0c81e760 100644 --- a/common/src/main/java/dev/ithundxr/createnumismatics/compat/computercraft/implementation/peripherals/BankTerminalPeripheral.java +++ b/common/src/main/java/dev/ithundxr/createnumismatics/compat/computercraft/implementation/peripherals/BankTerminalPeripheral.java @@ -24,6 +24,7 @@ import dan200.computercraft.api.peripheral.IComputerAccess; import dan200.computercraft.api.peripheral.IPeripheral; import dev.ithundxr.createnumismatics.Numismatics; +import dev.ithundxr.createnumismatics.config.NumismaticsConfig; import dev.ithundxr.createnumismatics.content.backend.BankAccount; import dev.ithundxr.createnumismatics.content.backend.IDeductable; import dev.ithundxr.createnumismatics.content.backend.ReasonHolder; @@ -32,12 +33,55 @@ import net.minecraft.network.chat.Component; import org.jetbrains.annotations.Nullable; -import java.util.UUID; +import java.util.*; public enum BankTerminalPeripheral implements IPeripheral { INSTANCE ; + @LuaFunction + public final List getAccounts() throws LuaException { + List output = new ArrayList(); + for (UUID uuid : Numismatics.BANK.accounts.keySet()) { + output.add(uuid.toString()); + } + return output; + } + + @LuaFunction + public final String getAccountLabel(String accountID) throws LuaException { + UUID account$; + try { + account$ = UUID.fromString(accountID); + } catch (IllegalArgumentException e) { + throw new LuaException("Invalid UUID"); + } + + BankAccount bankAccount = Numismatics.BANK.getAccount(account$); + if (bankAccount == null) { + throw new LuaException("Account not found"); + } + + return bankAccount.getDisplayName().getString(); + } + + @LuaFunction + public final boolean isPlayerOwned(String accountID) throws LuaException { + UUID account$; + try { + account$ = UUID.fromString(accountID); + } catch (IllegalArgumentException e) { + throw new LuaException("Invalid UUID"); + } + + BankAccount bankAccount = Numismatics.BANK.getAccount(account$); + if (bankAccount == null) { + throw new LuaException("Account not found"); + } + + return (bankAccount.type == BankAccount.Type.PLAYER); + } + @LuaFunction public final int getBalance(String accountID) throws LuaException { UUID account$; @@ -55,6 +99,64 @@ public final int getBalance(String accountID) throws LuaException { return bankAccount.getBalance(); } + @LuaFunction + public final List getSubAccounts(String accountID) throws LuaException { + if (NumismaticsConfig.server().getSubAccountsCommand.get()) { + UUID account$; + try { + account$ = UUID.fromString(accountID); + } catch (IllegalArgumentException e) { + throw new LuaException("Invalid UUID"); + } + + BankAccount bankAccount = Numismatics.BANK.getAccount(account$); + if (bankAccount == null) { + throw new LuaException("Account not found"); + } + + List output = new ArrayList(); + bankAccount.getSubAccounts().forEach((temp) -> { + output.add(temp.getAuthorizationID().toString()); + }); + + if (output.isEmpty()) { + throw new LuaException("No sub accounts"); + } + return output; + } else { + throw new LuaException("Function disabled by config"); + } + } + + @LuaFunction + public final String getSubAccountLabel(String accountID, String authorizationID) throws LuaException { + UUID account$, authorization$; + try { + account$ = UUID.fromString(accountID); + authorization$ = UUID.fromString(authorizationID); + } catch (IllegalArgumentException e) { + throw new LuaException("Invalid UUID"); + } + + Authorization authorization = new Authorization.Anonymous(authorization$); + + BankAccount bankAccount = Numismatics.BANK.getAccount(account$); + if (bankAccount == null) { + throw new LuaException("Account not found"); + } + + ReasonHolder reasonHolder = new ReasonHolder(); + SubAccount subAccount = bankAccount.getSubAccount(authorization, reasonHolder); + + if (subAccount == null) { + Component errorMessage = reasonHolder.getMessageOrDefault(Components.translatable("error.numismatics.authorized_card.account_not_found")); + throw new LuaException(errorMessage.getString()); + } + + + return subAccount.getLabel(); + } + @LuaFunction public final int getMaxAvailableWithdrawal(String accountID, String authorizationID) throws LuaException { UUID account$, authorization$; diff --git a/common/src/main/java/dev/ithundxr/createnumismatics/config/CServer.java b/common/src/main/java/dev/ithundxr/createnumismatics/config/CServer.java index da6fb2c5..67ad2b4c 100644 --- a/common/src/main/java/dev/ithundxr/createnumismatics/config/CServer.java +++ b/common/src/main/java/dev/ithundxr/createnumismatics/config/CServer.java @@ -33,6 +33,10 @@ public class CServer extends ConfigBase { public final ConfigInt starterCogs = i(0, 0, "starter_cogs"); public final ConfigInt starterCrowns = i(0, 0, "starter_crowns"); public final ConfigInt starterSuns = i(0, 0, "starter_suns"); + + public final ConfigGroup computerCraft = group(0, "computerCraft", Comments.computerCraft); + + public final ConfigBool getSubAccountsCommand = b(false, "get_sub_accounts_command", Comments.getSubAccountsCommand); //public final ConfigGroup misc = group(0, "misc", Comments.misc); @@ -46,9 +50,13 @@ public String getName() { private static class Comments { static final String coins = "Coin settings"; - + static final String starterCurrency = "How much of this coin type should players receive in their bank account on first join";; - + + static final String computerCraft = "Settings relating to ComputerCraft compatibility"; + + static final String getSubAccountsCommand = "Enables the getSubAccounts function. Disabled by default due to security concerns."; + static final String misc = "Miscellaneous settings"; } } \ No newline at end of file diff --git a/common/src/main/resources/assets/numismatics/lang/de_at.json b/common/src/main/resources/assets/numismatics/lang/de_at.json index 18044d2a..d5b380a4 100644 --- a/common/src/main/resources/assets/numismatics/lang/de_at.json +++ b/common/src/main/resources/assets/numismatics/lang/de_at.json @@ -41,7 +41,6 @@ "gui.numismatics.vendor.generic_named": "Kontakt %s", "gui.numismatics.vendor.incorrect_item": "Falscher Gegenstand", "gui.numismatics.vendor.insufficient_funds": "Unzureichendes Guthaben", - "gui.numismatics.vendor.insufficient_funds.named": "Unzureichenden Kontostand, kontaktiere %s für eine Nachfüllung", "gui.numismatics.vendor.mode.buy": "Kaufen", "gui.numismatics.vendor.mode.buy.action": "Zum Kauf verwenden", "gui.numismatics.vendor.mode.sell": "Verkaufen", diff --git a/common/src/main/resources/assets/numismatics/lang/de_de.json b/common/src/main/resources/assets/numismatics/lang/de_de.json index 18044d2a..d5b380a4 100644 --- a/common/src/main/resources/assets/numismatics/lang/de_de.json +++ b/common/src/main/resources/assets/numismatics/lang/de_de.json @@ -41,7 +41,6 @@ "gui.numismatics.vendor.generic_named": "Kontakt %s", "gui.numismatics.vendor.incorrect_item": "Falscher Gegenstand", "gui.numismatics.vendor.insufficient_funds": "Unzureichendes Guthaben", - "gui.numismatics.vendor.insufficient_funds.named": "Unzureichenden Kontostand, kontaktiere %s für eine Nachfüllung", "gui.numismatics.vendor.mode.buy": "Kaufen", "gui.numismatics.vendor.mode.buy.action": "Zum Kauf verwenden", "gui.numismatics.vendor.mode.sell": "Verkaufen", diff --git a/common/src/main/resources/assets/numismatics/lang/fr_fr.json b/common/src/main/resources/assets/numismatics/lang/fr_fr.json index 733039be..9f5da682 100644 --- a/common/src/main/resources/assets/numismatics/lang/fr_fr.json +++ b/common/src/main/resources/assets/numismatics/lang/fr_fr.json @@ -41,7 +41,6 @@ "gui.numismatics.vendor.generic_named": "Contacter %s", "gui.numismatics.vendor.incorrect_item": "Item incorrect", "gui.numismatics.vendor.insufficient_funds": "Fonds insuffisants", - "gui.numismatics.vendor.insufficient_funds.named": "Fonds insuffisants, contactez %s pour un réapprovisionnement", "gui.numismatics.vendor.mode.buy": "Acheter", "gui.numismatics.vendor.mode.buy.action": "Utiliser pour acheter", "gui.numismatics.vendor.mode.sell": "Vendre", diff --git a/common/src/main/resources/assets/numismatics/lang/ja_jp.json b/common/src/main/resources/assets/numismatics/lang/ja_jp.json index 9b2fa111..f2f616ec 100644 --- a/common/src/main/resources/assets/numismatics/lang/ja_jp.json +++ b/common/src/main/resources/assets/numismatics/lang/ja_jp.json @@ -41,7 +41,6 @@ "gui.numismatics.vendor.generic_named": "%sに連絡してください", "gui.numismatics.vendor.incorrect_item": "アイテムが違います", "gui.numismatics.vendor.insufficient_funds": "資金が足りません", - "gui.numismatics.vendor.insufficient_funds.named": "資金が足りません。%sに補充を依頼してください", "gui.numismatics.vendor.mode.buy": "購入", "gui.numismatics.vendor.mode.buy.action": "購入", "gui.numismatics.vendor.mode.sell": "売却", @@ -56,6 +55,7 @@ "item.numismatics.banking_guide.tooltip": "銀行員の手引き", "item.numismatics.banking_guide.tooltip.summary": "_ブレイズバーナー_に使用すると、_ブレイズバンカー_に変換します。", "item.numismatics.bevel": "ベベル", + "item.numismatics.bevel.plural": "ベベル", "item.numismatics.black_card": "黒色のカード", "item.numismatics.black_id_card": "黒色のIDカード", "item.numismatics.blue_card": "青色のカード", @@ -66,10 +66,12 @@ "item.numismatics.card.tooltip.bound": "結び付け", "item.numismatics.card.tooltip.bound.to": "結び付け:", "item.numismatics.cog": "コグ", + "item.numismatics.cog.plural": "コグ", "item.numismatics.coin.tooltip.count": "数量:%s%s", "item.numismatics.coin.tooltip.value": "価値:%s%s(%s¤)", "item.numismatics.coin.tooltip.value.basic": "価値:%s¤", "item.numismatics.crown": "クラウン", + "item.numismatics.crown.plural": "クラウン", "item.numismatics.cyan_card": "青緑色のカード", "item.numismatics.cyan_id_card": "青緑色のIDカード", "item.numismatics.gray_card": "灰色のカード", @@ -98,8 +100,11 @@ "item.numismatics.red_card": "赤色のカード", "item.numismatics.red_id_card": "赤色のIDカード", "item.numismatics.sprocket": "スプロケット", + "item.numismatics.sprocket.plural": "スプロケット", "item.numismatics.spur": "スプール", + "item.numismatics.spur.plural": "スプール", "item.numismatics.sun": "サン", + "item.numismatics.sun.plural": "サン", "item.numismatics.white_card": "白色のカード", "item.numismatics.white_id_card": "白色のIDカード", "item.numismatics.yellow_card": "黄色のカード", diff --git a/common/src/main/resources/assets/numismatics/lang/lol_us.json b/common/src/main/resources/assets/numismatics/lang/lol_us.json index d059e174..9e26dfee 100644 --- a/common/src/main/resources/assets/numismatics/lang/lol_us.json +++ b/common/src/main/resources/assets/numismatics/lang/lol_us.json @@ -1,31 +1 @@ -{ - "advancement.numismatics.is_this_legal": "Dis legal?", - "advancement.numismatics.is_this_legal.desc": "Buy monies for under what worth\n§7(Hidden Kitty Advancement)", - "advancement.numismatics.money_laundering": "Laundering da monies", - "advancement.numismatics.money_laundering.desc": "Purrchase monies in da vendor thingy\n§7(Hidden Kitty Advancement)", - "advancement.numismatics.questionable_investment": "Dis Investment look Questionabkle", - "advancement.numismatics.root.desc": "Da Richies Be Here", - "gui.numismatics.vendor.mode.buy": "Buyy", - "gui.numismatics.vendor.mode.buy.action": "Use dis to Buy", - "gui.numismatics.vendor.mode.sell": "Sell", - "gui.numismatics.vendor.mode.sell.action": "Use dis to Sell", - "gui.numismatics.vendor.no_item_in_hand": "Hold da stack of the da items you are want to sell", - "gui.numismatics.vendor.out_of_stock": "Dis out of the stock :(", - "gui.numismatics.vendor.out_of_stock.named": "Dis out of the stock, contact %s for da refill :(", - "item.numismatics.card.tooltip.blank": "Blank", - "item.numismatics.card.tooltip.bound": "Bound", - "item.numismatics.card.tooltip.bound.to": "Bound to: %s", - "item.numismatics.cog": "Cog", - "item.numismatics.coin.tooltip.count": "Count: %s %s", - "item.numismatics.coin.tooltip.value": "Valuz: %s %s (%s¤)", - "item.numismatics.coin.tooltip.value.basic": "Valuz: %s¤", - "item.numismatics.crown": "Crown", - "item.numismatics.id_card.tooltip.already_bound": "Dis already bound, Sneak like cat + Use to do da Unbind", - "item.numismatics.id_card.tooltip.bound": "Bound to me", - "item.numismatics.id_card.tooltip.cleared": "Cleared", - "item.numismatics.id_card.tooltip.summary": "_Right Click_ to bind to youz, _shift click_ to clearz. Can be placed in the _Trusted Kitties Menu_ of many Numismatics blockies to gibe the bound kitties accesz to that blockz.", - "item.numismatics.sprocket": "Sprocket", - "itemGroup.numismatics": "Create: Numismatics", - "numismatics.andesite_depositor.price": "Price", - "numismatics.trust_list.configure": "Configure list of trusted kitties" -} \ No newline at end of file +{} \ No newline at end of file diff --git a/common/src/main/resources/assets/numismatics/lang/nl_nl.json b/common/src/main/resources/assets/numismatics/lang/nl_nl.json index e8d3f307..ed822a16 100644 --- a/common/src/main/resources/assets/numismatics/lang/nl_nl.json +++ b/common/src/main/resources/assets/numismatics/lang/nl_nl.json @@ -24,7 +24,7 @@ "block.numismatics.creative_vendor": "Creatieve Winkel", "block.numismatics.creative_vendor.tooltip": "CREATIEVE WINKEL", "block.numismatics.creative_vendor.tooltip.summary": "_Creatieve_ versie van de winkel, zal nooit vullen of leeg raken.", - "block.numismatics.trusted_block.attempt_break": "Houd Shift ingedrukt om dit blok te breken", + "block.numismatics.trusted_block.attempt_break": "Houd %1$s om dit blok te breken", "block.numismatics.vendor": "Winkel", "block.numismatics.vendor.tooltip": "WINKEL", "block.numismatics.vendor.tooltip.mode": "Instelling", @@ -41,7 +41,6 @@ "gui.numismatics.vendor.generic_named": "Stuur een bericht naar %s", "gui.numismatics.vendor.incorrect_item": "Verkeerd voorwerp", "gui.numismatics.vendor.insufficient_funds": "Onvoldoende saldo", - "gui.numismatics.vendor.insufficient_funds.named": "Winkel heeft onvoldoende saldo, vraag %s voor een hervulling", "gui.numismatics.vendor.mode.buy": "Kopen", "gui.numismatics.vendor.mode.buy.action": "Gebruik om te Kopen", "gui.numismatics.vendor.mode.sell": "Verkopen", diff --git a/common/src/main/resources/assets/numismatics/lang/pl_pl.json b/common/src/main/resources/assets/numismatics/lang/pl_pl.json index 1062a50b..8720d08c 100644 --- a/common/src/main/resources/assets/numismatics/lang/pl_pl.json +++ b/common/src/main/resources/assets/numismatics/lang/pl_pl.json @@ -41,7 +41,6 @@ "gui.numismatics.vendor.generic_named": "Skontaktuj się z %s", "gui.numismatics.vendor.incorrect_item": "Niewłaściwy przedmiot", "gui.numismatics.vendor.insufficient_funds": "Niewystarczające środki", - "gui.numismatics.vendor.insufficient_funds.named": "Niewystarczające środki, skontaktuj się z %s aby go napełnić", "gui.numismatics.vendor.mode.buy": "Kup", "gui.numismatics.vendor.mode.buy.action": "Użyj, aby kupić", "gui.numismatics.vendor.mode.sell": "Sprzedaj", diff --git a/common/src/main/resources/assets/numismatics/lang/ru_ru.json b/common/src/main/resources/assets/numismatics/lang/ru_ru.json index e57087ea..3468c4d9 100644 --- a/common/src/main/resources/assets/numismatics/lang/ru_ru.json +++ b/common/src/main/resources/assets/numismatics/lang/ru_ru.json @@ -23,7 +23,7 @@ "block.numismatics.brass_depositor.tooltip.summary": "_ПКМ крадучись_ для настройки, _ПКМ_ для оплаты заданной цены картой в руке или монетками в инвентаре, после чего генерирует редстоун-импульс.", "block.numismatics.creative_vendor": "Творческий торговый автомат", "block.numismatics.creative_vendor.tooltip": "ТВОРЧЕСКИЙ ТОРГОВЫЙ АВТОМАТ", - "block.numismatics.creative_vendor.tooltip.summary": "_Творческая_ версия торгового автомата, после настройки никогда не переполниться, а товар не закончится.", + "block.numismatics.creative_vendor.tooltip.summary": "_Творческая_ версия торгового автомата, после настройки никогда не переполнится, а товар не закончится.", "block.numismatics.trusted_block.attempt_break": "Зажмите Shift, чтобы разрушить блок", "block.numismatics.vendor": "Торговый автомат", "block.numismatics.vendor.tooltip": "ТОРГОВЫЙ АВТОМАТ", @@ -33,7 +33,29 @@ "block.numismatics.vendor.tooltip.summary": "Позволяет торговать предметами через магазины, созданные игроками. _ПКМ_ для совершения сделки, _крадучись_ для настройки.", "block.numismatics.vendor.tooltip.trade_item": "Товар", "command.numismatics.arguments.enum.invalid": "Ошибка: Недопустимое значение '%s'. Допустимые: %s", + "error.numismatics.authorized_card.account_not_found": "Дочерний счёт не найден", + "error.numismatics.authorized_card.limit_reached": "Достигнут лимит расходов", + "error.numismatics.card.account_not_found": "Счёт не найден", + "error.numismatics.card.not_authorized": "Не авторизована", + "error.numismatics.card.not_bound": "Карта не привязана", "gui.numismatics.bank_terminal.balance": "Баланс: %s %s, %s¤", + "gui.numismatics.bank_terminal.sub_accounts": "Дочерние счета", + "gui.numismatics.bank_terminal.sub_accounts.authorization_type": "Тип авторизации", + "gui.numismatics.bank_terminal.sub_accounts.edit": "Редактировать дочерний счёт", + "gui.numismatics.bank_terminal.sub_accounts.help": "Нет дочерних счетов", + "gui.numismatics.bank_terminal.sub_accounts.help.line.1": "Введите имя и кликните \"добавить\"", + "gui.numismatics.bank_terminal.sub_accounts.help.line.2": "для создания нового дочернего счёта.", + "gui.numismatics.bank_terminal.sub_accounts.help.line.3": "Такие счета служат для предоставления", + "gui.numismatics.bank_terminal.sub_accounts.help.line.4": "ограниченного доступа выбранным игрокам", + "gui.numismatics.bank_terminal.sub_accounts.help.line.5": "и безопасных автоматических транзакций.", + "gui.numismatics.bank_terminal.sub_accounts.name_box": "Имя", + "gui.numismatics.bank_terminal.sub_accounts.named": "%s: дочерние счета", + "gui.numismatics.bank_terminal.sub_accounts.remove": "Удалить дочерний счёт", + "gui.numismatics.bank_terminal.sub_accounts.remove.confirm": "Вы уверены? Кликните снова для подтверждения", + "gui.numismatics.bank_terminal.sub_accounts.reset_spending": "Сбросить расходы", + "gui.numismatics.limit": "Потрачено %s из %s", + "gui.numismatics.limit.monetary": "Потрачено %s %s, %s¤ из %s %s, %s¤", + "gui.numismatics.limit.none": "Нет лимита", "gui.numismatics.trust_list": "Список доверенных", "gui.numismatics.vendor.count": " (%sx)", "gui.numismatics.vendor.full": "Торговый автомат переполнен", @@ -41,15 +63,22 @@ "gui.numismatics.vendor.generic_named": "Свяжитесь с %s", "gui.numismatics.vendor.incorrect_item": "Неправильный предмет", "gui.numismatics.vendor.insufficient_funds": "Недостаточно средств", - "gui.numismatics.vendor.insufficient_funds.named": "Недостаточно средств, свяжитесь с %s, чтобы тот его пополнил", "gui.numismatics.vendor.mode.buy": "Покупка", "gui.numismatics.vendor.mode.buy.action": "Кликните для покупки", "gui.numismatics.vendor.mode.sell": "Продажа", "gui.numismatics.vendor.mode.sell.action": "Кликните для продажи", "gui.numismatics.vendor.no_item_in_hand": "Держите в руке стак продаваемых предметов", "gui.numismatics.vendor.out_of_stock": "Товар закончился", + "gui.numismatics.vendor.out_of_stock.funds": "У торгового автомата недостаточно средств", + "gui.numismatics.vendor.out_of_stock.funds.named": "У торгового автомата недостаточно средств, свяжитесь с %s, чтобы тот его пополнил", "gui.numismatics.vendor.out_of_stock.named": "Товар закончился, свяжитесь с %s, чтобы тот его пополнил", + "gui.numismatics.vendor.toggle_automated_extraction": "Переключить автоматическое извлечение", "gui.numismatics.vendor.too_few_items": "Слишком мало", + "item.numismatics.authorized_bank_card.tooltip": "АВТОРИЗОВАННАЯ БАНКОВСКАЯ КАРТА", + "item.numismatics.authorized_bank_card.tooltip.summary": "Вставьте в _меню дочерних счетов_ терминала для привязки, _ПКМ крадучись_ для отвязки. Предоставляет ограниченный доступ к счёту доверенным игрокам или механизмам. Может быть вставлена в _торговый автомат/валидатор_ для автоматического сбора монет и зачисления их на привязанный счёт.", + "item.numismatics.authorized_card.tooltip.bound.no_label": "Дочерний счёт: неизвестен", + "item.numismatics.authorized_card.tooltip.bound.with_label": "Дочерний счёт: %s", + "item.numismatics.authorized_card.tooltip.hold_shift": "Зажмите \"красться\" для отвязки. Привяжите в терминале", "item.numismatics.bank_card.tooltip": "БАНКОВСКАЯ КАРТА", "item.numismatics.bank_card.tooltip.summary": "_ПКМ_ для привязки, _крадучись_ для отвязки. Даёт доступ к привязанному счёту при использовании в _банковском терминале_, или может быть вставлена в _торговый автомат/валидатор_ для автоматического сборка и зачисления монет на привязанный счёт.", "item.numismatics.banking_guide": "Инструкция банкира", @@ -57,10 +86,13 @@ "item.numismatics.banking_guide.tooltip.summary": "Используйте на _горелке всполоха_, чтобы превратить его во _всполоха-банкира_.", "item.numismatics.bevel": "Фаска", "item.numismatics.bevel.plural": "фасок", + "item.numismatics.black_authorized_card": "Чёрная авторизованная карта", "item.numismatics.black_card": "Чёрная банковская карта", "item.numismatics.black_id_card": "Чёрная идентификационная карта", + "item.numismatics.blue_authorized_card": "Синяя авторизованная карта", "item.numismatics.blue_card": "Синяя банковская карта", "item.numismatics.blue_id_card": "Синяя идентификационная карта", + "item.numismatics.brown_authorized_card": "Коричневая авторизованная карта", "item.numismatics.brown_card": "Коричневая банковская карта", "item.numismatics.brown_id_card": "Коричневая идентификационная карта", "item.numismatics.card.tooltip.blank": "Не привязанная", @@ -73,10 +105,13 @@ "item.numismatics.coin.tooltip.value.basic": "Номинал: %s¤", "item.numismatics.crown": "Коронка", "item.numismatics.crown.plural": "коронок", + "item.numismatics.cyan_authorized_card": "Бирюзовая авторизованная карта", "item.numismatics.cyan_card": "Бирюзовая банковская карта", "item.numismatics.cyan_id_card": "Бирюзовая идентификационная карта", + "item.numismatics.gray_authorized_card": "Серая авторизованная карта", "item.numismatics.gray_card": "Серая банковская карта", "item.numismatics.gray_id_card": "Серая идентификационная карта", + "item.numismatics.green_authorized_card": "Зелёная авторизованная карта", "item.numismatics.green_card": "Зелёная банковская карта", "item.numismatics.green_id_card": "Зелёная идентификационная карта", "item.numismatics.id_card.tooltip": "ИДЕНТИФИКАЦИОННАЯ КАРТА", @@ -84,20 +119,28 @@ "item.numismatics.id_card.tooltip.bound": "Привязана к себе", "item.numismatics.id_card.tooltip.cleared": "Отвязана", "item.numismatics.id_card.tooltip.summary": "_ПКМ_ для привязки, _крадучись_ для отвязки. Может быть вставлена в _список доверенных_ многих нумизматических блоков для предоставления доступа к этому блоку привязанному игроку.", + "item.numismatics.light_blue_authorized_card": "Голубая авторизованная карта", "item.numismatics.light_blue_card": "Голубая банковская карта", "item.numismatics.light_blue_id_card": "Голубая идентификационная карта", + "item.numismatics.light_gray_authorized_card": "Светло-серая авторизованная карта", "item.numismatics.light_gray_card": "Светло-серая банковская карта", "item.numismatics.light_gray_id_card": "Светло-серая идентификационная карта", + "item.numismatics.lime_authorized_card": "Лаймовая авторизованная карта", "item.numismatics.lime_card": "Лаймовая банковская карта", "item.numismatics.lime_id_card": "Лаймовая идентификационная карта", + "item.numismatics.magenta_authorized_card": "Пурпурная авторизованная карта", "item.numismatics.magenta_card": "Пурпурная банковская карта", "item.numismatics.magenta_id_card": "Пурпурная идентификационная карта", + "item.numismatics.orange_authorized_card": "Оранжевая авторизованная карта", "item.numismatics.orange_card": "Оранжевая банковская карта", "item.numismatics.orange_id_card": "Оранжевая идентификационная карта", + "item.numismatics.pink_authorized_card": "Розовая авторизованная карта", "item.numismatics.pink_card": "Розовая банковская карта", "item.numismatics.pink_id_card": "Розовая идентификационная карта", + "item.numismatics.purple_authorized_card": "Фиолетовая авторизованная карта", "item.numismatics.purple_card": "Фиолетовая банковская карта", "item.numismatics.purple_id_card": "Фиолетовая идентификационная карта", + "item.numismatics.red_authorized_card": "Красная авторизованная карта", "item.numismatics.red_card": "Красная банковская карта", "item.numismatics.red_id_card": "Красная идентификационная карта", "item.numismatics.sprocket": "Звёздочка", @@ -106,11 +149,27 @@ "item.numismatics.spur.plural": "шпор", "item.numismatics.sun": "Солнышко", "item.numismatics.sun.plural": "солнышек", + "item.numismatics.white_authorized_card": "Белая авторизованная карта", "item.numismatics.white_card": "Белая банковская карта", "item.numismatics.white_id_card": "Белая идентификационная карта", + "item.numismatics.yellow_authorized_card": "Жёлтая авторизованная карта", "item.numismatics.yellow_card": "Жёлтая банковская карта", "item.numismatics.yellow_id_card": "Жёлтая идентификационная карта", "itemGroup.numismatics": "Create: Numismatics", "numismatics.andesite_depositor.price": "Цена", - "numismatics.trust_list.configure": "Редактировать список доверенных" + "numismatics.authorization_type.anybody": "Кто угодно", + "numismatics.authorization_type.anybody.description": "Кто угодно с идентификационной картой, включая механизмы вроде компьютеров из ComputerCraft", + "numismatics.authorization_type.trusted_automation": "Доверенные + механизмы", + "numismatics.authorization_type.trusted_automation.description": "Игроки из списка доверенных и механизмы, размещённые ими (к примеру, автономные активаторы)", + "numismatics.authorization_type.trusted_players": "Только доверенные", + "numismatics.authorization_type.trusted_players.description": "Только игроки из списка доверенных", + "numismatics.special.ltr": "да", + "numismatics.trust_list.configure": "Редактировать список доверенных", + "tag.block.numismatics.numismatics_blocks": "Нумизматические блоки", + "tag.item.forge.string": "Строка", + "tag.item.numismatics.authorized_cards": "Авторизованные карты", + "tag.item.numismatics.cards": "Карты", + "tag.item.numismatics.coins": "Монеты", + "tag.item.numismatics.id_cards": "Идентификационные карты", + "tag.item.numismatics.numismatics_items": "Нумизматические предметы" } \ No newline at end of file diff --git a/common/src/main/resources/assets/numismatics/lang/uk_ua.json b/common/src/main/resources/assets/numismatics/lang/uk_ua.json index 49fb9ace..b30f1c94 100644 --- a/common/src/main/resources/assets/numismatics/lang/uk_ua.json +++ b/common/src/main/resources/assets/numismatics/lang/uk_ua.json @@ -39,7 +39,6 @@ "gui.numismatics.vendor.full.named": "Крамниця переповнена, зверніться до %s", "gui.numismatics.vendor.incorrect_item": "Неправильний предмет", "gui.numismatics.vendor.insufficient_funds": "Недостатньо коштів", - "gui.numismatics.vendor.insufficient_funds.named": "У крамниці недостатньо коштів, зверніться до %s", "gui.numismatics.vendor.mode.buy": "Купувати", "gui.numismatics.vendor.mode.buy.action": "ЛКМ, щоби купити", "gui.numismatics.vendor.mode.sell": "Продавати", diff --git a/common/src/main/resources/assets/numismatics/lang/zh_cn.json b/common/src/main/resources/assets/numismatics/lang/zh_cn.json index 9e26dfee..f2a2ecf0 100644 --- a/common/src/main/resources/assets/numismatics/lang/zh_cn.json +++ b/common/src/main/resources/assets/numismatics/lang/zh_cn.json @@ -1 +1,108 @@ -{} \ No newline at end of file +{ + "advancement.numismatics.is_this_legal": "这和法吗?", + "advancement.numismatics.is_this_legal.desc": "砍价狂人\n§7(隐藏进度)", + "advancement.numismatics.money_laundering": "洗钱中....", + "advancement.numismatics.money_laundering.desc": "以币换币\n§7(隐藏进度)", + "advancement.numismatics.questionable_investment": "可疑投资", + "advancement.numismatics.questionable_investment.desc": "物非所值\n§7(隐藏进度)", + "advancement.numismatics.root": "欢迎来到货币学Numismatics", + "advancement.numismatics.root.desc": "财富隐匿于此", + "block.numismatics.andesite_depositor": "安山投币机", + "block.numismatics.andesite_depositor.tooltip": "安山投币机", + "block.numismatics.andesite_depositor.tooltip.price": "价格: %s %s (%s¤)", + "block.numismatics.andesite_depositor.tooltip.summary": "按住顶部按钮进行配置,右键单击手中的卡或硬币支付给定金额,此时会产生1tick红石信号", + "block.numismatics.bank_terminal": "银行终端", + "block.numismatics.bank_terminal.tooltip": "银行终端", + "block.numismatics.bank_terminal.tooltip.summary": "允许您访问自己的银行账户", + "block.numismatics.blaze_banker": "烈焰人资本家", + "block.numismatics.blaze_banker.tooltip": "烈焰人资本家", + "block.numismatics.blaze_banker.tooltip.summary": "以银行家的名义创建银行账户,可用于与他人共享账户,您可以通过将银行卡放在特定的位置将其分配给其他人", + "block.numismatics.brass_depositor": "黄铜投币机", + "block.numismatics.brass_depositor.tooltip": "黄铜投币机", + "block.numismatics.brass_depositor.tooltip.price": "价格: %s %s, %s¤", + "block.numismatics.brass_depositor.tooltip.summary": "按住shift单击顶部进行配置, 右键单击以使用您手中的开或库存中的货币进行支付, 此时会产生1tick红石信号", + "block.numismatics.creative_vendor": "创造自动售货机", + "block.numismatics.creative_vendor.tooltip": "创造自动售货机", + "block.numismatics.creative_vendor.tooltip.summary": "无限供应,永不缺货", + "block.numismatics.trusted_block.attempt_break": "按住以破坏此方块", + "block.numismatics.vendor": "自动售货机", + "block.numismatics.vendor.tooltip": "自动售货机", + "block.numismatics.vendor.tooltip.mode": "模式", + "block.numismatics.vendor.tooltip.price": "对应for: %s %s, %s¤", + "block.numismatics.vendor.tooltip.stock": "存货", + "block.numismatics.vendor.tooltip.summary": "允许玩家创建商店进行交易,右键单击进行交易, 或通过shift进行配置", + "block.numismatics.vendor.tooltip.trade_item": "需要交易的项目", + "command.numismatics.arguments.enum.invalid": "Error: 枚举值 '%s'无效. 有效值为: %s", + "gui.numismatics.bank_terminal.balance": "余额: %s %s, %s¤", + "gui.numismatics.trust_list": "信任名单", + "gui.numismatics.vendor.full": "售货机以满", + "gui.numismatics.vendor.full.named": "供应库以满, 请联系 %s 以清空", + "gui.numismatics.vendor.generic_named": "联系人 %s", + "gui.numismatics.vendor.incorrect_item": "错误项目", + "gui.numismatics.vendor.insufficient_funds": "资金不足", + "gui.numismatics.vendor.mode.buy": "购买", + "gui.numismatics.vendor.mode.buy.action": "用于购买", + "gui.numismatics.vendor.mode.sell": "售卖", + "gui.numismatics.vendor.mode.sell.action": "用于售卖", + "gui.numismatics.vendor.no_item_in_hand": "手持你想要售卖的物品", + "gui.numismatics.vendor.out_of_stock": "缺货", + "gui.numismatics.vendor.out_of_stock.named": "缺货, 请联系 %s 以补充", + "gui.numismatics.vendor.too_few_items": "项目不足", + "item.numismatics.bank_card.tooltip": "银行卡", + "item.numismatics.bank_card.tooltip.summary": "右键绑定, shift清除. 当在银行终端使用时,可以访问绑定的银行账户,或者可以放置在售货机/投币机中,并且自动将货币和广告锁定到绑定的账户中", + "item.numismatics.banking_guide": "存钱指南", + "item.numismatics.banking_guide.tooltip": "存钱指南", + "item.numismatics.banking_guide.tooltip.summary": "在烈焰人燃烧室上使用将其转化为烈焰人资本家.", + "item.numismatics.bevel": "锌斜齿", + "item.numismatics.black_card": "黑银行卡", + "item.numismatics.black_id_card": "黑ID卡", + "item.numismatics.blue_card": "蓝银行卡", + "item.numismatics.blue_id_card": "蓝ID卡", + "item.numismatics.brown_card": "棕银行卡", + "item.numismatics.brown_id_card": "棕ID卡", + "item.numismatics.card.tooltip.blank": "空白", + "item.numismatics.card.tooltip.bound": "绑定", + "item.numismatics.card.tooltip.bound.to": "绑定到: %s", + "item.numismatics.cog": "黄铜齿", + "item.numismatics.coin.tooltip.count": "包括: %s %s", + "item.numismatics.coin.tooltip.value": "价值: %s %s (%s¤)", + "item.numismatics.coin.tooltip.value.basic": "价值: %s¤", + "item.numismatics.crown": "金克朗", + "item.numismatics.cyan_card": "青银行卡", + "item.numismatics.cyan_id_card": "青ID卡", + "item.numismatics.gray_card": "灰银行卡", + "item.numismatics.gray_id_card": "灰ID卡", + "item.numismatics.green_card": "绿银行卡", + "item.numismatics.green_id_card": "绿ID卡", + "item.numismatics.id_card.tooltip": "ID卡", + "item.numismatics.id_card.tooltip.already_bound": "以绑定, 用于偷窃和解绑", + "item.numismatics.id_card.tooltip.bound": "自我绑定", + "item.numismatics.id_card.tooltip.cleared": "清除", + "item.numismatics.id_card.tooltip.summary": "右键绑定, shift 键清除. 可以放置在许多货币学方块的信任列表中,让绑定的玩家快速访问", + "item.numismatics.light_blue_card": "淡蓝银行卡", + "item.numismatics.light_blue_id_card": "淡蓝ID卡", + "item.numismatics.light_gray_card": "浅灰银行卡", + "item.numismatics.light_gray_id_card": "浅灰ID卡", + "item.numismatics.lime_card": "淡绿银行卡", + "item.numismatics.lime_id_card": "淡绿ID卡", + "item.numismatics.magenta_card": "品红银行卡", + "item.numismatics.magenta_id_card": "品红ID卡", + "item.numismatics.orange_card": "橙银行卡", + "item.numismatics.orange_id_card": "橙ID卡", + "item.numismatics.pink_card": "粉银行卡", + "item.numismatics.pink_id_card": "粉ID卡", + "item.numismatics.purple_card": "紫银行卡", + "item.numismatics.purple_id_card": "紫ID卡", + "item.numismatics.red_card": "红银行卡", + "item.numismatics.red_id_card": "红ID卡", + "item.numismatics.sprocket": "铁棘齿", + "item.numismatics.spur": "铜马刺", + "item.numismatics.sun": "合金曦耀", + "item.numismatics.white_card": "白银行卡", + "item.numismatics.white_id_card": "白ID卡", + "item.numismatics.yellow_card": "黄银行卡", + "item.numismatics.yellow_id_card": "黄ID卡", + "itemGroup.numismatics": "机械动力:货币学Numismatics", + "numismatics.andesite_depositor.price": "价格", + "numismatics.trust_list.configure": "配置信任列表" +} \ No newline at end of file