mirror of
https://github.com/StarWishsama/Slimefun4.git
synced 2024-09-20 11:45:51 +00:00
Merge branch 'master' of https://github.com/LinoxGH/Slimefun4 into ShulkerShell
Conflicts: src/main/java/io/github/thebusybiscuit/slimefun4/implementation/setup/ResearchSetup.java src/main/resources/languages/researches_en.yml
This commit is contained in:
commit
7a09253311
2
.github/workflows/translator-webhook.yml
vendored
2
.github/workflows/translator-webhook.yml
vendored
@ -17,6 +17,6 @@ jobs:
|
||||
- name: Discord Notification
|
||||
uses: Ilshidur/action-discord@master
|
||||
with:
|
||||
args: '<@&665202905271369776> Slimefun4''s language files have been updated! https://gitlocalize.com/repo/3841'
|
||||
args: '<@&665202905271369776> Slimefun4''s language files were changed and require to be updated! https://gitlocalize.com/repo/3841'
|
||||
env:
|
||||
DISCORD_WEBHOOK: ${{ secrets.TRANSLATOR_WEBHOOK }}
|
||||
|
@ -27,6 +27,8 @@
|
||||
* Added ReactorExplodeEvent to the API
|
||||
* Compatibility mode status is now included in /sf versions
|
||||
* Added Nether Quartz Ore Crusher Recipe
|
||||
* Added a new language: Tagalog
|
||||
* Added Magical Zombie Pills
|
||||
|
||||
#### Changes
|
||||
* Coolant Cells now last twice as long
|
||||
@ -35,6 +37,10 @@
|
||||
* Changed the texture for the Nuclear Reactor
|
||||
* Changed the texture for the Nether Star Reactor
|
||||
* Performance improvements to Rainbow Blocks
|
||||
* Crafting Tin cans now produces 8 items instead of 4
|
||||
* Multi Tool lore now says "Crouch" instead of "Hold Shift"
|
||||
* items which cannot be distributed by a Cargo Net will be dropped on the ground now instead of getting deleted
|
||||
* Small performance improvements to the Cargo Net
|
||||
|
||||
#### Fixes
|
||||
* Fixed #2005
|
||||
@ -42,6 +48,7 @@
|
||||
* Fixed a chunk caching issue for GEO resources
|
||||
* Fixed Infused Magnet working even if you haven't researched it
|
||||
* Fixed Rainbow blocks duplication glitch when timing the block break right
|
||||
* Fixed #1855
|
||||
|
||||
## Release Candidate 13 (16 Jun 2020)
|
||||
https://thebusybiscuit.github.io/builds/TheBusyBiscuit/Slimefun4/stable/#13
|
||||
|
@ -87,7 +87,10 @@ public class CargoNet extends ChestTerminalNetwork {
|
||||
@Override
|
||||
public NetworkComponent classifyLocation(Location l) {
|
||||
String id = BlockStorage.checkID(l);
|
||||
if (id == null) return null;
|
||||
|
||||
if (id == null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
switch (id) {
|
||||
case "CARGO_MANAGER":
|
||||
@ -157,8 +160,8 @@ public class CargoNet extends ChestTerminalNetwork {
|
||||
|
||||
// Chest Terminal Stuff
|
||||
Set<Location> destinations = new HashSet<>();
|
||||
|
||||
List<Location> output16 = output.get(16);
|
||||
|
||||
if (output16 != null) {
|
||||
destinations.addAll(output16);
|
||||
}
|
||||
@ -264,17 +267,30 @@ public class CargoNet extends ChestTerminalNetwork {
|
||||
stack = distributeItem(stack, inputNode, outputs);
|
||||
}
|
||||
|
||||
DirtyChestMenu menu = CargoUtils.getChestMenu(inputTarget);
|
||||
if (stack != null) {
|
||||
DirtyChestMenu menu = CargoUtils.getChestMenu(inputTarget);
|
||||
|
||||
if (menu != null) {
|
||||
menu.replaceExistingItem(previousSlot, stack);
|
||||
}
|
||||
else if (CargoUtils.hasInventory(inputTarget)) {
|
||||
BlockState state = inputTarget.getState();
|
||||
if (menu != null) {
|
||||
if (menu.getItemInSlot(previousSlot) == null) {
|
||||
menu.replaceExistingItem(previousSlot, stack);
|
||||
}
|
||||
else {
|
||||
inputTarget.getWorld().dropItem(inputTarget.getLocation().add(0, 1, 0), stack);
|
||||
}
|
||||
}
|
||||
else if (CargoUtils.hasInventory(inputTarget)) {
|
||||
BlockState state = inputTarget.getState();
|
||||
|
||||
if (state instanceof InventoryHolder) {
|
||||
Inventory inv = ((InventoryHolder) state).getInventory();
|
||||
inv.setItem(previousSlot, stack);
|
||||
if (state instanceof InventoryHolder) {
|
||||
Inventory inv = ((InventoryHolder) state).getInventory();
|
||||
|
||||
if (inv.getItem(previousSlot) == null) {
|
||||
inv.setItem(previousSlot, stack);
|
||||
}
|
||||
else {
|
||||
inputTarget.getWorld().dropItem(inputTarget.getLocation().add(0, 1, 0), stack);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -194,6 +194,7 @@ final class CargoUtils {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
|
@ -54,7 +54,7 @@ public class LocalizationService extends SlimefunLocalization implements Persist
|
||||
translationsEnabled = SlimefunPlugin.getCfg().getBoolean("options.enable-translations");
|
||||
|
||||
defaultLanguage = new Language(serverDefaultLanguage, "11b3188fd44902f72602bd7c2141f5a70673a411adb3d81862c69e536166b");
|
||||
defaultLanguage.setMessages(getConfig().getConfiguration());
|
||||
defaultLanguage.setMessagesFile(getConfig().getConfiguration());
|
||||
|
||||
loadEmbeddedLanguages();
|
||||
|
||||
@ -147,10 +147,10 @@ public class LocalizationService extends SlimefunLocalization implements Persist
|
||||
getConfig().clear();
|
||||
}
|
||||
|
||||
defaultLanguage.setResearches(streamConfigFile("researches_" + language + ".yml", null));
|
||||
defaultLanguage.setResources(streamConfigFile("resources_" + language + ".yml", null));
|
||||
defaultLanguage.setCategories(streamConfigFile("categories_" + language + ".yml", null));
|
||||
defaultLanguage.setRecipeTypes(streamConfigFile("recipes_" + language + ".yml", null));
|
||||
defaultLanguage.setResearchesFile(streamConfigFile("researches_" + language + ".yml", null));
|
||||
defaultLanguage.setResourcesFile(streamConfigFile("resources_" + language + ".yml", null));
|
||||
defaultLanguage.setCategoriesFile(streamConfigFile("categories_" + language + ".yml", null));
|
||||
defaultLanguage.setRecipeTypesFile(streamConfigFile("recipes_" + language + ".yml", null));
|
||||
|
||||
Slimefun.getLogger().log(Level.INFO, "Loaded language \"{0}\"", language);
|
||||
getConfig().setValue(LANGUAGE_PATH, language);
|
||||
@ -179,11 +179,11 @@ public class LocalizationService extends SlimefunLocalization implements Persist
|
||||
FileConfiguration recipes = streamConfigFile("recipes_" + id + ".yml", null);
|
||||
|
||||
Language language = new Language(id, hash);
|
||||
language.setMessages(messages);
|
||||
language.setResearches(researches);
|
||||
language.setResources(resources);
|
||||
language.setCategories(categories);
|
||||
language.setRecipeTypes(recipes);
|
||||
language.setMessagesFile(messages);
|
||||
language.setResearchesFile(researches);
|
||||
language.setResourcesFile(resources);
|
||||
language.setCategoriesFile(categories);
|
||||
language.setRecipeTypesFile(recipes);
|
||||
|
||||
languages.put(id, language);
|
||||
}
|
||||
@ -201,13 +201,16 @@ public class LocalizationService extends SlimefunLocalization implements Persist
|
||||
*/
|
||||
public double getProgress(Language lang) {
|
||||
int defaultKeys = getTotalKeys(languages.get("en"));
|
||||
if (defaultKeys == 0) return 0;
|
||||
|
||||
if (defaultKeys == 0) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
return Math.min(DoubleHandler.fixDouble(100.0 * (getTotalKeys(lang) / (double) defaultKeys)), 100.0);
|
||||
}
|
||||
|
||||
private int getTotalKeys(Language lang) {
|
||||
return getKeys(lang.getMessages(), lang.getResearches(), lang.getResources(), lang.getCategories(), lang.getRecipeTypes());
|
||||
return getKeys(lang.getFiles());
|
||||
}
|
||||
|
||||
private int getKeys(FileConfiguration... files) {
|
||||
|
@ -60,43 +60,53 @@ public final class Language {
|
||||
return id;
|
||||
}
|
||||
|
||||
public FileConfiguration getMessages() {
|
||||
FileConfiguration getMessagesFile() {
|
||||
return messages;
|
||||
}
|
||||
|
||||
public FileConfiguration getResearches() {
|
||||
FileConfiguration getResearchesFile() {
|
||||
return researches;
|
||||
}
|
||||
|
||||
public FileConfiguration getResources() {
|
||||
FileConfiguration getResourcesFile() {
|
||||
return resources;
|
||||
}
|
||||
|
||||
public FileConfiguration getCategories() {
|
||||
FileConfiguration getCategoriesFile() {
|
||||
return categories;
|
||||
}
|
||||
|
||||
public FileConfiguration getRecipeTypes() {
|
||||
FileConfiguration getRecipeTypesFile() {
|
||||
return recipeTypes;
|
||||
}
|
||||
|
||||
public void setMessages(FileConfiguration config) {
|
||||
public void setMessagesFile(FileConfiguration config) {
|
||||
Validate.notNull(config);
|
||||
|
||||
this.messages = config;
|
||||
}
|
||||
|
||||
public void setResearches(FileConfiguration config) {
|
||||
public void setResearchesFile(FileConfiguration config) {
|
||||
Validate.notNull(config);
|
||||
|
||||
this.researches = config;
|
||||
}
|
||||
|
||||
public void setResources(FileConfiguration config) {
|
||||
public void setResourcesFile(FileConfiguration config) {
|
||||
Validate.notNull(config);
|
||||
|
||||
this.resources = config;
|
||||
}
|
||||
|
||||
public void setCategories(FileConfiguration config) {
|
||||
public void setCategoriesFile(FileConfiguration config) {
|
||||
Validate.notNull(config);
|
||||
|
||||
this.categories = config;
|
||||
}
|
||||
|
||||
public void setRecipeTypes(FileConfiguration config) {
|
||||
public void setRecipeTypesFile(FileConfiguration config) {
|
||||
Validate.notNull(config);
|
||||
|
||||
this.recipeTypes = config;
|
||||
}
|
||||
|
||||
@ -119,7 +129,8 @@ public final class Language {
|
||||
* @return The localized name of this {@link Language}
|
||||
*/
|
||||
public String getName(Player p) {
|
||||
return SlimefunPlugin.getLocal().getMessage(p, "languages." + id);
|
||||
String name = SlimefunPlugin.getLocal().getMessage(p, "languages." + id);
|
||||
return name != null ? name : toString();
|
||||
}
|
||||
|
||||
/**
|
||||
@ -132,4 +143,13 @@ public final class Language {
|
||||
return this == SlimefunPlugin.getLocal().getDefaultLanguage();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "Language [ id= " + id + " | default=" + isDefault() + " ]";
|
||||
}
|
||||
|
||||
public FileConfiguration[] getFiles() {
|
||||
return new FileConfiguration[] { getMessagesFile(), getCategoriesFile(), getResearchesFile(), getResourcesFile() };
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -88,37 +88,37 @@ public abstract class SlimefunLocalization extends Localization implements Keyed
|
||||
public String getMessage(Player p, String key) {
|
||||
Language language = getLanguage(p);
|
||||
if (language == null) return "NO LANGUAGE FOUND";
|
||||
return language.getMessages().getString(key);
|
||||
return language.getMessagesFile().getString(key);
|
||||
}
|
||||
|
||||
public List<String> getMessages(Player p, String key) {
|
||||
Language language = getLanguage(p);
|
||||
if (language == null) return Arrays.asList("NO LANGUAGE FOUND");
|
||||
return language.getMessages().getStringList(key);
|
||||
return language.getMessagesFile().getStringList(key);
|
||||
}
|
||||
|
||||
public String getResearchName(Player p, NamespacedKey key) {
|
||||
Language language = getLanguage(p);
|
||||
if (language.getResearches() == null) return null;
|
||||
return language.getResearches().getString(key.getNamespace() + "." + key.getKey());
|
||||
if (language.getResearchesFile() == null) return null;
|
||||
return language.getResearchesFile().getString(key.getNamespace() + "." + key.getKey());
|
||||
}
|
||||
|
||||
public String getCategoryName(Player p, NamespacedKey key) {
|
||||
Language language = getLanguage(p);
|
||||
if (language.getCategories() == null) return null;
|
||||
return language.getCategories().getString(key.getNamespace() + "." + key.getKey());
|
||||
if (language.getCategoriesFile() == null) return null;
|
||||
return language.getCategoriesFile().getString(key.getNamespace() + "." + key.getKey());
|
||||
}
|
||||
|
||||
public String getResourceString(Player p, String key) {
|
||||
Language language = getLanguage(p);
|
||||
|
||||
String value = language.getResources() != null ? language.getResources().getString(key) : null;
|
||||
String value = language.getResourcesFile() != null ? language.getResourcesFile().getString(key) : null;
|
||||
|
||||
if (value != null) {
|
||||
return value;
|
||||
}
|
||||
else {
|
||||
return getLanguage("en").getResources().getString(key);
|
||||
return getLanguage("en").getResourcesFile().getString(key);
|
||||
}
|
||||
}
|
||||
|
||||
@ -127,15 +127,15 @@ public abstract class SlimefunLocalization extends Localization implements Keyed
|
||||
ItemStack item = recipeType.toItem();
|
||||
NamespacedKey key = recipeType.getKey();
|
||||
|
||||
if (language.getRecipeTypes() == null || !language.getRecipeTypes().contains(key.getNamespace() + "." + key.getKey())) {
|
||||
if (language.getRecipeTypesFile() == null || !language.getRecipeTypesFile().contains(key.getNamespace() + "." + key.getKey())) {
|
||||
language = getLanguage("en");
|
||||
}
|
||||
|
||||
if (!language.getRecipeTypes().contains(key.getNamespace() + "." + key.getKey())) {
|
||||
if (!language.getRecipeTypesFile().contains(key.getNamespace() + "." + key.getKey())) {
|
||||
return item;
|
||||
}
|
||||
|
||||
FileConfiguration config = language.getRecipeTypes();
|
||||
FileConfiguration config = language.getRecipeTypesFile();
|
||||
|
||||
return new CustomItem(item, meta -> {
|
||||
meta.setDisplayName(ChatColor.AQUA + config.getString(key.getNamespace() + "." + key.getKey() + ".name"));
|
||||
|
@ -53,7 +53,7 @@ enum SupportedLanguage {
|
||||
MALAY("ms", false, "754b9041dea6db6db44750f1385a743adf653767b4b8802cad4c585dd3f5be46"),
|
||||
THAI("th", true, "2a7916e4a852f7e6f3f3de19c7fb57686a37bce834bd54684a7dbef8d53fb"),
|
||||
MACEDONIAN("mk", false, "a0e0b0b5d87a855466980a101a757bcdb5f77d9f7287889f3efa998ee0472fc0"),
|
||||
TAGALOG("tl", false, "9306c0c1ce6a9c61bb42a572c49e6d0ed20e0e6b3d122cc64c339cbf78e9e937");
|
||||
TAGALOG("tl", true, "9306c0c1ce6a9c61bb42a572c49e6d0ed20e0e6b3d122cc64c339cbf78e9e937");
|
||||
|
||||
private final String id;
|
||||
private final boolean releaseReady;
|
||||
|
@ -50,7 +50,7 @@ public final class SlimefunItems {
|
||||
public static final SlimefunItemStack GRAPPLING_HOOK = new SlimefunItemStack("GRAPPLING_HOOK", Material.LEAD, "&6Grappling Hook", "", LoreBuilder.RIGHT_CLICK_TO_USE);
|
||||
public static final SlimefunItemStack SOLAR_HELMET = new SlimefunItemStack("SOLAR_HELMET", Material.IRON_HELMET, "&bSolar Helmet", "", "&a&oCharges held Items and Armor");
|
||||
public static final SlimefunItemStack CLOTH = new SlimefunItemStack("CLOTH", Material.PAPER, "&bCloth");
|
||||
public static final SlimefunItemStack CAN = new SlimefunItemStack("CAN", HeadTexture.TIN_CAN, "&rTin Can");
|
||||
public static final SlimefunItemStack TIN_CAN = new SlimefunItemStack("CAN", HeadTexture.TIN_CAN, "&rTin Can");
|
||||
public static final SlimefunItemStack NIGHT_VISION_GOGGLES = new SlimefunItemStack("NIGHT_VISION_GOGGLES", Material.LEATHER_HELMET, Color.BLACK, "&aNight Vision Goggles", "", "&9+ Night Vision");
|
||||
public static final SlimefunItemStack FARMER_SHOES = new SlimefunItemStack("FARMER_SHOES", Material.LEATHER_BOOTS, Color.YELLOW, "&eFarmer Shoes", "", "&6&oPrevents you from trampling your Crops");
|
||||
public static final SlimefunItemStack INFUSED_MAGNET = new SlimefunItemStack("INFUSED_MAGNET", HeadTexture.MAGNET, "&aInfused Magnet", "", "&rMagical infused Magnets", "&rattract nearby Items", "&ras long as it is somewhere in", "&ryour Inventory", "", "&7Hold &eShift&7 to pick up nearby Items");
|
||||
@ -96,13 +96,14 @@ public final class SlimefunItems {
|
||||
public static final SlimefunItemStack ARMORED_JETBOOTS = new SlimefunItemStack("ARMORED_JETBOOTS", Material.IRON_BOOTS, "&9Armored Jet Boots", "", LoreBuilder.material("Steel"), LoreBuilder.powerCharged(0, 50), LoreBuilder.speed(0.45F), "&8\u21E8 &7Accuracy: &e70%", "", LoreBuilder.CROUCH_TO_USE);
|
||||
|
||||
/* Multi Tools */
|
||||
public static final SlimefunItemStack DURALUMIN_MULTI_TOOL = new SlimefunItemStack("DURALUMIN_MULTI_TOOL", Material.SHEARS, "&9Multi Tool &7- &eI", "", LoreBuilder.material("Duralumin"), LoreBuilder.powerCharged(0, 20), "", LoreBuilder.RIGHT_CLICK_TO_USE, "&7Hold &eShift + Right Click&7 to change the Mode");
|
||||
public static final SlimefunItemStack SOLDER_MULTI_TOOL = new SlimefunItemStack("SOLDER_MULTI_TOOL", Material.SHEARS, "&9Multi Tool &7- &eII", "", LoreBuilder.material("Solder"), LoreBuilder.powerCharged(0, 30), "", LoreBuilder.RIGHT_CLICK_TO_USE, "&7Hold &eShift + Right Click&7 to change the Mode");
|
||||
public static final SlimefunItemStack BILLON_MULTI_TOOL = new SlimefunItemStack("BILLON_MULTI_TOOL", Material.SHEARS, "&9Multi Tool &7- &eIII", "", LoreBuilder.material("Billon"), LoreBuilder.powerCharged(0, 40), "", LoreBuilder.RIGHT_CLICK_TO_USE, "&7Hold &eShift + Right Click&7 to change the Mode");
|
||||
public static final SlimefunItemStack STEEL_MULTI_TOOL = new SlimefunItemStack("STEEL_MULTI_TOOL", Material.SHEARS, "&9Multi Tool &7- &eIV", "", LoreBuilder.material("Steel"), LoreBuilder.powerCharged(0, 50), "", LoreBuilder.RIGHT_CLICK_TO_USE, "&7Hold &eShift + Right Click&7 to change the Mode");
|
||||
public static final SlimefunItemStack DAMASCUS_STEEL_MULTI_TOOL = new SlimefunItemStack("DAMASCUS_STEEL_MULTI_TOOL", Material.SHEARS, "&9Multi Tool &7- &eV", "", LoreBuilder.material("Damascus Steel"), LoreBuilder.powerCharged(0, 60), "", LoreBuilder.RIGHT_CLICK_TO_USE, "&7Hold &eShift + Right Click&7 to change the Mode");
|
||||
public static final SlimefunItemStack REINFORCED_ALLOY_MULTI_TOOL = new SlimefunItemStack("REINFORCED_ALLOY_MULTI_TOOL", Material.SHEARS, "&9Multi Tool &7- &eVI", "", LoreBuilder.material("Reinforced Alloy"), LoreBuilder.powerCharged(0, 75), "", LoreBuilder.RIGHT_CLICK_TO_USE, "&7Hold &eShift + Right Click&7 to change the Mode");
|
||||
public static final SlimefunItemStack CARBONADO_MULTI_TOOL = new SlimefunItemStack("CARBONADO_MULTI_TOOL", Material.SHEARS, "&9Multi Tool &7- &eVII", "", LoreBuilder.material("Carbonado"), LoreBuilder.powerCharged(0, 100), "", LoreBuilder.RIGHT_CLICK_TO_USE, "&7Hold &eShift + Right Click&7 to change the Mode");
|
||||
private static final String MULTI_TOOL_LORE = "&eCrouch & Right Click&7 to switch modes";
|
||||
public static final SlimefunItemStack DURALUMIN_MULTI_TOOL = new SlimefunItemStack("DURALUMIN_MULTI_TOOL", Material.SHEARS, "&9Multi Tool &7- &eI", "", LoreBuilder.material("Duralumin"), LoreBuilder.powerCharged(0, 20), "", LoreBuilder.RIGHT_CLICK_TO_USE, MULTI_TOOL_LORE);
|
||||
public static final SlimefunItemStack SOLDER_MULTI_TOOL = new SlimefunItemStack("SOLDER_MULTI_TOOL", Material.SHEARS, "&9Multi Tool &7- &eII", "", LoreBuilder.material("Solder"), LoreBuilder.powerCharged(0, 30), "", LoreBuilder.RIGHT_CLICK_TO_USE, MULTI_TOOL_LORE);
|
||||
public static final SlimefunItemStack BILLON_MULTI_TOOL = new SlimefunItemStack("BILLON_MULTI_TOOL", Material.SHEARS, "&9Multi Tool &7- &eIII", "", LoreBuilder.material("Billon"), LoreBuilder.powerCharged(0, 40), "", LoreBuilder.RIGHT_CLICK_TO_USE, MULTI_TOOL_LORE);
|
||||
public static final SlimefunItemStack STEEL_MULTI_TOOL = new SlimefunItemStack("STEEL_MULTI_TOOL", Material.SHEARS, "&9Multi Tool &7- &eIV", "", LoreBuilder.material("Steel"), LoreBuilder.powerCharged(0, 50), "", LoreBuilder.RIGHT_CLICK_TO_USE, MULTI_TOOL_LORE);
|
||||
public static final SlimefunItemStack DAMASCUS_STEEL_MULTI_TOOL = new SlimefunItemStack("DAMASCUS_STEEL_MULTI_TOOL", Material.SHEARS, "&9Multi Tool &7- &eV", "", LoreBuilder.material("Damascus Steel"), LoreBuilder.powerCharged(0, 60), "", LoreBuilder.RIGHT_CLICK_TO_USE, MULTI_TOOL_LORE);
|
||||
public static final SlimefunItemStack REINFORCED_ALLOY_MULTI_TOOL = new SlimefunItemStack("REINFORCED_ALLOY_MULTI_TOOL", Material.SHEARS, "&9Multi Tool &7- &eVI", "", LoreBuilder.material("Reinforced Alloy"), LoreBuilder.powerCharged(0, 75), "", LoreBuilder.RIGHT_CLICK_TO_USE, MULTI_TOOL_LORE);
|
||||
public static final SlimefunItemStack CARBONADO_MULTI_TOOL = new SlimefunItemStack("CARBONADO_MULTI_TOOL", Material.SHEARS, "&9Multi Tool &7- &eVII", "", LoreBuilder.material("Carbonado"), LoreBuilder.powerCharged(0, 100), "", LoreBuilder.RIGHT_CLICK_TO_USE, MULTI_TOOL_LORE);
|
||||
|
||||
static {
|
||||
ItemMeta duralumin = DURALUMIN_MULTI_TOOL.getItemMeta();
|
||||
@ -327,7 +328,7 @@ public final class SlimefunItems {
|
||||
public static final SlimefunItemStack ENDER_LUMP_2 = new SlimefunItemStack("ENDER_LUMP_2", Material.GOLD_NUGGET, "&5Ender Lump &7- &eII", "", "&c&oTier: II");
|
||||
public static final SlimefunItemStack ENDER_LUMP_3 = new SlimefunItemStack("ENDER_LUMP_3", Material.GOLD_NUGGET, "&5Ender Lump &7- &eIII", "", "&c&oTier: III");
|
||||
public static final SlimefunItemStack MAGICAL_BOOK_COVER = new SlimefunItemStack("MAGICAL_BOOK_COVER", Material.PAPER, "&6Magical Book Cover", "", "&a&oUsed for various Magic Books");
|
||||
public static final SlimefunItemStack MAGIC_PILLS = new SlimefunItemStack("MAGIC_PILLS", Material.NETHER_WART, "&cMagic Pills", "", "&a&oUsed to cure zombie villagers instantly");
|
||||
public static final SlimefunItemStack MAGICAL_ZOMBIE_PILLS = new SlimefunItemStack("MAGICAL_ZOMBIE_PILLS", Material.NETHER_WART, "&6Magical Zombie Pills", "", "&eRight Click &7a Zombified Villager to", "&7instantly cure it from its curse");
|
||||
public static final SlimefunItemStack BASIC_CIRCUIT_BOARD = new SlimefunItemStack("BASIC_CIRCUIT_BOARD", Material.ACTIVATOR_RAIL, "&bBasic Circuit Board");
|
||||
public static final SlimefunItemStack ADVANCED_CIRCUIT_BOARD = new SlimefunItemStack("ADVANCED_CIRCUIT_BOARD", Material.POWERED_RAIL, "&bAdvanced Circuit Board");
|
||||
public static final SlimefunItemStack WHEAT_FLOUR = new SlimefunItemStack("WHEAT_FLOUR", Material.SUGAR, "&rWheat Flour");
|
||||
@ -624,6 +625,7 @@ public final class SlimefunItems {
|
||||
public static final SlimefunItemStack AUTO_DISENCHANTER = new SlimefunItemStack("AUTO_DISENCHANTER", Material.ENCHANTING_TABLE, "&5Auto Disenchanter", "", LoreBuilder.machine(MachineTier.MEDIUM, MachineType.MACHINE), LoreBuilder.speed(1), LoreBuilder.powerPerSecond(18));
|
||||
public static final SlimefunItemStack AUTO_ANVIL = new SlimefunItemStack("AUTO_ANVIL", Material.IRON_BLOCK, "&7Auto Anvil", "", LoreBuilder.machine(MachineTier.ADVANCED, MachineType.MACHINE), "&8\u21E8 &7Repair Factor: 10%", LoreBuilder.powerPerSecond(24));
|
||||
public static final SlimefunItemStack AUTO_ANVIL_2 = new SlimefunItemStack("AUTO_ANVIL_2", Material.IRON_BLOCK, "&7Auto Anvil Mk.II", "", LoreBuilder.machine(MachineTier.END_GAME, MachineType.MACHINE), "&8\u21E8 &7Repair Factor: 25%", LoreBuilder.powerPerSecond(32));
|
||||
public static final SlimefunItemStack AUTO_BREWER;
|
||||
|
||||
public static final SlimefunItemStack BIO_REACTOR = new SlimefunItemStack("BIO_REACTOR", Material.LIME_TERRACOTTA, "&2Bio Reactor", "", LoreBuilder.machine(MachineTier.AVERAGE, MachineType.GENERATOR), LoreBuilder.powerBuffer(128), LoreBuilder.powerPerSecond(8));
|
||||
public static final SlimefunItemStack MULTIMETER = new SlimefunItemStack("MULTIMETER", Material.CLOCK, "&eMultimeter", "", "&rMeasures the Amount of stored", "&rEnergy in a Block");
|
||||
@ -799,11 +801,13 @@ public final class SlimefunItems {
|
||||
TABLE_SAW = new SlimefunItemStack("TABLE_SAW", Material.STONECUTTER, "&6Table Saw", "", "&aAllows you to get 8 planks from 1 Log", "&a(Works with all log types)");
|
||||
MAKESHIFT_SMELTERY = new SlimefunItemStack("MAKESHIFT_SMELTERY", Material.BLAST_FURNACE, "&eMakeshift Smeltery", "", "&rImprovised version of the Smeltery", "&rthat only allows you to", "&rsmelt dusts into ingots");
|
||||
AUTO_DRIER = new SlimefunItemStack("AUTO_DRIER", Material.SMOKER, "&eAuto Drier", "", LoreBuilder.machine(MachineTier.MEDIUM, MachineType.MACHINE), LoreBuilder.speed(1), LoreBuilder.powerPerSecond(10));
|
||||
AUTO_BREWER = new SlimefunItemStack("AUTO_BREWER", Material.SMOKER, "&eAuto Brewer", "", LoreBuilder.machine(MachineTier.MEDIUM, MachineType.MACHINE), LoreBuilder.speed(1), LoreBuilder.powerPerSecond(12));
|
||||
}
|
||||
else {
|
||||
TABLE_SAW = null;
|
||||
MAKESHIFT_SMELTERY = new SlimefunItemStack("MAKESHIFT_SMELTERY", Material.FURNACE, "&eMakeshift Smeltery", "", "&rImprovised version of the Smeltery", "&rthat only allows you to", "&rsmelt dusts into ingots");
|
||||
AUTO_DRIER = null;
|
||||
AUTO_BREWER = new SlimefunItemStack("AUTO_BREWER", Material.BREWING_STAND, "&eAuto Brewer", LoreBuilder.machine(MachineTier.MEDIUM, MachineType.MACHINE), LoreBuilder.speed(1), LoreBuilder.powerPerSecond(12));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -0,0 +1,230 @@
|
||||
package io.github.thebusybiscuit.slimefun4.implementation.items.electric.machines;
|
||||
|
||||
import java.util.EnumMap;
|
||||
import java.util.Map;
|
||||
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.block.Block;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
import org.bukkit.inventory.meta.PotionMeta;
|
||||
import org.bukkit.potion.PotionData;
|
||||
import org.bukkit.potion.PotionType;
|
||||
|
||||
import io.github.thebusybiscuit.cscorelib2.inventory.InvUtils;
|
||||
import io.github.thebusybiscuit.cscorelib2.item.CustomItem;
|
||||
import io.github.thebusybiscuit.slimefun4.utils.ChestMenuUtils;
|
||||
import me.mrCookieSlime.Slimefun.Lists.RecipeType;
|
||||
import me.mrCookieSlime.Slimefun.Objects.Category;
|
||||
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.AContainer;
|
||||
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.MachineRecipe;
|
||||
import me.mrCookieSlime.Slimefun.api.BlockStorage;
|
||||
import me.mrCookieSlime.Slimefun.api.SlimefunItemStack;
|
||||
import me.mrCookieSlime.Slimefun.api.energy.ChargableBlock;
|
||||
import me.mrCookieSlime.Slimefun.api.inventory.BlockMenu;
|
||||
|
||||
/**
|
||||
*
|
||||
* The {@link AutoBrewer} machine with most if not all potion recipes.
|
||||
*
|
||||
* @author Linox
|
||||
*
|
||||
*/
|
||||
public class AutoBrewer extends AContainer {
|
||||
|
||||
private static final Map<Material, PotionType> potionRecipes = new EnumMap<>(Material.class);
|
||||
private static final Map<PotionType, PotionType> fermentations = new EnumMap<>(PotionType.class);
|
||||
|
||||
static {
|
||||
potionRecipes.put(Material.SUGAR, PotionType.SPEED);
|
||||
potionRecipes.put(Material.RABBIT_FOOT, PotionType.JUMP);
|
||||
potionRecipes.put(Material.BLAZE_POWDER, PotionType.STRENGTH);
|
||||
potionRecipes.put(Material.GLISTERING_MELON_SLICE, PotionType.INSTANT_HEAL);
|
||||
potionRecipes.put(Material.SPIDER_EYE, PotionType.POISON);
|
||||
potionRecipes.put(Material.GHAST_TEAR, PotionType.REGEN);
|
||||
potionRecipes.put(Material.MAGMA_CREAM, PotionType.FIRE_RESISTANCE);
|
||||
potionRecipes.put(Material.PUFFERFISH, PotionType.WATER_BREATHING);
|
||||
potionRecipes.put(Material.GOLDEN_CARROT, PotionType.NIGHT_VISION);
|
||||
potionRecipes.put(Material.TURTLE_HELMET, PotionType.TURTLE_MASTER);
|
||||
potionRecipes.put(Material.PHANTOM_MEMBRANE, PotionType.SLOW_FALLING);
|
||||
|
||||
fermentations.put(PotionType.SPEED, PotionType.SLOWNESS);
|
||||
fermentations.put(PotionType.JUMP, PotionType.SLOWNESS);
|
||||
fermentations.put(PotionType.INSTANT_HEAL, PotionType.INSTANT_DAMAGE);
|
||||
fermentations.put(PotionType.POISON, PotionType.INSTANT_DAMAGE);
|
||||
fermentations.put(PotionType.NIGHT_VISION, PotionType.INVISIBILITY);
|
||||
}
|
||||
|
||||
public AutoBrewer(Category category, SlimefunItemStack item, RecipeType recipeType, ItemStack[] recipe) {
|
||||
super(category, item, recipeType, recipe);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void tick(Block b) {
|
||||
BlockMenu menu = BlockStorage.getInventory(b.getLocation());
|
||||
|
||||
if (isProcessing(b)) {
|
||||
int timeleft = progress.get(b);
|
||||
|
||||
if (timeleft > 0) {
|
||||
ChestMenuUtils.updateProgressbar(menu, 22, timeleft, processing.get(b).getTicks(), getProgressBar());
|
||||
|
||||
if (ChargableBlock.isChargable(b)) {
|
||||
if (ChargableBlock.getCharge(b) < getEnergyConsumption()) {
|
||||
return;
|
||||
}
|
||||
|
||||
ChargableBlock.addCharge(b, -getEnergyConsumption());
|
||||
progress.put(b, timeleft - 1);
|
||||
}
|
||||
else {
|
||||
progress.put(b, timeleft - 1);
|
||||
}
|
||||
}
|
||||
else {
|
||||
menu.replaceExistingItem(22, new CustomItem(new ItemStack(Material.BLACK_STAINED_GLASS_PANE), " "));
|
||||
|
||||
for (ItemStack item : processing.get(b).getOutput()) {
|
||||
menu.pushItem(item, getOutputSlots());
|
||||
}
|
||||
|
||||
progress.remove(b);
|
||||
processing.remove(b);
|
||||
}
|
||||
}
|
||||
else {
|
||||
MachineRecipe recipe = findRecipe(menu);
|
||||
|
||||
if (recipe != null) {
|
||||
if (!InvUtils.fitAll(menu.toInventory(), recipe.getOutput(), getOutputSlots())) {
|
||||
return;
|
||||
}
|
||||
|
||||
for (int slot : getInputSlots()) {
|
||||
menu.consumeItem(slot);
|
||||
}
|
||||
|
||||
processing.put(b, recipe);
|
||||
progress.put(b, recipe.getTicks());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private MachineRecipe findRecipe(BlockMenu menu) {
|
||||
ItemStack input1 = menu.getItemInSlot(getInputSlots()[0]);
|
||||
ItemStack input2 = menu.getItemInSlot(getInputSlots()[1]);
|
||||
|
||||
if (input1 == null || input2 == null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
if (isPotion(input1.getType()) || isPotion(input2.getType())) {
|
||||
boolean slot = isPotion(input1.getType());
|
||||
ItemStack potionItem = slot ? input1 : input2;
|
||||
ItemStack ingredient = slot ? input2 : input1;
|
||||
|
||||
PotionMeta potion = (PotionMeta) potionItem.getItemMeta();
|
||||
|
||||
// Reject any named items
|
||||
if (ingredient.hasItemMeta()) {
|
||||
return null;
|
||||
}
|
||||
|
||||
PotionData potionData = potion.getBasePotionData();
|
||||
ItemStack output = brew(ingredient.getType(), potionItem.getType(), potion, potionData);
|
||||
|
||||
if (output == null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
output.setItemMeta(potion);
|
||||
return new MachineRecipe(30, new ItemStack[] { input1, input2 }, new ItemStack[] { output });
|
||||
}
|
||||
else {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
private ItemStack brew(Material input, Material potionType, PotionMeta potion, PotionData potionData) {
|
||||
if (potionData.getType() == PotionType.WATER) {
|
||||
if (input == Material.FERMENTED_SPIDER_EYE) {
|
||||
potion.setBasePotionData(new PotionData(PotionType.WEAKNESS, false, false));
|
||||
return new ItemStack(potionType);
|
||||
}
|
||||
else if (input == Material.NETHER_WART) {
|
||||
potion.setBasePotionData(new PotionData(PotionType.AWKWARD, false, false));
|
||||
return new ItemStack(potionType);
|
||||
}
|
||||
else if (potionType == Material.POTION && input == Material.GUNPOWDER) {
|
||||
return new ItemStack(Material.SPLASH_POTION);
|
||||
}
|
||||
else if (potionType == Material.SPLASH_POTION && input == Material.DRAGON_BREATH) {
|
||||
return new ItemStack(Material.LINGERING_POTION);
|
||||
}
|
||||
else {
|
||||
return null;
|
||||
}
|
||||
|
||||
}
|
||||
else if (input == Material.FERMENTED_SPIDER_EYE) {
|
||||
potion.setBasePotionData(new PotionData(fermentations.get(potionData.getType()), false, false));
|
||||
return new ItemStack(potionType);
|
||||
}
|
||||
else if (input == Material.REDSTONE) {
|
||||
potion.setBasePotionData(new PotionData(potionData.getType(), true, potionData.isUpgraded()));
|
||||
return new ItemStack(potionType);
|
||||
}
|
||||
else if (input == Material.GLOWSTONE_DUST) {
|
||||
potion.setBasePotionData(new PotionData(potionData.getType(), potionData.isExtended(), true));
|
||||
return new ItemStack(potionType);
|
||||
}
|
||||
else if (potionData.getType() == PotionType.AWKWARD && potionRecipes.containsKey(input)) {
|
||||
potion.setBasePotionData(new PotionData(potionRecipes.get(input), false, false));
|
||||
return new ItemStack(potionType);
|
||||
}
|
||||
else {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Checks whether a given {@link Material} is a valid Potion material.
|
||||
*
|
||||
* @param mat
|
||||
* The {@link Material} to check
|
||||
*
|
||||
* @return Whether this {@link Material} is a valid potion
|
||||
*/
|
||||
private boolean isPotion(Material mat) {
|
||||
return mat == Material.POTION || mat == Material.SPLASH_POTION || mat == Material.LINGERING_POTION;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getInventoryTitle() {
|
||||
return "&6Auto-Brewer";
|
||||
}
|
||||
|
||||
@Override
|
||||
public ItemStack getProgressBar() {
|
||||
return new ItemStack(Material.CARROT_ON_A_STICK);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getEnergyConsumption() {
|
||||
return 6;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getSpeed() {
|
||||
return 1;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getMachineIdentifier() {
|
||||
return "AUTO_BREWER";
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getCapacity() {
|
||||
return 128;
|
||||
}
|
||||
}
|
@ -20,18 +20,18 @@ public abstract class FoodFabricator extends AContainer {
|
||||
|
||||
@Override
|
||||
protected void registerDefaultRecipes() {
|
||||
registerRecipe(12, new ItemStack[] { SlimefunItems.CAN, new ItemStack(Material.WHEAT) }, new ItemStack[] { new SlimefunItemStack(SlimefunItems.WHEAT_ORGANIC_FOOD, OrganicFood.OUTPUT) });
|
||||
registerRecipe(12, new ItemStack[] { SlimefunItems.CAN, new ItemStack(Material.CARROT) }, new ItemStack[] { new SlimefunItemStack(SlimefunItems.CARROT_ORGANIC_FOOD, OrganicFood.OUTPUT) });
|
||||
registerRecipe(12, new ItemStack[] { SlimefunItems.CAN, new ItemStack(Material.POTATO) }, new ItemStack[] { new SlimefunItemStack(SlimefunItems.POTATO_ORGANIC_FOOD, OrganicFood.OUTPUT) });
|
||||
registerRecipe(12, new ItemStack[] { SlimefunItems.CAN, new ItemStack(Material.WHEAT_SEEDS) }, new ItemStack[] { new SlimefunItemStack(SlimefunItems.SEEDS_ORGANIC_FOOD, OrganicFood.OUTPUT) });
|
||||
registerRecipe(12, new ItemStack[] { SlimefunItems.CAN, new ItemStack(Material.BEETROOT) }, new ItemStack[] { new SlimefunItemStack(SlimefunItems.BEETROOT_ORGANIC_FOOD, OrganicFood.OUTPUT) });
|
||||
registerRecipe(12, new ItemStack[] { SlimefunItems.CAN, new ItemStack(Material.MELON_SLICE) }, new ItemStack[] { new SlimefunItemStack(SlimefunItems.MELON_ORGANIC_FOOD, OrganicFood.OUTPUT) });
|
||||
registerRecipe(12, new ItemStack[] { SlimefunItems.CAN, new ItemStack(Material.APPLE) }, new ItemStack[] { new SlimefunItemStack(SlimefunItems.APPLE_ORGANIC_FOOD, OrganicFood.OUTPUT) });
|
||||
registerRecipe(12, new ItemStack[] { SlimefunItems.CAN, new ItemStack(Material.DRIED_KELP) }, new ItemStack[] { new SlimefunItemStack(SlimefunItems.KELP_ORGANIC_FOOD, OrganicFood.OUTPUT) });
|
||||
registerRecipe(12, new ItemStack[] { SlimefunItems.CAN, new ItemStack(Material.COCOA_BEANS) }, new ItemStack[] { new SlimefunItemStack(SlimefunItems.COCOA_ORGANIC_FOOD, OrganicFood.OUTPUT) });
|
||||
registerRecipe(12, new ItemStack[] { SlimefunItems.TIN_CAN, new ItemStack(Material.WHEAT) }, new ItemStack[] { new SlimefunItemStack(SlimefunItems.WHEAT_ORGANIC_FOOD, OrganicFood.OUTPUT) });
|
||||
registerRecipe(12, new ItemStack[] { SlimefunItems.TIN_CAN, new ItemStack(Material.CARROT) }, new ItemStack[] { new SlimefunItemStack(SlimefunItems.CARROT_ORGANIC_FOOD, OrganicFood.OUTPUT) });
|
||||
registerRecipe(12, new ItemStack[] { SlimefunItems.TIN_CAN, new ItemStack(Material.POTATO) }, new ItemStack[] { new SlimefunItemStack(SlimefunItems.POTATO_ORGANIC_FOOD, OrganicFood.OUTPUT) });
|
||||
registerRecipe(12, new ItemStack[] { SlimefunItems.TIN_CAN, new ItemStack(Material.WHEAT_SEEDS) }, new ItemStack[] { new SlimefunItemStack(SlimefunItems.SEEDS_ORGANIC_FOOD, OrganicFood.OUTPUT) });
|
||||
registerRecipe(12, new ItemStack[] { SlimefunItems.TIN_CAN, new ItemStack(Material.BEETROOT) }, new ItemStack[] { new SlimefunItemStack(SlimefunItems.BEETROOT_ORGANIC_FOOD, OrganicFood.OUTPUT) });
|
||||
registerRecipe(12, new ItemStack[] { SlimefunItems.TIN_CAN, new ItemStack(Material.MELON_SLICE) }, new ItemStack[] { new SlimefunItemStack(SlimefunItems.MELON_ORGANIC_FOOD, OrganicFood.OUTPUT) });
|
||||
registerRecipe(12, new ItemStack[] { SlimefunItems.TIN_CAN, new ItemStack(Material.APPLE) }, new ItemStack[] { new SlimefunItemStack(SlimefunItems.APPLE_ORGANIC_FOOD, OrganicFood.OUTPUT) });
|
||||
registerRecipe(12, new ItemStack[] { SlimefunItems.TIN_CAN, new ItemStack(Material.DRIED_KELP) }, new ItemStack[] { new SlimefunItemStack(SlimefunItems.KELP_ORGANIC_FOOD, OrganicFood.OUTPUT) });
|
||||
registerRecipe(12, new ItemStack[] { SlimefunItems.TIN_CAN, new ItemStack(Material.COCOA_BEANS) }, new ItemStack[] { new SlimefunItemStack(SlimefunItems.COCOA_ORGANIC_FOOD, OrganicFood.OUTPUT) });
|
||||
|
||||
if (SlimefunPlugin.getMinecraftVersion().isAtLeast(MinecraftVersion.MINECRAFT_1_14)) {
|
||||
registerRecipe(12, new ItemStack[] { SlimefunItems.CAN, new ItemStack(Material.SWEET_BERRIES) }, new ItemStack[] { new SlimefunItemStack(SlimefunItems.SWEET_BERRIES_ORGANIC_FOOD, OrganicFood.OUTPUT) });
|
||||
registerRecipe(12, new ItemStack[] { SlimefunItems.TIN_CAN, new ItemStack(Material.SWEET_BERRIES) }, new ItemStack[] { new SlimefunItemStack(SlimefunItems.SWEET_BERRIES_ORGANIC_FOOD, OrganicFood.OUTPUT) });
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -19,15 +19,18 @@ import me.mrCookieSlime.Slimefun.api.SlimefunItemStack;
|
||||
/**
|
||||
* This {@link SlimefunItem} allows you to convert any {@link ZombieVillager} to
|
||||
* their {@link Villager} variant. It is also one of the very few utilisations of {@link EntityInteractHandler}.
|
||||
*
|
||||
* This item does not work on earlier versions than 1.14 as the {@link ZombieVillager} {@link EntityType}
|
||||
* did not exist back then.
|
||||
*
|
||||
* @author Linox
|
||||
*
|
||||
* @see EntityInteractHandler
|
||||
*
|
||||
*/
|
||||
public class MagicPills extends SimpleSlimefunItem<EntityInteractHandler> {
|
||||
public class MagicalZombiePills extends SimpleSlimefunItem<EntityInteractHandler> {
|
||||
|
||||
public MagicPills(Category category, SlimefunItemStack item, RecipeType recipeType, ItemStack[] recipe, ItemStack recipeOutput) {
|
||||
public MagicalZombiePills(Category category, SlimefunItemStack item, RecipeType recipeType, ItemStack[] recipe, ItemStack recipeOutput) {
|
||||
super(category, item, recipeType, recipe, recipeOutput);
|
||||
}
|
||||
|
||||
@ -40,14 +43,10 @@ public class MagicPills extends SimpleSlimefunItem<EntityInteractHandler> {
|
||||
p.playSound(p.getLocation(), Sound.ENTITY_ZOMBIE_VILLAGER_CONVERTED, 1, 1);
|
||||
|
||||
ZombieVillager zombieVillager = (ZombieVillager) entity;
|
||||
if (SlimefunPlugin.getMinecraftVersion().isAtLeast(MinecraftVersion.MINECRAFT_1_14)) {
|
||||
zombieVillager.setConversionTime(1);
|
||||
if (SlimefunPlugin.getMinecraftVersion().isAtLeast(MinecraftVersion.MINECRAFT_1_15)) {
|
||||
zombieVillager.setConversionPlayer(p);
|
||||
}
|
||||
zombieVillager.setConversionTime(1);
|
||||
|
||||
} else {
|
||||
zombieVillager.setVillager(true);
|
||||
if (SlimefunPlugin.getMinecraftVersion().isAtLeast(MinecraftVersion.MINECRAFT_1_15)) {
|
||||
zombieVillager.setConversionPlayer(p);
|
||||
}
|
||||
}
|
||||
};
|
@ -14,7 +14,7 @@ public class OrganicFood extends SlimefunItem {
|
||||
public static final int OUTPUT = 2;
|
||||
|
||||
public OrganicFood(Category category, SlimefunItemStack item, Material ingredient) {
|
||||
super(category, item, RecipeType.FOOD_FABRICATOR, new ItemStack[] { SlimefunItems.CAN, new ItemStack(ingredient), null, null, null, null, null, null, null }, new SlimefunItemStack(item, OUTPUT));
|
||||
super(category, item, RecipeType.FOOD_FABRICATOR, new ItemStack[] { SlimefunItems.TIN_CAN, new ItemStack(ingredient), null, null, null, null, null, null, null }, new SlimefunItemStack(item, OUTPUT));
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -29,19 +29,22 @@ public class PlayerInteractEntityListener implements Listener {
|
||||
|
||||
@EventHandler
|
||||
public void onInteractEntity(PlayerInteractAtEntityEvent e) {
|
||||
|
||||
if (!e.getRightClicked().isValid()) return;
|
||||
if (!e.getRightClicked().isValid()) {
|
||||
return;
|
||||
}
|
||||
|
||||
ItemStack itemStack;
|
||||
|
||||
if (e.getHand() == EquipmentSlot.OFF_HAND) {
|
||||
itemStack = e.getPlayer().getInventory().getItemInOffHand();
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
itemStack = e.getPlayer().getInventory().getItemInMainHand();
|
||||
}
|
||||
SlimefunItem sfItem = SlimefunItem.getByItem(itemStack);
|
||||
if (sfItem == null) return;
|
||||
|
||||
if (Slimefun.hasUnlocked(e.getPlayer(), sfItem, true)) {
|
||||
SlimefunItem sfItem = SlimefunItem.getByItem(itemStack);
|
||||
|
||||
if (sfItem != null && Slimefun.hasUnlocked(e.getPlayer(), sfItem, true)) {
|
||||
sfItem.callItemHandler(EntityInteractHandler.class, handler -> handler.onInteract(e.getPlayer(), e.getRightClicked(), itemStack, e.getHand() == EquipmentSlot.OFF_HAND));
|
||||
}
|
||||
}
|
||||
|
@ -45,7 +45,7 @@ class DefaultCategories {
|
||||
protected final Category magicalArmor = new Category(new NamespacedKey(SlimefunPlugin.instance, "magical_armor"), new CustomItem(SlimefunItems.ENDER_HELMET, "&7Magical Armor"), 2);
|
||||
|
||||
// Resources and tech stuff
|
||||
protected final Category misc = new Category(new NamespacedKey(SlimefunPlugin.instance, "misc"), new CustomItem(SlimefunItems.CAN, "&7Miscellaneous"), 2);
|
||||
protected final Category misc = new Category(new NamespacedKey(SlimefunPlugin.instance, "misc"), new CustomItem(SlimefunItems.TIN_CAN, "&7Miscellaneous"), 2);
|
||||
protected final Category technicalComponents = new Category(new NamespacedKey(SlimefunPlugin.instance, "tech_misc"), new CustomItem(SlimefunItems.HEATING_COIL, "&7Technical Components"), 2);
|
||||
protected final Category technicalGadgets = new Category(new NamespacedKey(SlimefunPlugin.instance, "technical_gadgets"), new CustomItem(SlimefunItems.STEEL_JETPACK, "&7Technical Gadgets"), 3);
|
||||
protected final Category resources = new Category(new NamespacedKey(SlimefunPlugin.instance, "resources"), new CustomItem(SlimefunItems.SYNTHETIC_SAPPHIRE, "&7Resources"), 1);
|
||||
|
@ -109,7 +109,7 @@ public final class ResearchSetup {
|
||||
register("crushed_ore", 81, "Ore Purification", 25, SlimefunItems.CRUSHED_ORE, SlimefunItems.PULVERIZED_ORE, SlimefunItems.PURE_ORE_CLUSTER);
|
||||
register("redstone_alloy", 84, "Redstone Alloy", 16, SlimefunItems.REDSTONE_ALLOY);
|
||||
register("carbonado_tools", 85, "Top Tier Machines", 24, SlimefunItems.CARBONADO_MULTI_TOOL, SlimefunItems.CARBONADO_JETPACK, SlimefunItems.CARBONADO_JETBOOTS);
|
||||
register("first_aid", 86, "First Aid", 2, SlimefunItems.CLOTH, SlimefunItems.RAG, SlimefunItems.BANDAGE, SlimefunItems.SPLINT, SlimefunItems.CAN, SlimefunItems.VITAMINS, SlimefunItems.MEDICINE);
|
||||
register("first_aid", 86, "First Aid", 2, SlimefunItems.CLOTH, SlimefunItems.RAG, SlimefunItems.BANDAGE, SlimefunItems.SPLINT, SlimefunItems.TIN_CAN, SlimefunItems.VITAMINS, SlimefunItems.MEDICINE);
|
||||
register("gold_armor", 87, "Shiny Armor", 13, SlimefunItems.GOLD_HELMET, SlimefunItems.GOLD_CHESTPLATE, SlimefunItems.GOLD_LEGGINGS, SlimefunItems.GOLD_BOOTS);
|
||||
register("night_vision_googles", 89, "Night Vision Goggles", 10, SlimefunItems.NIGHT_VISION_GOGGLES);
|
||||
register("pickaxe_of_containment", 90, "Pickaxe of Containment", 14, SlimefunItems.PICKAXE_OF_CONTAINMENT, SlimefunItems.BROKEN_SPAWNER);
|
||||
@ -265,8 +265,9 @@ public final class ResearchSetup {
|
||||
register("tree_growth_accelerator", 256, "Faster Trees", 18, SlimefunItems.TREE_GROWTH_ACCELERATOR);
|
||||
register("industrial_miner", 95, "Industrial Mining", 28, SlimefunItems.INDUSTRIAL_MINER);
|
||||
register("advanced_industrial_miner", 98, "Better Mining", 36, SlimefunItems.ADVANCED_INDUSTRIAL_MINER);
|
||||
register("magic_pills", 257, "De-Zombification", 22, SlimefunItems.MAGIC_PILLS);
|
||||
register("shulker_shell", 258, "Synthetic Shulkers", 30, new ItemStack(Material.SHULKER_SHELL));
|
||||
register("magical_zombie_pills", 257, "De-Zombification", 22, SlimefunItems.MAGICAL_ZOMBIE_PILLS);
|
||||
register("auto_brewer", 258, "Industrial Brewery", 30, SlimefunItems.AUTO_BREWER);
|
||||
register("shulker_shell", 259, "Synthetic Shulkers", 30, new ItemStack(Material.SHULKER_SHELL));
|
||||
}
|
||||
|
||||
private static void register(String key, int id, String name, int defaultCost, ItemStack... items) {
|
||||
|
@ -71,6 +71,7 @@ import io.github.thebusybiscuit.slimefun4.implementation.items.electric.generato
|
||||
import io.github.thebusybiscuit.slimefun4.implementation.items.electric.machines.AnimalGrowthAccelerator;
|
||||
import io.github.thebusybiscuit.slimefun4.implementation.items.electric.machines.AutoAnvil;
|
||||
import io.github.thebusybiscuit.slimefun4.implementation.items.electric.machines.AutoBreeder;
|
||||
import io.github.thebusybiscuit.slimefun4.implementation.items.electric.machines.AutoBrewer;
|
||||
import io.github.thebusybiscuit.slimefun4.implementation.items.electric.machines.AutoDisenchanter;
|
||||
import io.github.thebusybiscuit.slimefun4.implementation.items.electric.machines.AutoDrier;
|
||||
import io.github.thebusybiscuit.slimefun4.implementation.items.electric.machines.AutoEnchanter;
|
||||
@ -121,7 +122,7 @@ import io.github.thebusybiscuit.slimefun4.implementation.items.magical.InfusedMa
|
||||
import io.github.thebusybiscuit.slimefun4.implementation.items.magical.KnowledgeFlask;
|
||||
import io.github.thebusybiscuit.slimefun4.implementation.items.magical.KnowledgeTome;
|
||||
import io.github.thebusybiscuit.slimefun4.implementation.items.magical.MagicEyeOfEnder;
|
||||
import io.github.thebusybiscuit.slimefun4.implementation.items.magical.MagicPills;
|
||||
import io.github.thebusybiscuit.slimefun4.implementation.items.magical.MagicalZombiePills;
|
||||
import io.github.thebusybiscuit.slimefun4.implementation.items.magical.SoulboundItem;
|
||||
import io.github.thebusybiscuit.slimefun4.implementation.items.magical.SoulboundRune;
|
||||
import io.github.thebusybiscuit.slimefun4.implementation.items.magical.StormStaff;
|
||||
@ -290,7 +291,8 @@ public final class SlimefunItemSetup {
|
||||
new Compressor(categories.basicMachines, SlimefunItems.COMPRESSOR).register(plugin);
|
||||
|
||||
new SlimefunItem(categories.magicalResources, SlimefunItems.MAGIC_LUMP_1, RecipeType.GRIND_STONE,
|
||||
new ItemStack[] {new ItemStack(Material.NETHER_WART), null, null, null, null, null, null, null, null}, new CustomItem(SlimefunItems.MAGIC_LUMP_1, 2))
|
||||
new ItemStack[] {new ItemStack(Material.NETHER_WART), null, null, null, null, null, null, null, null},
|
||||
new CustomItem(SlimefunItems.MAGIC_LUMP_1, 2))
|
||||
.register(plugin);
|
||||
|
||||
new SlimefunItem(categories.magicalResources, SlimefunItems.MAGIC_LUMP_2, RecipeType.ENHANCED_CRAFTING_TABLE,
|
||||
@ -644,7 +646,8 @@ public final class SlimefunItemSetup {
|
||||
.register(plugin);
|
||||
|
||||
new SlimefunItem(categories.misc, SlimefunItems.CHAIN, RecipeType.ENHANCED_CRAFTING_TABLE,
|
||||
new ItemStack[] {null, null, SlimefunItems.STEEL_INGOT, null, SlimefunItems.STEEL_INGOT, null, SlimefunItems.STEEL_INGOT, null, null}, new CustomItem(SlimefunItems.CHAIN, 8))
|
||||
new ItemStack[] {null, null, SlimefunItems.STEEL_INGOT, null, SlimefunItems.STEEL_INGOT, null, SlimefunItems.STEEL_INGOT, null, null},
|
||||
new CustomItem(SlimefunItems.CHAIN, 8))
|
||||
.register(plugin);
|
||||
|
||||
new SlimefunItem(categories.misc, SlimefunItems.HOOK, RecipeType.ENHANCED_CRAFTING_TABLE,
|
||||
@ -781,17 +784,18 @@ public final class SlimefunItemSetup {
|
||||
new StormStaff(categories.magicalGadgets, SlimefunItems.STAFF_STORM, RecipeType.ANCIENT_ALTAR,
|
||||
new ItemStack[] {SlimefunItems.LIGHTNING_RUNE, SlimefunItems.ENDER_LUMP_3, SlimefunItems.LIGHTNING_RUNE, SlimefunItems.STAFF_WATER, SlimefunItems.MAGIC_SUGAR, SlimefunItems.STAFF_WIND, SlimefunItems.LIGHTNING_RUNE, SlimefunItems.ENDER_LUMP_3, SlimefunItems.LIGHTNING_RUNE})
|
||||
.register(plugin);
|
||||
|
||||
ItemStack weaknessPotion = new ItemStack(Material.POTION);
|
||||
PotionMeta meta = (PotionMeta) weaknessPotion.getItemMeta();
|
||||
meta.setBasePotionData(new PotionData(PotionType.WEAKNESS, false, false));
|
||||
weaknessPotion.setItemMeta(meta);
|
||||
|
||||
new MagicalZombiePills(categories.magicalGadgets, SlimefunItems.MAGICAL_ZOMBIE_PILLS, RecipeType.MAGIC_WORKBENCH,
|
||||
new ItemStack[] {new ItemStack(Material.GOLD_INGOT), SlimefunItems.MAGIC_LUMP_2, new ItemStack(Material.GOLD_INGOT), new ItemStack(Material.APPLE), weaknessPotion, new ItemStack(Material.APPLE), new ItemStack(Material.GOLD_INGOT), SlimefunItems.MAGIC_LUMP_2, new ItemStack(Material.GOLD_INGOT)},
|
||||
new CustomItem(SlimefunItems.MAGICAL_ZOMBIE_PILLS, 2))
|
||||
.register(plugin);
|
||||
}
|
||||
|
||||
ItemStack magicPillsRecipePotion = new ItemStack(Material.POTION);
|
||||
PotionMeta meta = (PotionMeta) magicPillsRecipePotion.getItemMeta();
|
||||
meta.setBasePotionData(new PotionData(PotionType.WEAKNESS, false, false));
|
||||
magicPillsRecipePotion.setItemMeta(meta);
|
||||
new MagicPills(categories.magicalGadgets, SlimefunItems.MAGIC_PILLS, RecipeType.MAGIC_WORKBENCH,
|
||||
new ItemStack[] {new ItemStack(Material.GOLD_INGOT), SlimefunItems.MAGIC_LUMP_2, new ItemStack(Material.GOLD_INGOT), new ItemStack(Material.APPLE), magicPillsRecipePotion, new ItemStack(Material.APPLE), new ItemStack(Material.GOLD_INGOT), SlimefunItems.MAGIC_LUMP_2, new ItemStack(Material.GOLD_INGOT)},
|
||||
new CustomItem(SlimefunItems.MAGIC_PILLS, 4))
|
||||
.register(plugin);
|
||||
|
||||
new SmeltersPickaxe(categories.tools, SlimefunItems.SMELTERS_PICKAXE, RecipeType.ENHANCED_CRAFTING_TABLE,
|
||||
new ItemStack[] {SlimefunItems.LAVA_CRYSTAL, SlimefunItems.LAVA_CRYSTAL, SlimefunItems.LAVA_CRYSTAL, null, SlimefunItems.FERROSILICON, null, null, SlimefunItems.FERROSILICON, null})
|
||||
.register(plugin);
|
||||
@ -953,7 +957,8 @@ public final class SlimefunItemSetup {
|
||||
}, "GOLD_12K", false, plugin);
|
||||
|
||||
new SlimefunItem(categories.misc, SlimefunItems.CLOTH, RecipeType.ENHANCED_CRAFTING_TABLE,
|
||||
new ItemStack[] {new ItemStack(Material.WHITE_WOOL), null, null, null, null, null, null, null, null}, new CustomItem(SlimefunItems.CLOTH, 8))
|
||||
new ItemStack[] {new ItemStack(Material.WHITE_WOOL), null, null, null, null, null, null, null, null},
|
||||
new CustomItem(SlimefunItems.CLOTH, 8))
|
||||
.register(plugin);
|
||||
|
||||
new Rag(categories.usefulItems, SlimefunItems.RAG, RecipeType.ENHANCED_CRAFTING_TABLE,
|
||||
@ -970,13 +975,13 @@ public final class SlimefunItemSetup {
|
||||
new CustomItem(SlimefunItems.SPLINT, 4))
|
||||
.register(plugin);
|
||||
|
||||
new SlimefunItem(categories.misc, SlimefunItems.CAN, RecipeType.ENHANCED_CRAFTING_TABLE,
|
||||
new SlimefunItem(categories.misc, SlimefunItems.TIN_CAN, RecipeType.ENHANCED_CRAFTING_TABLE,
|
||||
new ItemStack[] {SlimefunItems.TIN_INGOT, SlimefunItems.TIN_INGOT, SlimefunItems.TIN_INGOT, SlimefunItems.TIN_INGOT, null, SlimefunItems.TIN_INGOT, SlimefunItems.TIN_INGOT, SlimefunItems.TIN_INGOT, SlimefunItems.TIN_INGOT},
|
||||
new CustomItem(SlimefunItems.CAN, 4))
|
||||
new CustomItem(SlimefunItems.TIN_CAN, 8))
|
||||
.register(plugin);
|
||||
|
||||
new Vitamins(categories.usefulItems, SlimefunItems.VITAMINS, RecipeType.ENHANCED_CRAFTING_TABLE,
|
||||
new ItemStack[] {SlimefunItems.CAN, new ItemStack(Material.APPLE), new ItemStack(Material.RED_MUSHROOM), new ItemStack(Material.SUGAR), null, null, null, null, null})
|
||||
new ItemStack[] {SlimefunItems.TIN_CAN, new ItemStack(Material.APPLE), new ItemStack(Material.RED_MUSHROOM), new ItemStack(Material.SUGAR), null, null, null, null, null})
|
||||
.register(plugin);
|
||||
|
||||
new Medicine(categories.usefulItems, SlimefunItems.MEDICINE, RecipeType.ENHANCED_CRAFTING_TABLE,
|
||||
@ -1976,6 +1981,10 @@ public final class SlimefunItemSetup {
|
||||
.register(plugin);
|
||||
}
|
||||
|
||||
new AutoBrewer(categories.electricity, SlimefunItems.AUTO_BREWER, RecipeType.ENHANCED_CRAFTING_TABLE,
|
||||
new ItemStack[] {null, SlimefunItems.HEATING_COIL, null, SlimefunItems.REINFORCED_PLATE, new ItemStack(Material.BREWING_STAND), SlimefunItems.REINFORCED_PLATE, null, SlimefunItems.ELECTRIC_MOTOR, null})
|
||||
.register(plugin);
|
||||
|
||||
new ElectricPress(categories.electricity, SlimefunItems.ELECTRIC_PRESS, RecipeType.ENHANCED_CRAFTING_TABLE,
|
||||
new ItemStack[] {new ItemStack(Material.PISTON), SlimefunItems.ELECTRIC_MOTOR, new ItemStack(Material.PISTON), null, SlimefunItems.MEDIUM_CAPACITOR, null, SlimefunItems.DAMASCUS_STEEL_INGOT, SlimefunItems.DAMASCUS_STEEL_INGOT, SlimefunItems.DAMASCUS_STEEL_INGOT}) {
|
||||
|
||||
@ -2784,7 +2793,7 @@ public final class SlimefunItemSetup {
|
||||
.register(plugin);
|
||||
|
||||
new FoodFabricator(categories.electricity, SlimefunItems.FOOD_FABRICATOR, RecipeType.ENHANCED_CRAFTING_TABLE,
|
||||
new ItemStack[] {SlimefunItems.BILLON_INGOT, SlimefunItems.SILVER_INGOT, SlimefunItems.BILLON_INGOT, SlimefunItems.CAN, SlimefunItems.SMALL_CAPACITOR, SlimefunItems.CAN, null, SlimefunItems.ELECTRIC_MOTOR, null}) {
|
||||
new ItemStack[] {SlimefunItems.BILLON_INGOT, SlimefunItems.SILVER_INGOT, SlimefunItems.BILLON_INGOT, SlimefunItems.TIN_CAN, SlimefunItems.SMALL_CAPACITOR, SlimefunItems.TIN_CAN, null, SlimefunItems.ELECTRIC_MOTOR, null}) {
|
||||
|
||||
@Override
|
||||
public int getEnergyConsumption() {
|
||||
@ -2856,7 +2865,7 @@ public final class SlimefunItemSetup {
|
||||
.register(plugin);
|
||||
|
||||
new AutoBreeder(categories.electricity, SlimefunItems.AUTO_BREEDER, RecipeType.ENHANCED_CRAFTING_TABLE,
|
||||
new ItemStack[] {SlimefunItems.GOLD_18K, SlimefunItems.CAN, SlimefunItems.GOLD_18K, SlimefunItems.ELECTRIC_MOTOR, new ItemStack(Material.HAY_BLOCK), SlimefunItems.ELECTRIC_MOTOR, SlimefunItems.LEAD_INGOT, SlimefunItems.FOOD_FABRICATOR, SlimefunItems.LEAD_INGOT})
|
||||
new ItemStack[] {SlimefunItems.GOLD_18K, SlimefunItems.TIN_CAN, SlimefunItems.GOLD_18K, SlimefunItems.ELECTRIC_MOTOR, new ItemStack(Material.HAY_BLOCK), SlimefunItems.ELECTRIC_MOTOR, SlimefunItems.LEAD_INGOT, SlimefunItems.FOOD_FABRICATOR, SlimefunItems.LEAD_INGOT})
|
||||
.register(plugin);
|
||||
|
||||
new AnimalGrowthAccelerator(categories.electricity, SlimefunItems.ANIMAL_GROWTH_ACCELERATOR, RecipeType.ENHANCED_CRAFTING_TABLE,
|
||||
@ -2872,7 +2881,7 @@ public final class SlimefunItemSetup {
|
||||
.register(plugin);
|
||||
|
||||
new FoodComposter(categories.electricity, SlimefunItems.FOOD_COMPOSTER, RecipeType.ENHANCED_CRAFTING_TABLE,
|
||||
new ItemStack[] {SlimefunItems.DAMASCUS_STEEL_INGOT, SlimefunItems.FOOD_FABRICATOR, SlimefunItems.DAMASCUS_STEEL_INGOT, SlimefunItems.CAN, SlimefunItems.MEDIUM_CAPACITOR, SlimefunItems.CAN, null, SlimefunItems.ELECTRIC_MOTOR, null}) {
|
||||
new ItemStack[] {SlimefunItems.DAMASCUS_STEEL_INGOT, SlimefunItems.FOOD_FABRICATOR, SlimefunItems.DAMASCUS_STEEL_INGOT, SlimefunItems.TIN_CAN, SlimefunItems.MEDIUM_CAPACITOR, SlimefunItems.TIN_CAN, null, SlimefunItems.ELECTRIC_MOTOR, null}) {
|
||||
|
||||
@Override
|
||||
public int getEnergyConsumption() {
|
||||
|
@ -31,7 +31,7 @@ public final class SlimefunItems {
|
||||
public static final SlimefunItemStack GRAPPLING_HOOK = io.github.thebusybiscuit.slimefun4.implementation.SlimefunItems.GRAPPLING_HOOK;
|
||||
public static final SlimefunItemStack SOLAR_HELMET = io.github.thebusybiscuit.slimefun4.implementation.SlimefunItems.SOLAR_HELMET;
|
||||
public static final SlimefunItemStack CLOTH = io.github.thebusybiscuit.slimefun4.implementation.SlimefunItems.CLOTH;
|
||||
public static final SlimefunItemStack CAN = io.github.thebusybiscuit.slimefun4.implementation.SlimefunItems.CAN;
|
||||
public static final SlimefunItemStack CAN = io.github.thebusybiscuit.slimefun4.implementation.SlimefunItems.TIN_CAN;
|
||||
public static final SlimefunItemStack NIGHT_VISION_GOGGLES = io.github.thebusybiscuit.slimefun4.implementation.SlimefunItems.NIGHT_VISION_GOGGLES;
|
||||
public static final SlimefunItemStack FARMER_SHOES = io.github.thebusybiscuit.slimefun4.implementation.SlimefunItems.FARMER_SHOES;
|
||||
public static final SlimefunItemStack INFUSED_MAGNET = io.github.thebusybiscuit.slimefun4.implementation.SlimefunItems.INFUSED_MAGNET;
|
||||
|
@ -23,3 +23,4 @@ slimefun:
|
||||
easter: 復活祭(4月)
|
||||
birthday: TheBusyBiscuit生誕祭(10月26日)
|
||||
halloween: ハロウィン(10月31日)
|
||||
androids: プログラム制御アンドロイド
|
||||
|
@ -43,3 +43,4 @@ slimefun:
|
||||
halloween: '할로윈(10월 31일)
|
||||
|
||||
'
|
||||
androids: 프로그래밍 가능한 안드로이드
|
||||
|
26
src/main/resources/languages/categories_tl.yml
Normal file
26
src/main/resources/languages/categories_tl.yml
Normal file
@ -0,0 +1,26 @@
|
||||
---
|
||||
slimefun:
|
||||
weapons: Mga Armas
|
||||
tools: Mga Tools
|
||||
items: Mga Aytem
|
||||
food: Mga Pagkain
|
||||
basic_machines: Mga Pangunahing Makina
|
||||
electricity: Enerhiya at Elektrisidad
|
||||
gps: Mga Makinang GPS-Based
|
||||
armor: Mga Magkabaluti
|
||||
magical_items: Mga Mahiwagang Aytem
|
||||
magical_gadgets: Mga Mahiwagang Gadyet
|
||||
misc: Mga Samut-Saring Aytem
|
||||
technical_gadgets: Mga Teknikal Gadyet
|
||||
resources: Mga Mapagkukunan
|
||||
cargo: Pamamahala ng Kargamento
|
||||
tech_misc: Mga Komponent na Teknikal
|
||||
magical_armor: Mga Mahiwagang Magkabaluti
|
||||
talismans: Mga Anting-anting (Baitang I)
|
||||
ender_talismans: Mga Anting-anting na Ender (Baitang II)
|
||||
christmas: Pasko (Disyembre)
|
||||
valentines_day: Araw ng mga Puso (14th Pebrero)
|
||||
easter: Mahal na Araw (Abril)
|
||||
birthday: Ang Kaarawan ni TheBusyBiscuit (26th Oktubre)
|
||||
halloween: Undas (31st Oktubre)
|
||||
androids: Mga Androids na Maipoprograma
|
@ -155,6 +155,10 @@ messages:
|
||||
- '&742. The answer is 42.'
|
||||
- '&7A Walshy a day will keep the troubles away.'
|
||||
- '&7Never dig straight down!'
|
||||
- '&7Tis but a flesh wound!'
|
||||
- '&7Always look on the bright side of life!'
|
||||
- '&7This one was actually a Biscuit and not a Cookie'
|
||||
- '&7Neon signs are LIT!'
|
||||
|
||||
machines:
|
||||
pattern-not-found: '&eSorry, I could not recognize this Recipe. Please place the Items in the correct pattern into the Dispenser.'
|
||||
@ -323,6 +327,7 @@ languages:
|
||||
ja: 'Japanese'
|
||||
fa: 'Persian'
|
||||
th: 'Thai'
|
||||
tl: 'Tagalog'
|
||||
ro: 'Romanian'
|
||||
bg: 'Bulgarian'
|
||||
ko: 'Korean'
|
||||
@ -330,4 +335,4 @@ languages:
|
||||
hr: 'Croatian'
|
||||
mk: 'Macedonian'
|
||||
sr: 'Serbian'
|
||||
be: 'Belarusian'
|
||||
be: 'Belarusian'
|
||||
|
@ -1,238 +1,133 @@
|
||||
---
|
||||
android:
|
||||
scripts:
|
||||
already-uploaded: "&4このスクリプトはアップロード済みです"
|
||||
editor: スクリプトエディタ
|
||||
enter-name:
|
||||
-
|
||||
- "&eスクリプトの名前を入力してください"
|
||||
instructions:
|
||||
ATTACK_ANIMALS: "&4攻撃&c(動物)"
|
||||
ATTACK_ANIMALS_ADULT: "&4攻撃&c(動物&7[親]&c)"
|
||||
ATTACK_MOBS: "&4攻撃&c(モンスター)"
|
||||
ATTACK_MOBS_ANIMALS: "&4攻撃&c(モンスター・動物)"
|
||||
CATCH_FISH: "&b釣り"
|
||||
CHOP_TREE: "&c伐採・植林"
|
||||
DIG_DOWN: "&b下を採掘"
|
||||
DIG_FORWARD: "&b前を採掘"
|
||||
DIG_UP: "&b上を採掘"
|
||||
FARM_DOWN: "&b収穫・植え直し&7(下方)"
|
||||
FARM_EXOTIC_DOWN: "&bExoticGardenの収穫・植え直し&7(下方)"
|
||||
FARM_EXOTIC_FORWARD: "&bExoticGardenの収穫・植え直し"
|
||||
FARM_FORWARD: "&b収穫・植え直し"
|
||||
GO_DOWN: "&7下へ移動"
|
||||
GO_FORWARD: "&7前へ移動"
|
||||
GO_UP: "&7上へ移動"
|
||||
INTERFACE_FUEL: "&c燃料をInterfaceから取り出す"
|
||||
INTERFACE_ITEMS: "&9所持アイテムをInterfaceに入れる"
|
||||
MOVE_AND_DIG_DOWN: "&b下へ移動・採掘"
|
||||
MOVE_AND_DIG_FORWARD: "&b前へ移動・採掘"
|
||||
MOVE_AND_DIG_UP: "&b上へ移動・採掘"
|
||||
REPEAT: "&9繰り返し"
|
||||
START: "&2開始"
|
||||
TURN_LEFT: "&7左へ旋回"
|
||||
TURN_RIGHT: "&7右へ旋回"
|
||||
WAIT: "&e0.5秒待機"
|
||||
rating:
|
||||
already: "&4このスクリプトは評価済みです!"
|
||||
own: "&4自身のスクリプトは評価できません!"
|
||||
uploaded:
|
||||
- "&bアップロード中…"
|
||||
- "&aスクリプトのアップロード完了!"
|
||||
started: "&7アンドロイド動作開始"
|
||||
stopped: "&7アンドロイド動作停止"
|
||||
anvil:
|
||||
not-working: "&4Slimefunアイテムは金床を利用できません!"
|
||||
backpack:
|
||||
already-open: "&cこのバックパックはどこかで使用中です!"
|
||||
no-stack: "&cバックパックはスタックされていると使用できません!"
|
||||
commands:
|
||||
help: コマンドの使い方を表示
|
||||
cheat: Slimefunガイドをチートモードで開く
|
||||
give: 指定したプレイヤーにSlimefunアイテムを与える
|
||||
guide: Slimefunガイドを取得
|
||||
help: コマンドの使い方を表示
|
||||
timings: サーバの負荷状況を表示
|
||||
teleporter: 指定したプレイヤーのウェイポイントを表示
|
||||
versions: バージョンについて
|
||||
search: Slimefunガイド内を検索
|
||||
open_guide: Slimefunガイドを開く
|
||||
stats: プレイヤー情報を表示
|
||||
research:
|
||||
description: 指定したプレイヤーのリサーチ状況を操作
|
||||
reset: "&c%player%のリサーチ状況を初期化しました"
|
||||
reset-target: "&cリサーチ状況が初期化されました"
|
||||
search: Slimefunガイド内を検索
|
||||
stats: プレイヤー情報を表示
|
||||
teleporter: 指定したプレイヤーのウェイポイントを表示
|
||||
timings: サーバの負荷状況を表示
|
||||
versions: バージョンについて
|
||||
backpack:
|
||||
description: 生成済みのバックパックを取り出します
|
||||
invalid-id: "&4IDは非負整数にしてください!"
|
||||
player-never-joined: "&4その名前のプレイヤーが見つかりません!"
|
||||
backpack-does-not-exist: "&4指定したバックパックは存在しません!"
|
||||
restored-backpack-given: "&aバックパックが返還されました!"
|
||||
gps:
|
||||
deathpoint: "&4死亡地点 &7%date%"
|
||||
geo:
|
||||
scan-required: "&4惑星スキャンが必要です!&cGEO-Scannerでスキャンしてください!"
|
||||
insufficient-complexity:
|
||||
- "&4GPSネットワークの複雑さ不足: &c%complexity%"
|
||||
- "&4a) GPSネットワークをセットアップしていない"
|
||||
- "&4b) GPSネットワークの複雑さが不足している"
|
||||
waypoint:
|
||||
added: "&a新しいウェイポイントを登録しました"
|
||||
max: "&4ウェイポイント数の上限に到達しています"
|
||||
new: "&eウェイポイント名をチャットで入力してください&7(カラーコード対応)"
|
||||
guide:
|
||||
back:
|
||||
guide: Slimefunガイドへ戻る
|
||||
settings: 設定画面へ戻る
|
||||
title: 戻る
|
||||
search:
|
||||
message: "&b検索ワードをチャットで入力してください"
|
||||
name: "&7検索…"
|
||||
tooltip: "&bクリックでアイテムの検索"
|
||||
inventory: '検索結果: %item%'
|
||||
lore:
|
||||
- "&b何について検索しますか?"
|
||||
- "&7検索ワードをチャットで入力してください"
|
||||
cheat:
|
||||
no-multiblocks: "&4マルチブロックは取得できません"
|
||||
credits:
|
||||
commit: Commit
|
||||
commits: Commits
|
||||
profile-link: クリックでGitHubのプロファイルを開く
|
||||
roles:
|
||||
developer: "&6Developer"
|
||||
resourcepack: "&cResourcepack Artist"
|
||||
translator: "&9Translator"
|
||||
wiki: "&3Wiki Editor"
|
||||
languages:
|
||||
updated: "&a言語設定を変更しました: &b%lang%"
|
||||
translations:
|
||||
name: "&a他の言語をお探しですか?"
|
||||
lore: クリックで他の言語に翻訳する
|
||||
select: クリックでこの言語を選択
|
||||
select-default: クリックでデフォルトを選択
|
||||
selected-language: '選択中の言語:'
|
||||
translations:
|
||||
lore: クリックで他の言語に翻訳する
|
||||
name: "&a他の言語をお探しですか?"
|
||||
updated: "&a言語設定を変更しました: &b%lang%"
|
||||
title:
|
||||
main: Slimefunガイド
|
||||
settings: 設定・情報
|
||||
languages: 言語の選択
|
||||
credits: Slimefun4 開発者
|
||||
wiki: Slimefun4 Wiki
|
||||
addons: Slimefun4 アドオン
|
||||
bugs: バグ報告
|
||||
source: ソースコード
|
||||
credits:
|
||||
commit: Commit
|
||||
commits: Commits
|
||||
roles:
|
||||
developer: "&6Developer"
|
||||
wiki: "&3Wiki Editor"
|
||||
resourcepack: "&cResourcepack Artist"
|
||||
translator: "&9Translator"
|
||||
profile-link: クリックでGitHubのプロファイルを開く
|
||||
pages:
|
||||
previous: 前のページ
|
||||
next: 次のページ
|
||||
tooltips:
|
||||
open-category: クリックで開く
|
||||
versions-notice: バグ報告をお願いします!
|
||||
wiki: このアイテムを公式Wikiで確認する
|
||||
recipes:
|
||||
machine: 使用可能なレシピ
|
||||
miner: 採掘可能な資源
|
||||
generator: 使用可能な燃料
|
||||
gold-pan: 入手可能な資源
|
||||
back:
|
||||
title: 戻る
|
||||
guide: Slimefunガイドへ戻る
|
||||
settings: 設定画面へ戻る
|
||||
locked: ロック中
|
||||
locked-category:
|
||||
- このカテゴリを開放するには
|
||||
- 以下のカテゴリの全アイテムを
|
||||
- リサーチしてください
|
||||
pages:
|
||||
next: 次のページ
|
||||
previous: 前のページ
|
||||
search:
|
||||
inventory: '検索結果: %item%'
|
||||
lore:
|
||||
- "&b何について検索しますか?"
|
||||
- "&7検索ワードをチャットで入力してください"
|
||||
message: "&b検索ワードをチャットで入力してください"
|
||||
name: "&7検索…"
|
||||
tooltip: "&bクリックでアイテムの検索"
|
||||
title:
|
||||
addons: Slimefun4 アドオン
|
||||
bugs: バグ報告
|
||||
credits: Slimefun4 開発者
|
||||
languages: 言語の選択
|
||||
main: Slimefunガイド
|
||||
settings: 設定・情報
|
||||
source: ソースコード
|
||||
wiki: Slimefun4 Wiki
|
||||
tooltips:
|
||||
open-category: クリックで開く
|
||||
recipes:
|
||||
generator: 使用可能な燃料
|
||||
gold-pan: 入手可能な資源
|
||||
machine: 使用可能なレシピ
|
||||
miner: 採掘可能な資源
|
||||
versions-notice: バグ報告をお願いします!
|
||||
wiki: このアイテムを公式Wikiで確認する
|
||||
inventory:
|
||||
no-access: "&4アクセス権がありません"
|
||||
languages:
|
||||
af: アフリカーンス語
|
||||
ar: アラビア語
|
||||
be: ベラルーシ語
|
||||
bg: ブルガリア語
|
||||
cs: チェコ語
|
||||
da: デンマーク語
|
||||
de: ドイツ語
|
||||
default: サーバデフォルト
|
||||
el: ギリシャ語
|
||||
en: 英語
|
||||
es: スペイン語
|
||||
fa: ペルシア語
|
||||
fi: フィンランド語
|
||||
fr: フランス語
|
||||
he: ヘブライ語
|
||||
hr: クロアチア語
|
||||
hu: ハンガリー語
|
||||
id: インドネシア語
|
||||
it: イタリア語
|
||||
ja: 日本語
|
||||
ko: 韓国語
|
||||
lv: ラトビア語
|
||||
mk: マケドニア語
|
||||
ms: マレー語
|
||||
nl: オランダ語
|
||||
'no': ノルウェー語
|
||||
pl: ポーランド語
|
||||
pt: ポルトガル語(ポルトガル)
|
||||
pt-BR: ポルトガル語(ブラジル)
|
||||
ro: ルーマニア語
|
||||
ru: ロシア語
|
||||
sk: スロバキア語
|
||||
sr: セルビア語
|
||||
sv: スウェーデン語
|
||||
th: タイ語
|
||||
tr: トルコ語
|
||||
uk: ウクライナ語
|
||||
vi: ベトナム語
|
||||
zh-CN: 中国語(中国)
|
||||
zh-TW: 中国語(台湾)
|
||||
machines:
|
||||
ANCIENT_ALTAR:
|
||||
not-enough-pedestals: "&4祭壇にAncient Pedestalが不足しています &c(%pedestals% / 8)"
|
||||
unknown-catalyst: "&4不明な素材です!&c正しいレシピを使用してください"
|
||||
unknown-recipe: "&4不明なレシピです!&c正しいレシピを使用してください"
|
||||
ANCIENT_PEDESTAL:
|
||||
obstructed: "&4Ancient Pedestalが塞がれています!&c上のブロックを破壊してください"
|
||||
CARGO_NODES:
|
||||
must-be-placed: "&4チェストや機械に対して設置してください!"
|
||||
ELEVATOR:
|
||||
click-to-teleport: "&eクリック&7でこの階に移動:"
|
||||
current-floor: "&e現在の階:"
|
||||
enter-name: "&7指定したい階の名前をチャットで入力してください&r(カラーコード対応)"
|
||||
named: "&2階の名前を変更しました: &r%floor%"
|
||||
no-destinations: "&4他の階が見つかりません"
|
||||
pick-a-floor: "&3- 行先の選択 -"
|
||||
full-inventory: "&eインベントリが一杯です!"
|
||||
GPS_CONTROL_PANEL:
|
||||
title: GPSコントロールパネル
|
||||
transmitters: GPS送信機一覧
|
||||
waypoints: ウェイポイント一覧
|
||||
HOLOGRAM_PROJECTOR:
|
||||
enter-text: "&7指定したい文字列をチャットに入力してください&r(カラーコード対応)"
|
||||
inventory-title: ホログラムエディタ
|
||||
ignition-chamber-no-flint: "&cIgnition Chamberに火打石と打ち金がありません"
|
||||
in-use: "&cこのブロックは他のプレイヤーが開いています"
|
||||
pattern-not-found: "&eレシピが確認できません、アイテムを正しく配置してください"
|
||||
TELEPORTER:
|
||||
cancelled: "&4テレポート中断!"
|
||||
gui:
|
||||
time: 推定時間
|
||||
title: あなたのウェイポイント
|
||||
tooltip: クリックでテレポート
|
||||
invulnerability: "&b&l30秒間の無敵が付与されました!"
|
||||
teleported: "&3テレポート完了!"
|
||||
teleporting: "&3テレポート中…"
|
||||
unknown-material: "&eアイテムを識別できません、レシピ通りに配置してください"
|
||||
wrong-item: "&eそのアイテムは識別できません、レシピから正しいアイテムを確認してください"
|
||||
INDUSTRIAL_MINER:
|
||||
no-fuel: "&cIndustrial Minerは燃料切れです!上のチェストに燃料を補充してください。"
|
||||
piston-facing: "&cIndustrial Minerのピストンは上向きに設置してください!"
|
||||
piston-space: "&cピストンの可動するスペースが必要です!"
|
||||
destroyed: "&cIndustrial Minerは破壊されました。"
|
||||
already-running: "&cこのIndustrial Minerは稼働中です!"
|
||||
full-chest: "&cIndustrial Minerのチェストが一杯です!"
|
||||
no-permission: "&4Industrial Minerを使う権限がありません!"
|
||||
finished: "&eIndustrial Minerの稼働完了!合計で%ores%個の鉱石を入手しました!"
|
||||
messages:
|
||||
cannot-place: "&cこの場所には設置できません"
|
||||
diet-cookie: "&e体が軽くなったように感じる…"
|
||||
not-researched: "&4知識が不足しています"
|
||||
not-enough-xp: "&4リサーチの遂行に必要な経験値が足りません"
|
||||
unlocked: '&bリサーチが完了しました &7"%research%"'
|
||||
only-players: "&4プレイヤー専用コマンドです"
|
||||
unknown-player: "&4プレイヤーが見つかりません: &c%player%"
|
||||
no-permission: "&4権限がありません"
|
||||
usage: "&4使用法: &c%usage%"
|
||||
not-online: "&4%player% &cはオンラインではありません!"
|
||||
not-valid-item: "&4%item% &cは正しくないアイテムです"
|
||||
not-valid-amount: "&4%amount% &cの部分には、正の整数を指定してください"
|
||||
given-item: "&b%item%を%amount%個与えられました"
|
||||
give-item: "&b%player%に%item%を%amount%個与えました"
|
||||
not-valid-research: "&4%research%&cは正しくないリサーチです"
|
||||
give-research: "&b%player%のリサーチ%research%を完了させました"
|
||||
hungry: "&c空腹のため使えません"
|
||||
mode-change: "&b%device%のモード変更: &9%mode%"
|
||||
disabled-in-world: "&4&lこのワールドでは使用できません"
|
||||
disabled-item: "&4&lこのアイテムは無効化されています"
|
||||
no-tome-yourself: "&c自身の&4Tome of Knowledge&cは使えません"
|
||||
multimeter: "&bエネルギー残量: &3%stored% &b/ &3%capacity%"
|
||||
talisman:
|
||||
anvil: "&a&oタリスマンがツールの損壊を防いだ"
|
||||
miner: "&a&oタリスマンがドロップを倍にした"
|
||||
hunter: "&a&oタリスマンがドロップを倍にした"
|
||||
lava: "&a&oタリスマンが炎上から身を護った"
|
||||
water: "&a&oタリスマンが水没から身を護った"
|
||||
angel: "&a&oタリスマンが落下から身を護った"
|
||||
fire: "&a&oタリスマンが炎上から身を護った"
|
||||
magician: "&a&oタリスマンが追加エンチャントを付与した"
|
||||
traveller: "&a&oタリスマンが加速効果を付与した"
|
||||
warrior: "&a&oタリスマンが肉体を強化した"
|
||||
knight: "&a&oタリスマンが再生効果を付与した"
|
||||
whirlwind: "&a&oタリスマンが飛び道具から身を護った"
|
||||
wizard: "&a&oタリスマンが高レベルの幸運を付与したが、他のエンチャントレベルは下がってしまった"
|
||||
soulbound-rune:
|
||||
fail: "&c一度に複数アイテムとのバインディングはできません"
|
||||
success: "&aアイテムとのバインディングが確立した!リスポーン時に当該アイテムは手繰り寄せられます"
|
||||
research:
|
||||
start: "&7どこからか古代の知識が聞こえてくる…"
|
||||
progress: "&b%research%&7に取り組み始めた… &e(%progress%)"
|
||||
fire-extinguish: "&7消火しました"
|
||||
cannot-place: "&cこの場所には設置できません"
|
||||
no-pvp: "&cpvpが許可されているワールドでのみ利用できます"
|
||||
radiation: "&4多量に被ばくしている! &c放射性物質を捨てるか、 Hazmat防具一式を装備しよう!"
|
||||
opening-guide: "&bSlimefunガイドを開いている途中です、少々お待ちください…"
|
||||
opening-backpack: "&bバックパックを開いている途中です、少々お待ちください…"
|
||||
no-iron-golem-heal: "&c鉄インゴットではないので、アイアンゴーレムの回復には使えません!"
|
||||
link-prompt: "&eクリックで開く:"
|
||||
diet-cookie: "&e体が軽くなったように感じる…"
|
||||
fortune-cookie:
|
||||
- "&7フォーチュンクッキー工場に囚われたの、助けて!"
|
||||
- "&7あなたは明日死ぬでしょう… クリーパーによって…"
|
||||
@ -244,51 +139,161 @@ messages:
|
||||
- "&7答えは……「42」です"
|
||||
- "&7Walshyさえいれば、1日だけ全てうまくいきます"
|
||||
- "&7直下掘りしないようにね!"
|
||||
give-item: "&b%player%に%item%を%amount%個与えました"
|
||||
given-item: "&b%item%を%amount%個与えられました"
|
||||
give-research: "&b%player%のリサーチ%research%を完了させました"
|
||||
hungry: "&c空腹のため使えません"
|
||||
link-prompt: "&eクリックで開く:"
|
||||
mode-change: "&b%device%のモード変更: &9%mode%"
|
||||
multimeter: "&bエネルギー残量: &3%stored% &b/ &3%capacity%"
|
||||
no-iron-golem-heal: "&c鉄インゴットではないので、アイアンゴーレムの回復には使えません!"
|
||||
no-permission: "&4権限がありません"
|
||||
no-pvp: "&cpvpが許可されているワールドでのみ利用できます"
|
||||
not-enough-xp: "&4リサーチの遂行に必要な経験値が足りません"
|
||||
no-tome-yourself: "&c自身の&4Tome of Knowledge&cは使えません"
|
||||
not-online: "&4%player% &cはオンラインではありません!"
|
||||
not-researched: "&4知識が不足しています"
|
||||
not-valid-amount: "&4%amount% &cの部分には、正の整数を指定してください"
|
||||
not-valid-item: "&4%item% &cは正しくないアイテムです"
|
||||
not-valid-research: "&4%research%&cは正しくないリサーチです"
|
||||
only-players: "&4プレイヤー専用コマンドです"
|
||||
opening-backpack: "&bバックパックを開いている途中です、少々お待ちください…"
|
||||
opening-guide: "&bSlimefunガイドを開いている途中です、少々お待ちください…"
|
||||
radiation: "&4多量に被ばくしている! &c放射性物質を捨てるか、 Hazmat防具一式を装備しよう!"
|
||||
research:
|
||||
progress: "&b%research%&7に取り組み始めた… &e(%progress%)"
|
||||
start: "&7どこからか古代の知識が聞こえてくる…"
|
||||
soulbound-rune:
|
||||
fail: "&c一度に複数アイテムとのバインディングはできません"
|
||||
success: "&aアイテムとのバインディングが確立した!リスポーン時に当該アイテムは手繰り寄せられます"
|
||||
talisman:
|
||||
angel: "&a&oタリスマンが落下から身を護った"
|
||||
anvil: "&a&oタリスマンがツールの損壊を防いだ"
|
||||
fire: "&a&oタリスマンが炎上から身を護った"
|
||||
hunter: "&a&oタリスマンがドロップを倍にした"
|
||||
knight: "&a&oタリスマンが再生効果を付与した"
|
||||
lava: "&a&oタリスマンが炎上から身を護った"
|
||||
magician: "&a&oタリスマンが追加エンチャントを付与した"
|
||||
miner: "&a&oタリスマンがドロップを倍にした"
|
||||
traveller: "&a&oタリスマンが加速効果を付与した"
|
||||
warrior: "&a&oタリスマンが肉体を強化した"
|
||||
water: "&a&oタリスマンが水没から身を護った"
|
||||
whirlwind: "&a&oタリスマンが飛び道具から身を護った"
|
||||
wizard: "&a&oタリスマンが高レベルの幸運を付与したが、他のエンチャントレベルは下がってしまった"
|
||||
unknown-player: "&4プレイヤーが見つかりません: &c%player%"
|
||||
unlocked: '&bリサーチが完了しました &7"%research%"'
|
||||
usage: "&4使用法: &c%usage%"
|
||||
miner:
|
||||
no-ores: "&e周辺には鉱石が見つかりませんでした!"
|
||||
- "&7これはちょっとした切り傷です!"
|
||||
- "&7常に前向きに生きていこう!"
|
||||
- "&7これはビスケットなんかではなくクッキーに違いない"
|
||||
- "&7ネオンサインが眩しい!"
|
||||
machines:
|
||||
pattern-not-found: "&eレシピが確認できません、アイテムを正しく配置してください"
|
||||
unknown-material: "&eアイテムを識別できません、レシピ通りに配置してください"
|
||||
wrong-item: "&eそのアイテムは識別できません、レシピから正しいアイテムを確認してください"
|
||||
full-inventory: "&eインベントリが一杯です!"
|
||||
in-use: "&cこのブロックは他のプレイヤーが開いています"
|
||||
ignition-chamber-no-flint: "&cIgnition Chamberに火打石と打ち金がありません"
|
||||
ANCIENT_ALTAR:
|
||||
not-enough-pedestals: "&4祭壇にAncient Pedestalが不足しています &c(%pedestals% / 8)"
|
||||
unknown-catalyst: "&4不明な素材です!&c正しいレシピを使用してください"
|
||||
unknown-recipe: "&4不明なレシピです!&c正しいレシピを使用してください"
|
||||
ANCIENT_PEDESTAL:
|
||||
obstructed: "&4Ancient Pedestalが塞がれています!&c上のブロックを破壊してください"
|
||||
HOLOGRAM_PROJECTOR:
|
||||
enter-text: "&7指定したい文字列をチャットに入力してください&r(カラーコード対応)"
|
||||
inventory-title: ホログラムエディタ
|
||||
ELEVATOR:
|
||||
no-destinations: "&4他の階が見つかりません"
|
||||
pick-a-floor: "&3- 行先の選択 -"
|
||||
current-floor: "&e現在の階:"
|
||||
click-to-teleport: "&eクリック&7でこの階に移動:"
|
||||
enter-name: "&7指定したい階の名前をチャットで入力してください&r(カラーコード対応)"
|
||||
named: "&2階の名前を変更しました: &r%floor%"
|
||||
TELEPORTER:
|
||||
teleporting: "&3テレポート中…"
|
||||
teleported: "&3テレポート完了!"
|
||||
cancelled: "&4テレポート中断!"
|
||||
invulnerability: "&b&l30秒間の無敵が付与されました!"
|
||||
gui:
|
||||
title: あなたのウェイポイント
|
||||
tooltip: クリックでテレポート
|
||||
time: 推定時間
|
||||
CARGO_NODES:
|
||||
must-be-placed: "&4チェストや機械に対して設置してください!"
|
||||
GPS_CONTROL_PANEL:
|
||||
title: GPSコントロールパネル
|
||||
transmitters: GPS送信機一覧
|
||||
waypoints: ウェイポイント一覧
|
||||
INDUSTRIAL_MINER:
|
||||
no-fuel: "&cIndustrial Minerは燃料切れです!上のチェストに燃料を補充してください。"
|
||||
piston-facing: "&cIndustrial Minerのピストンは上向きに設置してください!"
|
||||
piston-space: "&cピストンの可動するスペースが必要です!"
|
||||
destroyed: "&cIndustrial Minerは破壊されました。"
|
||||
already-running: "&cこのIndustrial Minerは稼働中です!"
|
||||
full-chest: "&cIndustrial Minerのチェストが一杯です!"
|
||||
no-permission: "&4Industrial Minerを使う権限がありません!"
|
||||
finished: "&eIndustrial Minerの稼働完了!合計で%ores%個の鉱石を入手しました!"
|
||||
anvil:
|
||||
not-working: "&4Slimefunアイテムは金床を利用できません!"
|
||||
backpack:
|
||||
already-open: "&cこのバックパックはどこかで使用中です!"
|
||||
no-stack: "&cバックパックはスタックされていると使用できません!"
|
||||
workbench:
|
||||
not-enhanced: "&4Slimefunアイテムは作業台を利用できません!"
|
||||
gps:
|
||||
deathpoint: "&4死亡地点 &7%date%"
|
||||
waypoint:
|
||||
new: "&eウェイポイント名をチャットで入力してください&7(カラーコード対応)"
|
||||
added: "&a新しいウェイポイントを登録しました"
|
||||
max: "&4ウェイポイント数の上限に到達しています"
|
||||
insufficient-complexity:
|
||||
- "&4GPSネットワークの複雑さ不足: &c%complexity%"
|
||||
- "&4a) GPSネットワークをセットアップしていない"
|
||||
- "&4b) GPSネットワークの複雑さが不足している"
|
||||
geo:
|
||||
scan-required: "&4惑星スキャンが必要です!&cGEO-Scannerでスキャンしてください!"
|
||||
inventory:
|
||||
no-access: "&4アクセス権がありません"
|
||||
android:
|
||||
started: "&7アンドロイド動作開始"
|
||||
stopped: "&7アンドロイド動作停止"
|
||||
scripts:
|
||||
already-uploaded: "&4このスクリプトはアップロード済みです"
|
||||
instructions:
|
||||
START: "&2開始"
|
||||
REPEAT: "&9繰り返し"
|
||||
WAIT: "&e0.5秒待機"
|
||||
GO_FORWARD: "&7前へ移動"
|
||||
GO_UP: "&7上へ移動"
|
||||
GO_DOWN: "&7下へ移動"
|
||||
TURN_LEFT: "&7左へ旋回"
|
||||
TURN_RIGHT: "&7右へ旋回"
|
||||
DIG_UP: "&b上を採掘"
|
||||
DIG_FORWARD: "&b前を採掘"
|
||||
DIG_DOWN: "&b下を採掘"
|
||||
MOVE_AND_DIG_UP: "&b上へ移動・採掘"
|
||||
MOVE_AND_DIG_FORWARD: "&b前へ移動・採掘"
|
||||
MOVE_AND_DIG_DOWN: "&b下へ移動・採掘"
|
||||
ATTACK_MOBS_ANIMALS: "&4攻撃&c(モンスター・動物)"
|
||||
ATTACK_MOBS: "&4攻撃&c(モンスター)"
|
||||
ATTACK_ANIMALS: "&4攻撃&c(動物)"
|
||||
ATTACK_ANIMALS_ADULT: "&4攻撃&c(動物&7[親]&c)"
|
||||
CHOP_TREE: "&c伐採・植林"
|
||||
CATCH_FISH: "&b釣り"
|
||||
FARM_FORWARD: "&b収穫・植え直し"
|
||||
FARM_DOWN: "&b収穫・植え直し&7(下方)"
|
||||
FARM_EXOTIC_FORWARD: "&bExoticGardenの収穫・植え直し"
|
||||
FARM_EXOTIC_DOWN: "&bExoticGardenの収穫・植え直し&7(下方)"
|
||||
INTERFACE_ITEMS: "&9所持アイテムをInterfaceに入れる"
|
||||
INTERFACE_FUEL: "&c燃料をInterfaceから取り出す"
|
||||
enter-name:
|
||||
-
|
||||
- "&eスクリプトの名前を入力してください"
|
||||
uploaded:
|
||||
- "&bアップロード中…"
|
||||
- "&aスクリプトのアップロード完了!"
|
||||
rating:
|
||||
own: "&4自身のスクリプトは評価できません!"
|
||||
already: "&4このスクリプトは評価済みです!"
|
||||
editor: スクリプトエディタ
|
||||
languages:
|
||||
default: サーバデフォルト
|
||||
en: 英語
|
||||
de: ドイツ語
|
||||
fr: フランス語
|
||||
it: イタリア語
|
||||
es: スペイン語
|
||||
pl: ポーランド語
|
||||
sv: スウェーデン語
|
||||
nl: オランダ語
|
||||
cs: チェコ語
|
||||
hu: ハンガリー語
|
||||
lv: ラトビア語
|
||||
ru: ロシア語
|
||||
sk: スロバキア語
|
||||
zh-TW: 中国語(台湾)
|
||||
vi: ベトナム語
|
||||
id: インドネシア語
|
||||
zh-CN: 中国語(中国)
|
||||
el: ギリシャ語
|
||||
he: ヘブライ語
|
||||
pt: ポルトガル語(ポルトガル)
|
||||
ar: アラビア語
|
||||
af: アフリカーンス語
|
||||
da: デンマーク語
|
||||
fi: フィンランド語
|
||||
uk: ウクライナ語
|
||||
ms: マレー語
|
||||
'no': ノルウェー語
|
||||
ja: 日本語
|
||||
fa: ペルシア語
|
||||
th: タイ語
|
||||
ro: ルーマニア語
|
||||
pt-BR: ポルトガル語(ブラジル)
|
||||
bg: ブルガリア語
|
||||
ko: 韓国語
|
||||
tr: トルコ語
|
||||
hr: クロアチア語
|
||||
mk: マケドニア語
|
||||
sr: セルビア語
|
||||
be: ベラルーシ語
|
||||
tl: タガログ語
|
||||
miner:
|
||||
no-ores: "&e周辺には鉱石が見つかりませんでした!"
|
||||
|
317
src/main/resources/languages/messages_tl.yml
Normal file
317
src/main/resources/languages/messages_tl.yml
Normal file
@ -0,0 +1,317 @@
|
||||
---
|
||||
commands:
|
||||
help: Ipapakita itong help screen.
|
||||
cheat: Pinapayagan kang dayain ang mga Aytem sa Slimefun.
|
||||
give: Nagbibigay ito ng mga Aytem sa Slimefun.
|
||||
guide: Bibigyan ka nito ng Simefun Guide.
|
||||
timings: Lag-Info patungkol sa iyong server.
|
||||
teleporter: Tingnan ang mga Waypoints ng mga Players.
|
||||
versions: Ipapakita nito ang mga na-install na Addon sa Slimefun.
|
||||
search: Hahanapin sa Guide ang binigyan na katawagan.
|
||||
open_guide: Bubuksan nito ang Slimefun's Guide na wala ang libro.
|
||||
stats: Ipapakita ang hindi karamihan na Estatistika ng Player.
|
||||
research:
|
||||
description: Iaunlock/Irereset ang mga Researches para sa Player.
|
||||
reset: "&cNareset mo ang Knowledge para kay %player%."
|
||||
reset-target: "&cNareset ang iyong Knowledge."
|
||||
backpack:
|
||||
description: Kunin ang isang kopya ng isang umiiral na backpack
|
||||
invalid-id: "&4Ang id ay dapat na isang hindi negatibong numero!"
|
||||
player-never-joined: "&4Walang nahanap na manlalaro na may pangalang iyon!"
|
||||
backpack-does-not-exist: "&4Ang tinukoy na backpack ay hindi umiiral!"
|
||||
restored-backpack-given: "&aAng iyong backpack ay naibalik at naidagdag sa iyong
|
||||
imbentaryo!"
|
||||
guide:
|
||||
search:
|
||||
message: "&bAno ang hinahanap mo?"
|
||||
name: "&7Hanap..."
|
||||
tooltip: "&bI-click upang maghanap para sa isang item"
|
||||
inventory: 'Naghahanap para sa: %item%'
|
||||
cheat:
|
||||
no-multiblocks: "&4Hindi ka puwedeng mag-daya sa Multiblocks, kailangan mo itong
|
||||
buoin!"
|
||||
languages:
|
||||
updated: "&aNapalitan na ang iyong wika sa: &b%lang%"
|
||||
translations:
|
||||
name: "&aMay kulang ba?"
|
||||
lore: I-click upang magdagdag ng iyong sariling pagsasalin
|
||||
select: I-click upang piliin ang wikang ito
|
||||
select-default: I-click upang piliin ang default na wika
|
||||
selected-language: 'Kasalukuyang pinili:'
|
||||
title:
|
||||
main: Slimefun Guide
|
||||
settings: Mga Settings & Impormasyon
|
||||
languages: Pumili ng gustong wika.
|
||||
credits: Ang mga tumulong sa Slimefun4
|
||||
wiki: Ang Slimefun4 Wiki
|
||||
addons: Ang mga Addons para sa Slimefun4
|
||||
bugs: Mga Bug Reports
|
||||
source: Ang Source Code
|
||||
credits:
|
||||
commit: Commit
|
||||
commits: Mga Commits
|
||||
roles:
|
||||
developer: "&6Developer"
|
||||
wiki: "&3Wiki Editor"
|
||||
resourcepack: "&cResourcepack Artist"
|
||||
translator: "&9Translator"
|
||||
profile-link: I-click upang bisitahin ang kanilang profile sa GitHub
|
||||
pages:
|
||||
previous: Nakaraang pahina
|
||||
next: Susunod na pahina
|
||||
tooltips:
|
||||
open-category: I-click upang buksan
|
||||
versions-notice: Napakahalaga ng mga ito kapag nag-uulat ng mga bug!
|
||||
wiki: Tingnan ang item na ito sa opisyal na Slimefun Wiki
|
||||
recipes:
|
||||
machine: Mga recipe na ginawa sa Makina na ito
|
||||
miner: Mga mapagkukunan na maaari mong makuha sa Miner na ito
|
||||
generator: Magagamit na mga uri ng gasolina
|
||||
gold-pan: Mga mapagkukunan na maaari mong makuha
|
||||
back:
|
||||
title: Balik
|
||||
guide: Bumalik sa Slimefun Guide
|
||||
settings: Bumalik sa Settings Panel
|
||||
locked: NAKAKANDADO
|
||||
locked-category:
|
||||
- Upang i-unlock ang kategoryang ito
|
||||
- kailangang i-unlock ang lahat ng mga item mula sa
|
||||
- sumusunod na mga kategorya
|
||||
messages:
|
||||
not-researched: "&4Kulang ang iyong Knowledge upang ito'y maintindihan."
|
||||
not-enough-xp: "&4Kulang ang iyong XP upang ito'y ma-unlock."
|
||||
unlocked: '&bNa-unlock mo ang &7"%research%"'
|
||||
only-players: "&4Ang command na ito ay para lamang sa Players."
|
||||
unknown-player: "&4Hindi kilala na Player: &c%player%"
|
||||
no-permission: "&4Wala kang permiso para gawin ito."
|
||||
usage: "&4Paggamit: &c%usage%"
|
||||
not-online: "&cHindi online si &4%player%!"
|
||||
not-valid-item: "&cHindi valid ang &4%item%!"
|
||||
not-valid-amount: "&cHindi valid ang amount na &4%amount% : dapat ito'y mas mataas
|
||||
kaysa sa 0!"
|
||||
given-item: '&bIka''y binigyan ng &a%amount% &7"%item%&7"'
|
||||
give-item: '&bBinigyan mo si %player% ng &a%amount% &7"%item%&7"'
|
||||
not-valid-research: "&4%research% &cay hindi valid na Research!"
|
||||
give-research: '&bBinigyan mo si %player% ng Research &7"%research%&7"'
|
||||
hungry: "&cIkaw ay sobrang gutom para gawin ito!"
|
||||
mode-change: "&b%device% mode ay pinalitan ng: &9%mode%"
|
||||
disabled-in-world: "&4&lDinisable ang Aytem sa world na ito."
|
||||
disabled-item: "&4&lDinisable ang Aytem na ito! Paano mo ito nakuha?"
|
||||
no-tome-yourself: "&cHindi mo magagamit ang &4Tome of Knowledge &cpara sa'yo..."
|
||||
multimeter: "&bTinagong Enerhiya: &3%stored% &b/ &3%capacity%"
|
||||
talisman:
|
||||
anvil: "&a&oAng iyong anting-anting ay niligtas ang iyong tool sa pagkasira."
|
||||
miner: "&a&oNa-doble ang drops dahil sa iyong anting-anting."
|
||||
hunter: "&a&oNa-doble ang drops dahil sa iyong anting-anting."
|
||||
lava: "&a&oNiligtas ka ng iyong anting-ating sa iyong pagkamatay sa apoy."
|
||||
water: "&a&oNiligtas ka ng iyong anting-anting sa pagkalunod."
|
||||
angel: "&a&oNiligtas ka ng iyong anting-anting sa pagkalaglag."
|
||||
fire: "&a&oNiligtas ka ng iyong anting-ating sa iyong pagkamatay sa apoy."
|
||||
magician: "&a&oBinigyan ka ng karagdagang Enchantment dahil sa iyong anting-anting."
|
||||
traveller: "&a&oBinigyan ka ng anting-anting mo ng Speed Boost!"
|
||||
warrior: "&a&oBinigyan ka ng anting-anting mo ng Kalakasan nang mga ilang saglit."
|
||||
knight: "&a&oBinigyan ka ng 5 Seconds of Regeneration galing sa anting-anting
|
||||
mo."
|
||||
whirlwind: "&a&oTumilapon ang bala dahil sa iyong anting-anting."
|
||||
wizard: "&a&oBinigyan ka ng iyong anting-anting na mas magandang Fortune Level
|
||||
ngunit baka bumaba ang iba mong Enchantment Levels."
|
||||
soulbound-rune:
|
||||
fail: "&cMaaari mo lang mabigkis ang isa lang na aytem sa iyong kaluluwa kada
|
||||
isang beses."
|
||||
success: "&aNabigkis mo ang aytem na ito sa iyong kaluluwa! Nandito lang ito sa'yo
|
||||
kapag ika'y namatay."
|
||||
research:
|
||||
start: "&7Bumulong ang mga Ancient Spirit sa iyong mga tenga!"
|
||||
progress: "&7Sinimulan mong malaman ang &b%research% &e(%progress%)"
|
||||
fire-extinguish: "&7Naibsan mo ang apoy sa'yo."
|
||||
cannot-place: "&cHindi mo puwedeng ilagay ang block jan!"
|
||||
no-pvp: "&cBawal makipaglaban dito!"
|
||||
radiation: "&4Na-expose ka sa nakakamatay na radiation! &cTanggalin ang radioactive
|
||||
aytem sa iyong inventory o isuot ang kompletong Hazmat Suit!"
|
||||
opening-guide: "&bBinubuksan ang guide, maaari itong tumagal ng mga ilang segundo..."
|
||||
opening-backpack: "&bBinubuksan ang backpack, maaari itong tumagal ng mga ilang
|
||||
segundo..."
|
||||
no-iron-golem-heal: "&cHindi ito Iron Ingot. Hindi ito ginagamit para gumaling ang
|
||||
mga Iron Golems!"
|
||||
link-prompt: "&ePindutin dito:"
|
||||
diet-cookie: "&eNakakaramdam ka nang gaan sa iyong katawan..."
|
||||
fortune-cookie:
|
||||
- "&7Tulungan mo ako, nakulong ako sa Fortune Cookie Factory!"
|
||||
- "&7Mamamatay ka bukas... dahil sa Creeper."
|
||||
- "&7Sa ilang punto ng iyong buhay, may mangyayaring masama."
|
||||
- "&7Sa susunod na linggo, mapapansin mo na hindi pala ito ang totoong mundo, nasa
|
||||
isang ka palang kompyuter game."
|
||||
- "&7Sasarap ang lasa ng cookie na ito ng ilang segundo."
|
||||
- '&7Ang maririnig mo na huling salita ay "PUKSAIN!!!"'
|
||||
- "&7Kahit anong gawin mo, huwag mong yakapin ang Creeper... Nasubukan ko na ito.
|
||||
Ang sarap, ngunit hindi ito katumbas ng halaga."
|
||||
- "&742. Ang sagot ay 42."
|
||||
- "&7Ang isang Walshy sa isang araw ay maiiwasan ang problema."
|
||||
- "&7Huwag kang maghukay na diretso pababa!"
|
||||
machines:
|
||||
pattern-not-found: "&ePasensiya na, hindi ko maintindihan ang Recipe na ito. Pakilagay
|
||||
ang mga Aytem sa tamang pattern sa loob ng Dispense."
|
||||
unknown-material: "&ePasensiya na, hindi ko maintindihan ang Aytem na ito sa Dispenser.
|
||||
Maglagay ka ng mga alam ko sa Dispenser."
|
||||
wrong-item: "&ePasensiya na, hindi ko maintindihan ang Aytem na kasama ang ni-right
|
||||
click mo. Paki-check ang Recipies at tingnan kung anong mga Aytem na puwede mong
|
||||
gamitin."
|
||||
full-inventory: "&ePasensiya na, dahil puno na ang aking inventory!"
|
||||
in-use: "&cAng inventory ng Block na ito ay nakabukas na sa ibang Player."
|
||||
ignition-chamber-no-flint: "&cKulang ng Flint and Steel ang Ignition Chamber."
|
||||
ANCIENT_ALTAR:
|
||||
not-enough-pedestals: "&4Hindi napalibutan ng pedestals ang altar &c(%pedestals%
|
||||
/ 8)"
|
||||
unknown-catalyst: "&4Hindi kilala ang Catalyst! &cGamitin na lamang ang tamang
|
||||
Recipe!"
|
||||
unknown-recipe: "&4Hindi kilala ang Recipe! &cGamitin na lamang ang tamang Recipe!"
|
||||
ANCIENT_PEDESTAL:
|
||||
obstructed: "&4Barado ang Pedestal! &cTanggalin lahat ang mga gamit sa taas ng
|
||||
pedestal!"
|
||||
HOLOGRAM_PROJECTOR:
|
||||
enter-text: "&7I-enter ang gusto mong makita sa Hologram Text galing sa Chat.
|
||||
&r(Supported ang Color Codes)"
|
||||
inventory-title: Hologram Editor
|
||||
ELEVATOR:
|
||||
no-destinations: "&4Walang nahanap na mga patutunguhan."
|
||||
pick-a-floor: "&3- Pumili ng palapag -"
|
||||
current-floor: "&eIto ang sahig na iyong naroroon:"
|
||||
click-to-teleport: "&ePindutin ito &7para magteleport sa palapag na ito:"
|
||||
enter-name: "&7I-enter ang gusto mong makita sa Hologram Text galing sa Chat.
|
||||
&r(Supported ang Color Codes)"
|
||||
named: "&2Napangalanan na ang floor na: &r%floor%"
|
||||
TELEPORTER:
|
||||
teleporting: "&3Teleporting..."
|
||||
teleported: "&3Teleported!"
|
||||
cancelled: "&4Na-kansel ang teleportation!"
|
||||
invulnerability: "&b&lBinigyan ka ng 30 segundo ng Invulnerability!"
|
||||
gui:
|
||||
title: Ang iyong mga waypoints
|
||||
tooltip: I-click para mag-teleport
|
||||
time: Tinatayang oras
|
||||
CARGO_NODES:
|
||||
must-be-placed: "&4Kailangang mailagay ito sa isang chest o makina!"
|
||||
GPS_CONTROL_PANEL:
|
||||
title: GPS - Control Panel
|
||||
transmitters: Transmitter Overview
|
||||
waypoints: Waypoint Overview
|
||||
INDUSTRIAL_MINER:
|
||||
no-fuel: "&cAng iyong Industrial Miner ay naubusan ng gasolina! Ilagay ang iyong
|
||||
gasolina sa chest."
|
||||
piston-facing: "&cAng iyong Industrial Miner ay nangangailangan ng mga piston
|
||||
upang humarap ito pataas!"
|
||||
piston-space: "&cAng dalawang piston ay kailangang magkaroon ng isang walang laman
|
||||
na block sa itaas ng mga ito!"
|
||||
destroyed: "&cAng iyong Industrial Miner ay nawasak."
|
||||
already-running: "&cAng Industrial Miner na ito ay tumatakbo na!"
|
||||
full-chest: "&cAng chest ng iyong Industrial Miner ay puno!"
|
||||
no-permission: "&4Mukhang wala kang pahintulot upang mapatakbo ang isang Industrial
|
||||
Miner dito!"
|
||||
finished: "&eTapos na ang iyong Industrial Miner! Nakuha nito ang isang kabuuang
|
||||
%ores% ore(s)!"
|
||||
anvil:
|
||||
not-working: "&4Hindi puwedeng gamitin ang mga Slimefun Aytem sa isang Anvil!"
|
||||
backpack:
|
||||
already-open: "&cPasensiya na, ang backpack na ito ay nakabukas na sa ibang lugar!"
|
||||
no-stack: "&cHindi puwedeng i-stack ang mga Backpack."
|
||||
workbench:
|
||||
not-enhanced: "&4Hindi puwedeng gamitin ang mga Slimefun Aytem sa normal na workbench."
|
||||
gps:
|
||||
deathpoint: "&4Kinamatayan &7%date%"
|
||||
waypoint:
|
||||
new: "&eMangyaring mag-type ng isang pangalan para sa iyong bagong waypoint sa
|
||||
chat. &7(Supported ang Color Codes!)"
|
||||
added: "&aTagumpay ang pag-add ng bagong waypoint"
|
||||
max: "&4Naabot mo na ang maximum amount ng waypoints."
|
||||
insufficient-complexity:
|
||||
- "&4Kulang ang GPS Network Complexity: &c%complexity%"
|
||||
- "&4a) Wala ka pang GPS Network setup."
|
||||
- "&4b) Hindi pa complex ang iyong GPS Network!"
|
||||
geo:
|
||||
scan-required: "&4Kailagan ng GEO-Scan! &cI-scan muna ang chunk na ito gamit ng
|
||||
GEO-Scanner!"
|
||||
inventory:
|
||||
no-access: "&4Hindi ka pinapayagan na i-access ang block na ito."
|
||||
android:
|
||||
started: "&7Ang iyong Android ay nagpatuloy sa pagpapatakbo ng script nito."
|
||||
stopped: "&7Ang iyong Android ay naka-pause sa script na ito."
|
||||
scripts:
|
||||
already-uploaded: "&4Na-upload na ang script na ito."
|
||||
instructions:
|
||||
START: "&2Simulan ang Script"
|
||||
REPEAT: "&9Ulitin ang Script"
|
||||
WAIT: "&eHintay 0.5s"
|
||||
GO_FORWARD: "&7Umabante"
|
||||
GO_UP: "&7Pataas"
|
||||
GO_DOWN: "&7Pababa"
|
||||
TURN_LEFT: "&7Lumiko pakaliwa"
|
||||
TURN_RIGHT: "&7Lumiko pakanan"
|
||||
DIG_UP: "&bMaghukay pataas"
|
||||
DIG_FORWARD: "&bMaghukay paabante"
|
||||
DIG_DOWN: "&bMaghukay pababa"
|
||||
MOVE_AND_DIG_UP: "&bGumalaw at Maghukay pataas"
|
||||
MOVE_AND_DIG_FORWARD: "&bGumalaw at Maghukay paabante"
|
||||
MOVE_AND_DIG_DOWN: "&bGumalaw at Maghukay pababa"
|
||||
ATTACK_MOBS_ANIMALS: "&4Atake &c(Mga matatapang na mobs at mga hayop)"
|
||||
ATTACK_MOBS: "&4Atake &c(Mga matatapang na mobs)"
|
||||
ATTACK_ANIMALS: "&4Atake &c(Mga hayop)"
|
||||
ATTACK_ANIMALS_ADULT: "&4Atake &c(Mga hayop &7[Matanda]&c)"
|
||||
CHOP_TREE: "&cTumaga at Magtanim"
|
||||
CATCH_FISH: "&bMaghuli ng Isda"
|
||||
FARM_FORWARD: "&bMag-ani at Magtanim"
|
||||
FARM_DOWN: "&bMag-ani at Magtanim &7(Block sa ilalim)"
|
||||
FARM_EXOTIC_FORWARD: "&bMasulong na Mag-ani at Magtanim"
|
||||
FARM_EXOTIC_DOWN: "&bMasulong na Mag-ani at Magtanim &7(Block sa ilalim)"
|
||||
INTERFACE_ITEMS: "&9Itulak ang Mga nilalaman ng Imbentaryo sa Interface"
|
||||
INTERFACE_FUEL: "&cItulak ang fuel galing sa Interface"
|
||||
enter-name:
|
||||
-
|
||||
- "&eMangyaring mag-type ng isang pangalan para sa iyong script"
|
||||
uploaded:
|
||||
- "&bUploading..."
|
||||
- "&aTagumpay ang pag-upload ng script!"
|
||||
rating:
|
||||
own: "&4Hindi puwedeng i-rate ang sarili mong script!"
|
||||
already: "&4Nakapag-iwan ka na ng Rating para sa script na ito!"
|
||||
editor: Script Editor
|
||||
languages:
|
||||
default: Server-Default
|
||||
en: Ingles
|
||||
de: Aleman
|
||||
fr: Pranses
|
||||
it: Italyano
|
||||
es: Espanyol
|
||||
pl: Polish
|
||||
sv: Suweko
|
||||
nl: Dutch
|
||||
cs: Czech
|
||||
hu: Hungarian
|
||||
lv: Latvian
|
||||
ru: Ruso
|
||||
sk: Slovak
|
||||
zh-TW: Intsik (Taiwan)
|
||||
vi: Vietnamese
|
||||
id: Indonesian
|
||||
zh-CN: Intsik (China)
|
||||
el: Greek
|
||||
he: Hebreo
|
||||
ar: Arabe
|
||||
af: Mga Afrikaans
|
||||
da: Danish
|
||||
fi: Finnish
|
||||
uk: Ukranian
|
||||
ms: Malay
|
||||
'no': Norwegian
|
||||
ja: Hapon
|
||||
fa: Persian
|
||||
th: Thai
|
||||
ro: Romanian
|
||||
pt: Portugues (Portugal)
|
||||
pt-BR: Portugues (Brazil)
|
||||
bg: Bulgarian
|
||||
ko: Koreano
|
||||
tr: Turko
|
||||
hr: Croatian
|
||||
mk: Macedonian
|
||||
sr: Serbian
|
||||
be: Belarusian
|
158
src/main/resources/languages/recipes_tl.yml
Normal file
158
src/main/resources/languages/recipes_tl.yml
Normal file
@ -0,0 +1,158 @@
|
||||
---
|
||||
slimefun:
|
||||
multiblock:
|
||||
name: Multiblock
|
||||
lore:
|
||||
- Buuin ang ipinakita na istraktura.
|
||||
- Hindi ito crafted.
|
||||
enhanced_crafting_table:
|
||||
name: Enhanced Crafting Table
|
||||
lore:
|
||||
- I-craft ang item na ito tulad ng ipinakita
|
||||
- sa Enhanced Crafting Table.
|
||||
- Ang isang normal na Crafting Table ay hindi sapat!
|
||||
armor_forge:
|
||||
name: Armor Forge
|
||||
lore:
|
||||
- I-craft ang item na ito tulad ng ipinakita
|
||||
- gamit ang Armor Forge.
|
||||
grind_stone:
|
||||
name: Grind Stone
|
||||
lore:
|
||||
- I-craft ang item na ito tulad ng ipinakita
|
||||
- gamit ang Grind Stone.
|
||||
smeltery:
|
||||
name: Smeltery
|
||||
lore:
|
||||
- I-craft ang item na ito tulad ng ipinakita
|
||||
- gamit ang Smeltery.
|
||||
ore_crusher:
|
||||
name: Ore Crusher
|
||||
lore:
|
||||
- I-craft ang item na ito tulad ng ipinakita
|
||||
- gamit ng Ore Crusher.
|
||||
mob_drop:
|
||||
name: Mob Drop
|
||||
lore:
|
||||
- Patayin ang mob na iyon upang
|
||||
- makuha ang aytem na ito.
|
||||
gold_pan:
|
||||
name: Gold Pan
|
||||
lore:
|
||||
- Gamitin ang Gold Pan upang
|
||||
- makuha ang aytem na ito.
|
||||
compressor:
|
||||
name: Compressor
|
||||
lore:
|
||||
- I-craft ang item na ito tulad ng ipinakita
|
||||
- gamit ang Compressor.
|
||||
pressure_chamber:
|
||||
name: Pressure Chamber
|
||||
lore:
|
||||
- I-craft ang item na ito tulad ng ipinakita
|
||||
- gamit ang Pressure Chamber
|
||||
ore_washer:
|
||||
name: Ore Washer
|
||||
lore:
|
||||
- I-craft ang item na ito tulad ng ipinakita
|
||||
- gamit ang Ore Washer
|
||||
juicer:
|
||||
name: Juicer
|
||||
lore:
|
||||
- I-craft ang Juice na ito tulad ng ipinakita
|
||||
- gamit ang Juicer.
|
||||
magic_workbench:
|
||||
name: Magic Workbench
|
||||
lore:
|
||||
- I-craft ang item na ito tulad ng ipinakita
|
||||
- gamit ang Magic Workbench.
|
||||
ancient_altar:
|
||||
name: Ancient Altar
|
||||
lore:
|
||||
- I-craft ang item na ito tulad ng ipinakita
|
||||
- gamit ang Ancient Altar.
|
||||
- Hanapin ang Ancient Altar para sa karagdagang Impormasyon.
|
||||
heated_pressure_chamber:
|
||||
name: Heated Pressure Chamber
|
||||
lore:
|
||||
- I-craft ang item na ito tulad ng ipinakita
|
||||
- gamit ang Heated Pressure Chamber.
|
||||
food_fabricator:
|
||||
name: Food Fabricator
|
||||
lore:
|
||||
- I-craft ang item na ito tulad ng ipinakita
|
||||
- gamit ang Food Fabricator.
|
||||
food_composter:
|
||||
name: Food Composter
|
||||
lore:
|
||||
- I-craft ang item na ito tulad ng ipinakita
|
||||
- gamit ang Food Composter.
|
||||
freezer:
|
||||
name: Freezer
|
||||
lore:
|
||||
- I-craft ang item na ito tulad ng ipinakita
|
||||
- gamit ang Freezer.
|
||||
geo_miner:
|
||||
name: GEO Miner
|
||||
lore:
|
||||
- Ang item na ito ay maaaring tipunin
|
||||
- sa pamamagitan ng paggamit ng isang GEO Miner.
|
||||
nuclear_reactor:
|
||||
name: Nuclear Reactor
|
||||
lore:
|
||||
- Ang Item na ito ay isang byproduct
|
||||
- ng pagpapatakbo ng isang Nuclear Reactor.
|
||||
oil_pump:
|
||||
name: Oil Pump
|
||||
lore:
|
||||
- Ang item na ito ay maaaring tipunin
|
||||
- sa pamamagitan ng paggamit ng isang Oil Pump.
|
||||
pickaxe_of_containment:
|
||||
name: Pickaxe of Containment
|
||||
lore:
|
||||
- Maaaring makuha ang block na ito
|
||||
- sa pamamagitan ng pagmimina ng Spawner kasama
|
||||
- ang Pickaxe of Containment.
|
||||
refinery:
|
||||
name: Refinery
|
||||
lore:
|
||||
- I-craft ang item na ito tulad ng ipinakita
|
||||
- gamit ang Refinery.
|
||||
minecraft:
|
||||
shaped:
|
||||
name: Shaped Crafting Recipe
|
||||
lore:
|
||||
- I-craft ang item na ito tulad ng ipinakita
|
||||
- sa normal na Crafting Table.
|
||||
- Mahalaga ang hugis.
|
||||
shapeless:
|
||||
name: Shapeless Crafting Recipe
|
||||
lore:
|
||||
- I-craft ang item na ito tulad ng ipinakita
|
||||
- sa normal na Crafting Table.
|
||||
- Shapeless ang Recipe na ito.
|
||||
furnace:
|
||||
name: Furnace Recipe
|
||||
lore:
|
||||
- Lutuin ang item na ito sa isang Furnace
|
||||
- upang likhain ang iyong ninanais na item.
|
||||
blasting:
|
||||
name: Blast Furnace Recipe
|
||||
lore:
|
||||
- Lutuin ang item na ito sa isang Blast Furnace
|
||||
- upang likhain ang iyong ninanais na item.
|
||||
smoking:
|
||||
name: Smoker Recipe
|
||||
lore:
|
||||
- Lutuin ang item na ito sa isang Smoker
|
||||
- upang likhain ang iyong ninanais na item.
|
||||
campfire:
|
||||
name: Campfire Recipe
|
||||
lore:
|
||||
- Lutuin ang item na ito sa isang Campfire
|
||||
- upang likhain ang iyong ninanais na item.
|
||||
stonecutting:
|
||||
name: Stonecutter Recipe
|
||||
lore:
|
||||
- I-craft ang item na ito tulad ng ipinakita
|
||||
- gamit ang Stonecutter.
|
@ -233,5 +233,6 @@ slimefun:
|
||||
tree_growth_accelerator: Faster Trees
|
||||
industrial_miner: Industrial Mining
|
||||
advanced_industrial_miner: Better Mining
|
||||
magic_pills: De-Zombification
|
||||
magical_zombie_pills: De-Zombification
|
||||
auto_brewer: Industrial Brewery
|
||||
shulker_shell: Synthetic Shulkers
|
@ -1,236 +1,238 @@
|
||||
---
|
||||
slimefun:
|
||||
24k_gold_block: 黄金の国
|
||||
advanced_android: 強化アンドロイド
|
||||
advanced_butcher_android: 強化屠殺アンドロイド
|
||||
advanced_circuit_board: 発展電子回路
|
||||
advanced_electric_smeltery: 電気精錬所Ⅱ
|
||||
advanced_farmer_android: 強化農耕アンドロイド
|
||||
advanced_fisherman_android: 強化釣師アンドロイド
|
||||
advanced_output_node: カーゴ配送強化
|
||||
alloys: 合金Ⅰ
|
||||
ancient_altar: 古の祭壇
|
||||
ancient_runes: 太古のルーン
|
||||
android_interfaces: アンドロイドインタフェース
|
||||
android_memory_core: メモリーコア
|
||||
angel_talisman: 天使のタリスマン
|
||||
animal_growth_accelerator: 動物成長促進術
|
||||
anvil_talisman: 金床のタリスマン
|
||||
armored_jetboots: アーマードジェットブーツ
|
||||
armored_jetpack: アーマードジェットパック
|
||||
walking_sticks: 転ばぬ先の杖
|
||||
portable_crafter: どこでもクラフト
|
||||
fortune_cookie: フォーチュンクッキー
|
||||
portable_dustbin: ポイ捨て禁止
|
||||
meat_jerky: ジャーキー
|
||||
armor_forge: 防具作成術
|
||||
auto_anvil: 電動修理術
|
||||
auto_breeder: 自動交配
|
||||
auto_drier: 乾燥機
|
||||
auto_enchanting: エンチャント操作術
|
||||
automated_crafting_chamber: 自動クラフト
|
||||
automated_panning_machine: 自動パンニング
|
||||
automatic_ignition_chamber: 自動再点火室
|
||||
backpacks: バックパックⅠ
|
||||
glowstone_armor: グロウストーン防具
|
||||
lumps: 魔法の欠片
|
||||
ender_backpack: どこでもエンダーチェスト
|
||||
ender_armor: エンダー防具
|
||||
magic_eye_of_ender: 魔法のエンダーアイ
|
||||
magic_sugar: 魔法の砂糖
|
||||
monster_jerky: モンスタージャーキー
|
||||
slime_armor: スライム防具Ⅰ
|
||||
sword_of_beheading: 処刑人の剣
|
||||
basic_circuit_board: 基本電子回路
|
||||
advanced_circuit_board: 発展電子回路
|
||||
smeltery: 精錬所
|
||||
steel: スチールの時代
|
||||
misc_power_items: エネルギーコア
|
||||
battery: はじめてのバッテリー
|
||||
better_carbon_press: カーボンプレスⅡ
|
||||
better_crop_growth_accelerator: 作物成長促進術Ⅱ
|
||||
better_electric_crucibles: 電気るつぼⅡ
|
||||
better_electric_furnace: 電気炉Ⅱ
|
||||
better_food_fabricator: オーガニック食品生成所
|
||||
better_freezer: 冷凍庫
|
||||
better_gps_transmitters: 中級GPS送信機
|
||||
better_heated_pressure_chamber: 加熱圧力室Ⅱ
|
||||
better_solar_generators: 強化太陽光発電所
|
||||
bio_reactor: バイオマス発電所
|
||||
blade_of_vampires: 吸血鬼の剣
|
||||
blistering_ingots: 猛烈な放射能
|
||||
block_placer: ブロック設置機
|
||||
boosted_uranium: ウラン235
|
||||
boots_of_the_stomper: 衝撃拡散のブーツ
|
||||
bound_armor: ソウルバウンド防具
|
||||
bound_backpack: ソウルバウンドバックパック
|
||||
bound_tools: ソウルバウンド道具
|
||||
bound_weapons: ソウルバウンド武器
|
||||
bronze: ブロンズの時代
|
||||
butcher_androids: 屠殺アンドロイド
|
||||
steel_plate: スチールの加工
|
||||
steel_thruster: 推進機
|
||||
parachute: パラシュート
|
||||
grappling_hook: グラップリングフック
|
||||
jetpacks: ジェットパック
|
||||
multitools: マルチツール
|
||||
solar_panel_and_helmet: 太陽光の利用
|
||||
elemental_staff: 属性の杖
|
||||
grind_stone: 石臼
|
||||
cactus_armor: サボテン防具
|
||||
capacitors: キャパシタⅠ
|
||||
carbonado: ブラックダイヤモンド
|
||||
carbonado_furnace: 強化かまどⅤ
|
||||
carbonado_tools: 上級ガジェット
|
||||
carbon_press: カーボンプレスⅠ
|
||||
cargo_basics: カーゴ素材
|
||||
cargo_nodes: カーゴ運搬術
|
||||
chainmail_armor: チェーンメイル防具
|
||||
charging_bench: 充電装置
|
||||
coal_generator: 火力発電所
|
||||
cobalt_pickaxe: コバルトのピッケル
|
||||
combustion_reactor: 燃焼発電所
|
||||
common_talisman: タリスマン
|
||||
composter: コンポスター
|
||||
gold_pan: パンニング
|
||||
magical_book_cover: 魔法の本の作り方
|
||||
slimefun_metals: 新たな金属
|
||||
ore_crusher: 鉱石粉砕
|
||||
bronze: ブロンズの時代
|
||||
alloys: 合金Ⅰ
|
||||
compressor_and_carbon: 石炭紀
|
||||
cooler: 満腹感
|
||||
copper_wire: ジュール熱
|
||||
crop_growth_accelerator: 作物成長促進術Ⅰ
|
||||
crucible: るつぼ
|
||||
crushed_ore: 鉱石の洗浄
|
||||
gilded_iron_armor: 金メッキ防具
|
||||
synthetic_diamond: 合成ダイヤモンド
|
||||
pressure_chamber: 圧力室
|
||||
synthetic_sapphire: 合成サファイア
|
||||
damascus_steel: ダマスカス鋼の時代
|
||||
damascus_steel_armor: ダマスカス鋼防具
|
||||
diet_cookie: ダイエットクッキー
|
||||
duct_tape: ダクトテープ
|
||||
electric_crucible: 電気るつぼⅠ
|
||||
electric_furnaces: 電気炉Ⅰ
|
||||
electric_ingot_machines: 自動インゴット作成Ⅰ
|
||||
reinforced_alloy: 強化鋼の時代
|
||||
carbonado: ブラックダイヤモンド
|
||||
magic_workbench: 魔法の作業台
|
||||
wind_staff: 風属性の杖
|
||||
reinforced_armor: 強化鋼防具
|
||||
ore_washer: 鉱石洗浄
|
||||
gold_carats: 純金
|
||||
silicon: シリコンバレー
|
||||
fire_staff: 火属性の杖
|
||||
smelters_pickaxe: 精錬のピッケル
|
||||
common_talisman: タリスマン
|
||||
anvil_talisman: 金床のタリスマン
|
||||
miner_talisman: 採掘者のタリスマン
|
||||
hunter_talisman: 狩人のタリスマン
|
||||
lava_talisman: 溶岩歩行のタリスマン
|
||||
water_talisman: 水中呼吸のタリスマン
|
||||
angel_talisman: 天使のタリスマン
|
||||
fire_talisman: 消防士のタリスマン
|
||||
lava_crystal: 溶岩のクリスタル
|
||||
magician_talisman: 奇術師のタリスマン
|
||||
traveller_talisman: 探索者のタリスマン
|
||||
warrior_talisman: 戦士のタリスマン
|
||||
knight_talisman: 騎士のタリスマン
|
||||
gilded_iron: 金メッキ
|
||||
synthetic_emerald: 合成エメラルド
|
||||
chainmail_armor: チェーンメイル防具
|
||||
whirlwind_talisman: 旋風のタリスマン
|
||||
wizard_talisman: 魔術師のタリスマン
|
||||
lumber_axe: 木こりの斧
|
||||
hazmat_suit: 危険物取扱装備
|
||||
uranium: 放射性物質
|
||||
crushed_ore: 鉱石の洗浄
|
||||
redstone_alloy: レッドストーン合金
|
||||
carbonado_tools: 上級ガジェット
|
||||
first_aid: 応急手当
|
||||
gold_armor: 純金防具
|
||||
night_vision_googles: 暗視ゴーグル
|
||||
pickaxe_of_containment: 魂封じのピッケル
|
||||
hercules_pickaxe: ヘラクレスのピッケル
|
||||
table_saw: テーブルソー
|
||||
slime_steel_armor: スライム防具Ⅱ
|
||||
blade_of_vampires: 吸血鬼の剣
|
||||
water_staff: 水属性の杖
|
||||
24k_gold_block: 黄金の国
|
||||
composter: コンポスター
|
||||
farmer_shoes: 農家の靴
|
||||
explosive_tools: 爆発のピッケル
|
||||
automated_panning_machine: 自動パンニング
|
||||
boots_of_the_stomper: 衝撃拡散のブーツ
|
||||
pickaxe_of_the_seeker: 探索のピッケル
|
||||
backpacks: バックパックⅠ
|
||||
woven_backpack: バックパックⅡ
|
||||
crucible: るつぼ
|
||||
gilded_backpack: バックパックⅢ
|
||||
armored_jetpack: アーマードジェットパック
|
||||
ender_talismans: エンダータリスマン
|
||||
nickel_and_cobalt: 合金Ⅱ
|
||||
magnet: 磁性金属
|
||||
infused_magnet: 魔法の磁石
|
||||
cobalt_pickaxe: コバルトのピッケル
|
||||
essence_of_afterlife: ネクロマンシー
|
||||
bound_backpack: ソウルバウンドバックパック
|
||||
jetboots: ジェットブーツ
|
||||
armored_jetboots: アーマードジェットブーツ
|
||||
seismic_axe: 地震の斧
|
||||
pickaxe_of_vein_mining: 鉱脈のピッケル
|
||||
bound_weapons: ソウルバウンド武器
|
||||
bound_tools: ソウルバウンド道具
|
||||
bound_armor: ソウルバウンド防具
|
||||
juicer: ジュース
|
||||
repaired_spawner: スポナーの修理士
|
||||
enhanced_furnace: 強化かまどⅠ
|
||||
more_enhanced_furnaces: 強化かまどⅡ
|
||||
high_tier_enhanced_furnaces: 強化かまどⅢ
|
||||
reinforced_furnace: 強化かまどⅣ
|
||||
carbonado_furnace: 強化かまどⅤ
|
||||
electric_motor: ヒートアップ
|
||||
block_placer: ブロック設置機
|
||||
scroll_of_dimensional_teleposition: 逆転劇
|
||||
special_bows: ロビンフッド
|
||||
tome_of_knowledge_sharing: 共有知識
|
||||
flask_of_knowledge: 経験値備蓄術
|
||||
hardened_glass: 耐爆ガラス
|
||||
golden_apple_juice: 金のジュース
|
||||
cooler: 満腹感
|
||||
ancient_altar: 古の祭壇
|
||||
wither_proof_obsidian: 耐ウィザー黒曜石
|
||||
ancient_runes: 太古のルーン
|
||||
special_runes: 古雅なルーン
|
||||
infernal_bonemeal: 地獄の骨粉
|
||||
rainbow_blocks: 虹ブロック
|
||||
infused_hopper: 魔法のホッパー
|
||||
wither_proof_glass: 耐ウィザーガラス
|
||||
duct_tape: ダクトテープ
|
||||
plastic_sheet: プラスチック
|
||||
android_memory_core: メモリーコア
|
||||
oil: 油田
|
||||
fuel: 精製
|
||||
hologram_projector: ホログラム
|
||||
capacitors: キャパシタⅠ
|
||||
high_tier_capacitors: キャパシタⅡ
|
||||
solar_generators: 太陽光発電所
|
||||
electric_furnaces: 電気炉Ⅰ
|
||||
electric_ore_grinding: 粉砕粉砕
|
||||
electric_press: 電動プレス
|
||||
electric_smeltery: 電気精錬所Ⅰ
|
||||
elemental_staff: 属性の杖
|
||||
heated_pressure_chamber: 加熱圧力室Ⅰ
|
||||
coal_generator: 火力発電所
|
||||
bio_reactor: バイオマス発電所
|
||||
auto_enchanting: エンチャント操作術
|
||||
auto_anvil: 電動修理術
|
||||
multimeter: マルチメーター
|
||||
gps_setup: GPS時代の夜明け
|
||||
gps_emergency_transmitter: 緊急戦線復帰
|
||||
programmable_androids: アンドロイド
|
||||
android_interfaces: アンドロイドインタフェース
|
||||
geo_scanner: 惑星スキャン
|
||||
combustion_reactor: 燃焼発電所
|
||||
teleporter: テレポーター構成機器
|
||||
teleporter_activation_plates: テレポーター起動装置
|
||||
better_solar_generators: 強化太陽光発電所
|
||||
better_gps_transmitters: 中級GPS送信機
|
||||
elevator: エレベーター
|
||||
elytra: エリトラ
|
||||
energized_solar_generator: 全日制太陽光発電所
|
||||
energized_gps_transmitter: 上級GPS送信機
|
||||
energy_regulator: エネルギーネットワーク
|
||||
butcher_androids: 屠殺アンドロイド
|
||||
organic_food: オーガニック食品
|
||||
auto_breeder: 自動交配
|
||||
advanced_android: 強化アンドロイド
|
||||
advanced_butcher_android: 強化屠殺アンドロイド
|
||||
advanced_fisherman_android: 強化釣師アンドロイド
|
||||
animal_growth_accelerator: 動物成長促進術
|
||||
xp_collector: 経験値回収
|
||||
organic_fertilizer: 有機肥料
|
||||
crop_growth_accelerator: 作物成長促進術Ⅰ
|
||||
better_crop_growth_accelerator: 作物成長促進術Ⅱ
|
||||
reactor_essentials: 原子炉必需品
|
||||
nuclear_reactor: 原子力発電所
|
||||
freezer: ミスター・フリーズ
|
||||
cargo_basics: カーゴ素材
|
||||
cargo_nodes: カーゴ運搬術
|
||||
electric_ingot_machines: 自動インゴット作成Ⅰ
|
||||
high_tier_electric_ingot_machines: 自動インゴット作成Ⅱ
|
||||
automated_crafting_chamber: 自動クラフト
|
||||
better_food_fabricator: オーガニック食品生成所
|
||||
reactor_access_port: 原子炉とのやりとり
|
||||
fluid_pump: 液体ポンプ
|
||||
better_freezer: 冷凍庫
|
||||
boosted_uranium: ウラン235
|
||||
trash_can: ごみ処理施設
|
||||
advanced_output_node: カーゴ配送強化
|
||||
carbon_press: カーボンプレスⅠ
|
||||
electric_smeltery: 電気精錬所Ⅰ
|
||||
better_electric_furnace: 電気炉Ⅱ
|
||||
better_carbon_press: カーボンプレスⅡ
|
||||
empowered_android: 上級アンドロイド
|
||||
empowered_butcher_android: 上級屠殺アンドロイド
|
||||
empowered_fisherman_android: 上級釣師アンドロイド
|
||||
ender_armor: エンダー防具
|
||||
ender_backpack: どこでもエンダーチェスト
|
||||
ender_talismans: エンダータリスマン
|
||||
energized_gps_transmitter: 上級GPS送信機
|
||||
energized_solar_generator: 全日制太陽光発電所
|
||||
energy_regulator: エネルギーネットワーク
|
||||
enhanced_furnace: 強化かまどⅠ
|
||||
essence_of_afterlife: ネクロマンシー
|
||||
explosive_tools: 爆発のピッケル
|
||||
farmer_shoes: 農家の靴
|
||||
fire_staff: 火属性の杖
|
||||
fire_talisman: 消防士のタリスマン
|
||||
first_aid: 応急手当
|
||||
flask_of_knowledge: 経験値備蓄術
|
||||
fluid_pump: 液体ポンプ
|
||||
fortune_cookie: フォーチュンクッキー
|
||||
freezer: ミスター・フリーズ
|
||||
fuel: 精製
|
||||
geo_miner: 惑星採掘術
|
||||
geo_scanner: 惑星スキャン
|
||||
gilded_backpack: バックパックⅢ
|
||||
gilded_iron: 金メッキ
|
||||
gilded_iron_armor: 金メッキ防具
|
||||
glowstone_armor: グロウストーン防具
|
||||
gold_armor: 純金防具
|
||||
gold_carats: 純金
|
||||
golden_apple_juice: 金のジュース
|
||||
gold_pan: パンニング
|
||||
gps_emergency_transmitter: 緊急戦線復帰
|
||||
gps_setup: GPS時代の夜明け
|
||||
grappling_hook: グラップリングフック
|
||||
grind_stone: 石臼
|
||||
hardened_glass: 耐爆ガラス
|
||||
hazmat_suit: 危険物取扱装備
|
||||
heated_pressure_chamber: 加熱圧力室Ⅰ
|
||||
hercules_pickaxe: ヘラクレスのピッケル
|
||||
high_tier_capacitors: キャパシタⅡ
|
||||
high_tier_carbon_press: カーボンプレスⅢ
|
||||
high_tier_electric_ingot_machines: 自動インゴット作成Ⅱ
|
||||
high_tier_enhanced_furnaces: 強化かまどⅢ
|
||||
hologram_projector: ホログラム
|
||||
hunter_talisman: 狩人のタリスマン
|
||||
infernal_bonemeal: 地獄の骨粉
|
||||
infused_hopper: 魔法のホッパー
|
||||
infused_magnet: 魔法の磁石
|
||||
jetboots: ジェットブーツ
|
||||
jetpacks: ジェットパック
|
||||
juicer: ジュース
|
||||
kelp_cookie: 昆布クッキー
|
||||
knight_talisman: 騎士のタリスマン
|
||||
lava_crystal: 溶岩のクリスタル
|
||||
wither_assembler: 全自動ウィザートラップ
|
||||
better_heated_pressure_chamber: 加熱圧力室Ⅱ
|
||||
elytra: エリトラ
|
||||
special_elytras: スペシャルエリトラ
|
||||
electric_crucible: 電気るつぼⅠ
|
||||
better_electric_crucibles: 電気るつぼⅡ
|
||||
advanced_electric_smeltery: 電気精錬所Ⅱ
|
||||
advanced_farmer_android: 強化農耕アンドロイド
|
||||
lava_generator: 溶岩発電所
|
||||
lava_talisman: 溶岩歩行のタリスマン
|
||||
lightning_rune: 雷のルーン
|
||||
lumber_axe: 木こりの斧
|
||||
lumps: 魔法の欠片
|
||||
magical_book_cover: 魔法の本の作り方
|
||||
magic_eye_of_ender: 魔法のエンダーアイ
|
||||
magician_talisman: 奇術師のタリスマン
|
||||
magic_sugar: 魔法の砂糖
|
||||
magic_workbench: 魔法の作業台
|
||||
magnesium_generator: マグネシウム発電所
|
||||
magnet: 磁性金属
|
||||
makeshift_smeltery: 間に合わせの製錬所
|
||||
meat_jerky: ジャーキー
|
||||
miner_talisman: 採掘者のタリスマン
|
||||
misc_power_items: エネルギーコア
|
||||
monster_jerky: モンスタージャーキー
|
||||
more_enhanced_furnaces: 強化かまどⅡ
|
||||
multimeter: マルチメーター
|
||||
multitools: マルチツール
|
||||
nether_gold_pan: ネザーパンニング
|
||||
nether_ice: ネザーアイスクーラント
|
||||
nether_star_reactor: ネザースター発電所
|
||||
nickel_and_cobalt: 合金Ⅱ
|
||||
night_vision_googles: 暗視ゴーグル
|
||||
nuclear_reactor: 原子力発電所
|
||||
oil: 油田
|
||||
ore_crusher: 鉱石粉砕
|
||||
ore_washer: 鉱石洗浄
|
||||
organic_fertilizer: 有機肥料
|
||||
organic_food: オーガニック食品
|
||||
blistering_ingots: 猛烈な放射能
|
||||
automatic_ignition_chamber: 自動再点火室
|
||||
output_chest: 基本機械搬出術
|
||||
parachute: パラシュート
|
||||
pickaxe_of_containment: 魂封じのピッケル
|
||||
pickaxe_of_the_seeker: 探索のピッケル
|
||||
pickaxe_of_vein_mining: 鉱脈のピッケル
|
||||
plastic_sheet: プラスチック
|
||||
portable_crafter: どこでもクラフト
|
||||
portable_dustbin: ポイ捨て禁止
|
||||
pressure_chamber: 圧力室
|
||||
programmable_androids: アンドロイド
|
||||
copper_wire: ジュール熱
|
||||
radiant_backpack: バックパックⅣ
|
||||
rainbow_blocks: 虹ブロック
|
||||
reactor_access_port: 原子炉とのやりとり
|
||||
reactor_essentials: 原子炉必需品
|
||||
redstone_alloy: レッドストーン合金
|
||||
reinforced_alloy: 強化鋼の時代
|
||||
reinforced_armor: 強化鋼防具
|
||||
reinforced_furnace: 強化かまどⅣ
|
||||
repaired_spawner: スポナーの修理士
|
||||
scroll_of_dimensional_teleposition: 逆転劇
|
||||
seismic_axe: 地震の斧
|
||||
silicon: シリコンバレー
|
||||
slime_armor: スライム防具Ⅰ
|
||||
slimefun_metals: 新たな金属
|
||||
slime_steel_armor: スライム防具Ⅱ
|
||||
smelters_pickaxe: 精錬のピッケル
|
||||
smeltery: 精錬所
|
||||
solar_generators: 太陽光発電所
|
||||
solar_panel_and_helmet: 太陽光の利用
|
||||
soulbound_rune: ソウルバウンドルーン
|
||||
special_bows: ロビンフッド
|
||||
special_elytras: スペシャルエリトラ
|
||||
special_runes: 古雅なルーン
|
||||
steel: スチールの時代
|
||||
steel_plate: スチールの加工
|
||||
steel_thruster: 推進機
|
||||
auto_drier: 乾燥機
|
||||
diet_cookie: ダイエットクッキー
|
||||
storm_staff: 雷属性の杖
|
||||
sword_of_beheading: 処刑人の剣
|
||||
synthetic_diamond: 合成ダイヤモンド
|
||||
synthetic_emerald: 合成エメラルド
|
||||
synthetic_sapphire: 合成サファイア
|
||||
table_saw: テーブルソー
|
||||
teleporter: テレポーター構成機器
|
||||
teleporter_activation_plates: テレポーター起動装置
|
||||
tome_of_knowledge_sharing: 共有知識
|
||||
soulbound_rune: ソウルバウンドルーン
|
||||
geo_miner: 惑星採掘術
|
||||
lightning_rune: 雷のルーン
|
||||
totem_of_undying: 不死のトーテム
|
||||
trash_can: ごみ処理施設
|
||||
traveller_talisman: 探索者のタリスマン
|
||||
charging_bench: 充電装置
|
||||
nether_gold_pan: ネザーパンニング
|
||||
electric_press: 電動プレス
|
||||
magnesium_generator: マグネシウム発電所
|
||||
kelp_cookie: 昆布クッキー
|
||||
makeshift_smeltery: 間に合わせの製錬所
|
||||
tree_growth_accelerator: 1ニョッキ!2ニョッキ!
|
||||
uranium: 放射性物質
|
||||
walking_sticks: 転ばぬ先の杖
|
||||
warrior_talisman: 戦士のタリスマン
|
||||
water_staff: 水属性の杖
|
||||
water_talisman: 水中呼吸のタリスマン
|
||||
whirlwind_talisman: 旋風のタリスマン
|
||||
wind_staff: 風属性の杖
|
||||
wither_assembler: 全自動ウィザートラップ
|
||||
wither_proof_glass: 耐ウィザーガラス
|
||||
wither_proof_obsidian: 耐ウィザー黒曜石
|
||||
wizard_talisman: 魔術師のタリスマン
|
||||
woven_backpack: バックパックⅡ
|
||||
xp_collector: 経験値回収
|
||||
industrial_miner: 工業的採掘
|
||||
advanced_industrial_miner: よりよい採掘
|
||||
magical_zombie_pills: ゾンビ化解除
|
||||
auto_brewer: 工業的醸造
|
||||
|
236
src/main/resources/languages/researches_tl.yml
Normal file
236
src/main/resources/languages/researches_tl.yml
Normal file
@ -0,0 +1,236 @@
|
||||
---
|
||||
slimefun:
|
||||
walking_sticks: Walking Sticks
|
||||
portable_crafter: Portable Crafter
|
||||
fortune_cookie: Fortune Cookie
|
||||
portable_dustbin: Portable Dustbin
|
||||
meat_jerky: Meat Jerky
|
||||
armor_forge: Armor Crafting
|
||||
glowstone_armor: Glowstone Armor
|
||||
lumps: Lumps and Magic
|
||||
ender_backpack: Ender Backpack
|
||||
ender_armor: Ender Armor
|
||||
magic_eye_of_ender: Magic Eye of Ender
|
||||
magic_sugar: Magic Sugar
|
||||
monster_jerky: Monster Jerky
|
||||
slime_armor: Slime Armor
|
||||
sword_of_beheading: Sword of Beheading
|
||||
basic_circuit_board: Basic Circuit Board
|
||||
advanced_circuit_board: Advanced Circuit Board
|
||||
smeltery: Smeltery
|
||||
steel: Steel Age
|
||||
misc_power_items: Mahalagang Mga item na nauugnay sa kapangyarihan
|
||||
battery: Ang iyong unang Baterya
|
||||
steel_plate: Steel Plating
|
||||
steel_thruster: Steel Thruster
|
||||
parachute: Parachute
|
||||
grappling_hook: Grappling Hook
|
||||
jetpacks: Jetpacks
|
||||
multitools: Multi Tools
|
||||
solar_panel_and_helmet: Solar Power
|
||||
elemental_staff: Elemental Staves
|
||||
grind_stone: Grind Stone
|
||||
cactus_armor: Cactus Suit
|
||||
gold_pan: Gold Pan
|
||||
magical_book_cover: Magical Book Binding
|
||||
slimefun_metals: New Metals
|
||||
ore_crusher: Ore Doubling
|
||||
bronze: Bronze Creation
|
||||
alloys: Advanced Alloys
|
||||
compressor_and_carbon: Carbon Creation
|
||||
gilded_iron_armor: Gilded Iron Armor
|
||||
synthetic_diamond: Synthetic Diamonds
|
||||
pressure_chamber: Pressure Chamber
|
||||
synthetic_sapphire: Synthetic Sapphires
|
||||
damascus_steel: Damascus Steel
|
||||
damascus_steel_armor: Damascus Steel Armor
|
||||
reinforced_alloy: Reinforced Alloy
|
||||
carbonado: Black Diamonds
|
||||
magic_workbench: Magic Workbench
|
||||
wind_staff: Wind Staff
|
||||
reinforced_armor: Reinforced Armor
|
||||
ore_washer: Ore Washer
|
||||
gold_carats: Pure Gold
|
||||
silicon: Silicon Valley
|
||||
fire_staff: Fire Staff
|
||||
smelters_pickaxe: Smelters Pickaxe
|
||||
common_talisman: Karaniwang Anting-anting
|
||||
anvil_talisman: Ang anting-anting ng Anvil
|
||||
miner_talisman: Ang anting-anting ng Miner
|
||||
hunter_talisman: Ang Anting-anting ng Mangangaso
|
||||
lava_talisman: Ang Anting-anting ng Lava Walker
|
||||
water_talisman: Ang Anting-anting ng Water Breather
|
||||
angel_talisman: Ang Anting-anting ng Anghel
|
||||
fire_talisman: Ang Anting-anting ng Bumbero
|
||||
lava_crystal: Fiery Situation
|
||||
magician_talisman: Ang Anting-anting ng Mago
|
||||
traveller_talisman: Ang Anting-anting ng Manlalakbay
|
||||
warrior_talisman: Ang Anting-anting ng Mandirigma
|
||||
knight_talisman: Ang Anting-anting ng Knight
|
||||
gilded_iron: Shiny Iron
|
||||
synthetic_emerald: Fake Gem
|
||||
chainmail_armor: Chainmail Armor
|
||||
whirlwind_talisman: Ang Anting-anting ng Whirlwind
|
||||
wizard_talisman: Ang Anting-anting ng Wizard
|
||||
lumber_axe: Lumber Axe
|
||||
hazmat_suit: Hazmat Suit
|
||||
uranium: Radioactive
|
||||
crushed_ore: Ore Purification
|
||||
redstone_alloy: Redstone Alloy
|
||||
carbonado_tools: Top Tier Machines
|
||||
first_aid: First Aid
|
||||
gold_armor: Shiny Armor
|
||||
night_vision_googles: Night Vision Goggles
|
||||
pickaxe_of_containment: Pickaxe of Containment
|
||||
hercules_pickaxe: Hercules Pickaxe
|
||||
table_saw: Table Saw
|
||||
slime_steel_armor: Slimy Steel Armor
|
||||
blade_of_vampires: Blade of Vampires
|
||||
water_staff: Water Staff
|
||||
24k_gold_block: Golden City
|
||||
composter: Composting Dirt
|
||||
farmer_shoes: Farmer Shoes
|
||||
explosive_tools: Explosive Tools
|
||||
automated_panning_machine: Automated Gold Pan
|
||||
boots_of_the_stomper: Boots of the Stomper
|
||||
pickaxe_of_the_seeker: Pickaxe of the Seeker
|
||||
backpacks: Mga Backpacks
|
||||
woven_backpack: Woven Backpack
|
||||
crucible: Crucible
|
||||
gilded_backpack: Gilded Backpack
|
||||
armored_jetpack: Armored Jetpack
|
||||
ender_talismans: Ender Talismans
|
||||
nickel_and_cobalt: Even more Ores
|
||||
magnet: Magnetic Metals
|
||||
infused_magnet: Infused Magnets
|
||||
cobalt_pickaxe: Speedy Pickaxe
|
||||
essence_of_afterlife: Necromancy
|
||||
bound_backpack: Soulbound Storage
|
||||
jetboots: Jet Boots
|
||||
armored_jetboots: Armoured Jet Boots
|
||||
seismic_axe: Seismic Axe
|
||||
pickaxe_of_vein_mining: Pickaxe of Vein Mining
|
||||
bound_weapons: Soulbound Weapons
|
||||
bound_tools: Soulbound Tools
|
||||
bound_armor: Soulbound Armor
|
||||
juicer: Delicious Drinks
|
||||
repaired_spawner: Repairing Spawners
|
||||
enhanced_furnace: Enhanced Furnace
|
||||
more_enhanced_furnaces: Better Furnaces
|
||||
high_tier_enhanced_furnaces: High Tier Furnace
|
||||
reinforced_furnace: Reinforced Furnace
|
||||
carbonado_furnace: Carbonado Edged furnace
|
||||
electric_motor: Heating up
|
||||
block_placer: Block Placer
|
||||
scroll_of_dimensional_teleposition: Turning things around
|
||||
special_bows: Robin Hood
|
||||
tome_of_knowledge_sharing: Sharing with friends
|
||||
flask_of_knowledge: XP Storage
|
||||
hardened_glass: Withstanding Explosions
|
||||
golden_apple_juice: Golden Potion
|
||||
cooler: Portable Beverages
|
||||
ancient_altar: Ancient Altar
|
||||
wither_proof_obsidian: Wither-Proof Obsidian
|
||||
ancient_runes: Elemental Runes
|
||||
special_runes: Purple Runes
|
||||
infernal_bonemeal: Infernal Bonemeal
|
||||
rainbow_blocks: Rainbow Blocks
|
||||
infused_hopper: Infused Hopper
|
||||
wither_proof_glass: Wither-Proof Glass
|
||||
duct_tape: Duct Tape
|
||||
plastic_sheet: Plastik
|
||||
android_memory_core: Memory Core
|
||||
oil: Oil
|
||||
fuel: Fuel
|
||||
hologram_projector: Holograms
|
||||
capacitors: Tier 1 Capacitors
|
||||
high_tier_capacitors: Tier 2 Capacitors
|
||||
solar_generators: Solar Power Plant
|
||||
electric_furnaces: Powered Furnace
|
||||
electric_ore_grinding: 'Crushing and Grinding '
|
||||
heated_pressure_chamber: Heated Pressure Chamber
|
||||
coal_generator: Coal Generator
|
||||
bio_reactor: Bio-Reactor
|
||||
auto_enchanting: Automatic Enchanting and Disenchanting
|
||||
auto_anvil: Automatic Anvil
|
||||
multimeter: Power Measurement
|
||||
gps_setup: Basic GPS Setup
|
||||
gps_emergency_transmitter: GPS Emergency Waypoint
|
||||
programmable_androids: Programmable Androids
|
||||
android_interfaces: Andrioid Interfaces
|
||||
geo_scanner: GEO-Scans
|
||||
combustion_reactor: Combustion Reactor
|
||||
teleporter: Teleporter Base Components
|
||||
teleporter_activation_plates: Teleported Activation
|
||||
better_solar_generators: Upgraded Solar Generators
|
||||
better_gps_transmitters: Upgraded Transmitters
|
||||
elevator: Elevators
|
||||
energized_solar_generator: Full-Time Solar Power
|
||||
energized_gps_transmitter: Top Tier Transmitter
|
||||
energy_regulator: Energy Networks 101
|
||||
butcher_androids: Butcher Androids
|
||||
organic_food: Organic Food
|
||||
auto_breeder: Automated Feeding
|
||||
advanced_android: Advanced Androids
|
||||
advanced_butcher_android: Advanced Androids - Butcher
|
||||
advanced_fisherman_android: Advanced Androids - Fisherman
|
||||
animal_growth_accelerator: Animal Growth Manipulation
|
||||
xp_collector: XP Collector
|
||||
organic_fertilizer: Organic Fertilizer
|
||||
crop_growth_accelerator: Crop Growth Acceleration
|
||||
better_crop_growth_accelerator: Upgraded Crop Growth Accelerator
|
||||
reactor_essentials: Reactor Essentials
|
||||
nuclear_reactor: Nuclear Power Plant
|
||||
freezer: Mr Freeze
|
||||
cargo_basics: Cargo Basics
|
||||
cargo_nodes: Cargo Setup
|
||||
electric_ingot_machines: Electric Ingot Fabrication
|
||||
high_tier_electric_ingot_machines: Super Fast Ingot Fabrication
|
||||
automated_crafting_chamber: Automated Crafting
|
||||
better_food_fabricator: Upgraded Food Fabrication
|
||||
reactor_access_port: Reactor Interaction
|
||||
fluid_pump: Fluid Pump
|
||||
better_freezer: Upgraded Freezer
|
||||
boosted_uranium: Never-Ending Circle
|
||||
trash_can: Basura
|
||||
advanced_output_node: Advanced Output Node
|
||||
carbon_press: Carbon Press
|
||||
electric_smeltery: Electric Smeltery
|
||||
better_electric_furnace: Upgraded Electric Furnace
|
||||
better_carbon_press: Upgraded Carbon Press
|
||||
empowered_android: Empowered Androids
|
||||
empowered_butcher_android: Empowered Androids - Butcher
|
||||
empowered_fisherman_android: Empowered Androids - Fisherman
|
||||
high_tier_carbon_press: Ultimate Carbon Press
|
||||
wither_assembler: Automated Wither Killer
|
||||
better_heated_pressure_chamber: Upgraded Heated Pressure Chamber
|
||||
elytra: Elytras
|
||||
special_elytras: Espesyal na Elytras
|
||||
electric_crucible: Electrified Crucible
|
||||
better_electric_crucibles: Hot Crucibles
|
||||
advanced_electric_smeltery: Advanced Electric Smeltery
|
||||
advanced_farmer_android: Advanced Androids - Farmer
|
||||
lava_generator: Lava Generator
|
||||
nether_ice: Nether Ice Coolant
|
||||
nether_star_reactor: Nether Star Reactor
|
||||
blistering_ingots: Blistering Radioactivity
|
||||
automatic_ignition_chamber: Automatic Ignition Chamber
|
||||
output_chest: Basic machinery output chest
|
||||
copper_wire: Thinned-down Conductivity
|
||||
radiant_backpack: Radiant Backpack
|
||||
auto_drier: A Dry Day
|
||||
diet_cookie: Diet Cookie
|
||||
storm_staff: Storm Staff
|
||||
soulbound_rune: Soulbound Rune
|
||||
geo_miner: GEO-Miner
|
||||
lightning_rune: Lightning Rune
|
||||
totem_of_undying: Totem ng Undying
|
||||
charging_bench: Charging Bench
|
||||
nether_gold_pan: Nether Gold Pan
|
||||
electric_press: Electric Press
|
||||
magnesium_generator: Kapangyarihan mula sa Magnesium
|
||||
kelp_cookie: Tasty Kelp
|
||||
makeshift_smeltery: Improvised Smeltery
|
||||
tree_growth_accelerator: Faster Trees
|
||||
industrial_miner: Industrial Mining
|
||||
advanced_industrial_miner: Better Mining
|
24
src/main/resources/languages/resources_tl.yml
Normal file
24
src/main/resources/languages/resources_tl.yml
Normal file
@ -0,0 +1,24 @@
|
||||
---
|
||||
tooltips:
|
||||
results: Result ng GEO-Scan
|
||||
chunk: Scanned Chunk
|
||||
world: Mundo
|
||||
unit: Unit
|
||||
units: Units
|
||||
resources:
|
||||
slimefun:
|
||||
oil: Langis
|
||||
nether_ice: Nether Ice
|
||||
salt: Asin
|
||||
uranium: Uranium
|
||||
slimefunorechunks:
|
||||
iron_ore_chunk: Iron Ore Chunk
|
||||
gold_ore_chunk: Gold Ore Chunk
|
||||
copper_ore_chunk: Copper Ore Chunk
|
||||
tin_ore_chunk: Tin Ore Chunk
|
||||
silver_ore_chunk: Silver Ore Chunk
|
||||
aluminum_ore_chunk: Aluminum Ore Chunk
|
||||
lead_ore_chunk: Lead Ore Chunk
|
||||
zinc_ore_chunk: Zinc Ore Chunk
|
||||
nickel_ore_chunk: Nickel Ore Chunk
|
||||
cobalt_ore_chunk: Cobalt Ore Chunk
|
@ -1,12 +1,19 @@
|
||||
package io.github.thebusybiscuit.slimefun4.testing.tests.items;
|
||||
|
||||
import java.io.BufferedReader;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStreamReader;
|
||||
import java.nio.charset.StandardCharsets;
|
||||
|
||||
import org.bukkit.configuration.file.FileConfiguration;
|
||||
import org.bukkit.configuration.file.YamlConfiguration;
|
||||
import org.junit.jupiter.api.AfterAll;
|
||||
import org.junit.jupiter.api.Assertions;
|
||||
import org.junit.jupiter.api.BeforeAll;
|
||||
import org.junit.jupiter.api.MethodOrderer.OrderAnnotation;
|
||||
import org.junit.jupiter.api.Order;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.junit.jupiter.api.TestMethodOrder;
|
||||
import org.junit.jupiter.api.MethodOrderer.OrderAnnotation;
|
||||
|
||||
import be.seeseemelk.mockbukkit.MockBukkit;
|
||||
import be.seeseemelk.mockbukkit.ServerMock;
|
||||
@ -14,6 +21,7 @@ import io.github.thebusybiscuit.slimefun4.implementation.setup.PostSetup;
|
||||
import io.github.thebusybiscuit.slimefun4.implementation.setup.SlimefunItemSetup;
|
||||
import io.github.thebusybiscuit.slimefun4.testing.TestUtilities;
|
||||
import me.mrCookieSlime.Slimefun.SlimefunPlugin;
|
||||
import me.mrCookieSlime.Slimefun.Objects.Category;
|
||||
|
||||
@TestMethodOrder(value = OrderAnnotation.class)
|
||||
public class TestItemSetup {
|
||||
@ -49,4 +57,17 @@ public class TestItemSetup {
|
||||
public void testWikiSetup() {
|
||||
Assertions.assertDoesNotThrow(() -> PostSetup.setupWiki());
|
||||
}
|
||||
|
||||
@Test
|
||||
@Order(value = 3)
|
||||
public void testCategoryTranslations() throws IOException {
|
||||
try (BufferedReader reader = new BufferedReader(new InputStreamReader(getClass().getResourceAsStream("/languages/categories_en.yml"), StandardCharsets.UTF_8))) {
|
||||
FileConfiguration config = YamlConfiguration.loadConfiguration(reader);
|
||||
|
||||
for (Category category : SlimefunPlugin.getRegistry().getCategories()) {
|
||||
String path = category.getKey().getNamespace() + '.' + category.getKey().getKey();
|
||||
Assertions.assertTrue(config.contains(path));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1,14 +1,26 @@
|
||||
package io.github.thebusybiscuit.slimefun4.testing.tests.researches;
|
||||
|
||||
import java.io.BufferedReader;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStreamReader;
|
||||
import java.nio.charset.StandardCharsets;
|
||||
|
||||
import org.bukkit.configuration.file.FileConfiguration;
|
||||
import org.bukkit.configuration.file.YamlConfiguration;
|
||||
import org.junit.jupiter.api.AfterAll;
|
||||
import org.junit.jupiter.api.Assertions;
|
||||
import org.junit.jupiter.api.BeforeAll;
|
||||
import org.junit.jupiter.api.Order;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.junit.jupiter.api.TestMethodOrder;
|
||||
import org.junit.jupiter.api.MethodOrderer.OrderAnnotation;
|
||||
|
||||
import be.seeseemelk.mockbukkit.MockBukkit;
|
||||
import io.github.thebusybiscuit.slimefun4.core.researching.Research;
|
||||
import io.github.thebusybiscuit.slimefun4.implementation.setup.ResearchSetup;
|
||||
import me.mrCookieSlime.Slimefun.SlimefunPlugin;
|
||||
|
||||
@TestMethodOrder(value = OrderAnnotation.class)
|
||||
public class TestResearchSetup {
|
||||
|
||||
@BeforeAll
|
||||
@ -23,14 +35,29 @@ public class TestResearchSetup {
|
||||
}
|
||||
|
||||
@Test
|
||||
@Order(value = 1)
|
||||
public void testForExceptions() {
|
||||
// Not really ideal but still important to test.
|
||||
// Research amount is variable, so we can't test for that.
|
||||
// We are really only concerned about any runtime exceptions here.
|
||||
SlimefunPlugin.getRegistry().setResearchingEnabled(true);
|
||||
Assertions.assertDoesNotThrow(() -> ResearchSetup.setupResearches());
|
||||
|
||||
// Running it a second time should NOT be allowed.
|
||||
Assertions.assertThrows(UnsupportedOperationException.class, () -> ResearchSetup.setupResearches());
|
||||
}
|
||||
|
||||
@Test
|
||||
@Order(value = 2)
|
||||
public void testResearchTranslations() throws IOException {
|
||||
try (BufferedReader reader = new BufferedReader(new InputStreamReader(getClass().getResourceAsStream("/languages/researches_en.yml"), StandardCharsets.UTF_8))) {
|
||||
FileConfiguration config = YamlConfiguration.loadConfiguration(reader);
|
||||
|
||||
for (Research research : SlimefunPlugin.getRegistry().getResearches()) {
|
||||
String path = research.getKey().getNamespace() + '.' + research.getKey().getKey();
|
||||
Assertions.assertTrue(config.contains(path));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user