mirror of
https://github.com/BentoBoxWorld/Challenges.git
synced 2024-11-24 19:45:14 +01:00
commit
a92df39a30
4
.github/workflows/build.yml
vendored
4
.github/workflows/build.yml
vendored
@ -14,11 +14,11 @@ jobs:
|
|||||||
- uses: actions/checkout@v3
|
- uses: actions/checkout@v3
|
||||||
with:
|
with:
|
||||||
fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis
|
fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis
|
||||||
- name: Set up JDK 17
|
- name: Set up JDK 21
|
||||||
uses: actions/setup-java@v3
|
uses: actions/setup-java@v3
|
||||||
with:
|
with:
|
||||||
distribution: 'adopt'
|
distribution: 'adopt'
|
||||||
java-version: 17
|
java-version: 21
|
||||||
- name: Cache SonarCloud packages
|
- name: Cache SonarCloud packages
|
||||||
uses: actions/cache@v3
|
uses: actions/cache@v3
|
||||||
with:
|
with:
|
||||||
|
32
pom.xml
32
pom.xml
@ -28,23 +28,30 @@
|
|||||||
<system>GitHub</system>
|
<system>GitHub</system>
|
||||||
<url>https://github.com/BentoBoxWorld/Challenges/issues</url>
|
<url>https://github.com/BentoBoxWorld/Challenges/issues</url>
|
||||||
</issueManagement>
|
</issueManagement>
|
||||||
|
|
||||||
|
<distributionManagement>
|
||||||
|
<repository>
|
||||||
|
<id>bentoboxworld</id>
|
||||||
|
<url>https://repo.codemc.org/repository/bentoboxworld/</url>
|
||||||
|
</repository>
|
||||||
|
</distributionManagement>
|
||||||
|
|
||||||
<properties>
|
<properties>
|
||||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||||
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
||||||
<java.version>17</java.version>
|
<java.version>21</java.version>
|
||||||
<powermock.version>2.0.9</powermock.version>
|
<powermock.version>2.0.9</powermock.version>
|
||||||
<!-- More visible way how to change dependency versions -->
|
<!-- More visible way how to change dependency versions -->
|
||||||
<spigot.version>1.20.4-R0.1-SNAPSHOT</spigot.version>
|
<spigot.version>1.21.3-R0.1-SNAPSHOT</spigot.version>
|
||||||
<spigot-annotations.version>1.2.3-SNAPSHOT</spigot-annotations.version>
|
<spigot-annotations.version>1.2.3-SNAPSHOT</spigot-annotations.version>
|
||||||
<bentobox.version>2.1.0</bentobox.version>
|
<bentobox.version>2.7.1-SNAPSHOT</bentobox.version>
|
||||||
<level.version>2.6.3</level.version>
|
<level.version>2.6.3</level.version>
|
||||||
<vault.version>1.7</vault.version>
|
<vault.version>1.7</vault.version>
|
||||||
<panelutils.version>1.2.0</panelutils.version>
|
<panelutils.version>1.2.0</panelutils.version>
|
||||||
<!-- Revision variable removes warning about dynamic version -->
|
<!-- Revision variable removes warning about dynamic version -->
|
||||||
<revision>${build.version}-SNAPSHOT</revision>
|
<revision>${build.version}-SNAPSHOT</revision>
|
||||||
<!-- This allows to change between versions and snapshots. -->
|
<!-- This allows to change between versions and snapshots. -->
|
||||||
<build.version>1.3.1</build.version>
|
<build.version>1.4.0</build.version>
|
||||||
<build.number>-LOCAL</build.number>
|
<build.number>-LOCAL</build.number>
|
||||||
<!-- Sonar Cloud -->
|
<!-- Sonar Cloud -->
|
||||||
<sonar.projectKey>BentoBoxWorld_Challenges</sonar.projectKey>
|
<sonar.projectKey>BentoBoxWorld_Challenges</sonar.projectKey>
|
||||||
@ -83,17 +90,6 @@
|
|||||||
</profile>
|
</profile>
|
||||||
</profiles>
|
</profiles>
|
||||||
|
|
||||||
<distributionManagement>
|
|
||||||
<snapshotRepository>
|
|
||||||
<id>codemc-snapshots</id>
|
|
||||||
<url>https://repo.codemc.org/repository/maven-snapshots</url>
|
|
||||||
</snapshotRepository>
|
|
||||||
<repository>
|
|
||||||
<id>codemc-releases</id>
|
|
||||||
<url>https://repo.codemc.org/repository/maven-releases</url>
|
|
||||||
</repository>
|
|
||||||
</distributionManagement>
|
|
||||||
|
|
||||||
<pluginRepositories>
|
<pluginRepositories>
|
||||||
<pluginRepository>
|
<pluginRepository>
|
||||||
<id>apache.snapshots</id>
|
<id>apache.snapshots</id>
|
||||||
@ -108,6 +104,10 @@
|
|||||||
<url>https://hub.spigotmc.org/nexus/content/repositories/snapshots</url>
|
<url>https://hub.spigotmc.org/nexus/content/repositories/snapshots</url>
|
||||||
</repository>
|
</repository>
|
||||||
<!-- CodeMC Repo for BentoBox -->
|
<!-- CodeMC Repo for BentoBox -->
|
||||||
|
<repository>
|
||||||
|
<id>bentoboxworld</id>
|
||||||
|
<url>https://repo.codemc.io/repository/bentoboxworld/</url>
|
||||||
|
</repository>
|
||||||
<repository>
|
<repository>
|
||||||
<id>codemc-repo</id>
|
<id>codemc-repo</id>
|
||||||
<url>https://repo.codemc.io/repository/maven-public</url>
|
<url>https://repo.codemc.io/repository/maven-public</url>
|
||||||
@ -231,7 +231,7 @@
|
|||||||
<plugin>
|
<plugin>
|
||||||
<groupId>org.apache.maven.plugins</groupId>
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
<artifactId>maven-shade-plugin</artifactId>
|
<artifactId>maven-shade-plugin</artifactId>
|
||||||
<version>3.3.1-SNAPSHOT</version>
|
<version>3.6.0</version>
|
||||||
<configuration>
|
<configuration>
|
||||||
<minimizeJar>true</minimizeJar>
|
<minimizeJar>true</minimizeJar>
|
||||||
<artifactSet>
|
<artifactSet>
|
||||||
|
@ -63,6 +63,7 @@ public class ChallengesAdminCommand extends CompositeCommand
|
|||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
this.showHelp(this, user);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -153,6 +153,9 @@ public class ChallengeLevel implements DataObject, Comparable<ChallengeLevel>
|
|||||||
*/
|
*/
|
||||||
public ItemStack getIcon()
|
public ItemStack getIcon()
|
||||||
{
|
{
|
||||||
|
if (icon == null) {
|
||||||
|
icon = new ItemStack(Material.PAPER);
|
||||||
|
}
|
||||||
return icon.clone();
|
return icon.clone();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -113,32 +113,36 @@ public class ChallengesManager
|
|||||||
* This comparator orders challenges by their level, order and name.
|
* This comparator orders challenges by their level, order and name.
|
||||||
*/
|
*/
|
||||||
private final Comparator<Challenge> challengeComparator = (o1, o2) -> {
|
private final Comparator<Challenge> challengeComparator = (o1, o2) -> {
|
||||||
|
// Get the levels
|
||||||
ChallengeLevel o1Level = this.getLevel(o1.getLevel());
|
ChallengeLevel o1Level = this.getLevel(o1.getLevel());
|
||||||
ChallengeLevel o2Level = this.getLevel(o2.getLevel());
|
ChallengeLevel o2Level = this.getLevel(o2.getLevel());
|
||||||
|
|
||||||
if (o1Level == null && o2Level == null)
|
// Handle null levels consistently
|
||||||
{
|
if (o1Level == null && o2Level == null) {
|
||||||
|
// Both levels are null, compare by order
|
||||||
return Integer.compare(o1.getOrder(), o2.getOrder());
|
return Integer.compare(o1.getOrder(), o2.getOrder());
|
||||||
}
|
} else if (o1Level == null) {
|
||||||
else if (o1Level == null)
|
// If o1 level is null, it should be ordered lower
|
||||||
{
|
|
||||||
return -1;
|
return -1;
|
||||||
}
|
} else if (o2Level == null) {
|
||||||
else if (o2Level == null)
|
// If o2 level is null, it should be ordered lower
|
||||||
{
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
else if (o1Level.equals(o2Level))
|
|
||||||
{
|
// If both levels are non-null, compare their orders
|
||||||
|
int levelComparison = Integer.compare(o1Level.getOrder(), o2Level.getOrder());
|
||||||
|
|
||||||
|
// If levels are the same, compare by challenge order
|
||||||
|
if (levelComparison == 0) {
|
||||||
return Integer.compare(o1.getOrder(), o2.getOrder());
|
return Integer.compare(o1.getOrder(), o2.getOrder());
|
||||||
}
|
}
|
||||||
else
|
|
||||||
{
|
// Return the level comparison result
|
||||||
return Integer.compare(o1Level.getOrder(), o2Level.getOrder());
|
return levelComparison;
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// ---------------------------------------------------------------------
|
// ---------------------------------------------------------------------
|
||||||
// Section: Constructor
|
// Section: Constructor
|
||||||
// ---------------------------------------------------------------------
|
// ---------------------------------------------------------------------
|
||||||
|
@ -119,6 +119,9 @@ public class ConversationUtils
|
|||||||
withFirstPrompt(confirmationPrompt).
|
withFirstPrompt(confirmationPrompt).
|
||||||
withLocalEcho(false).
|
withLocalEcho(false).
|
||||||
withTimeout(90).
|
withTimeout(90).
|
||||||
|
// Use null value in consumer to detect if user has abandoned conversation.
|
||||||
|
addConversationAbandonedListener(ConversationUtils.getAbandonListener(consumer, user))
|
||||||
|
.
|
||||||
buildConversation(user.getPlayer()).
|
buildConversation(user.getPlayer()).
|
||||||
begin();
|
begin();
|
||||||
}
|
}
|
||||||
|
@ -151,6 +151,11 @@ public class WebManager
|
|||||||
if (this.plugin.getSettings().isLogGithubDownloadData())
|
if (this.plugin.getSettings().isLogGithubDownloadData())
|
||||||
{
|
{
|
||||||
this.plugin.log("Could not connect to GitHub.");
|
this.plugin.log("Could not connect to GitHub.");
|
||||||
|
this.plugin.log(
|
||||||
|
"JSON files can be found at https://github.com/BentoBoxWorld/weblink/tree/master/challenges/library");
|
||||||
|
user.sendRawMessage("Could not connect to GitHub.");
|
||||||
|
user.sendRawMessage(
|
||||||
|
"JSON files can be found at https://github.com/BentoBoxWorld/weblink/tree/master/challenges/library");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
name: Challenges
|
name: Challenges
|
||||||
main: world.bentobox.challenges.ChallengesAddon
|
main: world.bentobox.challenges.ChallengesAddon
|
||||||
version: ${version}${build.number}
|
version: ${version}${build.number}
|
||||||
api-version: 1.17
|
api-version: 2.7.1
|
||||||
repository: 'BentoBoxWorld/Challenges'
|
repository: 'BentoBoxWorld/Challenges'
|
||||||
metrics: true
|
metrics: true
|
||||||
|
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -649,6 +649,12 @@ challenges:
|
|||||||
visible: Zeigen Sie sichtbare Herausforderungen
|
visible: Zeigen Sie sichtbare Herausforderungen
|
||||||
hidden: Alle Herausforderungen anzeigen
|
hidden: Alle Herausforderungen anzeigen
|
||||||
toggleable: Umschalten zulassen
|
toggleable: Umschalten zulassen
|
||||||
|
include_undeployed:
|
||||||
|
name: "&f&l Nicht bereitgestellte Herausforderungen einschließen"
|
||||||
|
description: "&7 Gibt an, ob nicht bereitgestellte \n&7 Herausforderungen
|
||||||
|
\n&7 für den Abschluss von Level \n&7 angerechnet werden sollen."
|
||||||
|
enabled: "&2 Aktiviert"
|
||||||
|
disabled: "&c Deaktiviert"
|
||||||
download:
|
download:
|
||||||
name: "&f&l Bibliotheken herunterladen"
|
name: "&f&l Bibliotheken herunterladen"
|
||||||
description: |-
|
description: |-
|
||||||
@ -851,7 +857,7 @@ challenges:
|
|||||||
environment-single: "&7 Limitiert auf [environment]"
|
environment-single: "&7 Limitiert auf [environment]"
|
||||||
environment-title: "&7 Limitiert auf:"
|
environment-title: "&7 Limitiert auf:"
|
||||||
environment-list: " &7 - &e [environment]"
|
environment-list: " &7 - &e [environment]"
|
||||||
permission-single: "&c Requires [permissions] permission"
|
permission-single: "&c Erfordert die Berechtigung [permission]"
|
||||||
permissions-title: "&c Erfordert Berechtigungen:"
|
permissions-title: "&c Erfordert Berechtigungen:"
|
||||||
permissions-list: " &c - [permission]"
|
permissions-list: " &c - [permission]"
|
||||||
island:
|
island:
|
||||||
@ -998,9 +1004,9 @@ challenges:
|
|||||||
write-reward-commands: "&e Bitte geben Sie pro Zeile im Chat einen neuen Belohnungsbefehl
|
write-reward-commands: "&e Bitte geben Sie pro Zeile im Chat einen neuen Belohnungsbefehl
|
||||||
ein und beenden Sie den Chat in einer eigenen Zeile."
|
ein und beenden Sie den Chat in einer eigenen Zeile."
|
||||||
reward-commands-changed: "&a Erfolg, die Belohnungsbefehle wurden aktualisiert."
|
reward-commands-changed: "&a Erfolg, die Belohnungsbefehle wurden aktualisiert."
|
||||||
write-repeat-reward-commands: "&e Bitte geben Sie pro Zeile im Chat einen neuen
|
write-repeat-reward-commands: "&e Geben Sie bitte pro Zeile im Chat einen neuen
|
||||||
Belohnungswiederholungsbefehl ein und beenden Sie den Chat in einer eigenen
|
Befehl zur Wiederholung der Belohnung ein und klicken Sie zum Beenden auf „Beenden“
|
||||||
Zeile."
|
in einer eigenen Zeile."
|
||||||
repeat-reward-commands-changed: "&a Erfolg, die Wiederholungsbelohnungsbefehle
|
repeat-reward-commands-changed: "&a Erfolg, die Wiederholungsbelohnungsbefehle
|
||||||
wurden aktualisiert."
|
wurden aktualisiert."
|
||||||
challenge-removed: "&a Herausforderungen [challende] für [gamemode] wird aus der
|
challenge-removed: "&a Herausforderungen [challende] für [gamemode] wird aus der
|
||||||
@ -1098,6 +1104,12 @@ challenges:
|
|||||||
not-hooked: "&c Challenges Addon konnte keinen GameMode finden."
|
not-hooked: "&c Challenges Addon konnte keinen GameMode finden."
|
||||||
timeout: "&c Diese Abfrage erfordert eine Wartezeit von [timeout] zwischen den
|
timeout: "&c Diese Abfrage erfordert eine Wartezeit von [timeout] zwischen den
|
||||||
Vervollständigungen. Sie müssen [wait-time] warten, bis Sie es erneut abschließen."
|
Vervollständigungen. Sie müssen [wait-time] warten, bis Sie es erneut abschließen."
|
||||||
|
requirement-not-met: "&c Für diese Herausforderung muss [statistic] [number] haben.
|
||||||
|
Sie haben nur [value]."
|
||||||
|
requirement-not-met-entity: "&c Für diese Herausforderung muss [statistic] [entity]
|
||||||
|
über [number] verfügen. Sie haben nur [value]."
|
||||||
|
requirement-not-met-material: "&c Diese Herausforderung erfordert, dass [statistic]
|
||||||
|
[material] [number] hat. Sie haben nur [value]."
|
||||||
protection:
|
protection:
|
||||||
flags:
|
flags:
|
||||||
CHALLENGES_ISLAND_PROTECTION:
|
CHALLENGES_ISLAND_PROTECTION:
|
||||||
|
@ -1,49 +1,43 @@
|
|||||||
---
|
---
|
||||||
meta:
|
meta:
|
||||||
authors:
|
authors:
|
||||||
- BONne
|
- BONNE
|
||||||
challenges:
|
challenges:
|
||||||
commands:
|
commands:
|
||||||
admin:
|
admin:
|
||||||
main:
|
main:
|
||||||
description: Comando de administrador principal. Abrir GUI.
|
description: Comando de administrador principal. Abrir GUI.
|
||||||
reload:
|
reload:
|
||||||
description: |-
|
description: >-
|
||||||
Recargar desafíos desde la base de datos
|
Recargar desafíos desde la base de datos
|
||||||
|
|
||||||
El parámetro hard significa que el addon restablecerá la conexión a la base de datos.
|
El parámetro hard significa que el addon restablecerá la conexión a la base de datos.
|
||||||
show:
|
show:
|
||||||
description: Imprime todos los desafíos en el chat que existen en este mundo.
|
description: Imprime todos los desafíos en el chat que existen en este mundo.
|
||||||
complete:
|
complete:
|
||||||
description: Completar un desafío para un jugador.
|
description: Completar un desafío para un jugador.
|
||||||
parameters: "<player> <challange_id>"
|
parameters: <player> <challange_id>
|
||||||
reset:
|
reset:
|
||||||
description: Restablecer un desafío para un jugador. Si "challenge_id" se
|
description: Restablecer un desafío para un jugador. Si "challenge_id" se
|
||||||
establece en "all", restableceran todos los desafíos.
|
establece en "all", restableceran todos los desafíos.
|
||||||
parameters: "<player> <challange_id>"
|
parameters: <player> <challange_id>
|
||||||
migrate:
|
migrate:
|
||||||
description: Migrar los datos actuales de los desafíos del mundo del juego
|
description: Migrar los datos actuales de los desafíos del mundo del juego al
|
||||||
al formato de almacenamiento 0.8.0.
|
formato de almacenamiento 0.8.0.
|
||||||
create:
|
|
||||||
parameters: "<unique challenge name>"
|
|
||||||
description: Abre el GUI que permite crear desafío..
|
|
||||||
surrounding:
|
|
||||||
parameters: "<challenge name>"
|
|
||||||
description: Crea un desafío envolvente.
|
|
||||||
user:
|
user:
|
||||||
main:
|
main:
|
||||||
description: Abrir GUI de Desafíos.
|
description: Abrir GUI de Desafíos.
|
||||||
complete:
|
complete:
|
||||||
description: Completa el desafío.
|
description: Completa el desafío.
|
||||||
parameters: "<challenge_id> [count]"
|
parameters: <challenge_id> [count]
|
||||||
description: Este método abre el GUI de los desafíos.
|
|
||||||
gui:
|
gui:
|
||||||
titles:
|
titles:
|
||||||
player-gui: "&0&l Menú de desafíos"
|
player-gui: "&0&l Menú de desafíos"
|
||||||
gamemode-gui: "&0&l Seleccionar modo de juego"
|
gamemode-gui: "&0&l Seleccionar modo de juego"
|
||||||
multiple-gui: "&0&l ¿Cuántas veces?"
|
multiple-gui: "&0&l ¿Cuántas veces?"
|
||||||
admin-gui: "&0&l Menú de administración de desafíos"
|
admin-gui: "&0&l Menú de administración de desafíos"
|
||||||
edit-challenge: "&0&l Editar [desafío]"
|
edit-challenge: "&0&l Editar [challenge]"
|
||||||
edit-level: "&0&l Editar [nivel]"
|
edit-level: "&0&l Editar [level]"
|
||||||
settings: "&0&l Configuración"
|
settings: "&0&l Configuración"
|
||||||
choose-challenge: "&0&l Elegir desafío"
|
choose-challenge: "&0&l Elegir desafío"
|
||||||
choose-level: "&0&l Elegir nivel"
|
choose-level: "&0&l Elegir nivel"
|
||||||
@ -71,20 +65,20 @@ challenges:
|
|||||||
&7 o salir de GUI
|
&7 o salir de GUI
|
||||||
previous:
|
previous:
|
||||||
name: "&f&l Página anterior"
|
name: "&f&l Página anterior"
|
||||||
description: "&7 Cambiar a &e [número] &7 página"
|
description: "&7 Cambiar a &e [number] &7 página"
|
||||||
next:
|
next:
|
||||||
name: "&f&l Página siguiente"
|
name: "&f&l Página siguiente"
|
||||||
description: "&7 Cambiar a &e [número] &7 página"
|
description: "&7 Cambiar a &e [number] &7 página"
|
||||||
reduce:
|
reduce:
|
||||||
name: "&f&l Reducir"
|
name: "&f&l Reducir"
|
||||||
description: "&7 Reducir en &e [número]"
|
description: "&7 Reducir en &e [number]"
|
||||||
increase:
|
increase:
|
||||||
name: "&f&l Aumento"
|
name: "&f&l Aumento"
|
||||||
description: "&7 Aumentar en &e [número]"
|
description: "&7 Aumentar en &e [number]"
|
||||||
accept:
|
accept:
|
||||||
name: "&f&l completo"
|
name: "&f&l completo"
|
||||||
description: |-
|
description: |-
|
||||||
&7 Completa el desafío &e [número]
|
&7 Completa el desafío &e [number]
|
||||||
&7 veces)
|
&7 veces)
|
||||||
quit:
|
quit:
|
||||||
name: "&f&l Salir"
|
name: "&f&l Salir"
|
||||||
@ -193,7 +187,7 @@ challenges:
|
|||||||
description: |-
|
description: |-
|
||||||
&7 Permite cambiar
|
&7 Permite cambiar
|
||||||
&7 el nombre para mostrar.
|
&7 el nombre para mostrar.
|
||||||
value: "&7 Actualmente: &r [nombre]"
|
value: "&7 Actualmente: &r [name]"
|
||||||
remove_on_complete:
|
remove_on_complete:
|
||||||
name: "&f&l Ocultar después de finalizar"
|
name: "&f&l Ocultar después de finalizar"
|
||||||
description: |-
|
description: |-
|
||||||
@ -225,7 +219,7 @@ challenges:
|
|||||||
&7 Objetos con números iguales
|
&7 Objetos con números iguales
|
||||||
&7 serán ordenados por su
|
&7 serán ordenados por su
|
||||||
&7 nombres de identificación únicos.
|
&7 nombres de identificación únicos.
|
||||||
value: "&7 Orden actual: &e [número]"
|
value: "&7 Orden actual: &e [number]"
|
||||||
icon:
|
icon:
|
||||||
name: Icono &f&l
|
name: Icono &f&l
|
||||||
description: |-
|
description: |-
|
||||||
@ -243,7 +237,7 @@ challenges:
|
|||||||
&7 permisos para esto
|
&7 permisos para esto
|
||||||
&7 desafío para ser completable.
|
&7 desafío para ser completable.
|
||||||
title: "&7 permisos:"
|
title: "&7 permisos:"
|
||||||
permission: " &8 - [permiso]"
|
permission: " &8 - [permission]"
|
||||||
none: "&7 Los permisos no están establecidos."
|
none: "&7 Los permisos no están establecidos."
|
||||||
remove_entities:
|
remove_entities:
|
||||||
name: "&f&l Eliminar entidades"
|
name: "&f&l Eliminar entidades"
|
||||||
@ -262,7 +256,7 @@ challenges:
|
|||||||
&7 entidades para esto
|
&7 entidades para esto
|
||||||
&7 desafío para ser completable.
|
&7 desafío para ser completable.
|
||||||
title: "&7 entidades:"
|
title: "&7 entidades:"
|
||||||
list: " &8 - [número] x [entidad]"
|
list: " &8 - [number] x [entity]"
|
||||||
none: "&7 Entidades no se agregan."
|
none: "&7 Entidades no se agregan."
|
||||||
remove_blocks:
|
remove_blocks:
|
||||||
name: "&f&l Quitar bloques"
|
name: "&f&l Quitar bloques"
|
||||||
@ -281,7 +275,7 @@ challenges:
|
|||||||
&7 bloques para esto
|
&7 bloques para esto
|
||||||
&7 desafío para ser completable.
|
&7 desafío para ser completable.
|
||||||
title: "&7 bloques:"
|
title: "&7 bloques:"
|
||||||
list: " &8 - [número] x [bloque]"
|
list: " &8 - [number] x [block]"
|
||||||
none: "&7 bloques no se agregan."
|
none: "&7 bloques no se agregan."
|
||||||
search_radius:
|
search_radius:
|
||||||
name: "&f&l Radio de búsqueda"
|
name: "&f&l Radio de búsqueda"
|
||||||
@ -290,7 +284,7 @@ challenges:
|
|||||||
&7 alrededor del jugador del cual
|
&7 alrededor del jugador del cual
|
||||||
&7 bloques y/o entidades son
|
&7 bloques y/o entidades son
|
||||||
&7 detectado.
|
&7 detectado.
|
||||||
value: "&7 Distancia actual: &e [número]"
|
value: "&7 Distancia actual: &e [number]"
|
||||||
remove_items:
|
remove_items:
|
||||||
name: "&f&l Eliminar elementos"
|
name: "&f&l Eliminar elementos"
|
||||||
description: |-
|
description: |-
|
||||||
@ -308,7 +302,7 @@ challenges:
|
|||||||
&7 artículos para esto
|
&7 artículos para esto
|
||||||
&7 desafío para ser completable.
|
&7 desafío para ser completable.
|
||||||
title: "&7 artículos:"
|
title: "&7 artículos:"
|
||||||
list: " &8 - [número] x [elemento]"
|
list: " &8 - [number] x [item]"
|
||||||
none: "&7 Los artículos no se agregan."
|
none: "&7 Los artículos no se agregan."
|
||||||
add_ignored_meta:
|
add_ignored_meta:
|
||||||
name: "&f&l Agregar Ignorar metadatos"
|
name: "&f&l Agregar Ignorar metadatos"
|
||||||
@ -318,7 +312,7 @@ challenges:
|
|||||||
&7 cualquier metadato que
|
&7 cualquier metadato que
|
||||||
Se les asigna &7.
|
Se les asigna &7.
|
||||||
title: "&7 artículos:"
|
title: "&7 artículos:"
|
||||||
list: " &8 - [número] x [elemento]"
|
list: " &8 - [number] x [item]"
|
||||||
none: "&7 Los artículos no se agregan."
|
none: "&7 Los artículos no se agregan."
|
||||||
remove_ignored_meta:
|
remove_ignored_meta:
|
||||||
name: "&f&l Eliminar Ignorar metadatos"
|
name: "&f&l Eliminar Ignorar metadatos"
|
||||||
@ -343,14 +337,14 @@ challenges:
|
|||||||
&7 Permite cambiar el
|
&7 Permite cambiar el
|
||||||
&7 experiencia requerida para
|
&7 experiencia requerida para
|
||||||
&7 el jugador.
|
&7 el jugador.
|
||||||
value: "&7 Experiencia actual: &e [número]"
|
value: "&7 Experiencia actual: &e [number]"
|
||||||
required_level:
|
required_level:
|
||||||
name: "&f&l Nivel de isla requerido"
|
name: "&f&l Nivel de isla requerido"
|
||||||
description: |-
|
description: |-
|
||||||
&7 Permite cambiar el
|
&7 Permite cambiar el
|
||||||
&7 nivel de isla requerido
|
&7 nivel de isla requerido
|
||||||
&7 para el desafío.
|
&7 para el desafío.
|
||||||
value: "&7 Nivel actual: &e [número]"
|
value: "&7 Nivel actual: &e [number]"
|
||||||
remove_money:
|
remove_money:
|
||||||
name: "&f&l Quitar dinero"
|
name: "&f&l Quitar dinero"
|
||||||
description: |-
|
description: |-
|
||||||
@ -367,21 +361,21 @@ challenges:
|
|||||||
&7 Permite cambiar el
|
&7 Permite cambiar el
|
||||||
&7 dinero requerido en el jugador
|
&7 dinero requerido en el jugador
|
||||||
&7 explica el desafío.
|
&7 explica el desafío.
|
||||||
value: "&7 Valor actual: &e [número]"
|
value: "&7 Valor actual: &e [number]"
|
||||||
statistic:
|
statistic:
|
||||||
name: "&f&l estadística"
|
name: "&f&l estadística"
|
||||||
description: |-
|
description: |-
|
||||||
&7 Permite cambiar el
|
&7 Permite cambiar el
|
||||||
&7 tipo de estadística que es
|
&7 tipo de estadística que es
|
||||||
&7 marcó este desafío.
|
&7 marcó este desafío.
|
||||||
value: "&7 Valor actual: &e [estadística]"
|
value: "&7 Valor actual: &e [statistic]"
|
||||||
statistic_amount:
|
statistic_amount:
|
||||||
name: "&f&l Valor objetivo"
|
name: "&f&l Valor objetivo"
|
||||||
description: |-
|
description: |-
|
||||||
&7 Permite cambiar el
|
&7 Permite cambiar el
|
||||||
&7 valor objetivo estadístico
|
&7 valor objetivo estadístico
|
||||||
&7 que se debe cumplir.
|
&7 que se debe cumplir.
|
||||||
value: "&7 Valor actual: &e [número]"
|
value: "&7 Valor actual: &e [number]"
|
||||||
remove_statistic:
|
remove_statistic:
|
||||||
name: "&f&l Reducir estadística"
|
name: "&f&l Reducir estadística"
|
||||||
description: |-
|
description: |-
|
||||||
@ -396,19 +390,19 @@ challenges:
|
|||||||
description: |-
|
description: |-
|
||||||
&7 Permite cambiar el
|
&7 Permite cambiar el
|
||||||
&7 bloque objetivo estadístico.
|
&7 bloque objetivo estadístico.
|
||||||
value: "&7 Bloque actual: &e [bloque]"
|
value: "&7 Bloque actual: &e [block]"
|
||||||
statistic_items:
|
statistic_items:
|
||||||
name: "&f&l Artículo de destino"
|
name: "&f&l Artículo de destino"
|
||||||
description: |-
|
description: |-
|
||||||
&7 Permite cambiar el
|
&7 Permite cambiar el
|
||||||
&7 elemento objetivo estadístico.
|
&7 elemento objetivo estadístico.
|
||||||
value: "&7 Artículo actual: &e [artículo]"
|
value: "&7 Artículo actual: &e [item]"
|
||||||
statistic_entities:
|
statistic_entities:
|
||||||
name: "&f&l entidad objetivo"
|
name: "&f&l entidad objetivo"
|
||||||
description: |-
|
description: |-
|
||||||
&7 Permite cambiar el
|
&7 Permite cambiar el
|
||||||
&7 entidad objetivo estadística.
|
&7 entidad objetivo estadística.
|
||||||
value: "&7 Entidad actual: &e [entidad]"
|
value: "&7 Entidad actual: &e [entity]"
|
||||||
reward_text:
|
reward_text:
|
||||||
name: "&f&l Texto de recompensa"
|
name: "&f&l Texto de recompensa"
|
||||||
description: |-
|
description: |-
|
||||||
@ -429,7 +423,7 @@ challenges:
|
|||||||
&7 Permite cambiar recompensa
|
&7 Permite cambiar recompensa
|
||||||
&7 artículos.
|
&7 artículos.
|
||||||
title: "&7 artículos:"
|
title: "&7 artículos:"
|
||||||
list: " &8 - [número] x [elemento]"
|
list: " &8 - [number] x [item]"
|
||||||
none: "&7 Los artículos no se agregan."
|
none: "&7 Los artículos no se agregan."
|
||||||
repeat_reward_items:
|
repeat_reward_items:
|
||||||
name: "&f&l Repetir artículos de recompensa"
|
name: "&f&l Repetir artículos de recompensa"
|
||||||
@ -438,7 +432,7 @@ challenges:
|
|||||||
&7 artículos de recompensa por esto
|
&7 artículos de recompensa por esto
|
||||||
&7 desafío.
|
&7 desafío.
|
||||||
title: "&7 artículos:"
|
title: "&7 artículos:"
|
||||||
list: " &8 - [número] x [elemento]"
|
list: " &8 - [number] x [item]"
|
||||||
none: "&7 Los artículos no se agregan."
|
none: "&7 Los artículos no se agregan."
|
||||||
reward_experience:
|
reward_experience:
|
||||||
name: Experiencia de recompensa &f&l
|
name: Experiencia de recompensa &f&l
|
||||||
@ -446,27 +440,27 @@ challenges:
|
|||||||
&7 Permite cambiar el
|
&7 Permite cambiar el
|
||||||
&7 experiencia de recompensa para
|
&7 experiencia de recompensa para
|
||||||
&7 el jugador.
|
&7 el jugador.
|
||||||
value: "&7 Experiencia de recompensa: &e [número]"
|
value: "&7 Experiencia de recompensa: &e [number]"
|
||||||
repeat_reward_experience:
|
repeat_reward_experience:
|
||||||
name: "&f&l Repetir experiencia de recompensa"
|
name: "&f&l Repetir experiencia de recompensa"
|
||||||
description: |-
|
description: |-
|
||||||
&7 Permite cambiar el
|
&7 Permite cambiar el
|
||||||
&7 repetir experiencia de recompensa
|
&7 repetir experiencia de recompensa
|
||||||
&7 para el jugador.
|
&7 para el jugador.
|
||||||
value: "&7 Experiencia de recompensa: &e [número]"
|
value: "&7 Experiencia de recompensa: &e [number]"
|
||||||
reward_money:
|
reward_money:
|
||||||
name: "&f&l Recompensa en dinero"
|
name: "&f&l Recompensa en dinero"
|
||||||
description: |-
|
description: |-
|
||||||
&7 Permite cambiar el
|
&7 Permite cambiar el
|
||||||
&7 dinero de recompensa.
|
&7 dinero de recompensa.
|
||||||
value: "&7 Valor actual: &e [número]"
|
value: "&7 Valor actual: &e [number]"
|
||||||
repeat_reward_money:
|
repeat_reward_money:
|
||||||
name: "&f&l repetir dinero de recompensa"
|
name: "&f&l repetir dinero de recompensa"
|
||||||
description: |-
|
description: |-
|
||||||
&7 Permite cambiar el
|
&7 Permite cambiar el
|
||||||
&7 repetir dinero de recompensa
|
&7 repetir dinero de recompensa
|
||||||
&7 para el desafío.
|
&7 para el desafío.
|
||||||
value: "&7 Valor actual: &e [número]"
|
value: "&7 Valor actual: &e [number]"
|
||||||
reward_commands:
|
reward_commands:
|
||||||
name: "&f&l Comandos de recompensa"
|
name: "&f&l Comandos de recompensa"
|
||||||
description: |-
|
description: |-
|
||||||
@ -481,7 +475,7 @@ challenges:
|
|||||||
&8 permitirá que el comando sea
|
&8 permitirá que el comando sea
|
||||||
&8 ejecutado por el jugador. También
|
&8 ejecutado por el jugador. También
|
||||||
&8 admite un marcador de posición
|
&8 admite un marcador de posición
|
||||||
&8 `[jugador]` que será
|
&8 `[player]` que será
|
||||||
&8 reemplazado con el nombre de un jugador
|
&8 reemplazado con el nombre de un jugador
|
||||||
&8 que completó el desafío.
|
&8 que completó el desafío.
|
||||||
value: "&7 Comandos actuales:"
|
value: "&7 Comandos actuales:"
|
||||||
@ -500,7 +494,7 @@ challenges:
|
|||||||
&8 permitirá que el comando sea
|
&8 permitirá que el comando sea
|
||||||
&8 ejecutado por el jugador. También
|
&8 ejecutado por el jugador. También
|
||||||
&8 admite un marcador de posición
|
&8 admite un marcador de posición
|
||||||
&8 `[jugador]` que será
|
&8 `[player]` que será
|
||||||
&8 reemplazado con el nombre de un jugador
|
&8 reemplazado con el nombre de un jugador
|
||||||
&8 que completó el desafío.
|
&8 que completó el desafío.
|
||||||
value: "&7 Comandos actuales:"
|
value: "&7 Comandos actuales:"
|
||||||
@ -518,7 +512,7 @@ challenges:
|
|||||||
&7 Permite cambiar el
|
&7 Permite cambiar el
|
||||||
&7 número de repeticiones
|
&7 número de repeticiones
|
||||||
&7 para el desafío.
|
&7 para el desafío.
|
||||||
value: "&7 Valor actual: &e [número]"
|
value: "&7 Valor actual: &e [number]"
|
||||||
cool_down:
|
cool_down:
|
||||||
name: "&f&l enfriamiento"
|
name: "&f&l enfriamiento"
|
||||||
description: |-
|
description: |-
|
||||||
@ -527,7 +521,7 @@ challenges:
|
|||||||
&7 debe esperarse entre
|
&7 debe esperarse entre
|
||||||
&7 desafío repetible
|
&7 desafío repetible
|
||||||
&7 finalizaciones.
|
&7 finalizaciones.
|
||||||
value: "&7 Valor actual: &e [hora]"
|
value: "&7 Valor actual: &e [time]"
|
||||||
challenges:
|
challenges:
|
||||||
name: Desafíos &f&l
|
name: Desafíos &f&l
|
||||||
description: |-
|
description: |-
|
||||||
@ -540,7 +534,7 @@ challenges:
|
|||||||
&7 de desafíos que pueden
|
&7 de desafíos que pueden
|
||||||
&7 quedará sin completar durante
|
&7 quedará sin completar durante
|
||||||
&7 desbloqueando el siguiente nivel.
|
&7 desbloqueando el siguiente nivel.
|
||||||
value: "&7 Valor actual: &e [número]"
|
value: "&7 Valor actual: &e [number]"
|
||||||
add_challenges:
|
add_challenges:
|
||||||
name: "&f&l Agregar desafío(s)"
|
name: "&f&l Agregar desafío(s)"
|
||||||
description: |-
|
description: |-
|
||||||
@ -635,13 +629,13 @@ challenges:
|
|||||||
&7 en datos de usuario.
|
&7 en datos de usuario.
|
||||||
&7 0 significa que los datos
|
&7 0 significa que los datos
|
||||||
&7 no se eliminará.
|
&7 no se eliminará.
|
||||||
value: "&7 Valor actual: &e [número]"
|
value: "&7 Valor actual: &e [number]"
|
||||||
title_showtime:
|
title_showtime:
|
||||||
name: "&f&l Título Showtime"
|
name: "&f&l Título Showtime"
|
||||||
description: |-
|
description: |-
|
||||||
&7 Número de ticks de ese título
|
&7 Número de ticks de ese título
|
||||||
&7 se mostrará al jugador.
|
&7 se mostrará al jugador.
|
||||||
value: "&7 Valor actual: &e [número]"
|
value: "&7 Valor actual: &e [number]"
|
||||||
active_world_list:
|
active_world_list:
|
||||||
name: "&f&l Mostrar sólo mundo activo"
|
name: "&f&l Mostrar sólo mundo activo"
|
||||||
description: |-
|
description: |-
|
||||||
@ -680,10 +674,10 @@ challenges:
|
|||||||
enabled: "&2 Con borrado de caché"
|
enabled: "&2 Con borrado de caché"
|
||||||
disabled: "&c Sin borrar caché"
|
disabled: "&c Sin borrar caché"
|
||||||
player:
|
player:
|
||||||
name: "&f&l [nombre]"
|
name: "&f&l [name]"
|
||||||
description: "&7 Propietario de la isla: [propietario]"
|
description: "&7 Propietario de la isla: [owner]"
|
||||||
members: "&7 miembros de la isla:"
|
members: "&7 miembros de la isla:"
|
||||||
member: "&8 - [nombre]"
|
member: "&8 - [name]"
|
||||||
no-island: |-
|
no-island: |-
|
||||||
&c El jugador no tiene
|
&c El jugador no tiene
|
||||||
&c una isla.
|
&c una isla.
|
||||||
@ -731,9 +725,9 @@ challenges:
|
|||||||
&7 entidades seleccionadas
|
&7 entidades seleccionadas
|
||||||
&7 de listas.
|
&7 de listas.
|
||||||
title: "&7 entidades seleccionadas:"
|
title: "&7 entidades seleccionadas:"
|
||||||
entity: "&8 - [entidad]"
|
entity: "&8 - [entity]"
|
||||||
entity:
|
entity:
|
||||||
name: "&f&l [entidad]"
|
name: "&f&l [entity]"
|
||||||
description: "&7 ID de entidad: [id]"
|
description: "&7 ID de entidad: [id]"
|
||||||
selected: "&2 seleccionado"
|
selected: "&2 seleccionado"
|
||||||
inventory_type:
|
inventory_type:
|
||||||
@ -774,29 +768,25 @@ challenges:
|
|||||||
&7 Devuelve elementos seleccionados
|
&7 Devuelve elementos seleccionados
|
||||||
&7 y abre la GUI anterior.
|
&7 y abre la GUI anterior.
|
||||||
title: "&7 seleccionado:"
|
title: "&7 seleccionado:"
|
||||||
element: "&8 - [elemento]"
|
element: "&8 - [element]"
|
||||||
statistic_element:
|
statistic_element:
|
||||||
name: "&f&l [estadística]"
|
name: "&f&l [statistic]"
|
||||||
description: "[descripción]"
|
description: "[description]"
|
||||||
environment_element:
|
environment_element:
|
||||||
name: "&f&l [medio ambiente]"
|
name: "&f&l [environment]"
|
||||||
description: "[descripción]"
|
description: "[description]"
|
||||||
search:
|
search:
|
||||||
name: "&f&l Buscar"
|
name: "&f&l Buscar"
|
||||||
description: |-
|
description: |-
|
||||||
&7 Permite buscar un
|
&7 Permite buscar un
|
||||||
&7 elemento con entrada
|
&7 elemento con entrada
|
||||||
&7 valor de texto.
|
&7 valor de texto.
|
||||||
search: "&b Valor: [valor]"
|
search: "&b Valor: [value]"
|
||||||
admin:
|
|
||||||
backward: Importar desafios 0.3.0
|
|
||||||
backward-player: Arreglar 0.3.0 PlayerData
|
|
||||||
tips:
|
tips:
|
||||||
click-to-select: "&e Haga clic en &7 para seleccionar."
|
click-to-select: "&e Haga clic en &7 para seleccionar."
|
||||||
click-to-choose: "&e Haga clic en &7 para elegir."
|
click-to-choose: "&e Haga clic en &7 para elegir."
|
||||||
click-to-complete: "&e Haga clic en &7 para completar."
|
click-to-complete: "&e Haga clic en &7 para completar."
|
||||||
right-click-multiple-open: "&e Haga clic derecho en &7 para elegir el recuento
|
right-click-multiple-open: "&e Haga clic derecho en &7 para elegir el recuento de finalización."
|
||||||
de finalización."
|
|
||||||
shift-left-click-to-complete-all: "&e Shift Haga clic en &7 para completar todo."
|
shift-left-click-to-complete-all: "&e Shift Haga clic en &7 para completar todo."
|
||||||
left-click-to-accept: "&e Haga clic izquierdo en &7 para completar."
|
left-click-to-accept: "&e Haga clic izquierdo en &7 para completar."
|
||||||
right-click-to-write: "&e Haga clic derecho en &7 para escribir."
|
right-click-to-write: "&e Haga clic derecho en &7 para escribir."
|
||||||
@ -840,140 +830,134 @@ challenges:
|
|||||||
descriptions:
|
descriptions:
|
||||||
challenge:
|
challenge:
|
||||||
lore: |-
|
lore: |-
|
||||||
[descripción]
|
[description]
|
||||||
[estado]
|
[status]
|
||||||
[enfriarse]
|
[cooldown]
|
||||||
[requisitos]
|
[requirements]
|
||||||
[recompensas]
|
[rewards]
|
||||||
status:
|
status:
|
||||||
completed: "&2&l completado"
|
completed: "&2&l completado"
|
||||||
completed-times: "&2 completado &7&l [número] &r&2 vez(-s)"
|
completed-times: "&2 completado &7&l [number] &r&2 vez(-s)"
|
||||||
completed-times-of: "&2 completado &7&l [número] &r&2 de &7&l [máx.] &r&2
|
completed-times-of: "&2 completado &7&l [number] &r&2 de &7&l [max] &r&2 veces"
|
||||||
veces"
|
|
||||||
completed-times-reached: "&2&l Completado todo &7 [max] &2 veces"
|
completed-times-reached: "&2&l Completado todo &7 [max] &2 veces"
|
||||||
cooldown:
|
cooldown:
|
||||||
lore: |-
|
lore: |-
|
||||||
[se acabó el tiempo]
|
[timeout]
|
||||||
[tiempo de espera]
|
[wait-time]
|
||||||
timeout: "&7&l Enfriamiento: &r&7 [tiempo]"
|
timeout: "&7&l Enfriamiento: &r&7 [time]"
|
||||||
wait-time: "&c&l Disponible después de: &r&c [hora]"
|
wait-time: "&c&l Disponible después de: &r&c [time]"
|
||||||
in-days: "[número] d"
|
in-days: "[number] d"
|
||||||
in-hours: "[número] h"
|
in-hours: "[number] h"
|
||||||
in-minutes: "[número] min"
|
in-minutes: "[number] min"
|
||||||
in-seconds: "[número] s"
|
in-seconds: "[number] s"
|
||||||
requirements:
|
requirements:
|
||||||
lore: |-
|
lore: |-
|
||||||
[ambiente]
|
[environment]
|
||||||
[tipo-requisito]
|
[type-requirement]
|
||||||
[permisos]
|
[permissions]
|
||||||
environment-single: "&7 Limitado a [entorno]"
|
environment-single: "&7 Limitado a [environment]"
|
||||||
environment-title: "&7 Limitado a:"
|
environment-title: "&7 Limitado a:"
|
||||||
environment-list: " &7 - &e [entorno]"
|
environment-list: " &7 - &e [environment]"
|
||||||
permission-single: "&c Requiere permiso [permiso]"
|
permission-single: "&c Requiere permiso [permission]"
|
||||||
permissions-title: "&c Requiere permisos:"
|
permissions-title: "&c Requiere permisos:"
|
||||||
permissions-list: " &c - [permiso]"
|
permissions-list: " &c - [permission]"
|
||||||
island:
|
island:
|
||||||
lore: |-
|
lore: |-
|
||||||
[bloques]
|
[blocks]
|
||||||
[entidades]
|
[entities]
|
||||||
[radio de búsqueda]
|
[search-radius]
|
||||||
[bloque de advertencia]
|
[warning-block]
|
||||||
[entidad de advertencia]
|
[warning-entity]
|
||||||
blocks-title: "&7&l Bloques requeridos:"
|
blocks-title: "&7&l Bloques requeridos:"
|
||||||
block-value: " &7 - &e [material]"
|
block-value: " &7 - &e [material]"
|
||||||
blocks-value: " &7 - &e [número] x [material]"
|
blocks-value: " &7 - &e [number] x [material]"
|
||||||
entities-title: "&7&l Entidades requeridas:"
|
entities-title: "&7&l Entidades requeridas:"
|
||||||
entity-value: " &7 - &e [entidad]"
|
entity-value: " &7 - &e [entity]"
|
||||||
entities-value: " &7 - &e [número] x [entidad]"
|
entities-value: " &7 - &e [number] x [entity]"
|
||||||
search-radius: "&7 No más allá de &e [número] &7 metros"
|
search-radius: "&7 No más allá de &e [number] &7 metros"
|
||||||
warning-block: "&e Los bloques serán &c eliminados"
|
warning-block: "&e Los bloques serán &c eliminados"
|
||||||
warning-entity: "&e Entidades serán &c eliminadas"
|
warning-entity: "&e Entidades serán &c eliminadas"
|
||||||
inventory:
|
inventory:
|
||||||
lore: |-
|
lore: |-
|
||||||
[elementos]
|
[items]
|
||||||
[advertencia]
|
[warning]
|
||||||
item-title: "&7&l Elementos necesarios:"
|
item-title: "&7&l Elementos necesarios:"
|
||||||
item-value: " &7 - &e [artículo]"
|
item-value: " &7 - &e [item]"
|
||||||
items-value: " &7 - &e [número] x [elemento]"
|
items-value: " &7 - &e [number] x [item]"
|
||||||
warning: "& los artículos serán &c eliminados"
|
warning: "& los artículos serán &c eliminados"
|
||||||
other:
|
other:
|
||||||
lore: |-
|
lore: |-
|
||||||
[experiencia]
|
[experience]
|
||||||
[experiencia-advertencia]
|
[experience-warning]
|
||||||
[dinero]
|
[money]
|
||||||
[advertencia de dinero]
|
[money-warning]
|
||||||
[nivel]
|
[level]
|
||||||
experience: "&7&l Experiencia requerida: &r&e [número]"
|
experience: "&7&l Experiencia requerida: &r&e [number]"
|
||||||
experience-warning: "&e experiencia será &c eliminada"
|
experience-warning: "&e experiencia será &c eliminada"
|
||||||
money: "&7&l Dinero requerido: &r&e [número]"
|
money: "&7&l Dinero requerido: &r&e [number]"
|
||||||
money-warning: "&e dinero será &c eliminado"
|
money-warning: "&e dinero será &c eliminado"
|
||||||
level: "&7&l Nivel de isla requerido: &r&e [número]"
|
level: "&7&l Nivel de isla requerido: &r&e [number]"
|
||||||
statistic:
|
statistic:
|
||||||
lore: |-
|
lore: |-
|
||||||
[estadística]
|
[statistic]
|
||||||
[advertencia]
|
[warning]
|
||||||
multiple-target: "&7&l [estadística]: &r&e [número] x [objetivo]"
|
multiple-target: "&7&l [statistic]: &r&e [number] x [target]"
|
||||||
single-target: "&7&l [estadística]: &r&e [objetivo]"
|
single-target: "&7&l [statistic]: &r&e [target]"
|
||||||
statistic: "&7&l [estadística] &r&e [número]"
|
statistic: "&7&l [statistic] &r&e [number]"
|
||||||
warning: "&e Los datos estadísticos serán &c reducidos."
|
warning: "&e Los datos estadísticos serán &c reducidos."
|
||||||
rewards:
|
rewards:
|
||||||
lore: |-
|
lore: |-
|
||||||
&7&l Recompensas:
|
&7&l Recompensas:
|
||||||
[texto]
|
[text]
|
||||||
[elementos]
|
[items]
|
||||||
[experiencia]
|
[experience]
|
||||||
[dinero]
|
[money]
|
||||||
[comandos]
|
[commands]
|
||||||
item-title: "&7 artículos:"
|
item-title: "&7 artículos:"
|
||||||
item-value: " &7 - &e [artículo]"
|
item-value: " &7 - &e [item]"
|
||||||
items-value: " &7 - &e [número] x [elemento]"
|
items-value: " &7 - &e [number] x [item]"
|
||||||
experience: "&7 Experiencia: &r&e [número]"
|
experience: "&7 Experiencia: &r&e [number]"
|
||||||
money: "&7 Dinero: &r&e [número]"
|
money: "&7 Dinero: &r&e [number]"
|
||||||
commands-title: "&7 comandos:"
|
commands-title: "&7 comandos:"
|
||||||
command: " &7 - &e [comando]"
|
command: " &7 - &e [command]"
|
||||||
level:
|
level:
|
||||||
lore: |-
|
lore: |-
|
||||||
[texto]
|
[text]
|
||||||
[estado]
|
[status]
|
||||||
[exención]
|
[waiver]
|
||||||
[recompensas]
|
[rewards]
|
||||||
status:
|
status:
|
||||||
completed: "&2&l completado"
|
completed: "&2&l completado"
|
||||||
completed-challenges-of: |-
|
completed-challenges-of: |-
|
||||||
&2 completado &7&l [número] &r&2 de
|
&2 completado &7&l [number] &r&2 de
|
||||||
&7&l [máx.] &r&2 desafíos.
|
&7&l [max] &r&2 desafíos.
|
||||||
locked: "&c&l bloqueado"
|
locked: "&c&l bloqueado"
|
||||||
missing-challenges: |-
|
missing-challenges: |-
|
||||||
&7 [número] más desafíos deben ser
|
&7 [number] más desafíos deben ser
|
||||||
&7 completado para desbloquear este nivel.
|
&7 completado para desbloquear este nivel.
|
||||||
waiver: |-
|
waiver: |-
|
||||||
&7&l [número] desafío(s) &r&7 puede ser
|
&7&l [number] desafío(s) &r&7 puede ser
|
||||||
&7 se saltó para desbloquear el siguiente nivel.
|
&7 se saltó para desbloquear el siguiente nivel.
|
||||||
rewards:
|
rewards:
|
||||||
lore: |-
|
lore: |-
|
||||||
&7&l Recompensas:
|
&7&l Recompensas:
|
||||||
[texto]
|
[text]
|
||||||
[elementos]
|
[items]
|
||||||
[experiencia]
|
[experience]
|
||||||
[dinero]
|
[money]
|
||||||
[comandos]
|
[commands]
|
||||||
item-title: "&7 artículos:"
|
item-title: "&7 artículos:"
|
||||||
item-value: " &7 - &e [artículo]"
|
item-value: " &7 - &e [item]"
|
||||||
items-value: " &7 - &e [número] x [elemento]"
|
items-value: " &7 - &e [number] x [item]"
|
||||||
experience: "&7 Experiencia: &r&e [número]"
|
experience: "&7 Experiencia: &r&e [number]"
|
||||||
money: "&7 Dinero: &r&e [número]"
|
money: "&7 Dinero: &r&e [number]"
|
||||||
commands-title: "&7 comandos:"
|
commands-title: "&7 comandos:"
|
||||||
command: " &7 - &e [comando]"
|
command: " &7 - &e [command]"
|
||||||
library:
|
library:
|
||||||
author: "&7 por &e [autor]"
|
author: "&7 por &e [author]"
|
||||||
version: "&7 Hecho con desafíos &e [versión]"
|
version: "&7 Hecho con desafíos &e [version]"
|
||||||
lang: "&7 Idioma: &e [idioma]"
|
lang: "&7 Idioma: &e [lang]"
|
||||||
gamemode: "&7 Principal para &e [modo de juego]"
|
gamemode: "&7 Principal para &e [gamemode]"
|
||||||
admin:
|
|
||||||
backward: Permite importar desafíos desde 0.3.0 y por debajo de la versión
|
|
||||||
adicional.
|
|
||||||
backward-player: Permite corregir PlayerData dañado desde la versión 0.3.0|&2ÚSELO
|
|
||||||
SOLO SI ES NECESARIO|&2PUEDE NO TRABAJAR EN TODAS LAS SITUACIONES
|
|
||||||
conversations:
|
conversations:
|
||||||
prefix: "&l&6 [BentoBox]: &r"
|
prefix: "&l&6 [BentoBox]: &r"
|
||||||
confirm-string: verdadero, activado, sí, confirmar, y, válido, correcto
|
confirm-string: verdadero, activado, sí, confirmar, y, válido, correcto
|
||||||
@ -983,32 +967,30 @@ challenges:
|
|||||||
cancelled: "&c ¡Conversación cancelada!"
|
cancelled: "&c ¡Conversación cancelada!"
|
||||||
input-number: "&e Por favor ingresa un número en el chat."
|
input-number: "&e Por favor ingresa un número en el chat."
|
||||||
input-seconds: "&e Por favor ingrese unos segundos en el chat."
|
input-seconds: "&e Por favor ingrese unos segundos en el chat."
|
||||||
numeric-only: "&c ¡El [valor] dado no es un número!"
|
numeric-only: "&c ¡El [value] dado no es un número!"
|
||||||
not-valid-value: "&c El número dado [valor] no es válido. ¡Debe ser mayor que
|
not-valid-value: "&c El número dado [value] no es válido. ¡Debe ser mayor que
|
||||||
[min] y menor que [max]!"
|
[min] y menor que [max]!"
|
||||||
user-data-removed: "&a Todos los datos del usuario para [modo de juego] se borran
|
user-data-removed: "&a Todos los datos del usuario para [gamemode] se borran de
|
||||||
de la base de datos."
|
la base de datos."
|
||||||
confirm-user-data-deletion: "&e Confirme que desea borrar la base de datos de
|
confirm-user-data-deletion: "&e Confirme que desea borrar la base de datos de
|
||||||
usuarios para [modo de juego]."
|
usuarios para [gamemode]."
|
||||||
challenge-data-removed: "&a Todos los datos de los desafíos para [modo de juego]
|
challenge-data-removed: "&a Todos los datos de los desafíos para [gamemode] se
|
||||||
se borran de la base de datos."
|
borran de la base de datos."
|
||||||
confirm-challenge-data-deletion: "&e Confirme que desea borrar la base de datos
|
confirm-challenge-data-deletion: "&e Confirme que desea borrar la base de datos
|
||||||
de desafíos para [modo de juego]."
|
de desafíos para [gamemode]."
|
||||||
all-data-removed: "&a Todos los datos adicionales para [modo de juego] se borran
|
all-data-removed: "&a Todos los datos adicionales para [gamemode] se borran de
|
||||||
de la base de datos."
|
la base de datos."
|
||||||
confirm-all-data-deletion: "&e Confirme que desea borrar los datos adicionales
|
confirm-all-data-deletion: "&e Confirme que desea borrar los datos adicionales para [gamemode]."
|
||||||
para [modo de juego]."
|
|
||||||
write-name: "&e Por favor escribe un nombre en el chat."
|
write-name: "&e Por favor escribe un nombre en el chat."
|
||||||
new-object-created: "&Se crea un nuevo objeto para [modo de juego]."
|
new-object-created: "&Se crea un nuevo objeto para [gamemode]."
|
||||||
object-already-exists: "&c El objeto &7 [id] &c ya existe. Elija un nombre diferente."
|
object-already-exists: "&c El objeto &7 [id] &c ya existe. Elija un nombre diferente."
|
||||||
invalid-challenge: "&c Desafío [desafío] contiene datos no válidos. ¡No se puede
|
invalid-challenge: "&c Desafío [challenge] contiene datos no válidos. ¡No se puede desplegar!"
|
||||||
desplegar!"
|
|
||||||
name-changed: "&a Éxito, se actualizó el nombre."
|
name-changed: "&a Éxito, se actualizó el nombre."
|
||||||
write-description: '&e Ingrese una nueva descripción en el chat y "salir" en una
|
write-description: '&e Ingrese una nueva descripción en el chat y "salir" en una
|
||||||
línea sola para finalizar.'
|
línea sola para finalizar.'
|
||||||
description-changed: "&a Éxito, se actualizó la descripción."
|
description-changed: "&a Éxito, se actualizó la descripción."
|
||||||
write-permissions: '&e Ingrese los permisos requeridos, uno por línea en el chat,
|
write-permissions: '&e Ingrese los permisos requeridos, uno por línea en el
|
||||||
y "salga" en una línea sola para finalizar.'
|
chat, y "salga" en una línea sola para finalizar.'
|
||||||
permissions-changed: "&a Éxito, se actualizaron los permisos de desafío."
|
permissions-changed: "&a Éxito, se actualizaron los permisos de desafío."
|
||||||
write-reward-text: '&e Ingrese un nuevo texto de recompensa en el chat y "salir"
|
write-reward-text: '&e Ingrese un nuevo texto de recompensa en el chat y "salir"
|
||||||
en una línea aparte para finalizar.'
|
en una línea aparte para finalizar.'
|
||||||
@ -1019,28 +1001,24 @@ challenges:
|
|||||||
write-reward-commands: '&e Ingrese un nuevo comando de recompensa por línea en
|
write-reward-commands: '&e Ingrese un nuevo comando de recompensa por línea en
|
||||||
el chat y "salga" en una línea sola para finalizar.'
|
el chat y "salga" en una línea sola para finalizar.'
|
||||||
reward-commands-changed: "&a Éxito, se actualizaron los comandos de recompensa."
|
reward-commands-changed: "&a Éxito, se actualizaron los comandos de recompensa."
|
||||||
write-repeat-reward-commands: '&e Ingrese un nuevo comando de recompensa repetida
|
write-repeat-reward-commands: '&e Ingrese un nuevo comando de recompensa
|
||||||
por línea en el chat y "salga" en una línea sola para finalizar.'
|
repetida por línea en el chat y "salga" en una línea sola para finalizar.'
|
||||||
repeat-reward-commands-changed: "&a Éxito, se actualizaron los comandos de recompensa
|
repeat-reward-commands-changed: "&a Éxito, se actualizaron los comandos de recompensa repetida."
|
||||||
repetida."
|
challenge-removed: "&a Los desafíos [challenge] para [gamemode] se eliminan de
|
||||||
challenge-removed: "&a Los desafíos [desafío] para [modo de juego] se eliminan
|
la base de datos."
|
||||||
|
confirm-challenge-deletion: "&e Confirme que desea eliminar [challenge] para
|
||||||
|
[gamemode] de la base de datos."
|
||||||
|
level-removed: "&a Nivel [level] para [gamemode] se elimina de la base de datos."
|
||||||
|
confirm-level-deletion: "&e Confirme que desea eliminar [level] para [gamemode]
|
||||||
de la base de datos."
|
de la base de datos."
|
||||||
confirm-challenge-deletion: "&e Confirme que desea eliminar [desafío] para [modo
|
|
||||||
de juego] de la base de datos."
|
|
||||||
level-removed: "&a Nivel [nivel] para [modo de juego] se elimina de la base de
|
|
||||||
datos."
|
|
||||||
confirm-level-deletion: "&e Confirme que desea eliminar [nivel] para [modo de
|
|
||||||
juego] de la base de datos."
|
|
||||||
start-downloading: "&a Comenzando a descargar e importar la biblioteca de desafíos."
|
start-downloading: "&a Comenzando a descargar e importar la biblioteca de desafíos."
|
||||||
written-text: "&un texto de entrada:"
|
written-text: "&un texto de entrada:"
|
||||||
confirm-data-replacement: "&e Confirme que desea reemplazar sus desafíos actuales
|
confirm-data-replacement: "&e Confirme que desea reemplazar sus desafíos actuales por uno nuevo."
|
||||||
por uno nuevo."
|
new-challenges-imported: "&a Éxito, se importaron nuevos desafíos para [gamemode]."
|
||||||
new-challenges-imported: "&a Éxito, se importaron nuevos desafíos para [modo de
|
|
||||||
juego]."
|
|
||||||
exported-file-name: "&e Introduzca un nombre de archivo para el archivo de base
|
exported-file-name: "&e Introduzca un nombre de archivo para el archivo de base
|
||||||
de datos exportado. (escriba 'cancelar' para salir)"
|
de datos exportado. (escriba 'cancelar' para salir)"
|
||||||
database-export-completed: "&a Éxito, se completó la exportación de la base de
|
database-export-completed: "&a Éxito, se completó la exportación de la base de
|
||||||
datos para [mundo]. Archivo [archivo] generado."
|
datos para [world]. Archivo [file] generado."
|
||||||
file-name-exist: "&c Existe un archivo con el nombre '[id]'. No se puede sobrescribir."
|
file-name-exist: "&c Existe un archivo con el nombre '[id]'. No se puede sobrescribir."
|
||||||
write-search: "&e Por favor escriba un valor de búsqueda. (escriba 'cancelar'
|
write-search: "&e Por favor escriba un valor de búsqueda. (escriba 'cancelar'
|
||||||
para salir)"
|
para salir)"
|
||||||
@ -1051,10 +1029,10 @@ challenges:
|
|||||||
level-title: Completado con éxito
|
level-title: Completado con éxito
|
||||||
level-subtitle: "[friendlyName]"
|
level-subtitle: "[friendlyName]"
|
||||||
messages:
|
messages:
|
||||||
completed: "&2 ¡Has completado el desafío [nombre] para [jugador]!"
|
completed: "&2 ¡Has completado el desafío [name] para [player]!"
|
||||||
already-completed: "&2 ¡Este desafío ya se completó!"
|
already-completed: "&2 ¡Este desafío ya se completó!"
|
||||||
reset: "&2 ¡Reiniciaste el desafío [nombre] para [jugador]!"
|
reset: "&2 ¡Reiniciaste el desafío [name] para [player]!"
|
||||||
reset-all: "&2 ¡Todos los desafíos [de jugador] fueron reiniciados!"
|
reset-all: "&2 ¡Todos los desafíos [player] fueron reiniciados!"
|
||||||
not-completed: "&2 ¡Este desafío aún no se ha completado!"
|
not-completed: "&2 ¡Este desafío aún no se ha completado!"
|
||||||
migrate-start: "&2 Comenzar a migrar datos del complemento de desafíos."
|
migrate-start: "&2 Comenzar a migrar datos del complemento de desafíos."
|
||||||
migrate-end: Datos del complemento &2 Challenges actualizados al nuevo formato.
|
migrate-end: Datos del complemento &2 Challenges actualizados al nuevo formato.
|
||||||
@ -1062,24 +1040,22 @@ challenges:
|
|||||||
start-downloading: "&5 Comenzando a descargar e importar la biblioteca de desafíos."
|
start-downloading: "&5 Comenzando a descargar e importar la biblioteca de desafíos."
|
||||||
you-completed-challenge: "&2¡Has completado el desafío [value]!"
|
you-completed-challenge: "&2¡Has completado el desafío [value]!"
|
||||||
you-repeated-challenge: "&2¡Has repetido el desafío [value]!"
|
you-repeated-challenge: "&2¡Has repetido el desafío [value]!"
|
||||||
you-repeated-challenge-multiple: "&2¡Has repetido el &r&2desafío [value] [count]
|
you-repeated-challenge-multiple: "&2¡Has repetido el &r&2desafío [value] [count] veces!"
|
||||||
veces!"
|
|
||||||
you-completed-level: "&2¡Has completado el nivel [value]!"
|
you-completed-level: "&2¡Has completado el nivel [value]!"
|
||||||
name-has-completed-challenge: "&5¡[name] ha completado el desafío [value]!"
|
name-has-completed-challenge: "&5¡[name] ha completado el desafío [value]!"
|
||||||
name-has-completed-level: "&5¡[name] ha completado el nivel [value]!"
|
name-has-completed-level: "&5¡[name] ha completado el nivel [value]!"
|
||||||
load-skipping: '"[value]" ya existe - saltando'
|
load-skipping: '"[value]" ya existe - saltando'
|
||||||
load-overwriting: Sobrescribiendo "[value]"
|
load-overwriting: Sobrescribiendo "[value]"
|
||||||
load-add: 'Añadiendo nuevo objeto: [value]'
|
load-add: "Añadiendo nuevo objeto: [value]"
|
||||||
errors:
|
errors:
|
||||||
no-name: "&cFalta el nombre del desafío"
|
no-name: "&cFalta el nombre del desafío"
|
||||||
unknown-challenge: "&cDesafío desconocido"
|
unknown-challenge: "&cDesafío desconocido"
|
||||||
not-valid-integer: |-
|
not-valid-integer: |-
|
||||||
&c ¡El entero "[valor]" dado no es válido!
|
&c ¡El entero "[value]" dado no es válido!
|
||||||
El valor debe estar entre [min] y [max].
|
El valor debe estar entre [min] y [max].
|
||||||
not-deployed: "&c¡El desafío no está desplegado!"
|
not-deployed: "&c¡El desafío no está desplegado!"
|
||||||
not-on-island: "&c¡Debes estar en tu isla para hacer eso!"
|
not-on-island: "&c¡Debes estar en tu isla para hacer eso!"
|
||||||
challenge-level-not-available: "&cNo has desbloqueado el nivel requerido para
|
challenge-level-not-available: "&cNo has desbloqueado el nivel requerido para completar este desafío."
|
||||||
completar este desafío."
|
|
||||||
not-repeatable: "&c¡Este reto no es repetible!"
|
not-repeatable: "&c¡Este reto no es repetible!"
|
||||||
wrong-environment: "&c¡Estás en el entorno equivocado!"
|
wrong-environment: "&c¡Estás en el entorno equivocado!"
|
||||||
not-enough-items: "&c¡No tienes [items] suficientes para completar este desafío!"
|
not-enough-items: "&c¡No tienes [items] suficientes para completar este desafío!"
|
||||||
@ -1088,8 +1064,7 @@ challenges:
|
|||||||
you-still-need: "&cTodavía necesitas [amount] x [item]"
|
you-still-need: "&cTodavía necesitas [amount] x [item]"
|
||||||
missing-addon: "&cNo se puede completar el desafío: falta un addon o plugin requerido."
|
missing-addon: "&cNo se puede completar el desafío: falta un addon o plugin requerido."
|
||||||
incorrect: "&cNo se puede completar el desafío: los requisitos son incorrectos."
|
incorrect: "&cNo se puede completar el desafío: los requisitos son incorrectos."
|
||||||
not-enough-money: "&cEs necesario tener [value] en tu cuenta para completar el
|
not-enough-money: "&cEs necesario tener [value] en tu cuenta para completar el desafío."
|
||||||
desafío."
|
|
||||||
not-enough-experience: "&cEs necesario tener [value] EXP para completar este desafío."
|
not-enough-experience: "&cEs necesario tener [value] EXP para completar este desafío."
|
||||||
island-level: "&c¡Tu isla debe ser de nivel [number] o mayor para completar este
|
island-level: "&c¡Tu isla debe ser de nivel [number] o mayor para completar este
|
||||||
desafío!"
|
desafío!"
|
||||||
@ -1097,29 +1072,26 @@ challenges:
|
|||||||
load-error: "&cError: No se pudo cargar [value]."
|
load-error: "&cError: No se pudo cargar [value]."
|
||||||
no-rank: "&cNo tienes un rango lo suficientemente alto como para hacer eso."
|
no-rank: "&cNo tienes un rango lo suficientemente alto como para hacer eso."
|
||||||
cannot-remove-items: "&c¡Algunos items no se pueden eliminar de tu inventario!"
|
cannot-remove-items: "&c¡Algunos items no se pueden eliminar de tu inventario!"
|
||||||
exist-challenges-or-levels: "&cLos desafíos ya existen en tu mundo. ¡No se puede
|
exist-challenges-or-levels: "&cLos desafíos ya existen en tu mundo. ¡No se puede proceder!"
|
||||||
proceder!"
|
|
||||||
no-challenges: "&c¡Los desafíos aún no se han implementado en este mundo!"
|
no-challenges: "&c¡Los desafíos aún no se han implementado en este mundo!"
|
||||||
no-challenges-admin: "&c¡Los desafíos aún no se han implementado en este mundo!
|
no-challenges-admin: "&c¡Los desafíos aún no se han implementado en este mundo!
|
||||||
¡Usa &5/[command] &cpara agregarlos!"
|
¡Usa &5/[command] &cpara agregarlos!"
|
||||||
missing-arguments: "&cFaltan argumentos de comando."
|
missing-arguments: "&cFaltan argumentos de comando."
|
||||||
no-multiple-permission: "&cNo tienes permiso para completar este desafío varias
|
no-multiple-permission: "&cNo tienes permiso para completar este desafío varias veces a la vez."
|
||||||
veces a la vez."
|
invalid-level: "&c El nivel [level] contiene datos no válidos. ¡No se cargará
|
||||||
invalid-level: "&c El nivel [nivel] contiene datos no válidos. ¡No se cargará
|
|
||||||
desde la base de datos!"
|
desde la base de datos!"
|
||||||
invalid-challenge: "&c Desafío [desafío] contiene datos no válidos. ¡No se cargará
|
invalid-challenge: "&c Desafío [challenge] contiene datos no válidos. ¡No se
|
||||||
desde la base de datos!"
|
cargará desde la base de datos!"
|
||||||
no-library-entries: "&c No se pueden encontrar entradas de la biblioteca. Nada
|
no-library-entries: "&c No se pueden encontrar entradas de la biblioteca. Nada que mostrar."
|
||||||
que mostrar."
|
|
||||||
not-hooked: "&c Challenges Addon no pudo encontrar ningún modo de juego."
|
not-hooked: "&c Challenges Addon no pudo encontrar ningún modo de juego."
|
||||||
timeout: "&c Este desafío requiere esperar [tiempo de espera] entre finalizaciones.
|
timeout: "&c Este desafío requiere esperar [timeout] entre finalizaciones. Debes
|
||||||
Debes esperar [tiempo de espera] hasta completarlo nuevamente."
|
esperar [wait-time] hasta completarlo nuevamente."
|
||||||
requirement-not-met: "&c Este desafío requiere que [estadística] tenga [número].
|
requirement-not-met: "&c Este desafío requiere que [statistic] tenga [number].
|
||||||
Solo tienes [valor]."
|
Solo tienes [value]."
|
||||||
requirement-not-met-entity: "&c Este desafío requiere que [estadística] [entidad]
|
requirement-not-met-entity: "&c Este desafío requiere que [statistic] [entity]
|
||||||
tenga [número]. Solo tienes [valor]."
|
tenga [number]. Solo tienes [value]."
|
||||||
requirement-not-met-material: "&c Este desafío requiere que [estadística] [material]
|
requirement-not-met-material: "&c Este desafío requiere que [statistic]
|
||||||
tenga [número]. Solo tienes [valor]."
|
[material] tenga [number]. Solo tienes [value]."
|
||||||
protection:
|
protection:
|
||||||
flags:
|
flags:
|
||||||
CHALLENGES_ISLAND_PROTECTION:
|
CHALLENGES_ISLAND_PROTECTION:
|
||||||
@ -1128,8 +1100,8 @@ protection:
|
|||||||
&5&ocompletar desafíos
|
&5&ocompletar desafíos
|
||||||
name: Proteccion de desafios
|
name: Proteccion de desafios
|
||||||
CHALLENGES_WORLD_PROTECTION:
|
CHALLENGES_WORLD_PROTECTION:
|
||||||
description: "&5&oHabilitar/deshabilitar &5&orequerimiento para que los jugadores
|
description: "&5&oHabilitar/deshabilitar &5&orequerimiento para que los
|
||||||
&5&o esten en su isla para &5&ocompletar un desafío."
|
jugadores &5&o esten en su isla para &5&ocompletar un desafío."
|
||||||
name: Limitaciones de la isla
|
name: Limitaciones de la isla
|
||||||
hint: No hay desafíos fuera de la isla
|
hint: No hay desafíos fuera de la isla
|
||||||
version: 11
|
version: 12
|
||||||
|
@ -33,7 +33,7 @@ challenges:
|
|||||||
gamemode-gui: "&0&l Sélectionner le mode de jeu"
|
gamemode-gui: "&0&l Sélectionner le mode de jeu"
|
||||||
multiple-gui: "&0&l Combien de fois ?"
|
multiple-gui: "&0&l Combien de fois ?"
|
||||||
admin-gui: "&0&l Menu d'administration des Challenges"
|
admin-gui: "&0&l Menu d'administration des Challenges"
|
||||||
edit-challenge: "&0&l Editer [Challenge]"
|
edit-challenge: "&0&l Editer [challenge]"
|
||||||
edit-level: "&0&l Editer [level]"
|
edit-level: "&0&l Editer [level]"
|
||||||
settings: "&0&l Paramètres"
|
settings: "&0&l Paramètres"
|
||||||
choose-challenge: "&0&l Choisir le Challenge"
|
choose-challenge: "&0&l Choisir le Challenge"
|
||||||
@ -337,7 +337,7 @@ challenges:
|
|||||||
&7 Permet de modifier le
|
&7 Permet de modifier le
|
||||||
&7 niveau d'îlot requis
|
&7 niveau d'îlot requis
|
||||||
&7 pour le défi.
|
&7 pour le défi.
|
||||||
value: "&7 Niveau actuel : &e [numéro]"
|
value: "&7 Niveau actuel : &e [number]"
|
||||||
remove_money:
|
remove_money:
|
||||||
name: "&f&l Supprimer de l'argent"
|
name: "&f&l Supprimer de l'argent"
|
||||||
description: |-
|
description: |-
|
||||||
@ -354,21 +354,21 @@ challenges:
|
|||||||
&7 Permet de modifier le
|
&7 Permet de modifier le
|
||||||
&7 argent requis sur le joueur
|
&7 argent requis sur le joueur
|
||||||
&7 représente le défi.
|
&7 représente le défi.
|
||||||
value: "&7 Valeur actuelle : &e [numéro]"
|
value: "&7 Valeur actuelle : &e [number]"
|
||||||
statistic:
|
statistic:
|
||||||
name: "&f&l Statistique"
|
name: "&f&l Statistique"
|
||||||
description: |-
|
description: |-
|
||||||
&7 Permet de modifier le
|
&7 Permet de modifier le
|
||||||
&7 type de statistique qui est
|
&7 type de statistique qui est
|
||||||
&7 a vérifié ce défi.
|
&7 a vérifié ce défi.
|
||||||
value: "&7 Valeur actuelle : &e [statistique]"
|
value: "&7 Valeur actuelle : &e [statistic]"
|
||||||
statistic_amount:
|
statistic_amount:
|
||||||
name: "&f&l Valeur cible"
|
name: "&f&l Valeur cible"
|
||||||
description: |-
|
description: |-
|
||||||
&7 Permet de modifier le
|
&7 Permet de modifier le
|
||||||
&7 valeur cible statistique
|
&7 valeur cible statistique
|
||||||
&7 qui doit être respecté.
|
&7 qui doit être respecté.
|
||||||
value: "&7 Valeur actuelle : &e [numéro]"
|
value: "&7 Valeur actuelle : &e [number]"
|
||||||
remove_statistic:
|
remove_statistic:
|
||||||
name: "&f&l Réduire la statistique"
|
name: "&f&l Réduire la statistique"
|
||||||
description: |-
|
description: |-
|
||||||
@ -389,13 +389,13 @@ challenges:
|
|||||||
description: |-
|
description: |-
|
||||||
&7 Permet de modifier le
|
&7 Permet de modifier le
|
||||||
&7 poste cible statistique.
|
&7 poste cible statistique.
|
||||||
value: "&7 Poste actuel : &e [poste]"
|
value: "&7 Poste actuel : &e [item]"
|
||||||
statistic_entities:
|
statistic_entities:
|
||||||
name: "&f&l Entité cible"
|
name: "&f&l Entité cible"
|
||||||
description: |-
|
description: |-
|
||||||
&7 Permet de modifier le
|
&7 Permet de modifier le
|
||||||
&7 entité cible statistique.
|
&7 entité cible statistique.
|
||||||
value: "&7 Entité actuelle : &e [entité]"
|
value: "&7 Entité actuelle : &e [entity]"
|
||||||
reward_text:
|
reward_text:
|
||||||
name: "&f&l Texte de récompense"
|
name: "&f&l Texte de récompense"
|
||||||
description: |-
|
description: |-
|
||||||
@ -446,7 +446,7 @@ challenges:
|
|||||||
description: |-
|
description: |-
|
||||||
&7 Permet de modifier le
|
&7 Permet de modifier le
|
||||||
&7 récompense en argent.
|
&7 récompense en argent.
|
||||||
value: "&7 Valeur actuelle : &e [numéro]"
|
value: "&7 Valeur actuelle : &e [number]"
|
||||||
repeat_reward_money:
|
repeat_reward_money:
|
||||||
name: "&f&l Répéter l'argent de la récompense"
|
name: "&f&l Répéter l'argent de la récompense"
|
||||||
description: |-
|
description: |-
|
||||||
@ -825,14 +825,14 @@ challenges:
|
|||||||
challenge:
|
challenge:
|
||||||
lore: |-
|
lore: |-
|
||||||
[description]
|
[description]
|
||||||
[statut]
|
[status]
|
||||||
[refroidir]
|
[cooldown]
|
||||||
[exigences]
|
[requirements]
|
||||||
[récompenses]
|
[rewards]
|
||||||
status:
|
status:
|
||||||
completed: "&2&l Terminé"
|
completed: "&2&l Terminé"
|
||||||
completed-times: "&2 Terminé &7&l [numéro] &r&2 fois(-s)"
|
completed-times: "&2 Terminé &7&l [number] &r&2 fois(-s)"
|
||||||
completed-times-of: "&2 Terminé &7&l [nombre] &r&2 sur &7&l [max] &r&2 fois"
|
completed-times-of: "&2 Terminé &7&l [number] &r&2 sur &7&l [max] &r&2 fois"
|
||||||
completed-times-reached: "&2&l Terminé tout &7 [max] &2 fois"
|
completed-times-reached: "&2&l Terminé tout &7 [max] &2 fois"
|
||||||
cooldown:
|
cooldown:
|
||||||
lore: |-
|
lore: |-
|
||||||
@ -881,16 +881,16 @@ challenges:
|
|||||||
warning: "&e Le ou les éléments seront &c supprimés"
|
warning: "&e Le ou les éléments seront &c supprimés"
|
||||||
other:
|
other:
|
||||||
lore: |-
|
lore: |-
|
||||||
[expérience]
|
[experience]
|
||||||
[expérience-avertissement]
|
[experience-warning]
|
||||||
[argent]
|
[money]
|
||||||
[avertissement d'argent]
|
[money-warning]
|
||||||
[niveau]
|
[level]
|
||||||
experience: "&7&l Expérience requise : &r&e [number]"
|
experience: "&7&l Expérience requise : &r&e [number]"
|
||||||
experience-warning: "&e L'expérience sera &c supprimée"
|
experience-warning: "&e L'expérience sera &c supprimée"
|
||||||
money: "&7&l Argent requis : &r&e [number]"
|
money: "&7&l Argent requis : &r&e [number]"
|
||||||
money-warning: "&e L'argent sera &c supprimé"
|
money-warning: "&e L'argent sera &c supprimé"
|
||||||
level: "&7&l Niveau d'îlot requis : &r&e [nombre]"
|
level: "&7&l Niveau d'îlot requis : &r&e [number]"
|
||||||
statistic:
|
statistic:
|
||||||
lore: |-
|
lore: |-
|
||||||
[statistic]
|
[statistic]
|
||||||
@ -923,14 +923,14 @@ challenges:
|
|||||||
status:
|
status:
|
||||||
completed: "&2&l Terminé"
|
completed: "&2&l Terminé"
|
||||||
completed-challenges-of: |-
|
completed-challenges-of: |-
|
||||||
&2 Terminé &7&l [numéro] &r&2 sur
|
&2 Terminé &7&l [number] &r&2 sur
|
||||||
&7&l [max] &r&2 défis.
|
&7&l [max] &r&2 défis.
|
||||||
locked: "&c&l Verrouillé"
|
locked: "&c&l Verrouillé"
|
||||||
missing-challenges: |-
|
missing-challenges: |-
|
||||||
&7 [nombre] d'autres défis doivent être relevés
|
&7 [number] d'autres défis doivent être relevés
|
||||||
&7 terminé pour débloquer ce niveau.
|
&7 terminé pour débloquer ce niveau.
|
||||||
waiver: |-
|
waiver: |-
|
||||||
&7&l [numéro] défi(s) &r&7 peut être
|
&7&l [number] défi(s) &r&7 peut être
|
||||||
&7 ignoré pour débloquer le niveau suivant.
|
&7 ignoré pour débloquer le niveau suivant.
|
||||||
rewards:
|
rewards:
|
||||||
lore: |-
|
lore: |-
|
||||||
@ -961,23 +961,23 @@ challenges:
|
|||||||
cancelled: "&c Conversation annulée !"
|
cancelled: "&c Conversation annulée !"
|
||||||
input-number: "&e Veuillez saisir un numéro dans le chat."
|
input-number: "&e Veuillez saisir un numéro dans le chat."
|
||||||
input-seconds: "&e Veuillez entrer une seconde dans le chat."
|
input-seconds: "&e Veuillez entrer une seconde dans le chat."
|
||||||
numeric-only: "&c La [valeur] donnée n'est pas un nombre !"
|
numeric-only: "&c La [value] donnée n'est pas un nombre !"
|
||||||
not-valid-value: "&c Le nombre donné [value] n'est pas valide. Elle doit être
|
not-valid-value: "&c Le nombre donné [value] n'est pas valide. Elle doit être
|
||||||
supérieure à [min] et inférieure à [max] !"
|
supérieure à [min] et inférieure à [max] !"
|
||||||
user-data-removed: "&a Toutes les données utilisateur pour [mode de jeu] sont
|
user-data-removed: "&a Toutes les données utilisateur pour [gamemode] sont effacées
|
||||||
effacées de la base de données."
|
de la base de données."
|
||||||
confirm-user-data-deletion: "&e Veuillez confirmer que vous souhaitez effacer
|
confirm-user-data-deletion: "&e Veuillez confirmer que vous souhaitez effacer
|
||||||
la base de données utilisateur pour [mode de jeu]."
|
la base de données utilisateur pour [gamemode]."
|
||||||
challenge-data-removed: "&a Toutes les données des défis pour [mode de jeu] sont
|
challenge-data-removed: "&a Toutes les données des défis pour [gamemode] sont
|
||||||
effacées de la base de données."
|
effacées de la base de données."
|
||||||
confirm-challenge-data-deletion: "&e Veuillez confirmer que vous souhaitez effacer
|
confirm-challenge-data-deletion: "&e Veuillez confirmer que vous souhaitez effacer
|
||||||
la base de données des défis pour [mode de jeu]."
|
la base de données des défis pour [gamemode]."
|
||||||
all-data-removed: "&a Toutes les données du module complémentaire pour [mode de
|
all-data-removed: "&a Toutes les données du module complémentaire pour [gamemode]
|
||||||
jeu] sont effacées de la base de données."
|
sont effacées de la base de données."
|
||||||
confirm-all-data-deletion: "&e Veuillez confirmer que vous souhaitez effacer les
|
confirm-all-data-deletion: "&e Veuillez confirmer que vous souhaitez effacer les
|
||||||
données du module complémentaire pour [gamemode]."
|
données du module complémentaire pour [gamemode]."
|
||||||
write-name: "&e Veuillez écrire un nom dans le chat."
|
write-name: "&e Veuillez écrire un nom dans le chat."
|
||||||
new-object-created: "&a Un nouvel objet pour [mode de jeu] est créé."
|
new-object-created: "&a Un nouvel objet pour [gamemode] est créé."
|
||||||
object-already-exists: "&c L'objet &7 [id] &c existe déjà. Choisissez un nom différent."
|
object-already-exists: "&c L'objet &7 [id] &c existe déjà. Choisissez un nom différent."
|
||||||
invalid-challenge: "&c Challenge [challenge] contient des données non valides.
|
invalid-challenge: "&c Challenge [challenge] contient des données non valides.
|
||||||
Il ne peut pas être déployé !"
|
Il ne peut pas être déployé !"
|
||||||
@ -1006,22 +1006,22 @@ challenges:
|
|||||||
challenge-removed: "&a Les défis [challenge] pour [gamemode] sont supprimés de
|
challenge-removed: "&a Les défis [challenge] pour [gamemode] sont supprimés de
|
||||||
la base de données."
|
la base de données."
|
||||||
confirm-challenge-deletion: "&e Veuillez confirmer que vous souhaitez supprimer
|
confirm-challenge-deletion: "&e Veuillez confirmer que vous souhaitez supprimer
|
||||||
[défi] pour [mode de jeu] de la base de données."
|
[challenge] pour [gamemode] de la base de données."
|
||||||
level-removed: "&a Le niveau [niveau] pour [mode de jeu] est supprimé de la base
|
level-removed: "&a Le niveau [level] pour [gamemode] est supprimé de la base de
|
||||||
de données."
|
données."
|
||||||
confirm-level-deletion: "&e Veuillez confirmer que vous souhaitez supprimer [niveau]
|
confirm-level-deletion: "&e Veuillez confirmer que vous souhaitez supprimer [level]
|
||||||
pour [mode de jeu] de la base de données."
|
pour [gamemode] de la base de données."
|
||||||
start-downloading: "&a Début du téléchargement et de l'importation de la bibliothèque
|
start-downloading: "&a Début du téléchargement et de l'importation de la bibliothèque
|
||||||
de défis."
|
de défis."
|
||||||
written-text: "&a Saisir du texte :"
|
written-text: "&a Saisir du texte :"
|
||||||
confirm-data-replacement: "&e Veuillez confirmer que vous souhaitez remplacer
|
confirm-data-replacement: "&e Veuillez confirmer que vous souhaitez remplacer
|
||||||
vos défis actuels par de nouveaux."
|
vos défis actuels par de nouveaux."
|
||||||
new-challenges-imported: "&a Succès, de nouveaux défis pour [mode de jeu] ont
|
new-challenges-imported: "&a Succès, de nouveaux défis pour [gamemode] ont été
|
||||||
été importés."
|
importés."
|
||||||
exported-file-name: "&e Veuillez entrer un nom de fichier pour le fichier de base
|
exported-file-name: "&e Veuillez entrer un nom de fichier pour le fichier de base
|
||||||
de données exporté. (écrivez « annuler » pour quitter)"
|
de données exporté. (écrivez « annuler » pour quitter)"
|
||||||
database-export-completed: "&a Succès, l'exportation de la base de données pour
|
database-export-completed: "&a Succès, l'exportation de la base de données pour
|
||||||
[monde] est terminée. Fichier [fichier] généré."
|
[world] est terminée. Fichier [file] généré."
|
||||||
file-name-exist: "&c Le fichier portant le nom '[id]' existe. Ne peut pas écraser."
|
file-name-exist: "&c Le fichier portant le nom '[id]' existe. Ne peut pas écraser."
|
||||||
write-search: "&e Veuillez saisir une valeur de recherche. (écrire 'cancel' pour
|
write-search: "&e Veuillez saisir une valeur de recherche. (écrire 'cancel' pour
|
||||||
quitter)"
|
quitter)"
|
||||||
@ -1056,7 +1056,7 @@ challenges:
|
|||||||
no-name: "&cNom du Challenge manquant"
|
no-name: "&cNom du Challenge manquant"
|
||||||
unknown-challenge: "&cChallenge inconnu"
|
unknown-challenge: "&cChallenge inconnu"
|
||||||
not-valid-integer: |-
|
not-valid-integer: |-
|
||||||
&c L'entier donné "[valeur]" n'est pas valide !
|
&c L'entier donné "[value]" n'est pas valide !
|
||||||
La valeur doit être comprise entre [min] et [max].
|
La valeur doit être comprise entre [min] et [max].
|
||||||
not-deployed: "&cLe Challenge ne peut pas être réalisé !"
|
not-deployed: "&cLe Challenge ne peut pas être réalisé !"
|
||||||
not-on-island: "&cVous devez être sur votre île pour faire le Challenge !"
|
not-on-island: "&cVous devez être sur votre île pour faire le Challenge !"
|
||||||
@ -1090,8 +1090,8 @@ challenges:
|
|||||||
missing-arguments: "&c La commande n'a pas d'arguments."
|
missing-arguments: "&c La commande n'a pas d'arguments."
|
||||||
no-multiple-permission: "&cVous n'avez pas la permission d'accomplir ce challenge
|
no-multiple-permission: "&cVous n'avez pas la permission d'accomplir ce challenge
|
||||||
plusieurs fois à la fois."
|
plusieurs fois à la fois."
|
||||||
invalid-level: "&c Le niveau [niveau] contient des données non valides. Il ne
|
invalid-level: "&c Le niveau [level] contient des données non valides. Il ne sera
|
||||||
sera pas chargé à partir de la base de données !"
|
pas chargé à partir de la base de données !"
|
||||||
invalid-challenge: "&c Challenge [challenge] contient des données non valides.
|
invalid-challenge: "&c Challenge [challenge] contient des données non valides.
|
||||||
Il ne sera pas chargé à partir de la base de données !"
|
Il ne sera pas chargé à partir de la base de données !"
|
||||||
no-library-entries: "&c Impossible de trouver des entrées de bibliothèque. Rien
|
no-library-entries: "&c Impossible de trouver des entrées de bibliothèque. Rien
|
||||||
@ -1099,12 +1099,12 @@ challenges:
|
|||||||
not-hooked: "&c Challenges Addon n'a trouvé aucun GameMode."
|
not-hooked: "&c Challenges Addon n'a trouvé aucun GameMode."
|
||||||
timeout: "&c Ce défi nécessite d'attendre [timeout] entre les achèvements. Vous
|
timeout: "&c Ce défi nécessite d'attendre [timeout] entre les achèvements. Vous
|
||||||
devez attendre [wait-time] pour le terminer à nouveau."
|
devez attendre [wait-time] pour le terminer à nouveau."
|
||||||
requirement-not-met: "&c Ce défi nécessite que [statistique] ait [nombre]. Vous
|
requirement-not-met: "&c Ce défi nécessite que [statistic] ait [number]. Vous
|
||||||
n'avez que [valeur]."
|
n'avez que [value]."
|
||||||
requirement-not-met-entity: "&c Ce défi nécessite que [statistique] [entité] ait
|
requirement-not-met-entity: "&c Ce défi nécessite que [statistic] [entity] ait
|
||||||
[nombre]. Vous n'avez que [valeur]."
|
[number]. Vous n'avez que [value]."
|
||||||
requirement-not-met-material: "&c Ce défi nécessite que [statistique] [matériel]
|
requirement-not-met-material: "&c Ce défi nécessite que [statistic] [material]
|
||||||
ait [nombre]. Vous n'avez que [valeur]."
|
ait [number]. Vous n'avez que [value]."
|
||||||
protection:
|
protection:
|
||||||
flags:
|
flags:
|
||||||
CHALLENGES_ISLAND_PROTECTION:
|
CHALLENGES_ISLAND_PROTECTION:
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
name: BentoBox-Challenges
|
name: BentoBox-Challenges
|
||||||
main: world.bentobox.challenges.ChallengesPladdon
|
main: world.bentobox.challenges.ChallengesPladdon
|
||||||
version: ${project.version}${build.number}
|
version: ${project.version}${build.number}
|
||||||
api-version: "1.17"
|
api-version: "1.21"
|
||||||
|
|
||||||
authors: [tastybento, BONNe]
|
authors: [tastybento, BONNe]
|
||||||
contributors: ["The BentoBoxWorld Community"]
|
contributors: ["The BentoBoxWorld Community"]
|
||||||
|
@ -1,10 +1,12 @@
|
|||||||
package world.bentobox.challenges.tasks;
|
package world.bentobox.challenges.tasks;
|
||||||
|
|
||||||
|
import static org.junit.Assert.assertEquals;
|
||||||
import static org.junit.Assert.assertFalse;
|
import static org.junit.Assert.assertFalse;
|
||||||
import static org.junit.Assert.assertTrue;
|
import static org.junit.Assert.assertTrue;
|
||||||
import static org.mockito.ArgumentMatchers.any;
|
import static org.mockito.ArgumentMatchers.any;
|
||||||
import static org.mockito.ArgumentMatchers.anyString;
|
import static org.mockito.ArgumentMatchers.anyString;
|
||||||
import static org.mockito.ArgumentMatchers.eq;
|
import static org.mockito.ArgumentMatchers.eq;
|
||||||
|
import static org.mockito.Mockito.atLeast;
|
||||||
import static org.mockito.Mockito.mock;
|
import static org.mockito.Mockito.mock;
|
||||||
import static org.mockito.Mockito.never;
|
import static org.mockito.Mockito.never;
|
||||||
import static org.mockito.Mockito.verify;
|
import static org.mockito.Mockito.verify;
|
||||||
@ -30,6 +32,7 @@ import org.bukkit.World.Environment;
|
|||||||
import org.bukkit.entity.Entity;
|
import org.bukkit.entity.Entity;
|
||||||
import org.bukkit.entity.EntityType;
|
import org.bukkit.entity.EntityType;
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
|
import org.bukkit.entity.Player.Spigot;
|
||||||
import org.bukkit.inventory.ItemFactory;
|
import org.bukkit.inventory.ItemFactory;
|
||||||
import org.bukkit.inventory.ItemStack;
|
import org.bukkit.inventory.ItemStack;
|
||||||
import org.bukkit.inventory.PlayerInventory;
|
import org.bukkit.inventory.PlayerInventory;
|
||||||
@ -41,6 +44,7 @@ import org.junit.Before;
|
|||||||
import org.junit.Ignore;
|
import org.junit.Ignore;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
|
import org.mockito.ArgumentCaptor;
|
||||||
import org.mockito.Mock;
|
import org.mockito.Mock;
|
||||||
import org.mockito.Mockito;
|
import org.mockito.Mockito;
|
||||||
import org.mockito.stubbing.Answer;
|
import org.mockito.stubbing.Answer;
|
||||||
@ -49,6 +53,7 @@ import org.powermock.core.classloader.annotations.PrepareForTest;
|
|||||||
import org.powermock.modules.junit4.PowerMockRunner;
|
import org.powermock.modules.junit4.PowerMockRunner;
|
||||||
import org.powermock.reflect.Whitebox;
|
import org.powermock.reflect.Whitebox;
|
||||||
|
|
||||||
|
import net.md_5.bungee.api.chat.TextComponent;
|
||||||
import world.bentobox.bentobox.BentoBox;
|
import world.bentobox.bentobox.BentoBox;
|
||||||
import world.bentobox.bentobox.api.addons.AddonDescription;
|
import world.bentobox.bentobox.api.addons.AddonDescription;
|
||||||
import world.bentobox.bentobox.api.addons.GameModeAddon;
|
import world.bentobox.bentobox.api.addons.GameModeAddon;
|
||||||
@ -119,6 +124,8 @@ public class TryToCompleteTest {
|
|||||||
@Mock
|
@Mock
|
||||||
private BoundingBox bb;
|
private BoundingBox bb;
|
||||||
private Set<Player> onlinePlayers;
|
private Set<Player> onlinePlayers;
|
||||||
|
@Mock
|
||||||
|
private Spigot spigot;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
@ -207,6 +214,7 @@ public class TryToCompleteTest {
|
|||||||
when(user.getPlayer()).thenReturn(player);
|
when(user.getPlayer()).thenReturn(player);
|
||||||
UUID uniqueId = UUID.randomUUID();
|
UUID uniqueId = UUID.randomUUID();
|
||||||
when(player.getUniqueId()).thenReturn(uniqueId);
|
when(player.getUniqueId()).thenReturn(uniqueId);
|
||||||
|
when(player.spigot()).thenReturn(spigot);
|
||||||
when(user.getUniqueId()).thenReturn(uniqueId);
|
when(user.getUniqueId()).thenReturn(uniqueId);
|
||||||
when(user.getTranslation(anyString()))
|
when(user.getTranslation(anyString()))
|
||||||
.thenAnswer((Answer<String>) invocation -> invocation.getArgument(0, String.class));
|
.thenAnswer((Answer<String>) invocation -> invocation.getArgument(0, String.class));
|
||||||
@ -702,4 +710,32 @@ public class TryToCompleteTest {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Check that spigot sent the message
|
||||||
|
* @param message - message to check
|
||||||
|
*/
|
||||||
|
public void checkSpigotMessage(String expectedMessage) {
|
||||||
|
checkSpigotMessage(expectedMessage, 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void checkSpigotMessage(String expectedMessage, int expectedOccurrences) {
|
||||||
|
// Capture the argument passed to spigot().sendMessage(...) if messages are sent
|
||||||
|
ArgumentCaptor<TextComponent> captor = ArgumentCaptor.forClass(TextComponent.class);
|
||||||
|
|
||||||
|
// Verify that sendMessage() was called at least 0 times (capture any sent messages)
|
||||||
|
verify(spigot, atLeast(0)).sendMessage(captor.capture());
|
||||||
|
|
||||||
|
// Get all captured TextComponents
|
||||||
|
List<TextComponent> capturedMessages = captor.getAllValues();
|
||||||
|
|
||||||
|
// Count the number of occurrences of the expectedMessage in the captured messages
|
||||||
|
long actualOccurrences = capturedMessages.stream().map(component -> component.toLegacyText()) // Convert each TextComponent to plain text
|
||||||
|
.filter(messageText -> messageText.contains(expectedMessage)) // Check if the message contains the expected text
|
||||||
|
.count(); // Count how many times the expected message appears
|
||||||
|
|
||||||
|
// Assert that the number of occurrences matches the expectedOccurrences
|
||||||
|
assertEquals("Expected message occurrence mismatch: " + expectedMessage, expectedOccurrences,
|
||||||
|
actualOccurrences);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user