mirror of
https://github.com/exituser/Brewery.git
synced 2026-09-17 06:38:56 +00:00
Config updater for 2.0
+ config fixes & fix for unlabeled
This commit is contained in:
@@ -0,0 +1,58 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# -- Eigene Items Definieren --
|
||||||
|
# Die festgelegte id kann dann in einem Rezept verwendet werden
|
||||||
|
|
||||||
|
# matchAny: true wenn es schon reicht wenn eine der Angaben zutrifft
|
||||||
|
# material: Welche Art das Item haben muss
|
||||||
|
# name: Welchen Namen das Item haben muss (Farbcodes möglich: z.b. &6)
|
||||||
|
# lore: Was in der Lore des Items stehen muss
|
||||||
|
|
||||||
|
customItems:
|
||||||
|
bsp-item:
|
||||||
|
# Ein Barriere Item das Mauer heißt und in der Lore die angegebene Zeile hat
|
||||||
|
%%%%MAT1%%%%
|
||||||
|
name: 'Mauer'
|
||||||
|
lore:
|
||||||
|
- '&7Besonders gut geschützt'
|
||||||
|
|
||||||
|
bsp-item2:
|
||||||
|
# Mit matchAny muss nur eine der Angaben zutreffen.
|
||||||
|
# Hier also eine der Türarten, oder ein Item namens Buchenholztür, oder ein Item mit 'Eine Tür' in der Lore
|
||||||
|
matchAny: true
|
||||||
|
%%%%MAT2%%%%
|
||||||
|
name:
|
||||||
|
- 'Buchenholztür'
|
||||||
|
lore:
|
||||||
|
- 'Eine Tür'
|
||||||
|
|
||||||
|
himbeere:
|
||||||
|
name: '&cHimbeere'
|
||||||
|
|
||||||
|
|
||||||
|
# -- Zutaten im Kessel --
|
||||||
|
# Hier kann angegeben werden welche Zutaten in den Kessel getan werden können und was mit ihnen geschieht.
|
||||||
|
|
||||||
|
# name: Name des Basistrankes der aus dem Kessel kommt (Farbcodes möglich: z.b. &6)
|
||||||
|
# ingredients: Auflistung von 'Material/Anzahl'
|
||||||
|
# Halte ein Item in der Hand und benutze /brew ItemName um dessen Material herauszufinden und für ein Rezept zu benutzen
|
||||||
|
# (Item-ids anstatt Material können in Bukkit nicht mehr benutzt werden)
|
||||||
|
# Eine Liste von allen Materialien kann hier gefunden werden: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Material.html
|
||||||
|
# color: Farbe des Trankes der aus dem Kessel kommt
|
||||||
|
# Benutzbare Farben: DARK_RED, RED, BRIGHT_RED, ORANGE, PINK, BLUE, CYAN, WATER, GREEN, BLACK, GREY, BRIGHT_GREY
|
||||||
|
# Oder RGB Farben (Hex: also zB '99FF33') (Ohne #) (mit '') (Einfach nach "HTML color" im Internet suchen)
|
||||||
|
# lore: Auflistung von zusätzlichem Text auf dem Trank. (Farbcodes möglich: z.b. &6)
|
||||||
|
|
||||||
|
cauldron:
|
||||||
|
bsp:
|
||||||
|
name: Beispiel
|
||||||
|
ingredients:
|
||||||
|
- Bedrock/2
|
||||||
|
- Diamond
|
||||||
|
color: BLACK
|
||||||
|
lore:
|
||||||
|
- Ein Beispiel für einen Basistrank
|
||||||
|
- So kommt er aus dem Kessel
|
||||||
|
|
||||||
|
# -- Eine Zutat: --
|
||||||
@@ -0,0 +1,58 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# -- Define custom items --
|
||||||
|
# The defined id can then be used in recipes
|
||||||
|
|
||||||
|
# matchAny: true if it is already enough if one of the info matches
|
||||||
|
# material: Which type the item has to be
|
||||||
|
# name: Which name the item has to be (Formatting codes possible: such as &6)
|
||||||
|
# lore: What has to be in the lore of the item
|
||||||
|
|
||||||
|
customItems:
|
||||||
|
ex-item:
|
||||||
|
# A Barrier item called Wall and has the given line in its lore
|
||||||
|
%%%%MAT1%%%%
|
||||||
|
name: 'Wall'
|
||||||
|
lore:
|
||||||
|
- '&7Very well protected'
|
||||||
|
|
||||||
|
ex-item2:
|
||||||
|
# Using matchAny only one of the following has to match.
|
||||||
|
# In this case on of the door types, or an item called Beechwood Door, or an item with 'A door' in its lore
|
||||||
|
matchAny: true
|
||||||
|
%%%%MAT2%%%%
|
||||||
|
name:
|
||||||
|
- 'Beechwood Door'
|
||||||
|
lore:
|
||||||
|
- 'A door'
|
||||||
|
|
||||||
|
rasp:
|
||||||
|
name: '&cRaspberry'
|
||||||
|
|
||||||
|
|
||||||
|
# -- Ingredients in the Cauldron --
|
||||||
|
# Which Ingredients are accepted by the Cauldron and the base potion resulting from them
|
||||||
|
|
||||||
|
# name: Name of the base potion coming out of the Cauldron (Formatting codes possible: such as &6)
|
||||||
|
# ingredients: List of 'material/amount'
|
||||||
|
# With an item in your hand, use /brew ItemName to get its material for use in a recipe
|
||||||
|
# (Item-ids instead of material are not supported by bukkit anymore and will not work)
|
||||||
|
# A list of materials can be found here: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Material.html
|
||||||
|
# color: Color of the potion from a cauldron.
|
||||||
|
# Usable Colors: DARK_RED, RED, BRIGHT_RED, ORANGE, PINK, BLUE, CYAN, WATER, GREEN, BLACK, GREY, BRIGHT_GREY
|
||||||
|
# Or RGB colors (hex: for example '99FF33') (with '') (search for "HTML color" on the internet)
|
||||||
|
# lore: List of additional text on the base potion. (Formatting codes possible: such as &6)
|
||||||
|
|
||||||
|
cauldron:
|
||||||
|
ex:
|
||||||
|
name: Example
|
||||||
|
ingredients:
|
||||||
|
- Bedrock/2
|
||||||
|
- Diamond
|
||||||
|
color: BLACK
|
||||||
|
lore:
|
||||||
|
- An example for a Base Potion
|
||||||
|
- This is how it comes out of a Cauldron
|
||||||
|
|
||||||
|
# -- One Ingredient: --
|
||||||
@@ -0,0 +1,59 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# -- Définir des objets personnalisés --
|
||||||
|
# L'id défini peut ensuite être utilisé dans les recettes
|
||||||
|
|
||||||
|
# matchAny: si c'est déjà assez si l'une des infos correspond
|
||||||
|
# material: le type d'article à utiliser
|
||||||
|
# name: Quel nom l'article doit porter (codes de formatage possibles : tels que &6)
|
||||||
|
# lore: Ce qui doit être dans la lore de l'objet
|
||||||
|
|
||||||
|
customItems:
|
||||||
|
ex-item:
|
||||||
|
# Un objet Barrière appelé "Wall" et qui a la ligne donnée dans sa lore
|
||||||
|
%%%%MAT1%%%%
|
||||||
|
name: 'Wall'
|
||||||
|
lore:
|
||||||
|
- '&7Very well protected'
|
||||||
|
|
||||||
|
ex-item2:
|
||||||
|
# En utilisant matchAny, un seul des éléments suivants doit correspondre.
|
||||||
|
# Dans ce cas, l'un des types de porte, ou un article appelé "Beechwood Door", ou un objet avec "A door" dans sa lore.
|
||||||
|
matchAny: true
|
||||||
|
%%%%MAT2%%%%
|
||||||
|
name:
|
||||||
|
- 'Beechwood Door'
|
||||||
|
lore:
|
||||||
|
- 'A door'
|
||||||
|
|
||||||
|
rasp:
|
||||||
|
name: '&cRaspberry'
|
||||||
|
|
||||||
|
|
||||||
|
# -- Ingrédients dans le chaudron --
|
||||||
|
# Quels sont les ingrédients acceptés par le chaudron et la potion de base qui en résulte
|
||||||
|
|
||||||
|
# name: Nom de la potion de base qui sort du chaudron (codes de formatage possibles : tels que &6)
|
||||||
|
# ingredients: Liste des 'matériaux/montant'
|
||||||
|
# Avec un objet en main, utilisez /brew ItemName pour obtenir son matériau pour une recette de cuisine
|
||||||
|
# (Les id d'objets à la place des matériaux sont obsolètes pour bukkit)
|
||||||
|
# Une liste des matériaux peuvent-être trouvés ici: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Material.html
|
||||||
|
# color : Couleur de la potion provenant d'un chaudron.
|
||||||
|
# Couleurs disponibles : DARK_RED, RED, BRIGHT_RED, ORANGE, PINK, BLUE, CYAN, WATER, GREEN, BLACK, GREY, BRIGHT_GREY
|
||||||
|
# (Dans l'ordre : Rouge foncé, Rouge, Rouge clair, Orange, Rose, Bleu, Cyan, Eau, Vert, Noir, Gris, Gris clair)
|
||||||
|
# Ou couleurs RGB (hex: par exemple '99FF33') (avec '') (recherche de "HTML color" sur internet)
|
||||||
|
# lore: Liste de texte supplémentaire sur la potion de base. (Formatting codes possible: such as &6)
|
||||||
|
|
||||||
|
cauldron:
|
||||||
|
ex:
|
||||||
|
name: Exemple
|
||||||
|
ingredients:
|
||||||
|
- Bedrock/2
|
||||||
|
- Diamond
|
||||||
|
color: BLACK
|
||||||
|
lore:
|
||||||
|
- Un exemple pour une potion de base
|
||||||
|
- Voici comment il sort d'un chaudron
|
||||||
|
|
||||||
|
# -- Un ingrédient: --
|
||||||
@@ -80,7 +80,7 @@ autosave: 3
|
|||||||
debug: false
|
debug: false
|
||||||
|
|
||||||
# Config Version
|
# Config Version
|
||||||
version: '1.8'
|
version: '2.0'
|
||||||
oldMat: true
|
oldMat: true
|
||||||
|
|
||||||
|
|
||||||
@@ -197,8 +197,8 @@ cauldron:
|
|||||||
# (Item-ids anstatt Material können in Bukkit nicht mehr benutzt werden)
|
# (Item-ids anstatt Material können in Bukkit nicht mehr benutzt werden)
|
||||||
# Eine Liste von allen Materialien kann hier gefunden werden: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Material.html
|
# Eine Liste von allen Materialien kann hier gefunden werden: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Material.html
|
||||||
# Es kann ein Data-Wert (durability) angegeben werden, weglassen ignoriert diesen beim hinzufügen einer Zutat
|
# Es kann ein Data-Wert (durability) angegeben werden, weglassen ignoriert diesen beim hinzufügen einer Zutat
|
||||||
# Wenn Vault installiert ist können normale englische Item Namen verwendet werden, anstatt Material, ID und Data!
|
# Plugin Items mit 'Plugin:Id' (Im Moment ExoticGarden, Slimefun, MMOItems, Brewery)
|
||||||
# Vault erkennt Namen wie "Jungle Leaves" anstatt "LEAVES,3". Dies macht es viel einfacher!
|
# Oder ein oben definiertes Custom Item
|
||||||
# cookingtime: Zeit in Echtminuten die die Zutaten kochen müssen
|
# cookingtime: Zeit in Echtminuten die die Zutaten kochen müssen
|
||||||
# distillruns: Wie oft destilliert werden muss für vollen Alkoholgehalt (0=ohne Destillieren)
|
# distillruns: Wie oft destilliert werden muss für vollen Alkoholgehalt (0=ohne Destillieren)
|
||||||
# distilltime: Wie lange (in sekunden) ein Destillations-Durchlauf braucht (0=Standard Zeit von 40 sek) MC Standard wäre 20 sek
|
# distilltime: Wie lange (in sekunden) ein Destillations-Durchlauf braucht (0=Standard Zeit von 40 sek) MC Standard wäre 20 sek
|
||||||
@@ -229,12 +229,10 @@ recipes:
|
|||||||
bsp:
|
bsp:
|
||||||
name: Schlechtes Beispiel/Beispiel/Gutes Beispiel
|
name: Schlechtes Beispiel/Beispiel/Gutes Beispiel
|
||||||
ingredients:
|
ingredients:
|
||||||
- SUGAR_CANE/5
|
|
||||||
- DIAMOND/1
|
- DIAMOND/1
|
||||||
- INK_SACK,3/20
|
- INK_SACK,3/20
|
||||||
- WOOD,1/8
|
- WOOD,1/8
|
||||||
- BEDROCK/1
|
- BEDROCK/1
|
||||||
# - Jungle Leaves/64 # Nur mit Vault
|
|
||||||
- Brewery:Weißbier/2
|
- Brewery:Weißbier/2
|
||||||
# - ExoticGarden:Grape/3
|
# - ExoticGarden:Grape/3
|
||||||
- bsp-item/4
|
- bsp-item/4
|
||||||
|
|||||||
@@ -81,7 +81,7 @@ autosave: 3
|
|||||||
debug: false
|
debug: false
|
||||||
|
|
||||||
# Config Version
|
# Config Version
|
||||||
version: '1.8'
|
version: '2.0'
|
||||||
oldMat: true
|
oldMat: true
|
||||||
|
|
||||||
|
|
||||||
@@ -198,8 +198,8 @@ cauldron:
|
|||||||
# (Item-ids instead of material are not supported by bukkit anymore and will not work)
|
# (Item-ids instead of material are not supported by bukkit anymore and will not work)
|
||||||
# A list of materials can be found here: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Material.html
|
# A list of materials can be found here: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Material.html
|
||||||
# You can specify a data (durability) value, omitting it will ignore the data value of the added ingredient
|
# You can specify a data (durability) value, omitting it will ignore the data value of the added ingredient
|
||||||
# If Vault is installed normal names can be used instead of material or id, so using Vault is highly recommended.
|
# Plugin items with 'plugin:id' (Currently supporting ExoticGarden, Slimefun, MMOItems, Brewery)
|
||||||
# Vault will recognize things like "Jungle Leaves" instead of "LEAVES,3"
|
# Or a custom item defined above
|
||||||
# cookingtime: Time in real minutes ingredients have to boil
|
# cookingtime: Time in real minutes ingredients have to boil
|
||||||
# distillruns: How often it has to be distilled for full alcohol (0=without distilling)
|
# distillruns: How often it has to be distilled for full alcohol (0=without distilling)
|
||||||
# distilltime: How long (in seconds) one distill-run takes (0=Default time of 40 sec) MC Default would be 20 sec
|
# distilltime: How long (in seconds) one distill-run takes (0=Default time of 40 sec) MC Default would be 20 sec
|
||||||
@@ -236,8 +236,7 @@ recipes:
|
|||||||
- Brewery:Wheatbeer/2
|
- Brewery:Wheatbeer/2
|
||||||
# - ExoticGarden:Grape/3
|
# - ExoticGarden:Grape/3
|
||||||
- BEDROCK/1
|
- BEDROCK/1
|
||||||
# - Jungle Leaves/64 # Only with Vault
|
- ex-item/4
|
||||||
# - Green Dye/6 # Only with Vault
|
|
||||||
cookingtime: 3
|
cookingtime: 3
|
||||||
distillruns: 2
|
distillruns: 2
|
||||||
distilltime: 60
|
distilltime: 60
|
||||||
|
|||||||
@@ -82,7 +82,7 @@ autosave: 3
|
|||||||
debug: false
|
debug: false
|
||||||
|
|
||||||
# Version de configuration
|
# Version de configuration
|
||||||
version: '1.8'
|
version: '2.0'
|
||||||
oldMat: true
|
oldMat: true
|
||||||
|
|
||||||
|
|
||||||
@@ -200,8 +200,6 @@ cauldron:
|
|||||||
# Ex: 'Sugar_Cane'
|
# Ex: 'Sugar_Cane'
|
||||||
# Une liste des matériaux peuvent-être trouvés ici: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Material.html
|
# Une liste des matériaux peuvent-être trouvés ici: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Material.html
|
||||||
# Vous pouvez spécifier une data (Ex: 5,3 -> Planche de bois de jungle), si vous ne le faites pas la data ne sera pas prise en compte (Ex : 5 -> Bois en général)
|
# Vous pouvez spécifier une data (Ex: 5,3 -> Planche de bois de jungle), si vous ne le faites pas la data ne sera pas prise en compte (Ex : 5 -> Bois en général)
|
||||||
# If Vault is installed normal names can be used instead of material or id, so using Vault is highly recommended.
|
|
||||||
# Vault will recognize things like "Jungle Leaves" instead of "5,3"
|
|
||||||
# Plugin items avec 'plugin:id' (Actuellement supporté ExoticGarden, Slimefun, MMOItems, Brewery)
|
# Plugin items avec 'plugin:id' (Actuellement supporté ExoticGarden, Slimefun, MMOItems, Brewery)
|
||||||
# Ou un élément personnalisé défini ci-dessus
|
# Ou un élément personnalisé défini ci-dessus
|
||||||
# cookingtime: Temps en minutes réelles durant lesquelles les ingrédients devront bouillir
|
# cookingtime: Temps en minutes réelles durant lesquelles les ingrédients devront bouillir
|
||||||
@@ -245,8 +243,7 @@ recipes:
|
|||||||
- Brewery:Wheatbeer/2
|
- Brewery:Wheatbeer/2
|
||||||
# - ExoticGarden:Grape/3
|
# - ExoticGarden:Grape/3
|
||||||
- BEDROCK/1
|
- BEDROCK/1
|
||||||
# - Jungle Leaves/64 # Only with Vault
|
- ex-item/4
|
||||||
# - Green Dye/6 # Only with Vault
|
|
||||||
cookingtime: 3
|
cookingtime: 3
|
||||||
distillruns: 2
|
distillruns: 2
|
||||||
distilltime: 60
|
distilltime: 60
|
||||||
|
|||||||
@@ -81,7 +81,7 @@ autosave: 3
|
|||||||
debug: false
|
debug: false
|
||||||
|
|
||||||
# Versione del config
|
# Versione del config
|
||||||
version: '1.8'
|
version: '2.0'
|
||||||
oldMat: true
|
oldMat: true
|
||||||
|
|
||||||
|
|
||||||
@@ -144,39 +144,39 @@ cauldron:
|
|||||||
|
|
||||||
# -- One Ingredient: --
|
# -- One Ingredient: --
|
||||||
wheat:
|
wheat:
|
||||||
name: Fermented wheat
|
name: Frumento fermentato
|
||||||
ingredients: WHEAT
|
ingredients: WHEAT
|
||||||
|
|
||||||
sugarcane:
|
sugarcane:
|
||||||
name: Sugar brew
|
name: Miscela zuccherata
|
||||||
ingredients: SUGAR_CANE
|
ingredients: SUGAR_CANE
|
||||||
color: 'f1ffad' # yellowish green
|
color: 'f1ffad' # yellowish green
|
||||||
|
|
||||||
apple:
|
apple:
|
||||||
name: Apple cider
|
name: Sidro di mele
|
||||||
ingredients: APPLE
|
ingredients: APPLE
|
||||||
|
|
||||||
potato:
|
potato:
|
||||||
name: Potatomash
|
name: Purè di patate
|
||||||
ingredients: POTATO_ITEM
|
ingredients: POTATO_ITEM
|
||||||
|
|
||||||
grass:
|
grass:
|
||||||
name: Boiled herbs
|
name: Erbe bollite
|
||||||
ingredients: LONG_GRASS
|
ingredients: LONG_GRASS
|
||||||
color: '99ff66' # bright green
|
color: '99ff66' # bright green
|
||||||
|
|
||||||
rmushroom:
|
rmushroom:
|
||||||
name: Mushroom brew
|
name: Miscela ai funghi
|
||||||
ingredients: RED_MUSHROOM
|
ingredients: RED_MUSHROOM
|
||||||
color: 'ff5c33' # amber red
|
color: 'ff5c33' # amber red
|
||||||
|
|
||||||
cocoa:
|
cocoa:
|
||||||
name: Chocolately brew
|
name: Miscela colorata
|
||||||
ingredients: INK_SACK
|
ingredients: INK_SACK
|
||||||
color: '804600' # mocca
|
color: '804600' # mocca
|
||||||
|
|
||||||
milk:
|
milk:
|
||||||
name: Milky water
|
name: Acqua lattea
|
||||||
ingredients: MILK_BUCKET
|
ingredients: MILK_BUCKET
|
||||||
color: BRIGHT_GREY
|
color: BRIGHT_GREY
|
||||||
|
|
||||||
@@ -196,8 +196,6 @@ cauldron:
|
|||||||
# (Gli id invece dei materiali sono "disapprovati" da Bukkit e potrebbero non funzionare in futuro!)
|
# (Gli id invece dei materiali sono "disapprovati" da Bukkit e potrebbero non funzionare in futuro!)
|
||||||
# Una lista di materiali può essere trovata qui: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Material.html
|
# Una lista di materiali può essere trovata qui: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Material.html
|
||||||
# Puoi specificare dei dati dell'oggetto, ma se omesso sarà semplicemente ignorato.
|
# Puoi specificare dei dati dell'oggetto, ma se omesso sarà semplicemente ignorato.
|
||||||
# Se Vault è installato i nomi normali possono essere usati invece del materiale o dell'id quindi l'uso di Vault è fortemente consigliato.
|
|
||||||
# Vault riconoscerà cose come "Jungle Leaves" invece di "LEAVES,3".
|
|
||||||
# Plugin items with 'plugin:id' (Currently supporting ExoticGarden, Slimefun, MMOItems, Brewery)
|
# Plugin items with 'plugin:id' (Currently supporting ExoticGarden, Slimefun, MMOItems, Brewery)
|
||||||
# Or a custom item defined above
|
# Or a custom item defined above
|
||||||
# cookingtime: Tempo in minuti richiesto dagli ingredienti per bollire
|
# cookingtime: Tempo in minuti richiesto dagli ingredienti per bollire
|
||||||
@@ -236,8 +234,7 @@ recipes:
|
|||||||
- Brewery:Wheatbeer/2
|
- Brewery:Wheatbeer/2
|
||||||
# - ExoticGarden:Grape/3
|
# - ExoticGarden:Grape/3
|
||||||
- BEDROCK/1
|
- BEDROCK/1
|
||||||
# - Jungle Leaves/64 # Solo con Vault
|
- ex-item/4
|
||||||
# - Green Dye/6 # Solo con Vault
|
|
||||||
cookingtime: 3
|
cookingtime: 3
|
||||||
distillruns: 2
|
distillruns: 2
|
||||||
distilltime: 60
|
distilltime: 60
|
||||||
|
|||||||
@@ -80,7 +80,7 @@ autosave: 3
|
|||||||
debug: false
|
debug: false
|
||||||
|
|
||||||
# Config Version
|
# Config Version
|
||||||
version: '1.8'
|
version: '2.0'
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -130,7 +130,6 @@ customItems:
|
|||||||
# Oder RGB Farben (Hex: also zB '99FF33') (Ohne #) (mit '') (Einfach nach "HTML color" im Internet suchen)
|
# Oder RGB Farben (Hex: also zB '99FF33') (Ohne #) (mit '') (Einfach nach "HTML color" im Internet suchen)
|
||||||
# lore: Auflistung von zusätzlichem Text auf dem Trank. (Farbcodes möglich: z.b. &6)
|
# lore: Auflistung von zusätzlichem Text auf dem Trank. (Farbcodes möglich: z.b. &6)
|
||||||
|
|
||||||
|
|
||||||
cauldron:
|
cauldron:
|
||||||
bsp:
|
bsp:
|
||||||
name: Beispiel
|
name: Beispiel
|
||||||
|
|||||||
@@ -81,7 +81,7 @@ autosave: 3
|
|||||||
debug: false
|
debug: false
|
||||||
|
|
||||||
# Config Version
|
# Config Version
|
||||||
version: '1.8'
|
version: '2.0'
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -82,7 +82,7 @@ autosave: 3
|
|||||||
debug: false
|
debug: false
|
||||||
|
|
||||||
# Version de configuration
|
# Version de configuration
|
||||||
version: '1.8'
|
version: '2.0'
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -81,7 +81,7 @@ autosave: 3
|
|||||||
debug: false
|
debug: false
|
||||||
|
|
||||||
# Versione del config
|
# Versione del config
|
||||||
version: '1.8'
|
version: '2.0'
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -144,39 +144,39 @@ cauldron:
|
|||||||
|
|
||||||
# -- One Ingredient: --
|
# -- One Ingredient: --
|
||||||
wheat:
|
wheat:
|
||||||
name: Fermented wheat
|
name: Frumento fermentato
|
||||||
ingredients: Wheat
|
ingredients: Wheat
|
||||||
|
|
||||||
sugarcane:
|
sugarcane:
|
||||||
name: Sugar brew
|
name: Miscela zuccherata
|
||||||
ingredients: Sugar_Cane
|
ingredients: Sugar_Cane
|
||||||
color: 'f1ffad' # yellowish green
|
color: 'f1ffad' # yellowish green
|
||||||
|
|
||||||
apple:
|
apple:
|
||||||
name: Apple cider
|
name: Sidro di mele
|
||||||
ingredients: Apple
|
ingredients: Apple
|
||||||
|
|
||||||
potato:
|
potato:
|
||||||
name: Potatomash
|
name: Purè di patate
|
||||||
ingredients: Potato
|
ingredients: Potato
|
||||||
|
|
||||||
grass:
|
grass:
|
||||||
name: Boiled herbs
|
name: Erbe bollite
|
||||||
ingredients: Grass
|
ingredients: Grass
|
||||||
color: '99ff66' # bright green
|
color: '99ff66' # bright green
|
||||||
|
|
||||||
rmushroom:
|
rmushroom:
|
||||||
name: Mushroom brew
|
name: Miscela ai funghi
|
||||||
ingredients: Red_Mushroom
|
ingredients: Red_Mushroom
|
||||||
color: 'ff5c33' # amber red
|
color: 'ff5c33' # amber red
|
||||||
|
|
||||||
cocoa:
|
cocoa:
|
||||||
name: Chocolately brew
|
name: Miscela colorata
|
||||||
ingredients: Cocoa_Beans
|
ingredients: Cocoa_Beans
|
||||||
color: '804600' # mocca
|
color: '804600' # mocca
|
||||||
|
|
||||||
milk:
|
milk:
|
||||||
name: Milky water
|
name: Acqua lattea
|
||||||
ingredients: Milk_Bucket
|
ingredients: Milk_Bucket
|
||||||
color: BRIGHT_GREY
|
color: BRIGHT_GREY
|
||||||
|
|
||||||
|
|||||||
@@ -83,7 +83,7 @@ autosave: 3
|
|||||||
debug: false
|
debug: false
|
||||||
|
|
||||||
# 配置文件版本
|
# 配置文件版本
|
||||||
version: '1.8'
|
version: '2.0'
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -647,7 +647,7 @@ public class Brew implements Cloneable {
|
|||||||
lore.updateAgeLore(BConfig.colorInBarrels);
|
lore.updateAgeLore(BConfig.colorInBarrels);
|
||||||
}
|
}
|
||||||
if (ageTime > 0.5) {
|
if (ageTime > 0.5) {
|
||||||
if (BConfig.colorInBarrels && !unlabeled && currentRecipe != null) {
|
if (BConfig.colorInBarrels) {
|
||||||
lore.updateWoodLore(true);
|
lore.updateWoodLore(true);
|
||||||
}
|
}
|
||||||
lore.updateQualityStars(BConfig.colorInBarrels);
|
lore.updateQualityStars(BConfig.colorInBarrels);
|
||||||
|
|||||||
+41
-57
@@ -13,19 +13,15 @@ import com.dre.brewery.recipe.BRecipe;
|
|||||||
import com.dre.brewery.utility.BUtil;
|
import com.dre.brewery.utility.BUtil;
|
||||||
import com.dre.brewery.utility.LegacyUtil;
|
import com.dre.brewery.utility.LegacyUtil;
|
||||||
import org.apache.commons.lang.math.NumberUtils;
|
import org.apache.commons.lang.math.NumberUtils;
|
||||||
import org.bstats.bukkit.Metrics;
|
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.ChatColor;
|
import org.bukkit.ChatColor;
|
||||||
import org.bukkit.Material;
|
import org.bukkit.Material;
|
||||||
import org.bukkit.command.CommandSender;
|
import org.bukkit.command.CommandSender;
|
||||||
|
import org.bukkit.command.PluginCommand;
|
||||||
import org.bukkit.configuration.file.FileConfiguration;
|
import org.bukkit.configuration.file.FileConfiguration;
|
||||||
import org.bukkit.event.HandlerList;
|
import org.bukkit.event.HandlerList;
|
||||||
import org.bukkit.plugin.java.JavaPlugin;
|
import org.bukkit.plugin.java.JavaPlugin;
|
||||||
|
|
||||||
import java.io.File;
|
|
||||||
import java.util.HashMap;
|
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
public class P extends JavaPlugin {
|
public class P extends JavaPlugin {
|
||||||
public static P p;
|
public static P p;
|
||||||
public static boolean debug;
|
public static boolean debug;
|
||||||
@@ -67,7 +63,6 @@ public class P extends JavaPlugin {
|
|||||||
|
|
||||||
//MC 1.13 uses a different NBT API than the newer versions..
|
//MC 1.13 uses a different NBT API than the newer versions..
|
||||||
// We decide here which to use, the new or the old or none at all
|
// We decide here which to use, the new or the old or none at all
|
||||||
P.debug = true;
|
|
||||||
if (LegacyUtil.initNbt()) {
|
if (LegacyUtil.initNbt()) {
|
||||||
useNBT = true;
|
useNBT = true;
|
||||||
}
|
}
|
||||||
@@ -81,11 +76,12 @@ public class P extends JavaPlugin {
|
|||||||
// load the Config
|
// load the Config
|
||||||
try {
|
try {
|
||||||
FileConfiguration cfg = BConfig.loadConfigFile();
|
FileConfiguration cfg = BConfig.loadConfigFile();
|
||||||
if (cfg == null || !BConfig.readConfig(cfg)) {
|
if (cfg == null) {
|
||||||
p = null;
|
p = null;
|
||||||
getServer().getPluginManager().disablePlugin(this);
|
getServer().getPluginManager().disablePlugin(this);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
BConfig.readConfig(cfg);
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
p = null;
|
p = null;
|
||||||
@@ -104,8 +100,11 @@ public class P extends JavaPlugin {
|
|||||||
inventoryListener = new InventoryListener();
|
inventoryListener = new InventoryListener();
|
||||||
worldListener = new WorldListener();
|
worldListener = new WorldListener();
|
||||||
integrationListener = new IntegrationListener();
|
integrationListener = new IntegrationListener();
|
||||||
getCommand("Brewery").setExecutor(new CommandListener());
|
PluginCommand c = getCommand("Brewery");
|
||||||
getCommand("Brewery").setTabCompleter(new TabListener());
|
if (c != null) {
|
||||||
|
c.setExecutor(new CommandListener());
|
||||||
|
c.setTabCompleter(new TabListener());
|
||||||
|
}
|
||||||
|
|
||||||
p.getServer().getPluginManager().registerEvents(blockListener, p);
|
p.getServer().getPluginManager().registerEvents(blockListener, p);
|
||||||
p.getServer().getPluginManager().registerEvents(playerListener, p);
|
p.getServer().getPluginManager().registerEvents(playerListener, p);
|
||||||
@@ -148,25 +147,8 @@ public class P extends JavaPlugin {
|
|||||||
// save Data to Disk
|
// save Data to Disk
|
||||||
DataSave.save(true);
|
DataSave.save(true);
|
||||||
|
|
||||||
// delete Data from Ram
|
// delete config data, in case this is a reload and to clear up some ram
|
||||||
Barrel.barrels.clear();
|
clearConfigData();
|
||||||
BCauldron.bcauldrons.clear();
|
|
||||||
BRecipe.getConfigRecipes().clear();
|
|
||||||
BRecipe.numConfigRecipes = 0;
|
|
||||||
BCauldronRecipe.acceptedMaterials.clear();
|
|
||||||
BCauldronRecipe.acceptedCustom.clear();
|
|
||||||
BCauldronRecipe.acceptedSimple.clear();
|
|
||||||
BCauldronRecipe.getConfigRecipes().clear();
|
|
||||||
BCauldronRecipe.numConfigRecipes = 0;
|
|
||||||
BConfig.customItems.clear();
|
|
||||||
BConfig.hasSlimefun = null;
|
|
||||||
BConfig.hasMMOItems = null;
|
|
||||||
BPlayer.clear();
|
|
||||||
Brew.legacyPotions.clear();
|
|
||||||
Wakeup.wakeups.clear();
|
|
||||||
DistortChat.words.clear();
|
|
||||||
DistortChat.ignoreText.clear();
|
|
||||||
DistortChat.commands = null;
|
|
||||||
|
|
||||||
this.log(this.getDescription().getName() + " disabled!");
|
this.log(this.getDescription().getName() + " disabled!");
|
||||||
}
|
}
|
||||||
@@ -177,11 +159,41 @@ public class P extends JavaPlugin {
|
|||||||
}
|
}
|
||||||
FileConfiguration cfg = BConfig.loadConfigFile();
|
FileConfiguration cfg = BConfig.loadConfigFile();
|
||||||
if (cfg == null) {
|
if (cfg == null) {
|
||||||
// Could not read yml file, do not proceed
|
// Could not read yml file, do not proceed, error was printed
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// clear all existent config Data
|
// clear all existent config Data
|
||||||
|
clearConfigData();
|
||||||
|
|
||||||
|
// load the Config
|
||||||
|
try {
|
||||||
|
BConfig.readConfig(cfg);
|
||||||
|
} catch (Exception e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
p = null;
|
||||||
|
getServer().getPluginManager().disablePlugin(this);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Reload Recipes
|
||||||
|
boolean successful = true;
|
||||||
|
for (Brew brew : Brew.legacyPotions.values()) {
|
||||||
|
if (!brew.reloadRecipe()) {
|
||||||
|
successful = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (sender != null) {
|
||||||
|
if (!successful) {
|
||||||
|
msg(sender, p.languageReader.get("Error_Recipeload"));
|
||||||
|
} else {
|
||||||
|
p.msg(sender, p.languageReader.get("CMD_Reload"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
BConfig.reloader = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void clearConfigData() {
|
||||||
BRecipe.getConfigRecipes().clear();
|
BRecipe.getConfigRecipes().clear();
|
||||||
BRecipe.numConfigRecipes = 0;
|
BRecipe.numConfigRecipes = 0;
|
||||||
BCauldronRecipe.acceptedMaterials.clear();
|
BCauldronRecipe.acceptedMaterials.clear();
|
||||||
@@ -201,34 +213,6 @@ public class P extends JavaPlugin {
|
|||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// load the Config
|
|
||||||
try {
|
|
||||||
if (!BConfig.readConfig(cfg)) {
|
|
||||||
p = null;
|
|
||||||
getServer().getPluginManager().disablePlugin(this);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
} catch (Exception e) {
|
|
||||||
e.printStackTrace();
|
|
||||||
p = null;
|
|
||||||
getServer().getPluginManager().disablePlugin(this);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Reload Recipes
|
|
||||||
boolean successful = true;
|
|
||||||
for (Brew brew : Brew.legacyPotions.values()) {
|
|
||||||
if (!brew.reloadRecipe()) {
|
|
||||||
successful = false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (!successful && sender != null) {
|
|
||||||
msg(sender, p.languageReader.get("Error_Recipeload"));
|
|
||||||
} else {
|
|
||||||
p.msg(sender, p.languageReader.get("CMD_Reload"));
|
|
||||||
}
|
|
||||||
BConfig.reloader = null;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static P getInstance() {
|
public static P getInstance() {
|
||||||
|
|||||||
@@ -9,6 +9,7 @@ import org.jetbrains.annotations.NotNull;
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* The Brewery Config was reloaded.
|
* The Brewery Config was reloaded.
|
||||||
|
* <p>The Recipes added by a Plugin to the Added Recipes will not be reloaded and stay where they are.
|
||||||
*/
|
*/
|
||||||
public class ConfigLoadEvent extends Event {
|
public class ConfigLoadEvent extends Event {
|
||||||
private static final HandlerList handlers = new HandlerList();
|
private static final HandlerList handlers = new HandlerList();
|
||||||
|
|||||||
@@ -36,7 +36,7 @@ import java.util.Map;
|
|||||||
|
|
||||||
public class BConfig {
|
public class BConfig {
|
||||||
|
|
||||||
public static final String configVersion = "1.8";
|
public static final String configVersion = "2.0";
|
||||||
public static boolean updateCheck;
|
public static boolean updateCheck;
|
||||||
public static CommandSender reloader;
|
public static CommandSender reloader;
|
||||||
|
|
||||||
@@ -146,7 +146,7 @@ public class BConfig {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static boolean readConfig(FileConfiguration config) {
|
public static void readConfig(FileConfiguration config) {
|
||||||
// Set the Language
|
// Set the Language
|
||||||
p.language = config.getString("language", "en");
|
p.language = config.getString("language", "en");
|
||||||
|
|
||||||
@@ -162,7 +162,7 @@ public class BConfig {
|
|||||||
if (!version.equals(configVersion) || (oldMat && P.use1_13)) {
|
if (!version.equals(configVersion) || (oldMat && P.use1_13)) {
|
||||||
File file = new File(P.p.getDataFolder(), "config.yml");
|
File file = new File(P.p.getDataFolder(), "config.yml");
|
||||||
copyDefaultConfigs(true);
|
copyDefaultConfigs(true);
|
||||||
new ConfigUpdater(file).update(version, oldMat, p.language);
|
new ConfigUpdater(file).update(version, oldMat, p.language, config);
|
||||||
P.p.log("Config Updated to version: " + configVersion);
|
P.p.log("Config Updated to version: " + configVersion);
|
||||||
config = YamlConfiguration.loadConfiguration(file);
|
config = YamlConfiguration.loadConfiguration(file);
|
||||||
}
|
}
|
||||||
@@ -326,6 +326,6 @@ public class BConfig {
|
|||||||
ConfigLoadEvent event = new ConfigLoadEvent();
|
ConfigLoadEvent event = new ConfigLoadEvent();
|
||||||
P.p.getServer().getPluginManager().callEvent(event);
|
P.p.getServer().getPluginManager().callEvent(event);
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,17 +1,16 @@
|
|||||||
package com.dre.brewery.filedata;
|
package com.dre.brewery.filedata;
|
||||||
|
|
||||||
import com.dre.brewery.utility.LegacyUtil;
|
|
||||||
import com.dre.brewery.P;
|
import com.dre.brewery.P;
|
||||||
|
import com.dre.brewery.utility.LegacyUtil;
|
||||||
import org.bukkit.Material;
|
import org.bukkit.Material;
|
||||||
|
import org.bukkit.configuration.ConfigurationSection;
|
||||||
|
import org.bukkit.configuration.file.FileConfiguration;
|
||||||
|
|
||||||
import java.io.BufferedReader;
|
import java.io.*;
|
||||||
import java.io.BufferedWriter;
|
|
||||||
import java.io.File;
|
|
||||||
import java.io.FileReader;
|
|
||||||
import java.io.FileWriter;
|
|
||||||
import java.io.IOException;
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Objects;
|
||||||
|
|
||||||
public class ConfigUpdater {
|
public class ConfigUpdater {
|
||||||
|
|
||||||
@@ -49,6 +48,25 @@ public class ConfigUpdater {
|
|||||||
config.addAll(index, Arrays.asList(newLines));
|
config.addAll(index, Arrays.asList(newLines));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void removeLine(int index) {
|
||||||
|
config.remove(index);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void addLinesAt(String[] search, int offset, String... newLines) {
|
||||||
|
int index = indexOfStart(search[0]);
|
||||||
|
int s = 1;
|
||||||
|
while (index == -1 && s < search.length) {
|
||||||
|
index = indexOfStart(search[s]);
|
||||||
|
s++;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (index != -1) {
|
||||||
|
addLines(index + offset, newLines);
|
||||||
|
} else {
|
||||||
|
appendLines(newLines);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public void saveConfig() {
|
public void saveConfig() {
|
||||||
StringBuilder stringBuilder = new StringBuilder();
|
StringBuilder stringBuilder = new StringBuilder();
|
||||||
for (String line : config) {
|
for (String line : config) {
|
||||||
@@ -110,7 +128,7 @@ public class ConfigUpdater {
|
|||||||
// ---- Updating to newer Versions ----
|
// ---- Updating to newer Versions ----
|
||||||
|
|
||||||
// Update from a specified Config version and language to the newest version
|
// Update from a specified Config version and language to the newest version
|
||||||
public void update(String fromVersion, boolean oldMat, String lang) {
|
public void update(String fromVersion, boolean oldMat, String lang, FileConfiguration yml) {
|
||||||
if (fromVersion.equals("0.5")) {
|
if (fromVersion.equals("0.5")) {
|
||||||
// Version 0.5 was only released for de, but with en as setting, so default to de
|
// Version 0.5 was only released for de, but with en as setting, so default to de
|
||||||
if (!lang.equals("de")) {
|
if (!lang.equals("de")) {
|
||||||
@@ -187,12 +205,24 @@ public class ConfigUpdater {
|
|||||||
fromVersion = "1.8";
|
fromVersion = "1.8";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (fromVersion.equals("1.8")) {
|
||||||
|
if (de) {
|
||||||
|
update18de(yml);
|
||||||
|
} else if (lang.equals("fr")) {
|
||||||
|
update18fr(yml);
|
||||||
|
} else {
|
||||||
|
update18en(yml);
|
||||||
|
}
|
||||||
|
updateVersion(BConfig.configVersion);
|
||||||
|
fromVersion = BConfig.configVersion;
|
||||||
|
}
|
||||||
|
|
||||||
if (P.use1_13 && oldMat) {
|
if (P.use1_13 && oldMat) {
|
||||||
updateMaterials(true);
|
updateMaterials(true);
|
||||||
updateMaterialDescriptions(de);
|
updateMaterialDescriptions(de);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!fromVersion.equals("1.8")) {
|
if (!fromVersion.equals(BConfig.configVersion)) {
|
||||||
P.p.log(P.p.languageReader.get("Error_ConfigUpdate", fromVersion));
|
P.p.log(P.p.languageReader.get("Error_ConfigUpdate", fromVersion));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -551,12 +581,12 @@ public class ConfigUpdater {
|
|||||||
if (index != -1) {
|
if (index != -1) {
|
||||||
index = indexOfStart("# (WEAKNESS, INCREASE_DAMAGE, SLOW und SPEED sind immer verborgen.) Mögliche Effekte:");
|
index = indexOfStart("# (WEAKNESS, INCREASE_DAMAGE, SLOW und SPEED sind immer verborgen.) Mögliche Effekte:");
|
||||||
if (index != -1) {
|
if (index != -1) {
|
||||||
config.remove(index);
|
removeLine(index);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
index = indexOfStart("# Bei Effekten mit sofortiger Wirkung ");
|
index = indexOfStart("# Bei Effekten mit sofortiger Wirkung ");
|
||||||
if (index != -1) {
|
if (index != -1) {
|
||||||
config.remove(index);
|
removeLine(index);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -650,12 +680,12 @@ public class ConfigUpdater {
|
|||||||
if (index != -1) {
|
if (index != -1) {
|
||||||
index = indexOfStart("# (WEAKNESS, INCREASE_DAMAGE, SLOW and SPEED are always hidden.) Possible Effects:");
|
index = indexOfStart("# (WEAKNESS, INCREASE_DAMAGE, SLOW and SPEED are always hidden.) Possible Effects:");
|
||||||
if (index != -1) {
|
if (index != -1) {
|
||||||
config.remove(index);
|
removeLine(index);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
index = indexOfStart("# instant effects ");
|
index = indexOfStart("# instant effects ");
|
||||||
if (index != -1) {
|
if (index != -1) {
|
||||||
config.remove(index);
|
removeLine(index);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -718,7 +748,7 @@ public class ConfigUpdater {
|
|||||||
|
|
||||||
int index = indexOfStart("# SamplePlugin = installiertes home plugin. Unterstützt: ManagerXL.");
|
int index = indexOfStart("# SamplePlugin = installiertes home plugin. Unterstützt: ManagerXL.");
|
||||||
if (index != -1) {
|
if (index != -1) {
|
||||||
config.remove(index);
|
removeLine(index);
|
||||||
}
|
}
|
||||||
|
|
||||||
index = indexOfStart("# Ob der Spieler nach etwas kürzerem Ausloggen an einem zufälligen Ort \"aufwacht\" (diese müssen durch '/br Wakeup add");
|
index = indexOfStart("# Ob der Spieler nach etwas kürzerem Ausloggen an einem zufälligen Ort \"aufwacht\" (diese müssen durch '/br Wakeup add");
|
||||||
@@ -840,7 +870,7 @@ public class ConfigUpdater {
|
|||||||
|
|
||||||
int index = indexOfStart("# SamplePlugin = installed home plugin. Supports: ManagerXL.");
|
int index = indexOfStart("# SamplePlugin = installed home plugin. Supports: ManagerXL.");
|
||||||
if (index != -1) {
|
if (index != -1) {
|
||||||
config.remove(index);
|
removeLine(index);
|
||||||
}
|
}
|
||||||
|
|
||||||
index = indexOfStart("# If the player \"wakes up\" at a random place when offline for some time while drinking (the places have to be defined with '/br Wakeup add'");
|
index = indexOfStart("# If the player \"wakes up\" at a random place when offline for some time while drinking (the places have to be defined with '/br Wakeup add'");
|
||||||
@@ -1246,13 +1276,354 @@ public class ConfigUpdater {
|
|||||||
if (P.use1_13) updateMaterialDescriptions(false);
|
if (P.use1_13) updateMaterialDescriptions(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void update18de(FileConfiguration yml) {
|
||||||
|
int index = indexOfStart("# Löschen einzelner Einstellungen");
|
||||||
|
if (index != -1) {
|
||||||
|
removeLine(index);
|
||||||
|
}
|
||||||
|
|
||||||
|
addLinesAt(new String[] {"colorInBrewer:", "colorInBarrels:", "hangoverDays:", "language:"}, 1, "",
|
||||||
|
"# Ob in den Iteminformationen immer 1-5 Sterne für die Qualität angezeigt werden sollen, oder nur beim brauen [true]",
|
||||||
|
"alwaysShowQuality: true",
|
||||||
|
"",
|
||||||
|
"# Ob in den Iteminformationen immer der Alkoholgehalt angezeigt weden soll, oder nur im Braustand [false]",
|
||||||
|
"alwaysShowAlc: false");
|
||||||
|
|
||||||
|
addLinesAt(new String[] {"maxBrewsInMCBarrels:", "openLargeBarrelEverywhere:", "language:"}, 1, "",
|
||||||
|
"# Benutzte Zutaten und andere Brau-Daten werden in allen Brewery Tränken gespeichert. Um zu verhindern,",
|
||||||
|
"# dass gehackte clients diese Daten auslesen um Rezepte herauszufinden, können diese encodiert werden.",
|
||||||
|
"# Einziger Nachteil: Tränke können nur auf Servern mit dem gleichen encodeKey benutzt werden.",
|
||||||
|
"# Dies kann also aktiviert werden um Rezept-cheating schwerer zu machen, aber keine Tränke per World Download, Schematic, o.ä. geteilt werden. [false]",
|
||||||
|
"enableEncode: false",
|
||||||
|
"encodeKey: 0");
|
||||||
|
|
||||||
|
addLinesAt(new String[] {"autosave:", "version:"}, 1, "",
|
||||||
|
"# Debug Nachrichten im Log anzeigen [false]",
|
||||||
|
"debug: false");
|
||||||
|
|
||||||
|
index = indexOfStart("oldMat:") + 1;
|
||||||
|
if (index == 0) {
|
||||||
|
index = indexOfStart("version:") + 1;
|
||||||
|
if (index == 0) {
|
||||||
|
index = 2;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// Custom Items and start of cauldron section
|
||||||
|
applyPatch("config/patches/de18.txt", index);
|
||||||
|
|
||||||
|
index = indexOfStart("%%%%MAT1%%%%");
|
||||||
|
if (index != -1) {
|
||||||
|
if (P.use1_13) {
|
||||||
|
setLine(index, " material: Barrier");
|
||||||
|
} else {
|
||||||
|
setLine(index, " material: BEDROCK");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
index = indexOfStart("%%%%MAT2%%%%");
|
||||||
|
if (index != -1) {
|
||||||
|
removeLine(index);
|
||||||
|
if (P.use1_13) {
|
||||||
|
addLines(index, " material:",
|
||||||
|
" - Acacia_Door",
|
||||||
|
" - Oak_Door",
|
||||||
|
" - Spruce_Door");
|
||||||
|
} else {
|
||||||
|
addLines(index, " material:",
|
||||||
|
" - WOODEN_DOOR",
|
||||||
|
" - IRON_DOOR");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
index = indexOfStart("# -- Eine Zutat:");
|
||||||
|
if (index == -1) {
|
||||||
|
index = indexOfStart("cauldron:");
|
||||||
|
if (index == -1) {
|
||||||
|
// Patch failed
|
||||||
|
index = indexOfStart("version:");
|
||||||
|
if (index == -1) {
|
||||||
|
index = 0;
|
||||||
|
}
|
||||||
|
addLines(index + 1, "cauldron:");
|
||||||
|
index ++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
convertCookedSection(yml, index + 1);
|
||||||
|
|
||||||
|
addLinesAt(new String[]{"# Eine Liste von allen Materialien", "# ingredients:"}, 1,
|
||||||
|
"# Plugin Items mit 'Plugin:Id' (Im Moment ExoticGarden, Slimefun, MMOItems, Brewery)",
|
||||||
|
"# Oder ein oben definiertes Custom Item");
|
||||||
|
|
||||||
|
addLinesAt(new String[]{"# alcohol:", "# difficulty:", "# ingredients:", "# -- Rezepte"}, 1,
|
||||||
|
"# lore: Auflistung von zusätzlichem Text auf dem fertigen Trank. (Farbcodes möglich: z.b. &6)",
|
||||||
|
"# Lore nur für bestimmte Qualität möglich mit + Schlecht, ++ Mittel, +++ Gut, vorne anhängen.",
|
||||||
|
"# servercommands: Liste von Befehlen ausgeführt vom Server wenn der Trank getrunken wird",
|
||||||
|
"# playercommands: Liste von Befehlen ausgeführt vom Spieler wenn der Trank getrunken wird",
|
||||||
|
"# drinkmessage: Nachricht im Chat beim trinken des Trankes",
|
||||||
|
"# drinktitle: Nachricht als Titel auf dem Bildschirm an den Spieler beim trinken des Trankes");
|
||||||
|
|
||||||
|
addLinesAt(new String[]{"useGriefPrevention:", "useWorldGuard:", "# -- Plugin Kompatiblit"}, 1, "useGMInventories: true");
|
||||||
|
|
||||||
|
index = indexOfStart("# cooked:");
|
||||||
|
if (index != -1) {
|
||||||
|
removeLine(index);
|
||||||
|
}
|
||||||
|
index = indexOfStart("# [Beispiel] MATERIAL:");
|
||||||
|
if (index != -1) {
|
||||||
|
removeLine(index);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
private void update18fr(FileConfiguration yml) {
|
||||||
|
int index = indexOfStart("# Supprimer un para");
|
||||||
|
if (index != -1) {
|
||||||
|
removeLine(index);
|
||||||
|
}
|
||||||
|
|
||||||
|
addLinesAt(new String[] {"colorInBrewer:", "colorInBarrels:", "hangoverDays:", "language:"}, 1, "\n" +
|
||||||
|
"# Toujours montrer les 1-5 étoiles sur les objets en fonction de leur qualité. S'ils sont faux, ils n'apparaîtront que lors de l'infusion. [true]",
|
||||||
|
"alwaysShowQuality: true",
|
||||||
|
"",
|
||||||
|
"# Toujours indiquer la teneur en alcool sur les objets. S'il est false, il n'apparaîtra que dans le stand de brassage. [false]",
|
||||||
|
"alwaysShowAlc: false");
|
||||||
|
|
||||||
|
addLinesAt(new String[] {"maxBrewsInMCBarrels:", "openLargeBarrelEverywhere:", "language:"}, 1, "",
|
||||||
|
"# Les ingrédients et autres données de brassage utilisés sont sauvegardés dans tous les articles de brasserie. [false]",
|
||||||
|
"# Pour empêcher les clients piratés de lire exactement ce qui a été utilisé pour infuser un élément, les données peuvent être encodées/brouillées.",
|
||||||
|
"# Il s'agit d'un processus rapide pour empêcher les joueurs de pirater des recettes, une fois qu'ils mettent la main sur une bière.",
|
||||||
|
"# Seul inconvénient: Les boissons brassicoles ne peuvent être utilisés que sur un autre serveur avec la même clé de chiffrement.",
|
||||||
|
"# Activez cette option si vous voulez rendre la tricherie des recettes plus difficile, mais ne partagez pas les infusions par téléchargement mondial, schémas ou autres moyens.",
|
||||||
|
"enableEncode: false",
|
||||||
|
"encodeKey: 0");
|
||||||
|
|
||||||
|
addLinesAt(new String[] {"autosave:", "version:"}, 1, "",
|
||||||
|
"# Show debug messages in log [false]",
|
||||||
|
"debug: false");
|
||||||
|
|
||||||
|
index = indexOfStart("oldMat:") + 1;
|
||||||
|
if (index == 0) {
|
||||||
|
index = indexOfStart("version:") + 1;
|
||||||
|
if (index == 0) {
|
||||||
|
index = 2;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// Custom Items and start of cauldron section
|
||||||
|
applyPatch("config/patches/fr18.txt", index);
|
||||||
|
|
||||||
|
index = indexOfStart("%%%%MAT1%%%%");
|
||||||
|
if (index != -1) {
|
||||||
|
if (P.use1_13) {
|
||||||
|
setLine(index, " material: Barrier");
|
||||||
|
} else {
|
||||||
|
setLine(index, " material: BEDROCK");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
index = indexOfStart("%%%%MAT2%%%%");
|
||||||
|
if (index != -1) {
|
||||||
|
removeLine(index);
|
||||||
|
if (P.use1_13) {
|
||||||
|
addLines(index, " material:",
|
||||||
|
" - Acacia_Door",
|
||||||
|
" - Oak_Door",
|
||||||
|
" - Spruce_Door");
|
||||||
|
} else {
|
||||||
|
addLines(index, " material:",
|
||||||
|
" - WOODEN_DOOR",
|
||||||
|
" - IRON_DOOR");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
index = indexOfStart(" # -- Un ingr");
|
||||||
|
if (index == -1) {
|
||||||
|
index = indexOfStart("cauldron:");
|
||||||
|
if (index == -1) {
|
||||||
|
// Patch failed
|
||||||
|
index = indexOfStart("version:");
|
||||||
|
if (index == -1) {
|
||||||
|
index = 0;
|
||||||
|
}
|
||||||
|
addLines(index + 1, "cauldron:");
|
||||||
|
index ++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
convertCookedSection(yml, index + 1);
|
||||||
|
|
||||||
|
addLinesAt(new String[]{"# Une liste des mat", "# ingredients:"}, 1,
|
||||||
|
"# Plugin items avec 'plugin:id' (Actuellement supporté ExoticGarden, Slimefun, MMOItems, Brewery)",
|
||||||
|
"# Ou un élément personnalisé défini ci-dessus");
|
||||||
|
|
||||||
|
addLinesAt(new String[]{"# alcohol:", "# difficulty:", "# ingredients:", "# -- Recette "}, 1,
|
||||||
|
"# lore: Liste des textes supplémentaires sur le breuvage fini. (Codes de formatage possibles : tels que &6)",
|
||||||
|
"# Texte spécifique de qualité possible, en utilisant + mauvais, ++ normal, +++ bon, ajouté à l'avant de la ligne.",
|
||||||
|
"# servercommands: Liste des commandes exécutées par le serveur lors de la consommation de la potion",
|
||||||
|
"# playercommands: Liste des commandes exécutées par le joueur lors de la consommation de la potion",
|
||||||
|
"# drinkmessage: Chat-message au joueur lorsqu'il boit la potion",
|
||||||
|
"# drinktitle: Titre à l'écran du joueur lorsqu'il boit la potion");
|
||||||
|
|
||||||
|
addLinesAt(new String[]{"useGriefPrevention:", "useWorldGuard:", "# -- Plugin Compatibility"}, 1, "useGMInventories: true");
|
||||||
|
|
||||||
|
index = indexOfStart("# cooked:");
|
||||||
|
if (index != -1) {
|
||||||
|
removeLine(index);
|
||||||
|
}
|
||||||
|
index = indexOfStart("# [Exemple] MATERIEL");
|
||||||
|
if (index != -1) {
|
||||||
|
removeLine(index);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
private void update18en(FileConfiguration yml) {
|
||||||
|
int index = indexOfStart("# Deleting of single settings");
|
||||||
|
if (index != -1) {
|
||||||
|
removeLine(index);
|
||||||
|
}
|
||||||
|
|
||||||
|
addLinesAt(new String[] {"colorInBrewer:", "colorInBarrels:", "hangoverDays:", "language:"}, 1, "",
|
||||||
|
"# Always show the 1-5 stars on the item depending on the quality. If false, they will only appear when brewing [true]",
|
||||||
|
"alwaysShowQuality: true",
|
||||||
|
"",
|
||||||
|
"# Always show the alcohol content on the item. If false, it will only show in the brewing stand [false]",
|
||||||
|
"alwaysShowAlc: false");
|
||||||
|
|
||||||
|
addLinesAt(new String[] {"maxBrewsInMCBarrels:", "openLargeBarrelEverywhere:", "language:"}, 1, "",
|
||||||
|
"# The used Ingredients and other brewing-data is saved to all Brewery Items. To prevent",
|
||||||
|
"# hacked clients from reading what exactly was used to brew an item, the data can be encoded/scrambled.",
|
||||||
|
"# This is a fast process to stop players from hacking out recipes, once they get hold of a brew.",
|
||||||
|
"# Only drawback: brew items can only be used on another server with the same encodeKey.",
|
||||||
|
"# So enable this if you want to make recipe cheating harder, but don't share any brews by world download, schematics, or other means. [false]",
|
||||||
|
"enableEncode: false",
|
||||||
|
"encodeKey: 0");
|
||||||
|
|
||||||
|
addLinesAt(new String[] {"autosave:", "version:"}, 1, "",
|
||||||
|
"# Show debug messages in log [false]",
|
||||||
|
"debug: false");
|
||||||
|
|
||||||
|
index = indexOfStart("oldMat:") + 1;
|
||||||
|
if (index == 0) {
|
||||||
|
index = indexOfStart("version:") + 1;
|
||||||
|
if (index == 0) {
|
||||||
|
index = 2;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// Custom Items and start of cauldron section
|
||||||
|
applyPatch("config/patches/en18.txt", index);
|
||||||
|
|
||||||
|
index = indexOfStart("%%%%MAT1%%%%");
|
||||||
|
if (index != -1) {
|
||||||
|
if (P.use1_13) {
|
||||||
|
setLine(index, " material: Barrier");
|
||||||
|
} else {
|
||||||
|
setLine(index, " material: BEDROCK");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
index = indexOfStart("%%%%MAT2%%%%");
|
||||||
|
if (index != -1) {
|
||||||
|
removeLine(index);
|
||||||
|
if (P.use1_13) {
|
||||||
|
addLines(index, " material:",
|
||||||
|
" - Acacia_Door",
|
||||||
|
" - Oak_Door",
|
||||||
|
" - Spruce_Door");
|
||||||
|
} else {
|
||||||
|
addLines(index, " material:",
|
||||||
|
" - WOODEN_DOOR",
|
||||||
|
" - IRON_DOOR");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
index = indexOfStart(" # -- One Ingredient");
|
||||||
|
if (index == -1) {
|
||||||
|
index = indexOfStart("cauldron:");
|
||||||
|
if (index == -1) {
|
||||||
|
// Patch failed
|
||||||
|
index = indexOfStart("version:");
|
||||||
|
if (index == -1) {
|
||||||
|
index = 0;
|
||||||
|
}
|
||||||
|
addLines(index + 1, "cauldron:");
|
||||||
|
index ++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
convertCookedSection(yml, index + 1);
|
||||||
|
|
||||||
|
addLinesAt(new String[]{"# A list of materials", "# ingredients:"}, 1,
|
||||||
|
"# Plugin items with 'plugin:id' (Currently supporting ExoticGarden, Slimefun, MMOItems, Brewery)",
|
||||||
|
"# Or a custom item defined above");
|
||||||
|
|
||||||
|
addLinesAt(new String[]{"# alcohol:", "# difficulty:", "# ingredients:", "# -- Recipes"}, 1,
|
||||||
|
"# lore: List of additional text on the finished brew. (Formatting codes possible: such as &6)",
|
||||||
|
"# Specific lore for quality possible, using + bad, ++ normal, +++ good, added to the front of the line.",
|
||||||
|
"# servercommands: List of Commands executed by the Server when drinking the brew",
|
||||||
|
"# playercommands: List of Commands executed by the Player when drinking the brew",
|
||||||
|
"# drinkmessage: Chat-message to the Player when drinking the Brew",
|
||||||
|
"# drinktitle: Title on Screen to the Player when drinking the Brew");
|
||||||
|
|
||||||
|
addLinesAt(new String[]{"useGriefPrevention:", "useWorldGuard:", "# -- Plugin Compatibility"}, 1, "useGMInventories: true");
|
||||||
|
|
||||||
|
index = indexOfStart("# cooked:");
|
||||||
|
if (index != -1) {
|
||||||
|
removeLine(index);
|
||||||
|
}
|
||||||
|
index = indexOfStart("# [Example] MATERIAL:");
|
||||||
|
if (index != -1) {
|
||||||
|
removeLine(index);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
private void convertCookedSection(FileConfiguration yml, int toLine) {
|
||||||
|
ConfigurationSection cookedSection = yml.getConfigurationSection("cooked");
|
||||||
|
if (cookedSection != null) {
|
||||||
|
for (String ing : cookedSection.getKeys(false)) {
|
||||||
|
String name = cookedSection.getString(ing);
|
||||||
|
addLines(toLine,
|
||||||
|
" " + ing.toLowerCase() + ":",
|
||||||
|
" name: " + name,
|
||||||
|
" ingredients:",
|
||||||
|
" - " + ing,
|
||||||
|
"");
|
||||||
|
toLine += 5;
|
||||||
|
}
|
||||||
|
|
||||||
|
int index = indexOfStart("cooked:");
|
||||||
|
if (index != -1) {
|
||||||
|
int size = cookedSection.getKeys(false).size();
|
||||||
|
while (size >= 0) {
|
||||||
|
removeLine(index);
|
||||||
|
size--;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public void applyPatch(String resourcePath, int toLine) {
|
||||||
|
try {
|
||||||
|
List<String> patch = new ArrayList<>();
|
||||||
|
BufferedReader reader = new BufferedReader(new InputStreamReader(Objects.requireNonNull(P.p.getResource(resourcePath), "Resource not found")));
|
||||||
|
String currentLine;
|
||||||
|
while((currentLine = reader.readLine()) != null) {
|
||||||
|
patch.add(currentLine);
|
||||||
|
}
|
||||||
|
reader.close();
|
||||||
|
config.addAll(toLine, patch);
|
||||||
|
} catch (IOException | NullPointerException e) {
|
||||||
|
P.p.errorLog("Could not apply Patch: " + resourcePath);
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Update all Materials to Minecraft 1.13
|
// Update all Materials to Minecraft 1.13
|
||||||
private void updateMaterials(boolean toMC113) {
|
private void updateMaterials(boolean toMC113) {
|
||||||
int index;
|
int index;
|
||||||
if (toMC113) {
|
if (toMC113) {
|
||||||
index = indexOfStart("oldMat:");
|
index = indexOfStart("oldMat:");
|
||||||
if (index != -1) {
|
if (index != -1) {
|
||||||
config.remove(index);
|
removeLine(index);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
index = indexOfStart("version:");
|
index = indexOfStart("version:");
|
||||||
@@ -1311,6 +1682,29 @@ public class ConfigUpdater {
|
|||||||
index++;
|
index++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
index = indexOfStart("cauldron:");
|
||||||
|
if (index != -1) {
|
||||||
|
index++;
|
||||||
|
int endIndex = indexOfStart("recipes:");
|
||||||
|
if (endIndex < index) {
|
||||||
|
endIndex = indexOfStart(" cookingtime:");
|
||||||
|
}
|
||||||
|
if (endIndex < index) {
|
||||||
|
endIndex = indexOfStart("useWorldGuard:");
|
||||||
|
}
|
||||||
|
while (index < endIndex) {
|
||||||
|
if (config.get(index).matches("^\\s+ingredients:.*")) {
|
||||||
|
index++;
|
||||||
|
while (config.get(index).matches("^\\s+- .+")) {
|
||||||
|
line = config.get(index);
|
||||||
|
setLine(index, convertMaterial(line, "^\\s+- ", "(,.*|)/.*", toMC113));
|
||||||
|
index++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
index++;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private String convertMaterial(String line, String regexPrefix, String regexPostfix, boolean toMC113) {
|
private String convertMaterial(String line, String regexPrefix, String regexPostfix, boolean toMC113) {
|
||||||
@@ -1362,33 +1756,33 @@ public class ConfigUpdater {
|
|||||||
|
|
||||||
index = indexOfStart("# Es kann ein Data-Wert (durability) angegeben werden");
|
index = indexOfStart("# Es kann ein Data-Wert (durability) angegeben werden");
|
||||||
if (index != -1) {
|
if (index != -1) {
|
||||||
config.remove(index);
|
removeLine(index);
|
||||||
}
|
}
|
||||||
|
|
||||||
index = indexOfStart("# Wenn Vault installiert ist");
|
index = indexOfStart("# Wenn Vault installiert ist");
|
||||||
if (index != -1) {
|
if (index != -1) {
|
||||||
config.remove(index);
|
removeLine(index);
|
||||||
}
|
}
|
||||||
|
|
||||||
index = indexOfStart("# Vault erkennt Namen wie");
|
index = indexOfStart("# Vault erkennt Namen wie");
|
||||||
if (index != -1) {
|
if (index != -1) {
|
||||||
config.remove(index);
|
removeLine(index);
|
||||||
}
|
}
|
||||||
index = indexOfStart("# - Jungle Leaves/64 # Nur mit Vault");
|
index = indexOfStart("# - Jungle Leaves/64 # Nur mit Vault");
|
||||||
if (index != -1) {
|
if (index != -1) {
|
||||||
config.remove(index);
|
removeLine(index);
|
||||||
}
|
}
|
||||||
index = indexOfStart("# - Green Dye/6 # Nur mit Vault");
|
index = indexOfStart("# - Green Dye/6 # Nur mit Vault");
|
||||||
if (index != -1) {
|
if (index != -1) {
|
||||||
config.remove(index);
|
removeLine(index);
|
||||||
}
|
}
|
||||||
index = indexOfStart("# Ein 'X' an den Namen");
|
index = indexOfStart("# Ein 'X' an den Namen");
|
||||||
if (index != -1) {
|
if (index != -1) {
|
||||||
config.remove(index);
|
removeLine(index);
|
||||||
}
|
}
|
||||||
index = indexOfStart("# Effekte sind ab der 1.9 immer verborgen");
|
index = indexOfStart("# Effekte sind ab der 1.9 immer verborgen");
|
||||||
if (index != -1) {
|
if (index != -1) {
|
||||||
config.remove(index);
|
removeLine(index);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
index = indexOfStart("# ingredients: List of 'material,data/amount'");
|
index = indexOfStart("# ingredients: List of 'material,data/amount'");
|
||||||
@@ -1398,33 +1792,33 @@ public class ConfigUpdater {
|
|||||||
|
|
||||||
index = indexOfStart("# You can specify a data (durability) value");
|
index = indexOfStart("# You can specify a data (durability) value");
|
||||||
if (index != -1) {
|
if (index != -1) {
|
||||||
config.remove(index);
|
removeLine(index);
|
||||||
}
|
}
|
||||||
|
|
||||||
index = indexOfStart("# If Vault is installed normal names can be used");
|
index = indexOfStart("# If Vault is installed normal names can be used");
|
||||||
if (index != -1) {
|
if (index != -1) {
|
||||||
config.remove(index);
|
removeLine(index);
|
||||||
}
|
}
|
||||||
|
|
||||||
index = indexOfStart("# Vault will recognize things");
|
index = indexOfStart("# Vault will recognize things");
|
||||||
if (index != -1) {
|
if (index != -1) {
|
||||||
config.remove(index);
|
removeLine(index);
|
||||||
}
|
}
|
||||||
index = indexOfStart("# - Jungle Leaves/64 # Only with Vault");
|
index = indexOfStart("# - Jungle Leaves/64 # Only with Vault");
|
||||||
if (index != -1) {
|
if (index != -1) {
|
||||||
config.remove(index);
|
removeLine(index);
|
||||||
}
|
}
|
||||||
index = indexOfStart("# - Green Dye/6 # Only with Vault");
|
index = indexOfStart("# - Green Dye/6 # Only with Vault");
|
||||||
if (index != -1) {
|
if (index != -1) {
|
||||||
config.remove(index);
|
removeLine(index);
|
||||||
}
|
}
|
||||||
index = indexOfStart("# Suffix name with 'X' to hide effect");
|
index = indexOfStart("# Suffix name with 'X' to hide effect");
|
||||||
if (index != -1) {
|
if (index != -1) {
|
||||||
config.remove(index);
|
removeLine(index);
|
||||||
}
|
}
|
||||||
index = indexOfStart("# Effects are always hidden in 1.9 and newer");
|
index = indexOfStart("# Effects are always hidden in 1.9 and newer");
|
||||||
if (index != -1) {
|
if (index != -1) {
|
||||||
config.remove(index);
|
removeLine(index);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -147,7 +147,7 @@ public class BrewLore {
|
|||||||
if (brew.getDistillRuns() <= 0) return;
|
if (brew.getDistillRuns() <= 0) return;
|
||||||
String prefix;
|
String prefix;
|
||||||
byte distillRuns = brew.getDistillRuns();
|
byte distillRuns = brew.getDistillRuns();
|
||||||
if (qualityColor && brew.hasRecipe()) {
|
if (qualityColor && !brew.isUnlabeled() && brew.hasRecipe()) {
|
||||||
prefix = getQualityColor(brew.getIngredients().getDistillQuality(brew.getCurrentRecipe(), distillRuns));
|
prefix = getQualityColor(brew.getIngredients().getDistillQuality(brew.getCurrentRecipe(), distillRuns));
|
||||||
} else {
|
} else {
|
||||||
prefix = "§7";
|
prefix = "§7";
|
||||||
@@ -168,7 +168,7 @@ public class BrewLore {
|
|||||||
public void updateAgeLore(boolean qualityColor) {
|
public void updateAgeLore(boolean qualityColor) {
|
||||||
String prefix;
|
String prefix;
|
||||||
float age = brew.getAgeTime();
|
float age = brew.getAgeTime();
|
||||||
if (qualityColor && brew.hasRecipe()) {
|
if (qualityColor && !brew.isUnlabeled() && brew.hasRecipe()) {
|
||||||
prefix = getQualityColor(brew.getIngredients().getAgeQuality(brew.getCurrentRecipe(), age));
|
prefix = getQualityColor(brew.getIngredients().getAgeQuality(brew.getCurrentRecipe(), age));
|
||||||
} else {
|
} else {
|
||||||
prefix = "§7";
|
prefix = "§7";
|
||||||
@@ -191,7 +191,7 @@ public class BrewLore {
|
|||||||
* @param qualityColor If the lore should have colors according to quality
|
* @param qualityColor If the lore should have colors according to quality
|
||||||
*/
|
*/
|
||||||
public void updateWoodLore(boolean qualityColor) {
|
public void updateWoodLore(boolean qualityColor) {
|
||||||
if (qualityColor && brew.hasRecipe()) {
|
if (qualityColor && brew.hasRecipe() && !brew.isUnlabeled()) {
|
||||||
int quality = brew.getIngredients().getWoodQuality(brew.getCurrentRecipe(), brew.getWood());
|
int quality = brew.getIngredients().getWoodQuality(brew.getCurrentRecipe(), brew.getWood());
|
||||||
addOrReplaceLore(Type.WOOD, getQualityColor(quality), P.p.languageReader.get("Brew_Woodtype"));
|
addOrReplaceLore(Type.WOOD, getQualityColor(quality), P.p.languageReader.get("Brew_Woodtype"));
|
||||||
} else {
|
} else {
|
||||||
@@ -260,15 +260,16 @@ public class BrewLore {
|
|||||||
}
|
}
|
||||||
|
|
||||||
updateCustomLore();
|
updateCustomLore();
|
||||||
|
if (toQuality && brew.isUnlabeled()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
updateQualityStars(toQuality);
|
updateQualityStars(toQuality);
|
||||||
|
|
||||||
if (!brew.isUnlabeled()) {
|
|
||||||
// Ingredients
|
// Ingredients
|
||||||
updateIngredientLore(toQuality);
|
updateIngredientLore(toQuality);
|
||||||
|
|
||||||
// Cooking
|
// Cooking
|
||||||
updateCookLore(toQuality);
|
updateCookLore(toQuality);
|
||||||
}
|
|
||||||
|
|
||||||
// Distilling
|
// Distilling
|
||||||
updateDistillLore(toQuality);
|
updateDistillLore(toQuality);
|
||||||
@@ -279,11 +280,9 @@ public class BrewLore {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// WoodType
|
// WoodType
|
||||||
if (!brew.isUnlabeled()) {
|
|
||||||
if (brew.getAgeTime() > 0.5) {
|
if (brew.getAgeTime() > 0.5) {
|
||||||
updateWoodLore(toQuality);
|
updateWoodLore(toQuality);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
updateAlc(false);
|
updateAlc(false);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -261,17 +261,17 @@ public class LegacyUtil {
|
|||||||
try {
|
try {
|
||||||
Class.forName("org.bukkit.persistence.PersistentDataContainer");
|
Class.forName("org.bukkit.persistence.PersistentDataContainer");
|
||||||
NewNbtVer = true;
|
NewNbtVer = true;
|
||||||
P.p.debugLog("Using the NEW nbt api");
|
P.p.log("Using the NEW nbt api");
|
||||||
return true;
|
return true;
|
||||||
} catch (ClassNotFoundException e) {
|
} catch (ClassNotFoundException e) {
|
||||||
try {
|
try {
|
||||||
Class.forName("org.bukkit.inventory.meta.tags.CustomItemTagContainer");
|
Class.forName("org.bukkit.inventory.meta.tags.CustomItemTagContainer");
|
||||||
NewNbtVer = false;
|
NewNbtVer = false;
|
||||||
P.p.debugLog("Using the OLD nbt api");
|
P.p.log("Using the OLD nbt api");
|
||||||
return true;
|
return true;
|
||||||
} catch (ClassNotFoundException ex) {
|
} catch (ClassNotFoundException ex) {
|
||||||
NewNbtVer = false;
|
NewNbtVer = false;
|
||||||
P.p.debugLog("No nbt api found, using Lore Save System");
|
P.p.log("No nbt api found, using Lore Save System");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user