Merge branch 'configurable' into api

This commit is contained in:
Shane Freeder 2020-02-29 01:01:26 +00:00
commit a26216b0d0
No known key found for this signature in database
GPG Key ID: A3F61EA5A085289C
22 changed files with 73 additions and 53 deletions

View File

@ -1,4 +1,3 @@
<<<<<<< HEAD
Version 2.2.0
!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!
@ -204,6 +203,16 @@ Version 2.2.0
Added API method to check if a skill was being level capped
Added 'UndefinedSkillBehaviour' for trying to use a method that has no behaviour defined for the provided skill
Version 2.1.118
Fixed another dupe bug
Blast Mining no longer reduces debris from explosions due to some issues with the Bukkit API
Modified locale string 'Mining.Blast.Effect' to remove debris reduction mention
Rupture now fires a FakeEntityDamageByEntityEvent before damaging its victims (cancelling it will be ignored)
Version 2.1.117
Fixed a rare http error when polling Mojang for UUIDs
Fixed a bug that allowed duping
Version 2.1.116
Fixed directional plants not maintaining their direction when replanted

View File

@ -21,9 +21,12 @@ public class PlayerDebugCommand extends BaseCommand {
@Default
public void onCommand(CommandSender sender) {
if(sender instanceof Player) {
BukkitMMOPlayer mcMMOPlayer = pluginRef.getUserManager().getPlayer((Player) sender);
BukkitMMOPlayer mcMMOPlayer = plugin.getUserManager().getPlayer((Player) sender);
if(mcMMOPlayer == null)
return;
mcMMOPlayer.toggleDebugMode(); //Toggle debug mode
pluginRef.getNotificationManager().sendPlayerInformationChatOnlyPrefixed(mcMMOPlayer.getNative(), "Commands.Mmodebug.Toggle", String.valueOf(mcMMOPlayer.isDebugMode()));
plugin.getNotificationManager().sendPlayerInformationChatOnlyPrefixed(mcMMOPlayer.getNative(), "Commands.Mmodebug.Toggle", String.valueOf(mcMMOPlayer.isDebugMode()));
} else {
//TODO: Localize
sender.sendMessage("Players only");

View File

@ -20,7 +20,7 @@ public class MiningCommand extends SkillCommand {
private int bonusTNTDrops;
private double blastRadiusIncrease;
private String oreBonus;
private String debrisReduction;
// private String debrisReduction;
private String blastDamageDecrease;
private boolean canSuperBreaker;
@ -42,7 +42,7 @@ public class MiningCommand extends SkillCommand {
blastMiningRank = miningManager.getBlastMiningTier();
bonusTNTDrops = miningManager.getDropMultiplier();
oreBonus = percent.format(miningManager.getOreBonus() / 30.0D); // Base received in TNT is 30%
debrisReduction = percent.format(miningManager.getDebrisReduction() / 30.0D); // Base received in TNT is 30%
// debrisReduction = percent.format(miningManager.getDebrisReduction() / 30.0D); // Base received in TNT is 30%
blastDamageDecrease = percent.format(miningManager.getBlastDamageModifier() / 100.0D);
blastRadiusIncrease = miningManager.getBlastRadiusModifier();
}
@ -81,8 +81,8 @@ public class MiningCommand extends SkillCommand {
}
if (canBlast) {
messages.add(getStatMessage(false, true, SubSkillType.MINING_BLAST_MINING, String.valueOf(blastMiningRank), String.valueOf(pluginRef.getRankTools().getHighestRank(SubSkillType.MINING_BLAST_MINING)), pluginRef.getLocaleManager().getString("SuperAbility.BlastMining.Effect", oreBonus, debrisReduction, bonusTNTDrops)));
//messages.add(pluginRef.getLocaleManager().getString("SuperAbility.BlastMining.Rank", blastMiningRank, RankUtils.getHighestRank(SubSkillType.MINING_BLAST_MINING), pluginRef.getLocaleManager().getString("SuperAbility.BlastMining.Effect", oreBonus, debrisReduction, bonusTNTDrops)));
messages.add(getStatMessage(false, true, SubSkillType.MINING_BLAST_MINING, String.valueOf(blastMiningRank), String.valueOf(pluginRef.getRankTools().getHighestRank(SubSkillType.MINING_BLAST_MINING)), pluginRef.getLocaleManager().getString("Mining.Blast.Effect", oreBonus, bonusTNTDrops)));
//messages.add(LocaleLoader.getString("Mining.Blast.Rank", blastMiningRank, RankUtils.getHighestRank(SubSkillType.MINING_BLAST_MINING), LocaleLoader.getString("Mining.Blast.Effect", oreBonus, debrisReduction, bonusTNTDrops)));
}
if (canDemoExpert) {

View File

@ -791,8 +791,8 @@ public class EntityListener implements Listener {
MiningManager miningManager = pluginRef.getUserManager().getPlayer(player).getMiningManager();
if (miningManager.canUseBlastMining()) {
miningManager.blastMiningDropProcessing(event.getYield(), event.blockList());
event.setYield(0);
miningManager.blastMiningDropProcessing(event.getYield(), event);
// event.setYield(0);
}
}

View File

@ -2,11 +2,13 @@ package com.gmail.nossr50.runnables.skills;
import com.gmail.nossr50.datatypes.interactions.NotificationType;
import com.gmail.nossr50.datatypes.skills.BleedContainer;
import com.gmail.nossr50.events.fake.FakeEntityDamageByEntityEvent;
import com.gmail.nossr50.mcMMO;
import com.gmail.nossr50.util.sounds.SoundType;
import org.bukkit.Bukkit;
import org.bukkit.entity.LivingEntity;
import org.bukkit.entity.Player;
import org.bukkit.event.entity.EntityDamageEvent;
import org.bukkit.inventory.ItemStack;
import org.bukkit.scheduler.BukkitRunnable;
@ -161,6 +163,10 @@ public class BleedTimerTask extends BukkitRunnable {
// debugMessage+="TargetHealthBeforeDMG=["+String.valueOf(target.getHealth())+"], ";
//Fire a fake event
FakeEntityDamageByEntityEvent fakeEntityDamageByEntityEvent = (FakeEntityDamageByEntityEvent) pluginRef.getCombatTools().sendEntityDamageEvent(containerEntry.getValue().damageSource, target, EntityDamageEvent.DamageCause.CUSTOM, damage);
Bukkit.getPluginManager().callEvent(fakeEntityDamageByEntityEvent);
pluginRef.getCombatTools().dealNoInvulnerabilityTickDamageRupture(target, damage, containerEntry.getValue().damageSource, toolTier);
double victimHealthAftermath = target.getHealth();

View File

@ -14,9 +14,11 @@ import com.gmail.nossr50.skills.SkillManager;
import org.bukkit.Material;
import org.bukkit.block.Block;
import org.bukkit.block.BlockState;
import org.bukkit.block.Container;
import org.bukkit.enchantments.Enchantment;
import org.bukkit.entity.Player;
import org.bukkit.entity.TNTPrimed;
import org.bukkit.event.entity.EntityExplodeEvent;
import org.bukkit.inventory.ItemStack;
import java.util.ArrayList;
@ -137,53 +139,45 @@ public class MiningManager extends SkillManager {
* Handler for explosion drops and XP gain.
*
* @param yield The % of blocks to drop
* @param blockList The list of blocks to drop
* @param event The {@link EntityExplodeEvent}
*/
public void blastMiningDropProcessing(float yield, List<Block> blockList) {
public void blastMiningDropProcessing(float yield, EntityExplodeEvent event) {
List<BlockState> ores = new ArrayList<>();
List<BlockState> debris = new ArrayList<>();
List<Block> newYieldList = new ArrayList<>();
for (Block targetBlock : event.blockList()) {
//Containers usually have 0 XP unless someone edited their config in a very strange way
if (pluginRef.getDynamicSettingsManager().getExperienceManager().getMiningXp(targetBlock.getType()) == 0 || targetBlock instanceof Container || pluginRef.getPlaceStore().isTrue(targetBlock)) {
newYieldList.add(targetBlock);
} else {
ores.add(targetBlock.getState());
}
}
int xp = 0;
float oreBonus = (float) (getOreBonus() / 100);
float debrisReduction = (float) (getDebrisReduction() / 100);
//float debrisReduction = (float) (getDebrisReduction() / 100);
int dropMultiplier = getDropMultiplier();
float debrisYield = yield - debrisReduction;
//float debrisYield = yield - debrisReduction;
for (Block block : blockList) {
BlockState blockState = block.getState();
if (pluginRef.getBlockTools().isOre(blockState)) {
ores.add(blockState);
//A bug where beacons can drop when yield is set to 0 on explosion events is prevented here
} else if(blockState.getType() != Material.BEACON) {
debris.add(blockState);
}
}
for (BlockState blockState : ores) {
if (pluginRef.getMiscTools().getRandom().nextFloat() < (yield + oreBonus)) {
if (!pluginRef.getPlaceStore().isTrue(blockState)) {
xp += miningBehaviour.getBlockXp(blockState);
}
if (pluginRef.getMiscTools().getRandom().nextFloat() < (newYieldList.size() + oreBonus)) {
xp += miningBehaviour.getBlockXp(blockState);
pluginRef.getMiscTools().dropItem(pluginRef.getMiscTools().getBlockCenter(blockState), new ItemStack(blockState.getType())); // Initial block that would have been dropped
if (!pluginRef.getPlaceStore().isTrue(blockState)) {
for (int i = 1; i < dropMultiplier; i++) {
miningBehaviour.handleSilkTouchDrops(blockState); // Bonus drops - should drop the block & not the items
}
for (int i = 1; i < dropMultiplier; i++) {
miningBehaviour.handleSilkTouchDrops(blockState); // Bonus drops - should drop the block & not the items
}
}
}
if (debrisYield > 0) {
for (BlockState blockState : debris) {
if (pluginRef.getMiscTools().getRandom().nextFloat() < debrisYield) {
pluginRef.getMiscTools().dropItems(pluginRef.getMiscTools().getBlockCenter(blockState), blockState.getBlock().getDrops());
}
}
}
event.blockList().clear();
event.blockList().addAll(newYieldList);
applyXpGain(xp, XPGainReason.PVE);
}

View File

@ -46,12 +46,18 @@ public final class ParticleEffectUtils {
return;
}*/
if(location.getWorld() == null)
return;
location.getWorld().playEffect(location, Effect.MOBSPAWNER_FLAMES, 1);
}
public void playSmokeEffect(Location location) {
World world = location.getWorld();
if(world == null)
return;
// Have to do it this way, because not all block directions are valid for smoke
world.playEffect(location, Effect.SMOKE, BlockFace.SOUTH_EAST);
world.playEffect(location, Effect.SMOKE, BlockFace.SOUTH);

View File

@ -159,7 +159,7 @@ SuperAbility.SuperBreaker.Other.On=[[GREEN]]{0}[[DARK_GREEN]] has used [[RED]]Me
SuperAbility.SuperBreaker.Refresh=[[GREEN]]Schopnost [[YELLOW]]Super Breaker [[GREEN]]obnovena!
Mining.Skillup=Dovednost v dolovani byla navysena o {0}. Celkem ({1})
SuperAbility.BlastMining.Boom=[[GRAY]]**VYBUCH**
SuperAbility.BlastMining.Effect=+{0} v\u00fdnos rudy, -{1} v\u00fdnos trosek, {2}x ko\u0159ist
SuperAbility.BlastMining.Effect=+{0} v\u00fdnos rudy, {1}x ko\u0159ist
SuperAbility.BlastMining.Radius.Increase=Navyseni radiusu vybuchu: [[YELLOW]]+{0}
SuperAbility.BlastMining.Rank=V\u00fdbu\u0161n\u00e9 t\u011b\u017een\u00ed [[YELLOW]] Rank {0}/8 [[GRAY]]({1})
SuperAbility.BlastMining.Other.On=[[GREEN]]{0}[[DARK_GREEN]] pou\u017eil [[RED]]V\u00fdbu\u0161n\u00e9 T\u011b\u017een\u00ed!

View File

@ -601,7 +601,7 @@ Mining.Ability.Locked.2 = GESPERRT bis Skill {0}+ (Exp
Mining.Ability.Lower = &7**Du senkst deine SPITZHACKE**
Mining.Ability.Ready = &a**Deine SPITZHACKE ist bereit**
SuperAbility.BlastMining.Boom = &7**BOOM**
SuperAbility.BlastMining.Effect = +{0} Erze -{1} Schutt, {2}x Drops
SuperAbility.BlastMining.Effect = +{0} Erze {1}x Drops
SuperAbility.BlastMining.Other.On = &a{0}&2 benutzte &cZ\u00FCndstoff!
SuperAbility.BlastMining.Refresh = &aDein &eZ\u00FCndstoff &aist wieder bereit!
Mining.Listener = Bergbau:

View File

@ -327,7 +327,7 @@ SuperAbility.SuperBreaker.Refresh=[[GREEN]]Your [[YELLOW]]Super Breaker [[GREEN]
#Blast Mining
SuperAbility.BlastMining.Boom=[[GRAY]]**BOOM**
SuperAbility.BlastMining.Cooldown=
SuperAbility.BlastMining.Effect=+{0} ore yield, -{1} debris yield, {2}x drops
SuperAbility.BlastMining.Effect=+{0} ore yield, {1}x drops
SuperAbility.BlastMining.Other.On=[[GREEN]]{0}[[DARK_GREEN]] has used [[RED]]Blast Mining!
SuperAbility.BlastMining.Refresh=[[GREEN]]Your [[YELLOW]]Blast Mining [[GREEN]]ability is refreshed!
#REPAIR

View File

@ -161,7 +161,7 @@ SuperAbility.SuperBreaker.Other.On=[[GREEN]]\u00a1{0}[[DARK_GREEN]] us\u00f3 [[R
SuperAbility.SuperBreaker.Refresh=[[GREEN]]\u00a1Tu habilidad de [[YELLOW]]S\u00faper Destructor [[GREEN]]est\u00e1 refrescada!
Mining.Skillup=Habilidad de Miner\u00eda incrementada en {0}. Total ({1})
SuperAbility.BlastMining.Boom=[[GRAY]]**BOOM**
SuperAbility.BlastMining.Effect=+ {0} mineral de rendimiento, - {1} rendimiento de los desechos, {2} x drops
SuperAbility.BlastMining.Effect=+ {0} mineral de rendimiento, {1} x drops
SuperAbility.BlastMining.Radius.Increase=Incrementado Radio de Explosi\u00f3n: [[YELLOW]]+{0}
SuperAbility.BlastMining.Rank=Miner\u00eda Explosiva: [[YELLOW]] Rango {0}/8 [[GRAY]]({1})
SuperAbility.BlastMining.Other.On=[[GREEN]]\u00a1{0}[[DARK_GREEN]] us\u00f3 [[RED]]Miner\u00eda Explosiva!

View File

@ -177,7 +177,7 @@ SuperAbility.SuperBreaker.Other.On=[[GREEN]]{0}[[DARK_GREEN]] a utilis\u00e9 [[R
SuperAbility.SuperBreaker.Refresh=[[GREEN]]Votre comp\u00e9tence [[YELLOW]]Broyeur [[GREEN]]est pr\u00eate !
Mining.Skillup=Le talent Minage augmente de {0}. Total ({1})
SuperAbility.BlastMining.Boom=[[GRAY]]**BOUM**
SuperAbility.BlastMining.Effect=+{0} de r\u00e9colte des minerais, -{1} de r\u00e9colte des d\u00e9bris, {2}x les r\u00e9compenses
SuperAbility.BlastMining.Effect=+{0} de r\u00e9colte des minerais, {1}x les r\u00e9compenses
SuperAbility.BlastMining.Radius.Increase=Rayon d\'explosion : [[YELLOW]]+{0}
SuperAbility.BlastMining.Rank=Minage explosif : [[YELLOW]]Rang {0}/8 [[GRAY]]({1})
SuperAbility.BlastMining.Other.On=[[GREEN]]{0}[[DARK_GREEN]] a utilis\u00e9 [[RED]]Minage explosif !

View File

@ -330,7 +330,7 @@ SuperAbility.SuperBreaker.Refresh=[[GREEN]]A [[YELLOW]]Szuper T\u00F6r\u00E9s [[
#Blast Mining
SuperAbility.BlastMining.Boom=[[GRAY]]**BUMM**
SuperAbility.BlastMining.Cooldown=
SuperAbility.BlastMining.Effect=+{0} \u00E9rc hozam, -{1} t\u00F6rmel\u00E9k hozam, {2}x t\u00E1rgy es\u00E9s
SuperAbility.BlastMining.Effect=+{0} \u00E9rc hozam, {1}x t\u00E1rgy es\u00E9s
SuperAbility.BlastMining.Other.On=[[GREEN]]{0}[[DARK_GREEN]] haszn\u00E1lta a [[RED]]Robbant\u00E1sb\u00E1ny\u00E1szat [[DARK_GREEN]]k\u00E9pess\u00E9get!
SuperAbility.BlastMining.Refresh=[[GREEN]]A [[YELLOW]]Robbant\u00E1sb\u00E1ny\u00E1szat [[GREEN]]k\u00E9pess\u00E9ged ism\u00E9t el\u00E9rhet\u0151!
#REPAIR

View File

@ -338,7 +338,7 @@ SuperAbility.SuperBreaker.Refresh=[[GREEN]]La tua capacit\u00E0 [[YELLOW]]Super
#Blast Mining
SuperAbility.BlastMining.Boom=[[GRAY]]**BOOM**
SuperAbility.BlastMining.Cooldown=
SuperAbility.BlastMining.Effect=+{0} minerale raccolto, -{1} macerie prodotte, drop {2}x
SuperAbility.BlastMining.Effect=+{0} minerale raccolto, drop {1}x
SuperAbility.BlastMining.Other.On=[[GREEN]]{0}[[DARK_GREEN]] ha usato [[RED]]Estrazione Esplosiva!
SuperAbility.BlastMining.Refresh=[[GREEN]]La tua capacit\u00E0 [[YELLOW]]Estrazione Esplosiva [[GREEN]]si \u00E8 rigenerata!

View File

@ -322,7 +322,7 @@ SuperAbility.SuperBreaker.Other.On=[[GREEN]]{0}[[DARK_GREEN]]\u304c [[RED]]\u30b
# Blast Mining
SuperAbility.BlastMining.Boom=[[GRAY]]**BOOM**
SuperAbility.BlastMining.Cooldown=
SuperAbility.BlastMining.Effect=+{0} ore yield, -{1} debris yield, {2}x \u30c9\u30ed\u30c3\u30d7
SuperAbility.BlastMining.Effect=+{0} ore yield, {1}x \u30c9\u30ed\u30c3\u30d7
SuperAbility.BlastMining.Other.On=[[GREEN]]{0}[[DARK_GREEN]] \u304c [[RED]]\u30d6\u30e9\u30b9\u30c8\u30de\u30a4\u30cb\u30f3\u30b0 [[DARK_GREEN]]\u3092\u4f7f\u3063\u305f\uff01
SuperAbility.BlastMining.Refresh=[[YELLOW]]\u30d6\u30e9\u30b9\u30c8\u30de\u30a4\u30cb\u30f3\u30b0[GREEN]]\u30a2\u30d3\u30ea\u30c6\u30a3\u304c\u56de\u5fa9\u3057\u307e\u3057\u305f\uff01

View File

@ -202,11 +202,12 @@ SuperAbility.SuperBreaker.Refresh=[[GREEN]]\uB2F9\uC2E0\uC758 [[YELLOW]]\uD30C\u
Mining.Skillup=\uCC44\uAD11 \uAE30\uC220\uC774 {0} \uC62C\uB77C \uCD1D {1} \uB808\uBCA8\uC774 \uB418\uC5C8\uC2B5\uB2C8\uB2E4
#Blast Mining
SuperAbility.BlastMining.Boom=[[GRAY]]**\uD3ED\uBC1C**
SuperAbility.BlastMining.Effect=+{0} \uAD11\uBB3C \uC774\uC775, -{1} \uD30C\uD3B8 \uC0B0\uCD9C, {2}x \uB4DC\uB86D
SuperAbility.BlastMining.Effect=+{0} \uAD11\uBB3C \uC774\uC775, {1}x \uB4DC\uB86D
SuperAbility.BlastMining.Radius.Increase=\uD3ED\uBC1C \uBC18\uACBD \uC99D\uAC00: [[YELLOW]]+{0}
SuperAbility.BlastMining.Rank=\uD3ED\uBC1C \uCC44\uAD74: [[YELLOW]]{0}/8\uB7AD\uD06C [[GRAY]]({1})
SuperAbility.BlastMining.Other.On=[[GREEN]]{0}[[DARK_GREEN]]\uB2D8\uC740 [[RED]]\uD3ED\uBC1C \uCC44\uAD74\uC744 \uC0AC\uC6A9\uD558\uC168\uC2B5\uB2C8\uB2E4!
SuperAbility.BlastMining.Refresh=[[GREEN]]\uB2F9\uC2E0\uC758 [[YELLOW]]\uD3ED\uBC1C \uCC44\uAD74 [[GREEN]]\uAE30\uC220\uC740 \uC774\uC81C \uC0AC\uC6A9 \uAC00\uB2A5\uD569\uB2C8\uB2E4!
#REPAIR
Repair.SubSkill.Repair.Name=\uC218\uB9AC
Repair.SubSkill.Repair.Description=\uB3C4\uAD6C & \uBC29\uC5B4\uAD6C \uC218\uB9AC

View File

@ -330,7 +330,7 @@ SuperAbility.SuperBreaker.Refresh=[[GREEN]]Your [[YELLOW]]Super Breaker [[GREEN]
#Blast Mining
SuperAbility.BlastMining.Boom=[[GRAY]]**BOOM**
SuperAbility.BlastMining.Cooldown=
SuperAbility.BlastMining.Effect=+{0} ore yield, -{1} debris yield, {2}x drops
SuperAbility.BlastMining.Effect=+{0} ore yield, {1}x drops
SuperAbility.BlastMining.Other.On=[[GREEN]]{0}[[DARK_GREEN]] has used [[RED]]Blast Mining!
SuperAbility.BlastMining.Refresh=[[GREEN]]Your [[YELLOW]]Blast Mining [[GREEN]]ability is refreshed!
#REPAIR

View File

@ -186,11 +186,12 @@ SuperAbility.SuperBreaker.Refresh=[[GREEN]]Sua Habilidade [[YELLOW]]Super Quebra
Mining.Skillup=[[YELLOW]]Habilidade de Mineracao foi aumentada para {0}. Total ({1})
#Mineracao Explosiva
SuperAbility.BlastMining.Boom=[[GRAY]]**BOOM**
SuperAbility.BlastMining.Effect=+{0} Rendimento de Minerios, -{1} Prejuizo de Detritos, {2}x drops
SuperAbility.BlastMining.Effect=+{0} Rendimento de Minerios, {1}x drops
SuperAbility.BlastMining.Radius.Increase=[[RED]]Aumento no Raio de explosao: [[YELLOW]]+{0}
SuperAbility.BlastMining.Rank=[[RED]]Mineracao Explosiva: [[YELLOW]] Rank {0}/{1} [[GRAY]]({2})
SuperAbility.BlastMining.Other.On=[[GREEN]]{0}[[DARK_GREEN]] usou [[RED]]Mineracao Explosiva!
SuperAbility.BlastMining.Refresh=[[GREEN]]Sua Habilidade [[YELLOW]]Mineracao Explosiva [[GREEN]]foi refrescada!
#REPARAR
Repair.Effect.0=Reparar
Repair.Effect.1=Reparar Ferramentas & Armaduras

View File

@ -290,7 +290,7 @@ Mining.Skillup=\u0423\u0440\u043e\u0432\u0435\u043d\u044c \u043d\u0430\u0432\u04
#Blast Mining
SuperAbility.BlastMining.Boom=[[GRAY]]**\u0411\u0423\u041c**
SuperAbility.BlastMining.Cooldown=
SuperAbility.BlastMining.Effect=+{0} \u0440\u0443\u0434\u044b, -{1} \u043c\u0443\u0441\u043e\u0440\u0430, {2}x \u0434\u0440\u043e\u043f
SuperAbility.BlastMining.Effect=+{0} \u0440\u0443\u0434\u044b, {1}x \u0434\u0440\u043e\u043f
SuperAbility.BlastMining.Radius.Increase=\u0420\u0430\u0434\u0438\u0443\u0441 \u0412\u0437\u0440\u044b\u0432\u0430 \u0423\u0432\u0435\u043b\u0438\u0447\u0435\u043d: [[YELLOW]]+{0}
SuperAbility.BlastMining.Rank=\u041f\u043e\u0434\u0440\u044b\u0432\u043d\u0430\u044f \u0414\u043e\u0431\u044b\u0447\u0430: [[YELLOW]] \u0420\u0430\u043d\u0433 {0}/8 [[GRAY]]({1})
SuperAbility.BlastMining.Other.On=[[GREEN]]{0}[[DARK_GREEN]] \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b \u0443\u043c\u0435\u043d\u0438\u0435 [[RED]]\"\u041f\u043e\u0434\u0440\u044b\u0432\u043d\u0430\u044f \u0414\u043e\u0431\u044b\u0447\u0430\"!

View File

@ -159,7 +159,7 @@ SuperAbility.SuperBreaker.Other.On=[[GREEN]]{0}[[DARK_GREEN]] \u0e44\u0e14\u0e49
SuperAbility.SuperBreaker.Refresh=[[GREEN]]\u0e04\u0e27\u0e32\u0e21\u0e2a\u0e32\u0e21\u0e23\u0e16\u0e17\u0e31\u0e01\u0e29\u0e30 [[YELLOW]]Super Breaker [[GREEN]]\u0e04\u0e39\u0e25\u0e14\u0e32\u0e27\u0e19\u0e4c\u0e40\u0e2a\u0e23\u0e47\u0e08\u0e41\u0e25\u0e49\u0e27!
Mining.Skillup=\u0e17\u0e31\u0e01\u0e29\u0e30 Mining \u0e40\u0e1e\u0e34\u0e48\u0e21\u0e02\u0e36\u0e49\u0e19 {0}. \u0e21\u0e35\u0e17\u0e31\u0e49\u0e07\u0e2b\u0e21\u0e14 ({1})
SuperAbility.BlastMining.Boom=[[GRAY]]**BOOM**
SuperAbility.BlastMining.Effect=+{0} \u0e1c\u0e25\u0e1c\u0e25\u0e34\u0e15\u0e41\u0e23\u0e48, -{1} \u0e1c\u0e25\u0e1c\u0e25\u0e34\u0e15\u0e40\u0e28\u0e29, {2}x \u0e14\u0e23\u0e2d\u0e1b
SuperAbility.BlastMining.Effect=+{0} \u0e1c\u0e25\u0e1c\u0e25\u0e34\u0e15\u0e41\u0e23\u0e48, {1}x \u0e14\u0e23\u0e2d\u0e1b
SuperAbility.BlastMining.Radius.Increase=\u0e23\u0e31\u0e28\u0e21\u0e35\u0e02\u0e2d\u0e07\u0e23\u0e30\u0e40\u0e1a\u0e34\u0e14\u0e40\u0e1e\u0e34\u0e48\u0e21\u0e02\u0e36\u0e49\u0e19: [[YELLOW]]+{0}
SuperAbility.BlastMining.Rank=\u0e17\u0e31\u0e01\u0e29\u0e30 Blast Mining: [[YELLOW]] \u0e23\u0e30\u0e14\u0e31\u0e1a {0}/8 [[GRAY]]({1})
SuperAbility.BlastMining.Other.On=[[GREEN]]{0}[[DARK_GREEN]] \u0e44\u0e14\u0e49\u0e43\u0e0a\u0e49\u0e17\u0e31\u0e01\u0e29\u0e30 [[RED]]Blast Mining!

View File

@ -330,7 +330,7 @@ SuperAbility.SuperBreaker.Refresh=[[GREEN]]\u4f60\u7684 [[YELLOW]]\u8d85\u7ea7\u
#Blast Mining
SuperAbility.BlastMining.Boom=[[GRAY]]**\u5623**
SuperAbility.BlastMining.Cooldown=
SuperAbility.BlastMining.Effect=+{0} \u77ff\u7269\u91cf, -{1} \u788e\u7247\u91cf, {2}x \u6389\u843d
SuperAbility.BlastMining.Effect=+{0} \u77ff\u7269\u91cf, {1}x \u6389\u843d
SuperAbility.BlastMining.Other.On=[[GREEN]]{0}[[DARK_GREEN]] \u4f7f\u7528\u4e86 [[RED]]\u7206\u7834\u5f00\u91c7!
SuperAbility.BlastMining.Refresh=[[GREEN]]\u4f60\u7684 [[YELLOW]]\u7206\u7834\u5f00\u91c7 [[GREEN]]\u6280\u80fd\u53ef\u4ee5\u4f7f\u7528\u4e86!
#REPAIR

View File

@ -165,7 +165,7 @@ SuperAbility.SuperBreaker.Other.On=[[GREEN]]{0}[[DARK_GREEN]] \u4f7f\u7528\u4e86
SuperAbility.SuperBreaker.Refresh=[[GREEN]]\u4f60\u7684[[YELLOW]] \u8d85\u7d1a\u788e\u77f3\u6a5f [[GREEN]]\u80fd\u529b\u5df2\u53ef\u518d\u6b21\u4f7f\u7528\uff01
Mining.Skillup=\u6316\u7926\u6280\u80fd\u4e0a\u5347\u4e86 {0}! \u7e3d\u7b49\u7d1a ({1})!
SuperAbility.BlastMining.Boom=[[GRAY]]**\u78b0!**
SuperAbility.BlastMining.Effect=+{0} \u7926\u7269\u7522\u91cf, -{1}\u5783\u573e\u7522\u91cf, {2}x \u6389\u843d\u91cf
SuperAbility.BlastMining.Effect=+{0} \u7926\u7269\u7522\u91cf, {1}x \u6389\u843d\u91cf
SuperAbility.BlastMining.Radius.Increase=\u7206\u70b8\u534a\u5f91\u63d0\u5347: [[YELLOW]]+{0}
SuperAbility.BlastMining.Rank=\u6316\u7926\u7206\u767c: [[YELLOW]] \u6392\u540d {0}/8 [[GRAY]]({1})
SuperAbility.BlastMining.Other.On=[[GREEN]]{0}[[DARK_GREEN]] \u4f7f\u7528\u4e86 [[RED]]\u6316\u7926\u7206\u767c!