A WIP of 1.0.35 (Massive changes to the code)

This commit is contained in:
nossr50 2011-07-16 00:12:26 -07:00
parent eb5f32587f
commit daf139f560
36 changed files with 5120 additions and 1468 deletions

View File

@ -1,5 +1,19 @@
Changelog: Changelog:
#Versions without changelogs probably had very small misc fixes, like tweaks to the source code #Versions without changelogs probably had very small misc fixes, like tweaks to the source code
Version 1.0.35
Fixed bug with randomly receiving Taming XP
mcmmo.users file moved into /plugins/mcMMO/FlatFileStuff/
Leaderboard files now moved into /plugins/mcMMO/FlatFileStuff/Leaderboards
Locale files now have the prefix locale_ instead of messages_
Locale files are now located inside com/gmail/nossr50/locale/ instead of com/gmail/nossr50/
Updated the code that handles permissions (this may mean 3.1.6 will finally play well!)
Some more source code organization
Fixed warnings for compiler
Removed dependencies on CraftBukkit
Registered commands to OnCommand
Removed performance debugging
Removed some useless settings from the config file
Version 1.0.34 Version 1.0.34
Fixed the PVP setting determining whether or not you would hurt yourself from AoE Abilities Fixed the PVP setting determining whether or not you would hurt yourself from AoE Abilities
Added Dutch (nl) language support Added Dutch (nl) language support

View File

@ -1,6 +1,5 @@
package com.gmail.nossr50; package com.gmail.nossr50;
import org.bukkit.Location;
import org.bukkit.World; import org.bukkit.World;
import org.bukkit.entity.*; import org.bukkit.entity.*;
import org.bukkit.event.entity.EntityDamageByEntityEvent; import org.bukkit.event.entity.EntityDamageByEntityEvent;
@ -11,15 +10,18 @@ import org.bukkit.plugin.Plugin;
import com.gmail.nossr50.config.LoadProperties; import com.gmail.nossr50.config.LoadProperties;
import com.gmail.nossr50.datatypes.PlayerProfile; import com.gmail.nossr50.datatypes.PlayerProfile;
import com.gmail.nossr50.locale.mcLocale;
import com.gmail.nossr50.party.Party; import com.gmail.nossr50.party.Party;
import com.gmail.nossr50.skills.Acrobatics; import com.gmail.nossr50.skills.Acrobatics;
import com.gmail.nossr50.skills.Archery;
import com.gmail.nossr50.skills.Axes; import com.gmail.nossr50.skills.Axes;
import com.gmail.nossr50.skills.Skills; import com.gmail.nossr50.skills.Skills;
import com.gmail.nossr50.skills.Swords; import com.gmail.nossr50.skills.Swords;
import com.gmail.nossr50.skills.Taming; import com.gmail.nossr50.skills.Taming;
import com.gmail.nossr50.skills.Unarmed; import com.gmail.nossr50.skills.Unarmed;
public class Combat { public class Combat
{
public static void combatChecks(EntityDamageEvent event, mcMMO pluginx) public static void combatChecks(EntityDamageEvent event, mcMMO pluginx)
{ {
if(event.isCancelled() || event.getDamage() == 0) if(event.isCancelled() || event.getDamage() == 0)
@ -29,35 +31,6 @@ public class Combat {
*/ */
if(event instanceof EntityDamageByEntityEvent) if(event instanceof EntityDamageByEntityEvent)
{ {
EntityDamageByEntityEvent eventx = (EntityDamageByEntityEvent) event;
/*
* MOB DIFFICULTY STUFF
*/
/*
if(eventx.getDamager() instanceof Monster)
{
Integer theMob = eventx.getDamager().getEntityId();
//System.out.println("FIRST STAGE");
if(pluginx.mob.mobDiff.containsKey(theMob))
{
//System.out.println("STAGE TWO");
if(eventx.getEntity() instanceof Player)
{
Player player = (Player) eventx.getEntity();
player.sendMessage("Mob Difficulty: "+((int) pluginx.mob.mobDiff.get(theMob)+1));
//System.out.println("STAGE THREE");
//SETUP DMG
event.setDamage((pluginx.mob.mobDiff.get(theMob)+1) * event.getDamage());
}
} else
{
pluginx.mob.assignDifficulty(eventx.getDamager());
}
}
*/
/* /*
* OFFENSIVE CHECKS FOR PLAYERS VERSUS ENTITIES * OFFENSIVE CHECKS FOR PLAYERS VERSUS ENTITIES
*/ */
@ -177,14 +150,14 @@ public class Combat {
event.setCancelled(true); event.setCancelled(true);
if(theWolf.isTamed()) if(theWolf.isTamed())
{ {
attacker.sendMessage(Messages.getString("Combat.BeastLore")+" "+ attacker.sendMessage(mcLocale.getString("Combat.BeastLore")+" "+
Messages.getString("Combat.BeastLoreOwner", new Object[] {Taming.getOwnerName(theWolf)})+" "+ mcLocale.getString("Combat.BeastLoreOwner", new Object[] {Taming.getOwnerName(theWolf)})+" "+
Messages.getString("Combat.BeastLoreHealthWolfTamed", new Object[] {theWolf.getHealth()})); mcLocale.getString("Combat.BeastLoreHealthWolfTamed", new Object[] {theWolf.getHealth()}));
} }
else else
{ {
attacker.sendMessage(Messages.getString("Combat.BeastLore")+" "+ attacker.sendMessage(mcLocale.getString("Combat.BeastLore")+" "+
Messages.getString("Combat.BeastLoreHealthWolf", new Object[] {theWolf.getHealth()})); mcLocale.getString("Combat.BeastLoreHealthWolf", new Object[] {theWolf.getHealth()}));
} }
} }
} }
@ -199,7 +172,7 @@ public class Combat {
{ {
EntityDamageByEntityEvent eventb = (EntityDamageByEntityEvent) event; EntityDamageByEntityEvent eventb = (EntityDamageByEntityEvent) event;
Wolf theWolf = (Wolf) eventb.getDamager(); Wolf theWolf = (Wolf) eventb.getDamager();
if(Taming.ownerOnline(theWolf, pluginx)) if(theWolf.isTamed() && Taming.ownerOnline(theWolf, pluginx))
{ {
if(Taming.getOwner(theWolf, pluginx) == null) if(Taming.getOwner(theWolf, pluginx) == null)
return; return;
@ -222,13 +195,13 @@ public class Combat {
if(event.getEntity() instanceof Player) if(event.getEntity() instanceof Player)
{ {
Player target = (Player)event.getEntity(); Player target = (Player)event.getEntity();
target.sendMessage(Messages.getString("Combat.StruckByGore")); //$NON-NLS-1$ target.sendMessage(mcLocale.getString("Combat.StruckByGore")); //$NON-NLS-1$
Users.getProfile(target).setBleedTicks(2); Users.getProfile(target).setBleedTicks(2);
} }
else else
pluginx.misc.addToBleedQue((LivingEntity) event.getEntity()); pluginx.misc.addToBleedQue((LivingEntity) event.getEntity());
master.sendMessage(Messages.getString("Combat.Gore")); //$NON-NLS-1$ master.sendMessage(mcLocale.getString("Combat.Gore")); //$NON-NLS-1$
} }
if(!event.getEntity().isDead() && !pluginx.misc.mobSpawnerList.contains(event.getEntity())) if(!event.getEntity().isDead() && !pluginx.misc.mobSpawnerList.contains(event.getEntity()))
{ {
@ -283,7 +256,7 @@ public class Combat {
{ {
Wolf theWolf = (Wolf) event.getEntity(); Wolf theWolf = (Wolf) event.getEntity();
if(Taming.ownerOnline(theWolf, pluginx)) if(theWolf.isTamed() && Taming.ownerOnline(theWolf, pluginx))
{ {
if(Taming.getOwner(theWolf, pluginx) == null) if(Taming.getOwner(theWolf, pluginx) == null)
return; return;
@ -331,7 +304,7 @@ public class Combat {
Entity x = event.getEntity(); Entity x = event.getEntity();
Projectile projectile = event.getProjectile(); Projectile projectile = event.getProjectile();
if(projectile.toString().equals("CraftArrow") && x instanceof Player) if(projectile.toString().equals("CraftArrow") && x instanceof Player)
{ //$NON-NLS-1$ {
Player defender = (Player)x; Player defender = (Player)x;
PlayerProfile PPd = Users.getProfile(defender); PlayerProfile PPd = Users.getProfile(defender);
if(PPd == null) if(PPd == null)
@ -343,13 +316,13 @@ public class Combat {
if(Math.random() * 1000 <= 500) if(Math.random() * 1000 <= 500)
{ {
event.setCancelled(true); event.setCancelled(true);
defender.sendMessage(Messages.getString("Combat.ArrowDeflect")); //$NON-NLS-1$ defender.sendMessage(mcLocale.getString("Combat.ArrowDeflect")); //$NON-NLS-1$
return; return;
} }
} else if(defender != null && Math.random() * 1000 <= (PPd.getSkill("unarmed") / 2)) } else if(defender != null && Math.random() * 1000 <= (PPd.getSkill("unarmed") / 2))
{ {
event.setCancelled(true); event.setCancelled(true);
defender.sendMessage(Messages.getString("Combat.ArrowDeflect")); //$NON-NLS-1$ defender.sendMessage(mcLocale.getString("Combat.ArrowDeflect")); //$NON-NLS-1$
return; return;
} }
} }
@ -362,29 +335,8 @@ public class Combat {
Player attacker = (Player)y; Player attacker = (Player)y;
PlayerProfile PPa = Users.getProfile(attacker); PlayerProfile PPa = Users.getProfile(attacker);
if(projectile.toString().equals("CraftArrow") && mcPermissions.getInstance().archery(attacker)) if(projectile.toString().equals("CraftArrow") && mcPermissions.getInstance().archery(attacker))
{ //$NON-NLS-1$
if(!pluginx.misc.arrowTracker.containsKey(x) && event.getDamage() > 0)
{ {
pluginx.misc.arrowTracker.put(x, 0); Archery.trackArrows(pluginx, x, event, attacker);
if(attacker != null)
{
if(Math.random() * 1000 <= PPa.getSkill("archery"))
{
pluginx.misc.arrowTracker.put(x, 1);
}
}
} else
{
if(event.getDamage() > 0)
{
if(attacker != null){
if(Math.random() * 1000 <= PPa.getSkill("archery"))
{
pluginx.misc.arrowTracker.put(x, 1);
}
}
}
}
/* /*
* DAMAGE MODIFIER * DAMAGE MODIFIER
*/ */
@ -402,32 +354,7 @@ public class Combat {
/* /*
* IGNITION * IGNITION
*/ */
if(Math.random() * 100 >= 75){ Archery.ignitionCheck(x, event, attacker);
int ignition = 20;
if(PPa.getSkill("archery") >= 200)
ignition+=20;
if(PPa.getSkill("archery") >= 400)
ignition+=20;
if(PPa.getSkill("archery") >= 600)
ignition+=20;
if(PPa.getSkill("archery") >= 800)
ignition+=20;
if(PPa.getSkill("archery") >= 1000)
ignition+=20;
if(x instanceof Player){
Player Defender = (Player)x;
if(!Party.getInstance().inSameParty(attacker, Defender)){
event.getEntity().setFireTicks(ignition);
attacker.sendMessage(Messages.getString("Combat.Ignition")); //$NON-NLS-1$
Defender.sendMessage(Messages.getString("Combat.BurningArrowHit")); //$NON-NLS-1$
}
} else {
event.getEntity().setFireTicks(ignition);
attacker.sendMessage(Messages.getString("Combat.Ignition")); //$NON-NLS-1$
}
}
/* /*
* Defender is Monster * Defender is Monster
*/ */
@ -457,8 +384,10 @@ public class Combat {
/* /*
* Stuff for the daze proc * Stuff for the daze proc
*/ */
if(PPa.inParty() && PPd.inParty()){ if(PPa.inParty() && PPd.inParty())
if(Party.getInstance().inSameParty(defender, attacker)){ {
if(Party.getInstance().inSameParty(defender, attacker))
{
event.setCancelled(true); event.setCancelled(true);
return; return;
} }
@ -467,29 +396,14 @@ public class Combat {
* PVP XP * PVP XP
*/ */
if(LoadProperties.pvpxp && !Party.getInstance().inSameParty(attacker, defender) if(LoadProperties.pvpxp && !Party.getInstance().inSameParty(attacker, defender)
&& ((PPd.getLastLogin()+5)*1000) < System.currentTimeMillis()){ && ((PPd.getLastLogin()+5)*1000) < System.currentTimeMillis())
{
PPa.addArcheryXP((event.getDamage() * 3) * LoadProperties.pvpxprewardmodifier); PPa.addArcheryXP((event.getDamage() * 3) * LoadProperties.pvpxprewardmodifier);
} }
/* /*
* DAZE PROC * DAZE PROC
*/ */
Location loc = defender.getLocation(); Archery.dazeCheck(defender, attacker);
if(Math.random() * 10 > 5){
loc.setPitch(90);
} else {
loc.setPitch(-90);
}
if(PPa.getSkill("archery") >= 1000){
if(Math.random() * 1000 <= 500){
defender.teleport(loc);
defender.sendMessage(Messages.getString("Combat.TouchedFuzzy")); //$NON-NLS-1$
attacker.sendMessage(Messages.getString("Combat.TargetDazed")); //$NON-NLS-1$ //$NON-NLS-2$
}
} else if(Math.random() * 2000 <= PPa.getSkill("archery")){
defender.teleport(loc);
defender.sendMessage(Messages.getString("Combat.TouchedFuzzy")); //$NON-NLS-1$
attacker.sendMessage(Messages.getString("Combat.TargetDazed")); //$NON-NLS-1$ //$NON-NLS-2$
}
} }
} }
Skills.XpCheck(attacker); Skills.XpCheck(attacker);

View File

@ -7,6 +7,7 @@ import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.ItemStack;
import org.bukkit.plugin.Plugin; import org.bukkit.plugin.Plugin;
import com.gmail.nossr50.config.*; import com.gmail.nossr50.config.*;
import com.gmail.nossr50.locale.mcLocale;
import com.gmail.nossr50.skills.*; import com.gmail.nossr50.skills.*;
import com.gmail.nossr50.datatypes.PlayerProfile; import com.gmail.nossr50.datatypes.PlayerProfile;
@ -20,18 +21,24 @@ public class Item {
chimaerawing(player, plugin); chimaerawing(player, plugin);
} }
} }
public static void chimaerawing(Player player, Plugin plugin){
@SuppressWarnings("deprecation")
public static void chimaerawing(Player player, Plugin plugin)
{
PlayerProfile PP = Users.getProfile(player); PlayerProfile PP = Users.getProfile(player);
ItemStack is = player.getItemInHand(); ItemStack is = player.getItemInHand();
Block block = player.getLocation().getBlock(); Block block = player.getLocation().getBlock();
if(mcPermissions.getInstance().chimaeraWing(player) && is.getTypeId() == 288){ if(mcPermissions.getInstance().chimaeraWing(player) && is.getTypeId() == 288)
if(Skills.cooldownOver(player, PP.getRecentlyHurt(), 60) && is.getAmount() >= LoadProperties.feathersConsumedByChimaeraWing){ {
if(Skills.cooldownOver(player, PP.getRecentlyHurt(), 60) && is.getAmount() >= LoadProperties.feathersConsumedByChimaeraWing)
{
Block derp = player.getLocation().getBlock(); Block derp = player.getLocation().getBlock();
int y = derp.getY(); int y = derp.getY();
ItemStack[] inventory = player.getInventory().getContents(); ItemStack[] inventory = player.getInventory().getContents();
for(ItemStack x : inventory){ for(ItemStack x : inventory){
if(x != null && x.getTypeId() == 288){ if(x != null && x.getTypeId() == 288){
if(x.getAmount() >= LoadProperties.feathersConsumedByChimaeraWing + 1){ if(x.getAmount() >= LoadProperties.feathersConsumedByChimaeraWing + 1)
{
x.setAmount(x.getAmount() - LoadProperties.feathersConsumedByChimaeraWing); x.setAmount(x.getAmount() - LoadProperties.feathersConsumedByChimaeraWing);
player.getInventory().setContents(inventory); player.getInventory().setContents(inventory);
player.updateInventory(); player.updateInventory();
@ -45,17 +52,21 @@ public class Item {
} }
} }
} }
while(y < 127){ while(y < 127)
{
y++; y++;
if(player != null){ if(player != null)
if(player.getLocation().getWorld().getBlockAt(block.getX(), y, block.getZ()).getType() != Material.AIR){ {
player.sendMessage(Messages.getString("Item.ChimaeraWingFail")); //$NON-NLS-1$ if(player.getLocation().getWorld().getBlockAt(block.getX(), y, block.getZ()).getType() != Material.AIR)
{
player.sendMessage(mcLocale.getString("Item.ChimaeraWingFail")); //$NON-NLS-1$
player.teleport(player.getLocation().getWorld().getBlockAt(block.getX(), (y - 1), block.getZ()).getLocation()); player.teleport(player.getLocation().getWorld().getBlockAt(block.getX(), (y - 1), block.getZ()).getLocation());
return; return;
} }
} }
} }
if(PP.getMySpawn(player) != null){ if(PP.getMySpawn(player) != null)
{
Location mySpawn = PP.getMySpawn(player); Location mySpawn = PP.getMySpawn(player);
if(mySpawn != null && plugin.getServer().getWorld(PP.getMySpawnWorld(plugin)) != null) if(mySpawn != null && plugin.getServer().getWorld(PP.getMySpawnWorld(plugin)) != null)
mySpawn.setWorld(plugin.getServer().getWorld(PP.getMySpawnWorld(plugin))); mySpawn.setWorld(plugin.getServer().getWorld(PP.getMySpawnWorld(plugin)));
@ -66,11 +77,12 @@ public class Item {
} else { } else {
player.teleport(player.getWorld().getSpawnLocation()); player.teleport(player.getWorld().getSpawnLocation());
} }
player.sendMessage(Messages.getString("Item.ChimaeraWingPass")); //$NON-NLS-1$ player.sendMessage(mcLocale.getString("Item.ChimaeraWingPass")); //$NON-NLS-1$
} else if (!Skills.cooldownOver(player, PP.getRecentlyHurt(), 60) && is.getAmount() >= 10) { } else if (!Skills.cooldownOver(player, PP.getRecentlyHurt(), 60) && is.getAmount() >= 10)
player.sendMessage(Messages.getString("Item.InjuredWait", new Object[] {Skills.calculateTimeLeft(player, PP.getRecentlyHurt(), 60)})); //$NON-NLS-1$ {
player.sendMessage(mcLocale.getString("Item.InjuredWait", new Object[] {Skills.calculateTimeLeft(player, PP.getRecentlyHurt(), 60)})); //$NON-NLS-1$
} else if (is.getTypeId() == 288 && is.getAmount() <= 9){ } else if (is.getTypeId() == 288 && is.getAmount() <= 9){
player.sendMessage(Messages.getString("Item.NeedFeathers")); //$NON-NLS-1$ player.sendMessage(mcLocale.getString("Item.NeedFeathers")); //$NON-NLS-1$
} }
} }
} }

View File

@ -118,7 +118,7 @@ public class Leaderboard {
} }
public static void leaderWrite(PlayerStat[] ps, String statName) public static void leaderWrite(PlayerStat[] ps, String statName)
{ {
String theLocation = "plugins/mcMMO/" + statName + ".mcmmo"; //$NON-NLS-1$ //$NON-NLS-2$ String theLocation = "plugins/mcMMO/FlatFileStuff/Leaderboards/" + statName + ".mcmmo"; //$NON-NLS-1$ //$NON-NLS-2$
//CHECK IF THE FILE EXISTS //CHECK IF THE FILE EXISTS
File theDir = new File(theLocation); File theDir = new File(theLocation);
if(!theDir.exists()){ if(!theDir.exists()){
@ -170,7 +170,7 @@ public class Leaderboard {
} }
public static String[] retrieveInfo(String statName, int pagenumber){ public static String[] retrieveInfo(String statName, int pagenumber){
String theLocation = "plugins/mcMMO/" + statName + ".mcmmo"; //$NON-NLS-1$ //$NON-NLS-2$ String theLocation = "plugins/mcMMO/FlatFileStuff/Leaderboards/" + statName + ".mcmmo"; //$NON-NLS-1$ //$NON-NLS-2$
try { try {
FileReader file = new FileReader(theLocation); FileReader file = new FileReader(theLocation);
BufferedReader in = new BufferedReader(file); BufferedReader in = new BufferedReader(file);
@ -199,7 +199,7 @@ public class Leaderboard {
public static void updateLeaderboard(PlayerStat ps, String statName){ public static void updateLeaderboard(PlayerStat ps, String statName){
if(LoadProperties.useMySQL) if(LoadProperties.useMySQL)
return; return;
String theLocation = "plugins/mcMMO/" + statName + ".mcmmo"; //$NON-NLS-1$ //$NON-NLS-2$ String theLocation = "plugins/mcMMO/FlatFileStuff/Leaderboards/" + statName + ".mcmmo"; //$NON-NLS-1$ //$NON-NLS-2$
try { try {
//Open the file //Open the file
FileReader file = new FileReader(theLocation); FileReader file = new FileReader(theLocation);
@ -237,11 +237,14 @@ public class Leaderboard {
log.log(Level.SEVERE, "Exception while writing to " + theLocation + " (Are you sure you formatted it correctly?)", e); //$NON-NLS-1$ //$NON-NLS-2$ log.log(Level.SEVERE, "Exception while writing to " + theLocation + " (Are you sure you formatted it correctly?)", e); //$NON-NLS-1$ //$NON-NLS-2$
} }
} }
public static boolean isInt(String string){ public static boolean isInt(String string)
try { {
int x = Integer.parseInt(string); try
{
Integer.parseInt(string);
} }
catch(NumberFormatException nFE) { catch(NumberFormatException nFE)
{
return false; return false;
} }
return true; return true;

View File

@ -13,7 +13,7 @@ import com.gmail.nossr50.datatypes.PlayerProfile;
public class Users { public class Users {
private static volatile Users instance; private static volatile Users instance;
protected static final Logger log = Logger.getLogger("Minecraft"); protected static final Logger log = Logger.getLogger("Minecraft");
String location = "plugins/mcMMO/mcmmo.users"; String location = "plugins/mcMMO/FlatFileStuff/mcmmo.users";
//public static ArrayList<PlayerProfile> players; //public static ArrayList<PlayerProfile> players;
public static HashMap<Player, PlayerProfile> players = new HashMap<Player, PlayerProfile>(); public static HashMap<Player, PlayerProfile> players = new HashMap<Player, PlayerProfile>();
@ -65,7 +65,8 @@ public class Users {
} }
public static void addUser(Player player){ public static void addUser(Player player)
{
players.put(player, new PlayerProfile(player)); players.put(player, new PlayerProfile(player));
} }
public static void clearUsers() public static void clearUsers()

View File

@ -4,13 +4,11 @@ import java.io.File;
import java.util.List; import java.util.List;
import org.bukkit.util.config.Configuration; import org.bukkit.util.config.Configuration;
import com.gmail.nossr50.mcMMO; public class LoadProperties
{
public class LoadProperties { public static Boolean xpGainsMobSpawners=false, myspawnEnable = true, mccEnable = true, mcmmoEnable = true, partyEnable = true, inviteEnable = true, acceptEnable = true, whoisEnable = true, statsEnable = true, addxpEnable = true, ptpEnable = true, mmoeditEnable = true, clearmyspawnEnable = true, mcgodEnable = true, mcabilityEnable = true, mctopEnable = true, mcrefreshEnable = true, enableMotd, enableMySpawn, enableRegen, enableCobbleToMossy, useMySQL, cocoabeans, archeryFireRateLimit, mushrooms, toolsLoseDurabilityFromAbilities, pvpxp, miningrequirespickaxe, woodcuttingrequiresaxe, eggs, apples, cake, music, diamond, glowstone, slowsand, sulphur, netherrack, bones, coal, clay, anvilmessages;
public static Boolean xpGainsMobSpawners=false, print_reports = false, myspawnEnable = true, mccEnable = true, mcmmoEnable = true, partyEnable = true, inviteEnable = true, acceptEnable = true, whoisEnable = true, statsEnable = true, addxpEnable = true, ptpEnable = true, mmoeditEnable = true, clearmyspawnEnable = true, mcgodEnable = true, mcabilityEnable = true, mctopEnable = true, mcrefreshEnable = true, enableMotd, enableMySpawn, enableRegen, enableCobbleToMossy, useMySQL, cocoabeans, archeryFireRateLimit, mushrooms, toolsLoseDurabilityFromAbilities, pvpxp, miningrequirespickaxe, woodcuttingrequiresaxe, eggs, apples, cake, music, diamond, glowstone, slowsand, sulphur, netherrack, bones, coal, clay, anvilmessages;
public static String MySQLtablePrefix, MySQLuserName, MySQLserverName, MySQLdbName, MySQLdbPass, mctop, addxp, mcability, mcmmo, mcc, mcrefresh, mcgod, stats, mmoedit, ptp, party, myspawn, whois, invite, accept, clearmyspawn, nWood, nStone, nIron, nGold, nDiamond, locale; public static String MySQLtablePrefix, MySQLuserName, MySQLserverName, MySQLdbName, MySQLdbPass, mctop, addxp, mcability, mcmmo, mcc, mcrefresh, mcgod, stats, mmoedit, ptp, party, myspawn, whois, invite, accept, clearmyspawn, nWood, nStone, nIron, nGold, nDiamond, locale;
public static int msandstone, mcocoa = 10, water_thunder = 75, cure_self = 5, cure_other = 5, mbones, msulphur, mslowsand, mmushroom2, mglowstone2, mmusic, mdiamond2, mbase, mapple, meggs, mcake, mpine, mbirch, mspruce, mcactus, mmushroom, mflower, msugar, mpumpkin, mwheat, mgold, mdiamond, miron, mredstone, mlapus, mobsidian, mnetherrack, mglowstone, mcoal, mstone, MySQLport, xpGainMultiplier, superBreakerCooldown = 240, greenTerraCooldown = 240, gigaDrillBreakerCooldown = 240, treeFellerCooldown = 240, berserkCooldown = 240, serratedStrikeCooldown = 240, skullSplitterCooldown = 240, abilityDurabilityLoss, feathersConsumedByChimaeraWing, pvpxprewardmodifier, repairdiamondlevel, globalxpmodifier, tamingxpmodifier, miningxpmodifier, repairxpmodifier, woodcuttingxpmodifier, sorceryxpmodifier = 2, unarmedxpmodifier, herbalismxpmodifier, excavationxpmodifier, archeryxpmodifier, swordsxpmodifier, axesxpmodifier, acrobaticsxpmodifier, rWood, rStone, rIron, rGold, rDiamond; public static int msandstone, mcocoa = 10, water_thunder = 75, cure_self = 5, cure_other = 5, mbones, msulphur, mslowsand, mmushroom2, mglowstone2, mmusic, mdiamond2, mbase, mapple, meggs, mcake, mpine, mbirch, mspruce, mcactus, mmushroom, mflower, msugar, mpumpkin, mwheat, mgold, mdiamond, miron, mredstone, mlapus, mobsidian, mnetherrack, mglowstone, mcoal, mstone, MySQLport, xpGainMultiplier, superBreakerCooldown = 240, greenTerraCooldown = 240, gigaDrillBreakerCooldown = 240, treeFellerCooldown = 240, berserkCooldown = 240, serratedStrikeCooldown = 240, skullSplitterCooldown = 240, abilityDurabilityLoss, feathersConsumedByChimaeraWing, pvpxprewardmodifier, repairdiamondlevel, globalxpmodifier, tamingxpmodifier, miningxpmodifier, repairxpmodifier, woodcuttingxpmodifier, sorceryxpmodifier = 2, unarmedxpmodifier, herbalismxpmodifier, excavationxpmodifier, archeryxpmodifier, swordsxpmodifier, axesxpmodifier, acrobaticsxpmodifier, rWood, rStone, rIron, rGold, rDiamond;
private static mcMMO plugin;
public String directory = "plugins/mcMMO/"; public String directory = "plugins/mcMMO/";
File file = new File(directory + File.separator + "config.yml"); File file = new File(directory + File.separator + "config.yml");
@ -52,16 +50,19 @@ public class LoadProperties {
return config.getInt(root, 0); return config.getInt(root, 0);
} }
@SuppressWarnings("unused")
private Double readDouble(String root) private Double readDouble(String root)
{ {
Configuration config = load(); Configuration config = load();
return config.getDouble(root, 0); return config.getDouble(root, 0);
} }
@SuppressWarnings("unused")
private List<String> readStringList(String root) private List<String> readStringList(String root)
{ {
Configuration config = load(); Configuration config = load();
return config.getKeys(root); return config.getKeys(root);
} }
private String readString(String root) private String readString(String root)
{ {
Configuration config = load(); Configuration config = load();
@ -80,8 +81,9 @@ public class LoadProperties {
} }
return null; return null;
} }
private void addDefaults(){ private void addDefaults()
plugin.log.info("Generating Config File..."); {
System.out.println("Generating Config File...");
//Put in defaults //Put in defaults
write("MySQL.Enabled", false); write("MySQL.Enabled", false);
@ -150,9 +152,9 @@ public class LoadProperties {
write("XP.Excavation.Cake", 300); write("XP.Excavation.Cake", 300);
write("XP.Excavation.Cocoa_Beans", 10); write("XP.Excavation.Cocoa_Beans", 10);
write("Sorcery.Spells.Water.Thunder", 75); //write("Sorcery.Spells.Water.Thunder", 75);
write("Sorcery.Spells.Curative.Cure_Self.Mana_Cost", 5); //write("Sorcery.Spells.Curative.Cure_Self.Mana_Cost", 5);
write("Sorcery.Spells.Curative.Cure_Other.Mana_Cost", 5); //write("Sorcery.Spells.Curative.Cure_Other.Mana_Cost", 5);
write("Excavation.Drops.Cocoa_Beans", true); write("Excavation.Drops.Cocoa_Beans", true);
write("Excavation.Drops.Mushrooms", true); write("Excavation.Drops.Mushrooms", true);
@ -229,21 +231,15 @@ public class LoadProperties {
loadkeys(); loadkeys();
} }
private void loadkeys(){ private void loadkeys()
plugin.log.info("Loading Config File..."); {
System.out.println("Loading Config File...");
System.out.println("print_reports = "+readBoolean("General.Performance.Print_Reports"));
xpGainsMobSpawners = readBoolean("XP.Gains.Mobspawners.Enabled"); xpGainsMobSpawners = readBoolean("XP.Gains.Mobspawners.Enabled");
if(readBoolean("General.Performance.Print_Reports") != null) //cure_self = readInteger("Sorcery.Spells.Curative.Cure_Self.Mana_Cost");
print_reports = readBoolean("General.Performance.Print_Reports"); //cure_other = readInteger("Sorcery.Spells.Curative.Cure_Other.Mana_Cost");
else //water_thunder = readInteger("Sorcery.Spells.Water.Thunder");
print_reports = false;
cure_self = readInteger("Sorcery.Spells.Curative.Cure_Self.Mana_Cost");
cure_other = readInteger("Sorcery.Spells.Curative.Cure_Other.Mana_Cost");
water_thunder = readInteger("Sorcery.Spells.Water.Thunder");
msulphur = readInteger("XP.Excavation.Sulphur"); msulphur = readInteger("XP.Excavation.Sulphur");
mbones = readInteger("XP.Excavation.Bones"); mbones = readInteger("XP.Excavation.Bones");

View File

@ -0,0 +1,76 @@
package com.gmail.nossr50.datatypes;
import java.util.HashMap;
import org.bukkit.entity.*;
public class Mob
{
public HashMap<Integer, Short> mobDiff = new HashMap<Integer, Short>();
public HashMap<Integer, Boolean> isAggressive = new HashMap<Integer, Boolean>();
public void assignDifficulty(Entity entity)
{
short x = 0;
if(entity.getLocation().getY() >= 45)
{
//LEVEL 2
if(Math.random() * 100 > 50)
{
x = 0;
}
//LEVEL 3
else
{
x = 1;
}
}
else
{
double y = Math.random() * 100;
//HIGH CHANCE FOR 5's
if(entity.getLocation().getY() < 20)
{
//ASSIGN INTO THE 5 RANKS
if(y >= 0 && y < 50)
x = 0;
if(y >= 50 && y < 80)
x = 1;
if(y >= 80 && y < 95)
x = 2;
if(y >= 95 && y < 98)
x = 3;
if(y >= 98 && y <= 100)
x = 4;
}
//HIGH CHANCE FOR 4's
else
{
//ASSIGN INTO THE 5 RANKS
if(y >= 0 && y < 50)
x = 0;
if(y >= 50 && y < 74)
x = 1;
if(y >= 74 && y < 89)
x = 2;
if(y >= 89 && y < 99)
x = 3;
if(y >= 99 && y <= 100)
x = 4;
}
if(x > 1)
{
isAggressive.put(entity.getEntityId(), false);
}
}
if(!mobDiff.containsKey(entity.getEntityId()))
{
mobDiff.put(entity.getEntityId(), x);
//System.out.println("Mob "+entity.getEntityId()+" (DIFFICULTY) "+
//(x +1)+"(DEPTH) "+entity.getLocation().getY());
}
}
}

View File

@ -994,29 +994,36 @@ public class PlayerProfile
removeXP("acrobatics", newXP); removeXP("acrobatics", newXP);
} }
public boolean isInt(String string){ public boolean isInt(String string)
{
try { try {
int x = Integer.parseInt(string); Integer.parseInt(string);
} }
catch(NumberFormatException nFE) { catch(NumberFormatException nFE) {
return false; return false;
} }
return true; return true;
} }
public boolean isDouble(String string){
try { public boolean isDouble(String string)
Double x = Double.valueOf(string); {
try
{
Double.valueOf(string);
} }
catch(NumberFormatException nFE) { catch(NumberFormatException nFE)
{
return false; return false;
} }
return true; return true;
} }
public void acceptInvite(){ public void acceptInvite()
{
party = invite; party = invite;
invite = ""; invite = "";
} }
public void modifyInvite(String invitename){ public void modifyInvite(String invitename)
{
invite = invitename; invite = invitename;
} }
public String getInvite() { return invite; } public String getInvite() { return invite; }
@ -1054,7 +1061,8 @@ public class PlayerProfile
} }
save(); save();
} }
public Integer getXpToLevel(String skillname){ public Integer getXpToLevel(String skillname)
{
if(skillname.equals("sorcery")){ if(skillname.equals("sorcery")){
return ((stats.get("sorcery") + 50) * LoadProperties.sorceryxpmodifier) * LoadProperties.globalxpmodifier; return ((stats.get("sorcery") + 50) * LoadProperties.sorceryxpmodifier) * LoadProperties.globalxpmodifier;
} }
@ -1111,13 +1119,15 @@ public class PlayerProfile
save(); save();
} }
//Retrieve whether or not the player is in a party //Retrieve whether or not the player is in a party
public boolean inParty() { public boolean inParty()
{
if(party != null && !party.equals("") && !party.equals("null")){ if(party != null && !party.equals("") && !party.equals("null")){
return true; return true;
} else { } else {
return false; return false;
} }
} }
//Retrieve whether or not the player has an invite //Retrieve whether or not the player has an invite
public boolean hasPartyInvite() { public boolean hasPartyInvite() {
if(invite != null && !invite.equals("") && !invite.equals("null")){ if(invite != null && !invite.equals("") && !invite.equals("null")){

View File

@ -0,0 +1,332 @@
package com.gmail.nossr50.listeners;
import com.gmail.nossr50.Users;
import com.gmail.nossr50.m;
import com.gmail.nossr50.mcMMO;
import com.gmail.nossr50.mcPermissions;
import com.gmail.nossr50.config.LoadProperties;
import com.gmail.nossr50.datatypes.PlayerProfile;
import org.bukkit.Material;
import org.bukkit.Statistic;
import org.bukkit.block.Block;
import org.bukkit.entity.Player;
import org.bukkit.event.block.BlockBreakEvent;
import org.bukkit.event.block.BlockDamageEvent;
import org.bukkit.event.block.BlockFromToEvent;
import org.bukkit.event.block.BlockListener;
import org.bukkit.event.block.BlockPlaceEvent;
import org.bukkit.inventory.ItemStack;
import com.gmail.nossr50.locale.mcLocale;
import com.gmail.nossr50.skills.*;
import com.gmail.nossr50.datatypes.FakeBlockBreakEvent;
public class mcBlockListener extends BlockListener {
private final mcMMO plugin;
public mcBlockListener(final mcMMO plugin) {
this.plugin = plugin;
}
public void onBlockPlace(BlockPlaceEvent event)
{
Block block;
Player player = event.getPlayer();
if (event.getBlock() != null && event.getBlockReplacedState() != null && event.getBlockReplacedState().getTypeId() == 78)
{
block = event.getBlockAgainst();
}
else
{
block = event.getBlock();
}
if(player != null && m.shouldBeWatched(block))
{
if(block.getTypeId() != 17 && block.getTypeId() != 39 && block.getTypeId() != 40 && block.getTypeId() != 91 && block.getTypeId() != 86)
block.setData((byte) 5); //Change the byte
if(block.getTypeId() == 17 || block.getTypeId() == 39 || block.getTypeId() == 40 || block.getTypeId() == 91 || block.getTypeId() == 86)
plugin.misc.blockWatchList.add(block);
}
if(block.getTypeId() == 42 && LoadProperties.anvilmessages)
event.getPlayer().sendMessage(mcLocale.getString("mcBlockListener.PlacedAnvil")); //$NON-NLS-1$
}
public void onBlockBreak(BlockBreakEvent event)
{
Player player = event.getPlayer();
PlayerProfile PP = Users.getProfile(player);
Block block = event.getBlock();
ItemStack inhand = player.getItemInHand();
if(event.isCancelled())
return;
if (event instanceof FakeBlockBreakEvent)
return;
/*
* HERBALISM
*/
if(PP.getHoePreparationMode() && mcPermissions.getInstance().herbalismAbility(player) && block.getTypeId() == 59 && block.getData() == (byte) 0x07)
{
Herbalism.greenTerraCheck(player, block, plugin);
}
//Wheat && Triple drops
if(PP.getGreenTerraMode() && Herbalism.canBeGreenTerra(block))
{
Herbalism.herbalismProcCheck(block, player, event, plugin);
Herbalism.greenTerraWheat(player, block, event, plugin);
}
/*
* MINING
*/
if(mcPermissions.getInstance().mining(player)){
if(LoadProperties.miningrequirespickaxe){
if(m.isMiningPick(inhand))
Mining.miningBlockCheck(player, block, plugin);
} else {
Mining.miningBlockCheck(player, block, plugin);
}
}
/*
* WOOD CUTTING
*/
if(player != null && block.getTypeId() == 17 && mcPermissions.getInstance().woodcutting(player))
{
if(LoadProperties.woodcuttingrequiresaxe)
{
if(m.isAxes(inhand))
{
if(!plugin.misc.blockWatchList.contains(block))
{
WoodCutting.woodCuttingProcCheck(player, block);
//Default
if(block.getData() == (byte)0)
PP.addWoodcuttingXP(LoadProperties.mpine * LoadProperties.xpGainMultiplier);
//Spruce
if(block.getData() == (byte)1)
PP.addWoodcuttingXP(LoadProperties.mspruce * LoadProperties.xpGainMultiplier);
//Birch
if(block.getData() == (byte)2)
PP.addWoodcuttingXP(LoadProperties.mbirch * LoadProperties.xpGainMultiplier);
}
}
} else
{
if(!plugin.misc.blockWatchList.contains(block))
{
WoodCutting.woodCuttingProcCheck(player, block);
//Default
if(block.getData() == (byte)0)
PP.addWoodcuttingXP(LoadProperties.mpine * LoadProperties.xpGainMultiplier);
//Spruce
if(block.getData() == (byte)1)
PP.addWoodcuttingXP(LoadProperties.mspruce * LoadProperties.xpGainMultiplier);
//Birch
if(block.getData() == (byte)2)
PP.addWoodcuttingXP(LoadProperties.mbirch * LoadProperties.xpGainMultiplier);
}
}
Skills.XpCheck(player);
/*
* IF PLAYER IS USING TREEFELLER
*/
if(mcPermissions.getInstance().woodCuttingAbility(player)
&& PP.getTreeFellerMode()
&& block.getTypeId() == 17
&& m.blockBreakSimulate(block, player, plugin)){
WoodCutting.treeFeller(block, player, plugin);
for(Block blockx : plugin.misc.treeFeller)
{
if(blockx != null){
Material mat = Material.getMaterial(block.getTypeId());
byte type = 0;
if(block.getTypeId() == 17)
type = block.getData();
ItemStack item = new ItemStack(mat, 1, (byte)0, type);
if(blockx.getTypeId() == 17){
blockx.getLocation().getWorld().dropItemNaturally(blockx.getLocation(), item);
//XP WOODCUTTING
if(!plugin.misc.blockWatchList.contains(block))
{
WoodCutting.woodCuttingProcCheck(player, blockx);
PP.addWoodcuttingXP(LoadProperties.mpine);
}
}
if(blockx.getTypeId() == 18)
{
mat = Material.SAPLING;
item = new ItemStack(mat, 1, (short)0, blockx.getData());
if(Math.random() * 10 > 9)
blockx.getLocation().getWorld().dropItemNaturally(blockx.getLocation(), item);
}
if(blockx.getType() != Material.AIR)
player.incrementStatistic(Statistic.MINE_BLOCK, event.getBlock().getType());
blockx.setType(Material.AIR);
}
}
if(LoadProperties.toolsLoseDurabilityFromAbilities)
m.damageTool(player, (short) LoadProperties.abilityDurabilityLoss);
plugin.misc.treeFeller.clear();
}
}
/*
* EXCAVATION
*/
if(mcPermissions.getInstance().excavation(player) && block.getData() != (byte) 5)
Excavation.excavationProcCheck(block, player);
/*
* HERBALISM
*/
if(PP.getHoePreparationMode() && mcPermissions.getInstance().herbalism(player) && Herbalism.canBeGreenTerra(block))
{
Herbalism.greenTerraCheck(player, block, plugin);
}
if(mcPermissions.getInstance().herbalism(player) && block.getData() != (byte) 5)
Herbalism.herbalismProcCheck(block, player, event, plugin);
//Change the byte back when broken
if(block.getData() == 5 && m.shouldBeWatched(block))
{
block.setData((byte) 0);
if(plugin.misc.blockWatchList.contains(block))
{
plugin.misc.blockWatchList.remove(block);
}
}
}
public void onBlockDamage(BlockDamageEvent event)
{
if(event.isCancelled())
return;
Player player = event.getPlayer();
PlayerProfile PP = Users.getProfile(player);
ItemStack inhand = player.getItemInHand();
Block block = event.getBlock();
Skills.monitorSkills(player);
/*
* ABILITY PREPARATION CHECKS
*/
if(PP.getHoePreparationMode() && Herbalism.canBeGreenTerra(block))
Herbalism.greenTerraCheck(player, block, plugin);
if(PP.getAxePreparationMode() && block.getTypeId() == 17)
WoodCutting.treeFellerCheck(player, block, plugin);
if(PP.getPickaxePreparationMode())
Mining.superBreakerCheck(player, block, plugin);
if(PP.getShovelPreparationMode() && Excavation.canBeGigaDrillBroken(block))
Excavation.gigaDrillBreakerActivationCheck(player, block, plugin);
if(PP.getFistsPreparationMode() && (Excavation.canBeGigaDrillBroken(block) || block.getTypeId() == 78))
Unarmed.berserkActivationCheck(player, plugin);
/*
* GREEN TERRA STUFF
*/
if(PP.getGreenTerraMode() && mcPermissions.getInstance().herbalismAbility(player) && PP.getGreenTerraMode()){
Herbalism.greenTerra(player, block);
}
/*
* GIGA DRILL BREAKER CHECKS
*/
if(PP.getGigaDrillBreakerMode() && m.blockBreakSimulate(block, player, plugin) && Excavation.canBeGigaDrillBroken(block) && m.isShovel(inhand)){
if(m.getTier(player) >= 2)
Excavation.excavationProcCheck(block, player);
if(m.getTier(player) >= 3)
Excavation.excavationProcCheck(block, player);
if(m.getTier(player) >= 4)
Excavation.excavationProcCheck(block, player);
Material mat = Material.getMaterial(block.getTypeId());
if(block.getTypeId() == 2)
mat = Material.DIRT;
byte type = block.getData();
ItemStack item = new ItemStack(mat, 1, (byte)0, type);
block.setType(Material.AIR);
player.incrementStatistic(Statistic.MINE_BLOCK, event.getBlock().getType());
if(LoadProperties.toolsLoseDurabilityFromAbilities)
m.damageTool(player, (short) LoadProperties.abilityDurabilityLoss);
block.getLocation().getWorld().dropItemNaturally(block.getLocation(), item);
}
/*
* BERSERK MODE CHECKS
*/
if(PP.getBerserkMode()
&& m.blockBreakSimulate(block, player, plugin)
&& player.getItemInHand().getTypeId() == 0
&& (Excavation.canBeGigaDrillBroken(block) || block.getTypeId() == 78)){
Material mat = Material.getMaterial(block.getTypeId());
if(block.getTypeId() == 2)
mat = Material.DIRT;
if(block.getTypeId() == 78)
mat = Material.SNOW_BALL;
byte type = block.getData();
ItemStack item = new ItemStack(mat, 1, (byte)0, type);
player.incrementStatistic(Statistic.MINE_BLOCK, event.getBlock().getType());
block.setType(Material.AIR);
block.getLocation().getWorld().dropItemNaturally(block.getLocation(), item);
}
/*
* SUPER BREAKER CHECKS
*/
if(PP.getSuperBreakerMode()
&& Mining.canBeSuperBroken(block)
&& m.blockBreakSimulate(block, player, plugin))
{
if(LoadProperties.miningrequirespickaxe)
{
if(m.isMiningPick(inhand))
Mining.SuperBreakerBlockCheck(player, block, plugin);
} else {
Mining.SuperBreakerBlockCheck(player, block, plugin);
}
}
/*
* LEAF BLOWER
*/
if(block.getTypeId() == 18 && mcPermissions.getInstance().woodcutting(player) && PP.getSkill("woodcutting") >= 100 && m.isAxes(player.getItemInHand()) && m.blockBreakSimulate(block, player, plugin))
{
m.damageTool(player, (short)1);
if(Math.random() * 10 > 9)
{
ItemStack x = new ItemStack(Material.SAPLING, 1, (short)0, block.getData());
block.getLocation().getWorld().dropItemNaturally(block.getLocation(), x);
}
block.setType(Material.AIR);
player.incrementStatistic(Statistic.MINE_BLOCK, event.getBlock().getType());
}
if(block.getType() == Material.AIR && plugin.misc.blockWatchList.contains(block))
{
plugin.misc.blockWatchList.remove(block);
}
}
public void onBlockFromTo(BlockFromToEvent event)
{
Block blockFrom = event.getBlock();
Block blockTo = event.getToBlock();
if(m.shouldBeWatched(blockFrom) && blockFrom.getData() == (byte)5)
{
blockTo.setData((byte)5);
}
}
}

View File

@ -0,0 +1,219 @@
package com.gmail.nossr50.listeners;
import org.bukkit.entity.Entity;
import org.bukkit.entity.LivingEntity;
import org.bukkit.entity.Monster;
import org.bukkit.entity.Player;
import org.bukkit.entity.Wolf;
import org.bukkit.event.entity.CreatureSpawnEvent;
import org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason;
import org.bukkit.event.entity.EntityDamageByEntityEvent;
import org.bukkit.event.entity.EntityDamageEvent;
import org.bukkit.event.entity.EntityDamageEvent.DamageCause;
import org.bukkit.event.entity.EntityDeathEvent;
import org.bukkit.event.entity.EntityListener;
import org.bukkit.event.entity.EntityTargetEvent;
import org.bukkit.inventory.ItemStack;
import com.gmail.nossr50.Combat;
import com.gmail.nossr50.Users;
import com.gmail.nossr50.mcMMO;
import com.gmail.nossr50.config.LoadProperties;
import com.gmail.nossr50.datatypes.PlayerProfile;
import com.gmail.nossr50.locale.mcLocale;
import com.gmail.nossr50.party.Party;
import com.gmail.nossr50.skills.Acrobatics;
import com.gmail.nossr50.skills.Skills;
import com.gmail.nossr50.skills.Taming;
public class mcEntityListener extends EntityListener
{
private final mcMMO plugin;
public mcEntityListener(final mcMMO plugin) {
this.plugin = plugin;
}
public void onEntityDamage(EntityDamageEvent event)
{
if(event.isCancelled())
return;
//Check for world pvp flag
if(event instanceof EntityDamageByEntityEvent)
{
EntityDamageByEntityEvent eventb = (EntityDamageByEntityEvent)event;
if(eventb.getEntity() instanceof Player && eventb.getDamager() instanceof Player && !event.getEntity().getWorld().getPVP())
return;
}
/*
* CHECK FOR INVULNERABILITY
*/
if(event.getEntity() instanceof Player)
{
Player defender = (Player)event.getEntity();
PlayerProfile PPd = Users.getProfile(defender);
if(defender != null && PPd.getGodMode())
event.setCancelled(true);
if(PPd == null)
Users.addUser(defender);
}
if(event.getEntity() instanceof LivingEntity)
{
//CraftEntity cEntity = (CraftEntity)event.getEntity();
//if(cEntity.getHandle() instanceof EntityLiving)
{
LivingEntity entityliving = (LivingEntity)event.getEntity();
if(entityliving.getNoDamageTicks() < entityliving.getMaximumNoDamageTicks()/2.0F)
{
Entity x = event.getEntity();
DamageCause type = event.getCause();
if(event.getEntity() instanceof Wolf && ((Wolf)event.getEntity()).isTamed() && Taming.getOwner(((Wolf)event.getEntity()), plugin) != null)
{
Wolf theWolf = (Wolf) event.getEntity();
Player master = Taming.getOwner(theWolf, plugin);
PlayerProfile PPo = Users.getProfile(master);
if(master == null || PPo == null)
return;
//Environmentally Aware
if((event.getCause() == DamageCause.CONTACT || event.getCause() == DamageCause.LAVA || event.getCause() == DamageCause.FIRE) && PPo.getSkill("taming") >= 100)
{
if(event.getDamage() < ((Wolf) event.getEntity()).getHealth())
{
event.getEntity().teleport(Taming.getOwner(theWolf, plugin).getLocation());
master.sendMessage(mcLocale.getString("mcEntityListener.WolfComesBack")); //$NON-NLS-1$
event.getEntity().setFireTicks(0);
}
}
if(event.getCause() == DamageCause.FALL && PPo.getSkill("taming") >= 100)
{
event.setCancelled(true);
}
//Thick Fur
if(event.getCause() == DamageCause.FIRE_TICK)
{
event.getEntity().setFireTicks(0);
}
}
/*
* ACROBATICS
*/
if(x instanceof Player){
Player player = (Player)x;
if(type == DamageCause.FALL){
Acrobatics.acrobaticsCheck(player, event);
}
}
/*
* Entity Damage by Entity checks
*/
if(event instanceof EntityDamageByEntityEvent && !event.isCancelled())
{
EntityDamageByEntityEvent eventb = (EntityDamageByEntityEvent) event;
Entity f = eventb.getDamager();
Entity e = event.getEntity();
/*
* PARTY CHECKS
*/
if(event.getEntity() instanceof Player && f instanceof Player)
{
Player defender = (Player)e;
Player attacker = (Player)f;
if(Party.getInstance().inSameParty(defender, attacker))
event.setCancelled(true);
}
Combat.combatChecks(event, plugin);
}
/*
* Check to see if the defender took damage so we can apply recently hurt
*/
if(event.getEntity() instanceof Player && !event.isCancelled() && event.getDamage() >= 1)
{
Player herpderp = (Player)event.getEntity();
Users.getProfile(herpderp).setRecentlyHurt(System.currentTimeMillis());
}
}
}
}
}
public void onEntityDeath(EntityDeathEvent event)
{
Entity x = event.getEntity();
x.setFireTicks(0);
//cleanup mob diff
if(plugin.mob.mobDiff.containsKey(event.getEntity().getEntityId()))
plugin.mob.mobDiff.remove(event.getEntity().getEntityId());
//Remove bleed track
if(plugin.misc.bleedTracker.contains((LivingEntity)x))
plugin.misc.addToBleedRemovalQue((LivingEntity)x);
Skills.arrowRetrievalCheck(x, plugin);
/*
if(Config.getInstance().isMobSpawnTracked(x)){
Config.getInstance().removeMobSpawnTrack(x);
}
*/
if(x instanceof Player){
Player player = (Player)x;
Users.getProfile(player).setBleedTicks(0);
}
}
public void onCreatureSpawn(CreatureSpawnEvent event)
{
SpawnReason reason = event.getSpawnReason();
if(reason == SpawnReason.SPAWNER && !LoadProperties.xpGainsMobSpawners)
{
plugin.misc.mobSpawnerList.add(event.getEntity());
} else
{
if(event.getEntity() instanceof Monster && !plugin.mob.mobDiff.containsKey(event.getEntity().getEntityId()))
plugin.mob.assignDifficulty(event.getEntity());
}
}
public void onEntityTarget(EntityTargetEvent event)
{
int type = event.getEntity().getEntityId();
//Make 3+ non-aggressive
if(event.getEntity() instanceof Monster
&& plugin.mob.mobDiff.containsKey(type)
&& plugin.mob.isAggressive.containsKey(type))
{
if(plugin.mob.mobDiff.get(type) >= 2 && plugin.mob.isAggressive.get(type) == false)
{
event.setCancelled(true);
event.setTarget(null);
}
}
}
public boolean isBow(ItemStack is){
if (is.getTypeId() == 261){
return true;
} else {
return false;
}
}
public boolean isPlayer(Entity entity){
if (entity instanceof Player) {
return true;
} else{
return false;
}
}
}

View File

@ -0,0 +1,241 @@
package com.gmail.nossr50.listeners;
import java.util.logging.Level;
import java.util.logging.Logger;
import org.bukkit.ChatColor;
import org.bukkit.Location;
import org.bukkit.Material;
import org.bukkit.block.Block;
import org.bukkit.entity.Player;
import org.bukkit.event.block.Action;
import org.bukkit.event.player.PlayerChatEvent;
import org.bukkit.event.player.PlayerInteractEvent;
import org.bukkit.event.player.PlayerJoinEvent;
import org.bukkit.event.player.PlayerListener;
import org.bukkit.event.player.PlayerLoginEvent;
import org.bukkit.event.player.PlayerQuitEvent;
import org.bukkit.event.player.PlayerRespawnEvent;
import org.bukkit.inventory.ItemStack;
import com.gmail.nossr50.Item;
import com.gmail.nossr50.Users;
import com.gmail.nossr50.m;
import com.gmail.nossr50.mcMMO;
import com.gmail.nossr50.mcPermissions;
import com.gmail.nossr50.config.LoadProperties;
import com.gmail.nossr50.datatypes.PlayerProfile;
import com.gmail.nossr50.locale.mcLocale;
import com.gmail.nossr50.party.Party;
import com.gmail.nossr50.skills.Herbalism;
import com.gmail.nossr50.skills.Repair;
import com.gmail.nossr50.skills.Skills;
public class mcPlayerListener extends PlayerListener
{
protected static final Logger log = Logger.getLogger("Minecraft"); //$NON-NLS-1$
public Location spawn = null;
private mcMMO plugin;
public mcPlayerListener(mcMMO instance)
{
plugin = instance;
}
public void onPlayerRespawn(PlayerRespawnEvent event)
{
Player player = event.getPlayer();
if(LoadProperties.enableMySpawn && mcPermissions.getInstance().mySpawn(player))
{
PlayerProfile PP = Users.getProfile(player);
if(player != null && PP != null)
{
PP.setRespawnATS(System.currentTimeMillis());
Location mySpawn = PP.getMySpawn(player);
if(mySpawn != null && plugin.getServer().getWorld(PP.getMySpawnWorld(plugin)) != null)
mySpawn.setWorld(plugin.getServer().getWorld(PP.getMySpawnWorld(plugin)));
if(mySpawn != null)
{
event.setRespawnLocation(mySpawn);
}
}
}
}
public void onPlayerLogin(PlayerLoginEvent event)
{
Users.addUser(event.getPlayer());
}
public void onPlayerQuit(PlayerQuitEvent event)
{
/*
* GARBAGE COLLECTION
*/
//Discard the PlayerProfile object from players array in the Users object stored for this player as it is no longer needed
Users.removeUser(event.getPlayer());
}
public void onPlayerJoin(PlayerJoinEvent event)
{
Player player = event.getPlayer();
if(mcPermissions.getInstance().motd(player) && LoadProperties.enableMotd)
{
//player.sendMessage(ChatColor.BLUE +"This server is running mcMMO "+plugin.getDescription().getVersion()+" type /"+ChatColor.YELLOW+LoadProperties.mcmmo+ChatColor.BLUE+ " for help.");
player.sendMessage(mcLocale.getString("mcPlayerListener.MOTD", new Object[] {plugin.getDescription().getVersion(), LoadProperties.mcmmo}));
//player.sendMessage(ChatColor.GREEN+"http://mcmmo.wikia.com"+ChatColor.BLUE+" - mcMMO Wiki");
player.sendMessage(mcLocale.getString("mcPlayerListener.WIKI"));
}
}
@SuppressWarnings("deprecation")
public void onPlayerInteract(PlayerInteractEvent event) {
Player player = event.getPlayer();
PlayerProfile PP = Users.getProfile(player);
Action action = event.getAction();
Block block = event.getClickedBlock();
//Archery Nerf
if(player.getItemInHand().getTypeId() == 261 && LoadProperties.archeryFireRateLimit){
if(System.currentTimeMillis() < PP.getArcheryShotATS() + 1000){
/*
if(m.hasArrows(player))
m.addArrows(player);
*/
player.updateInventory();
event.setCancelled(true);
} else {
PP.setArcheryShotATS(System.currentTimeMillis());
}
}
/*
* Ability checks
*/
if(action == Action.RIGHT_CLICK_BLOCK)
{
ItemStack is = player.getItemInHand();
if(LoadProperties.enableMySpawn && block != null && player != null)
{
if(block.getTypeId() == 26 && mcPermissions.getInstance().setMySpawn(player))
{
Location loc = player.getLocation();
if(mcPermissions.getInstance().setMySpawn(player)){
PP.setMySpawn(loc.getX(), loc.getY(), loc.getZ(), loc.getWorld().getName());
}
player.sendMessage(mcLocale.getString("mcPlayerListener.MyspawnSet"));
}
}
if(block != null && player != null && mcPermissions.getInstance().repair(player) && event.getClickedBlock().getTypeId() == 42)
{
Repair.repairCheck(player, is, event.getClickedBlock());
}
if(m.abilityBlockCheck(block))
{
if(block != null && m.isHoe(player.getItemInHand()) && block.getTypeId() != 3 && block.getTypeId() != 2 && block.getTypeId() != 60){
Skills.hoeReadinessCheck(player);
}
Skills.abilityActivationCheck(player);
}
//GREEN THUMB
if(block != null && (block.getType() == Material.COBBLESTONE || block.getType() == Material.DIRT) && player.getItemInHand().getType() == Material.SEEDS)
{
boolean pass = false;
if(Herbalism.hasSeeds(player) && mcPermissions.getInstance().herbalism(player)){
Herbalism.removeSeeds(player);
if(LoadProperties.enableCobbleToMossy && m.blockBreakSimulate(block, player, plugin) && block.getType() == Material.COBBLESTONE && Math.random() * 1500 <= PP.getSkill("herbalism")){
player.sendMessage(mcLocale.getString("mcPlayerListener.GreenThumb"));
block.setType(Material.MOSSY_COBBLESTONE);
pass = true;
}
if(block.getType() == Material.DIRT && m.blockBreakSimulate(block, player, plugin) && Math.random() * 1500 <= PP.getSkill("herbalism")){
player.sendMessage(mcLocale.getString("mcPlayerListener.GreenThumb"));
block.setType(Material.GRASS);
pass = true;
}
if(pass == false)
player.sendMessage(mcLocale.getString("mcPlayerListener.GreenThumbFail"));
}
return;
}
}
if(action == Action.RIGHT_CLICK_AIR)
{
Skills.hoeReadinessCheck(player);
Skills.abilityActivationCheck(player);
/*
* HERBALISM MODIFIERS
*/
if(mcPermissions.getInstance().herbalism(player))
{
Herbalism.breadCheck(player, player.getItemInHand());
Herbalism.stewCheck(player, player.getItemInHand());
}
}
/*
* ITEM CHECKS
*/
if(action == Action.RIGHT_CLICK_AIR)
Item.itehecks(player, plugin);
if(action == Action.RIGHT_CLICK_BLOCK)
{
if(m.abilityBlockCheck(event.getClickedBlock()))
Item.itehecks(player, plugin);
}
}
public void onPlayerChat(PlayerChatEvent event)
{
Player player = event.getPlayer();
PlayerProfile PP = Users.getProfile(player);
String x = ChatColor.GREEN + "(" + ChatColor.WHITE + player.getName() + ChatColor.GREEN + ") "; //$NON-NLS-1$ //$NON-NLS-2$
String y = ChatColor.AQUA + "{" + ChatColor.WHITE + player.getName() + ChatColor.AQUA + "} "; //$NON-NLS-1$ //$NON-NLS-2$
if(PP.getPartyChatMode())
{
event.setCancelled(true);
log.log(Level.INFO, "[P]("+PP.getParty()+")"+"<"+player.getName()+"> "+event.getMessage()); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
for(Player herp : plugin.getServer().getOnlinePlayers())
{
if(Users.getProfile(herp).inParty())
{
if(Party.getInstance().inSameParty(herp, player))
{
herp.sendMessage(x+event.getMessage());
}
}
}
return;
}
if((player.isOp() || mcPermissions.getInstance().adminChat(player)) && PP.getAdminChatMode())
{
log.log(Level.INFO, "[A]"+"<"+player.getName()+"> "+event.getMessage()); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
event.setCancelled(true);
for(Player herp : plugin.getServer().getOnlinePlayers()){
if((herp.isOp() || mcPermissions.getInstance().adminChat(herp))){
herp.sendMessage(y+event.getMessage());
}
}
return;
}
}
}

View File

@ -0,0 +1,321 @@
Combat.WolfExamine=[[GREEN]]**du musterst den Wolf mit Bestienkunde**
Combat.WolfShowMaster=[[DARK_GREEN]]Der Bestienmeister \: {0}
Combat.Ignition=[[RED]]**ENTZUENDEN**
Combat.BurningArrowHit=[[DARK_RED]]Du wurdest von einem brennenden Pfeil gestriffen\!
Combat.TouchedFuzzy=[[DARK_RED]]Benommen. fuehlt sich schwindelig.
Combat.TargetDazed=Target was [[DARK_RED]]benommen
Combat.WolfNoMaster=[[GRAY]]Diese Bestie hat keinen Meister...
Combat.WolfHealth=[[GREEN]]Die Bestie hat {0} Lebensenergie
Combat.StruckByGore=[[RED]]**Getroffen von Biss**
Combat.Gore=[[GREEN]]**BISS**
Combat.ArrowDeflect=[[WHITE]]**PFEIL ABGELENKT**
Item.ChimaeraWingFail=**CHIMAERA FLUEGEL fehlgeschlagen\!**
Item.ChimaeraWingPass=**CHIMAERA FLUEGEL**
Item.InjuredWait=du wurdest kurz zuvor verletzt und musst mit der Benutzung warten. [[YELLOW]]({0}s)
Item.NeedFeathers=[[GRAY]]Du brauchst mehr Federn..
m.mccPartyCommands=[[GREEN]]--GRUPPEN BEFEHLE--
m.mccParty=[party name] [[RED]]- Erstellen/beitreten einer Gruppe
m.mccPartyQ=[[RED]]- Verlasse aktuelle Gruppe
m.mccPartyToggle=[[RED]] - aktiviert Gruppenchat
m.mccPartyInvite=[player name] [[RED]]- sende Gruppeneinladung
m.mccPartyAccept=[[RED]]- Gruppeneinladung akzeptieren
m.mccPartyTeleport=[party member name] [[RED]]- Teleport zu Gruppenmitglied
m.mccOtherCommands=[[GREEN]]--ANDERE BEFEHLE--
m.mccStats=- zeigt deinen Status
m.mccLeaderboards=- Ranglisten
m.mccMySpawn=- Teleport zum Spawnpunkt
m.mccClearMySpawn=- Spawnpunkt loeschen
m.mccToggleAbility=- Faehigkeitsaktivierung mit rechtsklick an/aus schalten
m.mccAdminToggle=- Adminchat aktivieren
m.mccWhois=[playername] [[RED]]- Detailierte Spielerinfos zeigen
m.mccMmoedit=[playername] [skill] [newvalue] [[RED]]- Ziel modifizieren
m.mccMcGod=- God Mode
m.mccSkillInfo=[skillname] [[RED]]- Detailierte Skillinfos zeigen
m.mccModDescription=[[RED]]- kurze MOD-Beschreibung lesen
m.SkillHeader=[[RED]]-----[][[GREEN]]{0}[[RED]][]-----
m.XPGain=[[DARK_GRAY]]XP Erhalten: [[WHITE]]{0}
m.EffectsTemplate=[[DARK_AQUA]]{0}: [[GREEN]]{1}
m.AbilityLockTemplate=[[GRAY]]{0}
m.AbilityBonusTemplate=[[RED]]{0}: [[YELLOW]]{1}
m.Effects=EFFEKTE
m.YourStats=DEINE WERTE
m.SkillTaming=Bestienkunde (Taming)
m.XPGainTaming=wenn Woelfe Schaden bekommen
m.EffectsTaming1_0=Bestienkunde
m.EffectsTaming1_1=mit Knochen schlagen inspiziert Woelfe
m.EffectsTaming2_0=Biss
m.EffectsTaming2_1=Kritischer Schlag mit Blutungseffekt
m.EffectsTaming3_0=Geschaerfte Krallen
m.EffectsTaming3_1=Schadens-Bonus
m.EffectsTaming4_0=Umweltbewusst
m.EffectsTaming4_1=Kaktus/Lava Phobie, Fall Schaden Immun
m.EffectsTaming5_0=Dichtes Fell
m.EffectsTaming5_1=Schadens-Reduzierung, Feuer-Resistenz
m.EffectsTaming6_0=schockfest
m.EffectsTaming6_1=Explosions-Schaden-Reduzierung
m.AbilLockTaming1=gesperrt bis 100+ Skilllevel (Umweltbewusst)
m.AbilLockTaming2=gesperrt bis 250+ Skillevel (Dichtes Fell)
m.AbilLockTaming3=gesperrt bis 500+ Skillevel (Schockfest)
m.AbilLockTaming4=gesperrt bis 750+ Skillevel (Geschaerfte Krallen)
m.AbilBonusTaming1_0=Umweltbewusst
m.AbilBonusTaming1_1=Woelfe meiden Gefahr
m.AbilBonusTaming2_0=Dichtes Fell
m.AbilBonusTaming2_1=Halber Schaden, Feuer-Resistenz
m.AbilBonusTaming3_0=Schockfest
m.AbilBonusTaming3_1=Explosionen machen 1/6 normalen Schaden
m.AbilBonusTaming4_0=Geschärfte Krallen
m.AbilBonusTaming4_1=+2 Schaden
m.TamingGoreChance=[[RED]]Biss Chance: [[YELLOW]]{0}%
m.SkillWoodCutting=Holzfaellen (WoodCutting)
m.XPGainWoodCutting=Baeume faellen
m.EffectsWoodCutting1_0=Baumfaeller (Faehigkeit)
m.EffectsWoodCutting1_1=Bringt Baeume zum explodieren
m.EffectsWoodCutting2_0=Blaetter-Sturm
m.EffectsWoodCutting2_1=blaest Blaetter weg
m.EffectsWoodCutting3_0=Doppelte Drops
m.EffectsWoodCutting3_1=doppelte Anzahl Items
m.AbilLockWoodCutting1=gesperrt bis 100+ Skilllevel (Blaetter-Sturm)
m.AbilBonusWoodCutting1_0=Blaetter-Sturm
m.AbilBonusWoodCutting1_1=blaest Blaetter weg
m.WoodCuttingDoubleDropChance=[[RED]]Doppelte Drop Chance: [[YELLOW]]{0}%
m.WoodCuttingTreeFellerLength=[[RED]]Baumfaeller Dauer: [[YELLOW]]{0}s
m.SkillArchery=Bogenschiessen (Archery)
m.XPGainArchery=Monster/Spieler angreifen
m.EffectsArchery1_0=Entzuenden
m.EffectsArchery1_1=25% Chance das Feind Feuer faengt
m.EffectsArchery2_0=Blenden (Spieler)
m.EffectsArchery2_1=Disorientiert Feinde
m.EffectsArchery3_0=Schaden+
m.EffectsArchery3_1=Modifiziert Schaden
m.EffectsArchery4_0=Pfeil Rueckgewinnung
m.EffectsArchery4_1=Chance Pfeile von Leichen zurueckzugewinnen
m.ArcheryDazeChance=[[RED]]Chance zu blenden: [[YELLOW]]{0}%
m.ArcheryRetrieveChance=[[RED]]Chance Pfeile zurueckzugewinnen: [[YELLOW]]{0}%
m.ArcheryIgnitionLength=[[RED]]Dauer von Entzuenden: [[YELLOW]]{0} seconds
m.ArcheryDamagePlus=[[RED]]Schaden+ (Rank{0}): [[YELLOW]]Bonus {0} damage
m.SkillAxes=Axt (Axes)
m.XPGainAxes=Monster/Spieler angreifen
m.EffectsAxes1_0=Schaedelspalter (Faehigkeit)
m.EffectsAxes1_1=Verursacht Flaechenschaden
m.EffectsAxes2_0=Kritischer Schlag
m.EffectsAxes2_1=doppelter Schaden
m.EffectsAxes3_0=Axtmeister (500 Skilllevel)
m.EffectsAxes3_1=Modifiziert Schaden
m.AbilLockAxes1=gesperrt bis 500+ Skilllevel(Axtmeister)
m.AbilBonusAxes1_0=Axtmeister
m.AbilBonusAxes1_1=4 Bonus-Schaden
m.AxesCritChance=[[RED]]Chance fuer kritische Treffer: [[YELLOW]]{0}%
m.AxesSkullLength=[[RED]]Schaedelspalter Dauer: [[YELLOW]]{0}s
m.SkillSwords=Schwert (Swords)
m.XPGainSwords=Monster/Spieler angreifen
m.EffectsSwords1_0=Konter
m.EffectsSwords1_1=Reflektiert 50% des erhaltenen Schadens
m.EffectsSwords2_0=Saegezahn-Schlag (Faehigkeit)
m.EffectsSwords2_1=25% Flaechenschaden, Blutung+ Flaecheneffekt
m.EffectsSwords3_0=Saegezahn-Schlag Blutung+
m.EffectsSwords3_1=5 Tick Blutung
m.EffectsSwords4_0=parrieren
m.EffectsSwords4_1=negiert Schaden
m.EffectsSwords5_0=Blutung
m.EffectsSwords5_1=hinterlaesst Blutungs-DOT
m.SwordsCounterAttChance=[[RED]]Konter Chance: [[YELLOW]]{0}%
m.SwordsBleedLength=[[RED]]Blutung Dauer: [[YELLOW]]{0} ticks
m.SwordsBleedChance=[[RED]]Blutung Chance: [[YELLOW]]{0} %
m.SwordsParryChance=[[RED]]Parieren Chance: [[YELLOW]]{0} %
m.SwordsSSLength=[[RED]]Saegezahn-Schlag Dauer: [[YELLOW]]{0}s
m.SwordsTickNote=[[GRAY]]NOTIZ: [[YELLOW]]1 Tick erfolgt aller 2 Sekunden
m.SkillAcrobatics=Akrobatik (Acrobatics)
m.XPGainAcrobatics=runterfallen
m.EffectsAcrobatics1_0=Rolle
m.EffectsAcrobatics1_1=Reduziert oder negiert Schaden
m.EffectsAcrobatics2_0=elegante Rolle
m.EffectsAcrobatics2_1=Doppelt so effektiv wie Rolle
m.EffectsAcrobatics3_0=Ausweichen
m.EffectsAcrobatics3_1=halbiert Schaden
m.AcrobaticsRollChance=[[RED]]Rolle Chance: [[YELLOW]]{0}%
m.AcrobaticsGracefulRollChance=[[RED]]elegante Rolle Chance: [[YELLOW]]{0}%
m.AcrobaticsDodgeChance=[[RED]]Ausweichen Chance: [[YELLOW]]{0}%
m.SkillMining=Bergbau (Mining)
m.XPGainMining=Abbauen von Stein und Erz
m.EffectsMining1_0=Super Brecher (Faehigkeit)
m.EffectsMining1_1=Tempo+, dreifache Drop Chance
m.EffectsMining2_0=doppelte Drops
m.EffectsMining2_1=doppelte Anzahl Items
m.MiningDoubleDropChance=[[RED]]doppelte Drops Chance: [[YELLOW]]{0}%
m.MiningSuperBreakerLength=[[RED]]Super Brecher Dauer: [[YELLOW]]{0}s
m.SkillRepair=Reparieren (Repair)
m.XPGainRepair=reparieren
m.EffectsRepair1_0=reparieren
m.EffectsRepair1_1=reparieren von Eisenwerkzeugen und Ruestung
m.EffectsRepair2_0=reparieren - Meister
m.EffectsRepair2_1=erhoeht Reparierwert
m.EffectsRepair3_0=Super Reparatur
m.EffectsRepair3_1=doppelte Effektivitaet
m.EffectsRepair4_0=Diamanten Reparatur ({0}+ SKILL)
m.EffectsRepair4_1=Reparieren von Diamantwerkzeugen und Ruestung
m.RepairRepairMastery=[[RED]]reparieren - Meister: [[YELLOW]]Extra {0}% Haltbarkeit
m.RepairSuperRepairChance=[[RED]]Super Reparatur Chance: [[YELLOW]]{0}%
m.SkillUnarmed=Faustkampf (Unarmed)
m.XPGainUnarmed=Monster/Spieler angreifen
m.EffectsUnarmed1_0=Berserker (Faehigkeit)
m.EffectsUnarmed1_1=+50% Schaden, bricht weiches Material (Bsp. Erde)
m.EffectsUnarmed2_0=Entwaffnen (Spieler)
m.EffectsUnarmed2_1=Droppt Item welches Feind in Hand haelt
m.EffectsUnarmed3_0=Faustkampfmeister
m.EffectsUnarmed3_1=grosse Schadenssteigerung
m.EffectsUnarmed4_0=Faustkampflehrling
m.EffectsUnarmed4_1=Schadens-Bonus
m.EffectsUnarmed5_0=Pfeil ablenken
m.EffectsUnarmed5_1=wehrt Pfeile ab
m.AbilLockUnarmed1=gesperrt bis 250+ Skilllevel (Faustkampflehrling)
m.AbilLockUnarmed2=gesperrt bis 500+ Skilllevel (Faustkampfmeister)
m.AbilBonusUnarmed1_0=Faustkampflehrling
m.AbilBonusUnarmed1_1=+2 Schadens-Bonus
m.AbilBonusUnarmed2_0=Faustkampfmeister
m.AbilBonusUnarmed2_1=+4 Schadens-Bonus
m.UnarmedArrowDeflectChance=[[RED]]Pfeil ablenken Chance: [[YELLOW]]{0}%
m.UnarmedDisarmChance=[[RED]]Entwaffnen Chance: [[YELLOW]]{0}%
m.UnarmedBerserkLength=[[RED]]Berserker Dauer: [[YELLOW]]{0}s
m.SkillHerbalism=Kraeutersammler (Herbalism)
m.XPGainHerbalism=Kraeuter sammeln
m.EffectsHerbalism1_0=Gruene Welt (Faehigkeit)
m.EffectsHerbalism1_1=Pflegt die Welt, dreifache Drops
m.EffectsHerbalism2_0=Gruener Daumen (Weizen)
m.EffectsHerbalism2_1=automatisches neupflanzen nach ernten
m.EffectsHerbalism3_0=Gruener Daumen (Cobble)
m.EffectsHerbalism3_1=verwandelt Cobblestone zu Mossy Cobblestone mithilfe von Samen
m.EffectsHerbalism4_0=Nahrung+
m.EffectsHerbalism4_1=Modifiziert Heilung von Brot/Suppe
m.EffectsHerbalism5_0=Doppelte Drops (Alle Kraeuter)
m.EffectsHerbalism5_1=doppelte Anzahl Items
m.HerbalismGreenTerraLength=[[RED]]Gruene Welt Dauer: [[YELLOW]]{0}s
m.HerbalismGreenThumbChance=[[RED]]Gruener Daumen Chance: [[YELLOW]]{0}%
m.HerbalismGreenThumbStage=[[RED]]Gruener Daumen Stufe: [[YELLOW]] Getreide waechst auf Stufe {0}
m.HerbalismDoubleDropChance=[[RED]]Doppelte Drop Chance: [[YELLOW]]{0}%
m.HerbalismFoodPlus=[[RED]]Nahrung+ (Rank{0}): [[YELLOW]]Bonus-Heilung {0}
m.SkillExcavation=Graben (Excavation)
m.XPGainExcavation=Graben und finden von Schaetzen
m.EffectsExcavation1_0=Giga Bohrer (Faehigkeit)
m.EffectsExcavation1_1=3x Drop Rate, 3x EXP, +Tempo
m.EffectsExcavation2_0=Schatzjaeger
m.EffectsExcavation2_1=Faehigkeit nach Schaetzen zu graben
m.ExcavationGreenTerraLength=[[RED]]Giga Bohrer Dauer: [[YELLOW]]{0}s
mcBlockListener.PlacedAnvil=[[DARK_RED]]Du hast einen Ambos platziert, du kannst hier Werkzeuge und Ruestungen reparieren.
mcEntityListener.WolfComesBack=[[DARK_GRAY]]Dein Wolf hastet zurueck zu dir...
mcPlayerListener.AbilitiesOff=Faehigkeiten nutzen (rechtsklick) aus
mcPlayerListener.AbilitiesOn=Faehigkeiten nutzen (rechtsklick) an
mcPlayerListener.AbilitiesRefreshed=[[GREEN]]**Faehigkeiten aufgefrischt\!**
mcPlayerListener.AcrobaticsSkill=[[YELLOW]]Akrobatik Skill (Acrobatics):
mcPlayerListener.ArcherySkill=[[YELLOW]]Bogenschiessen Skill (Archery):
mcPlayerListener.AxesSkill=[[YELLOW]]Axt Skill (Axes):
mcPlayerListener.ExcavationSkill=[[YELLOW]]Graben Skill (Excavations):
mcPlayerListener.GodModeDisabled=[[YELLOW]]mcMMO Godmode deaktiviert
mcPlayerListener.GodModeEnabled=[[YELLOW]]mcMMO Godmode aktiviert
mcPlayerListener.GreenThumb=[[GREEN]]**GRUENER DAUMEN**
mcPlayerListener.GreenThumbFail=[[RED]]**GREEN THUMB FEHLGESCHLAGEN**
mcPlayerListener.HerbalismSkill=[[YELLOW]]Kraeuterkunde Skill (Herbalism):
mcPlayerListener.MiningSkill=[[YELLOW]]Bergbau Skill (Mining):
mcPlayerListener.MyspawnCleared=[[DARK_AQUA]]Myspawn ist freigegeben
mcPlayerListener.MyspawnNotExist=[[RED]]Lege deinen myspawn erst mit einem Bett fest
mcPlayerListener.MyspawnSet=[[DARK_AQUA]]Myspawn wurde an deine aktuelle Position gesetzt
mcPlayerListener.MyspawnTimeNotice=Du musst {0}m {1}s warten um myspawn zu nutzen
mcPlayerListener.NoPermission=unzureichende mcPermissions.
mcPlayerListener.NoSkillNote=[[DARK_GRAY]]wenn du keinen Zugriff auf einen Skill hast wird er nicht hier gezeigt
mcPlayerListener.NotInParty=[[RED]]Du bist in keiner Gruppe.
mcPlayerListener.InviteSuccess=[[GREEN]]Einladung erfolgreich versendet.
mcPlayerListener.ReceivedInvite1=[[RED]]ALERT: [[GREEN]]Du hast eine Gruppeneinladung für {0} von {1}
mcPlayerListener.ReceivedInvite2=[[YELLOW]]Schreibe[[GREEN]]/{0}[[YELLOW]] um die Einladung zu akzeptieren
mcPlayerListener.InviteAccepted=[[GREEN]]Einladung akzeptiert. du bist {0} beigetreten
mcPlayerListener.NoInvites=[[RED]]Du hast derzeit keine Einladungen
mcPlayerListener.YouAreInParty=[[GREEN]]Du bist in Gruppe {0}
mcPlayerListener.PartyMembers=[[GREEN]]Gruppen Mitglieder
mcPlayerListener.LeftParty=[[RED]]Du hast die Gruppe verlassen
mcPlayerListener.JoinedParty=beigetrettene Gruppe: {0}
mcPlayerListener.PartyChatOn=nur Gruppenchat [[RED]]an
mcPlayerListener.PartyChatOff=nur Gruppenchat [[RED]]aus
mcPlayerListener.AdminChatOn=nur Adminchat [[GREEN]]an
mcPlayerListener.AdminChatOff=nur Adminchat [[RED]]aus
mcPlayerListener.MOTD=[[BLUE]]Auf diesem Server laeuft {0} schreibe[[YELLOW]]/{1}[[BLUE]] fuer Hilfe. <frei Uebersetzt von g3oliver>
mcPlayerListener.WIKI=[[GREEN]]http://mcmmo.wikia.com[[BLUE]] - mcMMO Wiki
mcPlayerListener.PowerLevel=[[DARK_RED]]POWER LEVEL:
mcPlayerListener.PowerLevelLeaderboard=[[YELLOW]]--mcMMO[[BLUE]] Power Level [[YELLOW]]Rangliste--
mcPlayerListener.SkillLeaderboard=[[YELLOW]]--mcMMO [[BLUE]]{0}[[YELLOW]] Rangliste--
mcPlayerListener.RepairSkill=[[YELLOW]]Reparieren Skill (Repair):
mcPlayerListener.SwordsSkill=[[YELLOW]]Schwert Skill (Swords):
mcPlayerListener.TamingSkill=[[YELLOW]]Bestienkunde Skill (Taming):
mcPlayerListener.UnarmedSkill=[[YELLOW]]Faustkampf Skill (Unarmed):
mcPlayerListener.WoodcuttingSkill=[[YELLOW]]Holzfaeller Skill (Woodcutting):
mcPlayerListener.YourStats=[[GREEN]]Deine MMO Werte
Party.InformedOnJoin={0} [[GREEN]] ist deiner Gruppe beigetreten
Party.InformedOnQuit={0} [[GREEN]] hat deine Gruppe verlassen
Skills.YourGreenTerra=[[GREEN]]Deine [[YELLOW]]Gruene Welt [[GREEN]]Faehigkeit ist bereit!
Skills.YourTreeFeller=[[GREEN]]Deine [[YELLOW]]Baumfaeller [[GREEN]]Faehigkeit ist bereit!
Skills.YourSuperBreaker=[[GREEN]]Deine [[YELLOW]]Super Brecher [[GREEN]]Faehigkeit ist bereit!
Skills.YourSerratedStrikes=[[GREEN]]Deine [[YELLOW]]Saegezahn-Schlag [[GREEN]]Faehigkeit ist bereit!
Skills.YourBerserk=[[GREEN]]Deine [[YELLOW]]Berserker [[GREEN]]Faehigkeit ist bereit!
Skills.YourSkullSplitter=[[GREEN]]Deine [[YELLOW]]Schaedelspalter[[GREEN]]Faehigkeit ist bereit!
Skills.YourGigaDrillBreaker=[[GREEN]]Deine [[YELLOW]]Giga Bohrer[[GREEN]]Faehigkeit ist bereit!
Skills.TooTired=[[RED]]Du bist zu muede um diese Faehigkeit erneut zu nutzen.
Skills.ReadyHoe=[[GREEN]]**DU BEREITEST DEINE HARKE VOR**
Skills.LowerHoe=[[GRAY]]**DU SENKST DEINE HARKE**
Skills.ReadyAxe=[[GREEN]]**DU BEREITEST DEINE AXT VOR**
Skills.LowerAxe=[[GRAY]]**DU SENKST DEINE AXT**
Skills.ReadyFists=[[GREEN]]**DU BEREITEST DEINE FAEUSTE VOR**
Skills.LowerFists=[[GRAY]]**DU SENKST DEINE FAUSTE**
Skills.ReadyPickAxe=[[GREEN]]**DU BEREITEST DEINE SPITZHACKE VOR**
Skills.LowerPickAxe=[[GRAY]]**DU SENKST DEINE SPITZHACKE**
Skills.ReadyShovel=[[GREEN]]**DU BEREITEST DEINE SCHAUFEL VOR**
Skills.LowerShovel=[[GRAY]]**DU SENKST DEINE SCHAUFEL**
Skills.ReadySword=[[GREEN]]**DU ERHEBST DEIN SCHWERT**
Skills.LowerSword=[[GRAY]]**DU SENKST DEIN SCHWERT**
Skills.GreenTerraOn=[[GREEN]]**GRUENE WELT AKTIV**
Skills.GreenTerraPlayer=[[GREEN]]{0}[[DARK_GREEN]] hat [[RED]]Green Terra[[DARK_GREEN]] benutzt!
Skills.TreeFellerOn=[[GREEN]]**BAUMFAELLER AKTIV**
Skills.TreeFellerPlayer=[[GREEN]]{0}[[DARK_GREEN]] hat [[RED]]Baumfaeller[[DARK_GREEN]] benutzt!
Skills.SuperBreakerOn=[[GREEN]]**SUPER BRECHER AKTIV**
Skills.SuperBreakerPlayer=[[GREEN]]{0}[[DARK_GREEN]] hat [[RED]]Super Brecher[[DARK_GREEN]] benutzt!
Skills.SerratedStrikesOn=[[GREEN]]**SAEGEZAHN-SCHLAG AKTIV**
Skills.SerratedStrikesPlayer=[[GREEN]]{0}[[DARK_GREEN]] hat [[RED]]Saegezahn-Schlag[[DARK_GREEN]] benutzt!
Skills.SkullSplitterOn=[[GREEN]]**SCHAEDELSPALTER AKTIV**
Skills.SkullSplitterPlayer=[[GREEN]]{0}[[DARK_GREEN]] hat [[RED]]Schaedelspalter[[DARK_GREEN]] benutzt!
Skills.GigaDrillBreakerOn=[[GREEN]]**GIGA BOHRER AKTIV**
Skills.GigaDrillBreakerPlayer=[[GREEN]]{0}[[DARK_GREEN]] hat [[RED]]GigaBohrer[[DARK_GREEN]] benutzt!
Skills.GreenTerraOff=[[RED]]**Gruene Welt ausgelaufen**
Skills.TreeFellerOff=[[RED]]**Baumfaeller ausgelaufen**
Skills.SuperBreakerOff=[[RED]]**Super Brecher ausgelaufen**
Skills.SerratedStrikesOff=[[RED]]**Saegezahn-Schlag ausgelaufen**
Skills.BerserkOff=[[RED]]**Berserker ausgelaufen**
Skills.SkullSplitterOff=[[RED]]**Schaedelspalter ausgelaufen**
Skills.GigaDrillBreakerOff=[[RED]]**Gruene Welt ausgelaufen**
Skills.TamingUp=[[YELLOW]]Bestienkunde um {0} erhoeht. Gesamt ({1})
Skills.AcrobaticsUp=[[YELLOW]]Akrobatik um {0} erhoeht. Gesamt ({1})
Skills.ArcheryUp=[[YELLOW]]Bogenschiessen um {0} erhoeht. Gesamt ({1})
Skills.SwordsUp=[[YELLOW]]Schwert um {0} erhoeht. Gesamt ({1})
Skills.AxesUp=[[YELLOW]]Axt um {0} erhoeht. Gesamt ({1})
Skills.UnarmedUp=[[YELLOW]]Faustkampf um {0} erhoeht. Gesamt ({1})
Skills.HerbalismUp=[[YELLOW]]Krauterkunde um {0} erhoeht. Gesamt ({1})
Skills.MiningUp=[[YELLOW]]Bergbau um {0} erhoeht. Gesamt ({1})
Skills.WoodcuttingUp=[[YELLOW]]Holzfaeller um {0} erhoeht. Gesamt ({1})
Skills.RepairUp=[[YELLOW]]Reparieren um {0} erhoeht. Gesamt ({1})
Skills.ExcavationUp=[[YELLOW]]Graben um {0} erhoeht. Gesamt ({1})
Skills.FeltEasy=[[GRAY]]Das fuehlt sich einfach an.
Skills.StackedItems=[[DARK_RED]]Du kannst keine gestapelten Items reparieren
Skills.NeedMore=[[DARK_RED]]Du brauchst mehr
Skills.AdeptDiamond=[[DARK_RED]]Du bist nicht talentiert genug um Diamantwerkzeuge zu reparieren
Skills.FullDurability=[[GRAY]]Dieses Item hat volle Haltbarkeit
Skills.Disarmed=[[DARK_RED]]Du wurdest entwaffnet!
mcPlayerListener.SorcerySkill=Zauberkunst Skill (Sorcery):
m.SkillSorcery=Zauberkunst (Sorcery)
Sorcery.HasCast=[[GREEN]]**ZAUBERN**[[GOLD]]
Sorcery.Current_Mana=[[DARK_AQUA]]MP
Sorcery.SpellSelected=[[GREEN]]-=([[GOLD]]{0}[[GREEN]])=- [[RED]]([[GRAY]]{1}[[RED]])
Sorcery.Cost=[[RED]][COST] {0} MP
Sorcery.OOM=[[DARK_AQUA]][[[GOLD]]{2}[[DARK_AQUA]]][[DARK_GRAY]] Kein Mana [[YELLOW]]([[RED]]{0}[[YELLOW]]/[[GRAY]]{1}[[YELLOW]])
Sorcery.Water.Thunder=GEWITTER
Sorcery.Curative.Self=HEILEN (SELBST)
Sorcery.Curative.Other=HEILEN (ANDERE)
m.LVL=[[DARK_GRAY]]LVL: [[GREEN]]{0} [[DARK_AQUA]]XP[[YELLOW]]([[GOLD]]{1}[[YELLOW]]/[[GOLD]]{2}[[YELLOW]])
Combat.BeastLore=[[GREEN]]**BESTIENKUNDE**
Combat.BeastLoreOwner=[[DARK_AQUA]]BEsitzer ([[RED]]{0}[[DARK_AQUA]])
Combat.BeastLoreHealthWolfTamed=[[DARK_AQUA]]Gesundheit ([[GREEN]]{0}[[DARK_AQUA]]/20)
Combat.BeastLoreHealthWolf=[[DARK_AQUA]]Gesundheit ([[GREEN]]{0}[[DARK_AQUA]]/8)

View File

@ -0,0 +1,323 @@
Combat.WolfExamine=[[GREEN]]**You examine the Wolf using Beast Lore**
Combat.WolfShowMaster=[[DARK_GREEN]]The Beast's Master \: {0}
Combat.Ignition=[[RED]]**IGNITION**
Combat.BurningArrowHit=[[DARK_RED]]You were struck by a burning arrow\!
Combat.TouchedFuzzy=[[DARK_RED]]Touched Fuzzy. Felt Dizzy.
Combat.TargetDazed=Target was [[DARK_RED]]Dazed
Combat.WolfNoMaster=[[GRAY]]This Beast has no Master...
Combat.WolfHealth=[[GREEN]]This beast has {0} Health
Combat.StruckByGore=[[RED]]**STRUCK BY GORE**
Combat.Gore=[[GREEN]]**GORE**
Combat.ArrowDeflect=[[WHITE]]**ARROW DEFLECT**
Item.ChimaeraWingFail=**CHIMAERA WING FAILED\!**
Item.ChimaeraWingPass=**CHIMAERA WING**
Item.InjuredWait=You were injured recently and must wait to use this. [[YELLOW]]({0}s)
Item.NeedFeathers=[[GRAY]]You need more feathers..
m.mccPartyCommands=[[GREEN]]--PARTY COMMANDS--
m.mccParty=[party name] [[RED]]- Create/Join designated party
m.mccPartyQ=[[RED]]- Leave your current party
m.mccPartyToggle=[[RED]] - Toggle Party Chat
m.mccPartyInvite=[player name] [[RED]]- Send party invite
m.mccPartyAccept=[[RED]]- Accept party invite
m.mccPartyTeleport=[party member name] [[RED]]- Teleport to party member
m.mccOtherCommands=[[GREEN]]--OTHER COMMANDS--
m.mccStats=- View your mcMMO stats
m.mccLeaderboards=- Leaderboards
m.mccMySpawn=- Teleports to myspawn
m.mccClearMySpawn=- Clears your MySpawn
m.mccToggleAbility=- Toggle ability activation with right click
m.mccAdminToggle=- Toggle admin chat
m.mccWhois=[playername] [[RED]]- View detailed player info
m.mccMmoedit=[playername] [skill] [newvalue] [[RED]]- Modify target
m.mccMcGod=- God Mode
m.mccSkillInfo=[skillname] [[RED]]- View detailed information about a skill
m.mccModDescription=[[RED]]- Read brief mod description
m.SkillHeader=[[RED]]-----[][[GREEN]]{0}[[RED]][]-----
m.XPGain=[[DARK_GRAY]]XP GAIN: [[WHITE]]{0}
m.EffectsTemplate=[[DARK_AQUA]]{0}: [[GREEN]]{1}
m.AbilityLockTemplate=[[GRAY]]{0}
m.AbilityBonusTemplate=[[RED]]{0}: [[YELLOW]]{1}
m.Effects=EFFECTS
m.YourStats=YOUR STATS
m.SkillTaming=TAMING
m.XPGainTaming=Wolves getting harmed
m.EffectsTaming1_0=Beast Lore
m.EffectsTaming1_1=Bone-whacking inspects wolves
m.EffectsTaming2_0=Gore
m.EffectsTaming2_1=Critical Strike that applies Bleed
m.EffectsTaming3_0=Sharpened Claws
m.EffectsTaming3_1=Damage Bonus
m.EffectsTaming4_0=Environmentally Aware
m.EffectsTaming4_1=Cactus/Lava Phobia, Fall DMG Immune
m.EffectsTaming5_0=Thick Fur
m.EffectsTaming5_1=DMG Reduction, Fire Resistance
m.EffectsTaming6_0=Shock Proof
m.EffectsTaming6_1=Explosive Damage Reduction
m.AbilLockTaming1=LOCKED UNTIL 100+ SKILL (ENVIRONMENTALLY AWARE)
m.AbilLockTaming2=LOCKED UNTIL 250+ SKILL (THICK FUR)
m.AbilLockTaming3=LOCKED UNTIL 500+ SKILL (SHOCK PROOF)
m.AbilLockTaming4=LOCKED UNTIL 750+ SKILL (SHARPENED CLAWS)
m.AbilBonusTaming1_0=Environmentally Aware
m.AbilBonusTaming1_1=Wolves avoid danger
m.AbilBonusTaming2_0=Thick Fur
m.AbilBonusTaming2_1=Halved Damage, Fire Resistance
m.AbilBonusTaming3_0=Shock Proof
m.AbilBonusTaming3_1=Explosives do 1/6 normal damage
m.AbilBonusTaming4_0=Sharpened Claws
m.AbilBonusTaming4_1=+2 Damage
m.TamingGoreChance=[[RED]]Gore Chance: [[YELLOW]]{0}%
m.SkillWoodCutting=WOODCUTTING
m.XPGainWoodCutting=Chopping down trees
m.EffectsWoodCutting1_0=Tree Feller (ABILITY)
m.EffectsWoodCutting1_1=Make trees explode
m.EffectsWoodCutting2_0=Leaf Blower
m.EffectsWoodCutting2_1=Blow Away Leaves
m.EffectsWoodCutting3_0=Double Drops
m.EffectsWoodCutting3_1=Double the normal loot
m.AbilLockWoodCutting1=LOCKED UNTIL 100+ SKILL (LEAF BLOWER)
m.AbilBonusWoodCutting1_0=Leaf Blower
m.AbilBonusWoodCutting1_1=Blow away leaves
m.WoodCuttingDoubleDropChance=[[RED]]Double Drop Chance: [[YELLOW]]{0}%
m.WoodCuttingTreeFellerLength=[[RED]]Tree Feller Length: [[YELLOW]]{0}s
m.SkillArchery=ARCHERY
m.XPGainArchery=Attacking Monsters
m.EffectsArchery1_0=Ignition
m.EffectsArchery1_1=25% Chance Enemies will ignite
m.EffectsArchery2_0=Daze (Players)
m.EffectsArchery2_1=Disorients foes
m.EffectsArchery3_0=Damage+
m.EffectsArchery3_1=Modifies Damage
m.EffectsArchery4_0=Arrow Retrieval
m.EffectsArchery4_1=Chance to retrieve arrows from corpses
m.ArcheryDazeChance=[[RED]]Chance to Daze: [[YELLOW]]{0}%
m.ArcheryRetrieveChance=[[RED]]Chance to Retrieve Arrows: [[YELLOW]]{0}%
m.ArcheryIgnitionLength=[[RED]]Length of Ignition: [[YELLOW]]{0} seconds
m.ArcheryDamagePlus=[[RED]]Damage+ (Rank{0}): [[YELLOW]]Bonus {0} damage
m.SkillAxes=AXES
m.XPGainAxes=Attacking Monsters
m.EffectsAxes1_0=Skull Splitter (ABILITY)
m.EffectsAxes1_1=Deal AoE Damage
m.EffectsAxes2_0=Critical Strikes
m.EffectsAxes2_1=Double Damage
m.EffectsAxes3_0=Axe Mastery (500 SKILL)
m.EffectsAxes3_1=Modifies Damage
m.AbilLockAxes1=LOCKED UNTIL 500+ SKILL (AXEMASTERY)
m.AbilBonusAxes1_0=Axe Mastery
m.AbilBonusAxes1_1=Bonus 4 damage
m.AxesCritChance=[[RED]]Chance to critically strike: [[YELLOW]]{0}%
m.AxesSkullLength=[[RED]]Skull Splitter Length: [[YELLOW]]{0}s
m.SkillSwords=SWORDS
m.XPGainSwords=Attacking Monsters
m.EffectsSwords1_0=Counter Attack
m.EffectsSwords1_1=Reflect 50% of damage taken
m.EffectsSwords2_0=Serrated Strikes (ABILITY)
m.EffectsSwords2_1=25% DMG AoE, Bleed+ AoE
m.EffectsSwords3_0=Serrated Strikes Bleed+
m.EffectsSwords3_1=5 Tick Bleed
m.EffectsSwords4_0=Parrying
m.EffectsSwords4_1=Negates Damage
m.EffectsSwords5_0=Bleed
m.EffectsSwords5_1=Apply a bleed DoT
m.SwordsCounterAttChance=[[RED]]Counter Attack Chance: [[YELLOW]]{0}%
m.SwordsBleedLength=[[RED]]Bleed Length: [[YELLOW]]{0} ticks
m.SwordsBleedChance=[[RED]]Bleed Chance: [[YELLOW]]{0} %
m.SwordsParryChance=[[RED]]Parry Chance: [[YELLOW]]{0} %
m.SwordsSSLength=[[RED]]Serrated Strikes Length: [[YELLOW]]{0}s
m.SwordsTickNote=[[GRAY]]NOTE: [[YELLOW]]1 Tick happens every 2 seconds
m.SkillAcrobatics=ACROBATICS
m.XPGainAcrobatics=Falling
m.EffectsAcrobatics1_0=Roll
m.EffectsAcrobatics1_1=Reduces or Negates damage
m.EffectsAcrobatics2_0=Graceful Roll
m.EffectsAcrobatics2_1=Twice as effective as Roll
m.EffectsAcrobatics3_0=Dodge
m.EffectsAcrobatics3_1=Reduce damage by half
m.AcrobaticsRollChance=[[RED]]Roll Chance: [[YELLOW]]{0}%
m.AcrobaticsGracefulRollChance=[[RED]]Graceful Roll Chance: [[YELLOW]]{0}%
m.AcrobaticsDodgeChance=[[RED]]Dodge Chance: [[YELLOW]]{0}%
m.SkillMining=MINING
m.XPGainMining=Mining Stone & Ore
m.EffectsMining1_0=Super Breaker (ABILITY)
m.EffectsMining1_1=Speed+, Triple Drop Chance
m.EffectsMining2_0=Double Drops
m.EffectsMining2_1=Double the normal loot
m.MiningDoubleDropChance=[[RED]]Double Drop Chance: [[YELLOW]]{0}%
m.MiningSuperBreakerLength=[[RED]]Super Breaker Length: [[YELLOW]]{0}s
m.SkillRepair=REPAIR
m.XPGainRepair=Repairing
m.EffectsRepair1_0=Repair
m.EffectsRepair1_1=Repair Iron Tools & Armor
m.EffectsRepair2_0=Repair Mastery
m.EffectsRepair2_1=Increased repair amount
m.EffectsRepair3_0=Super Repair
m.EffectsRepair3_1=Double effectiveness
m.EffectsRepair4_0=Diamond Repair ({0}+ SKILL)
m.EffectsRepair4_1=Repair Diamond Tools & Armor
m.RepairRepairMastery=[[RED]]Repair Mastery: [[YELLOW]]Extra {0}% durability restored
m.RepairSuperRepairChance=[[RED]]Super Repair Chance: [[YELLOW]]{0}%
m.SkillUnarmed=UNARMED
m.XPGainUnarmed=Attacking Monsters
m.EffectsUnarmed1_0=Berserk (ABILITY)
m.EffectsUnarmed1_1=+50% DMG, Breaks weak materials
m.EffectsUnarmed2_0=Disarm (Players)
m.EffectsUnarmed2_1=Drops the foes item held in hand
m.EffectsUnarmed3_0=Unarmed Mastery
m.EffectsUnarmed3_1=Large Damage Upgrade
m.EffectsUnarmed4_0=Unarmed Apprentice
m.EffectsUnarmed4_1=Damage Upgrade
m.EffectsUnarmed5_0=Arrow Deflect
m.EffectsUnarmed5_1=Deflect arrows
m.AbilLockUnarmed1=LOCKED UNTIL 250+ SKILL (UNARMED APPRENTICE)
m.AbilLockUnarmed2=LOCKED UNTIL 500+ SKILL (UNARMED MASTERY)
m.AbilBonusUnarmed1_0=Unarmed Apprentice
m.AbilBonusUnarmed1_1=+2 DMG Upgrade
m.AbilBonusUnarmed2_0=Unarmed Mastery
m.AbilBonusUnarmed2_1=+4 DMG Upgrade
m.UnarmedArrowDeflectChance=[[RED]]Arrow Deflect Chance: [[YELLOW]]{0}%
m.UnarmedDisarmChance=[[RED]]Disarm Chance: [[YELLOW]]{0}%
m.UnarmedBerserkLength=[[RED]]Berserk Length: [[YELLOW]]{0}s
m.SkillHerbalism=HERBALISM
m.XPGainHerbalism=Harvesting Herbs
m.EffectsHerbalism1_0=Green Terra (ABILITY)
m.EffectsHerbalism1_1=Spread the Terra, 3x Drops
m.EffectsHerbalism2_0=Green Thumb (Wheat)
m.EffectsHerbalism2_1=Auto-Plants wheat when harvesting
m.EffectsHerbalism3_0=Green Thumb (Cobble)
m.EffectsHerbalism3_1=Cobblestone -> Mossy w/ Seeds
m.EffectsHerbalism4_0=Food+
m.EffectsHerbalism4_1=Modifies health received from bread/stew
m.EffectsHerbalism5_0=Double Drops (All Herbs)
m.EffectsHerbalism5_1=Double the normal loot
m.HerbalismGreenTerraLength=[[RED]]Green Terra Length: [[YELLOW]]{0}s
m.HerbalismGreenThumbChance=[[RED]]Green Thumb Chance: [[YELLOW]]{0}%
m.HerbalismGreenThumbStage=[[RED]]Green Thumb Stage: [[YELLOW]] Wheat grows in stage {0}
m.HerbalismDoubleDropChance=[[RED]]Double Drop Chance: [[YELLOW]]{0}%
m.HerbalismFoodPlus=[[RED]]Food+ (Rank{0}): [[YELLOW]]Bonus {0} healing
m.SkillExcavation=EXCAVATION
m.XPGainExcavation=Digging and finding treasures
m.EffectsExcavation1_0=Giga Drill Breaker (ABILITY)
m.EffectsExcavation1_1=3x Drop Rate, 3x EXP, +Speed
m.EffectsExcavation2_0=Treasure Hunter
m.EffectsExcavation2_1=Ability to dig for treasure
m.ExcavationGreenTerraLength=[[RED]]Giga Drill Breaker Length: [[YELLOW]]{0}s
mcBlockListener.PlacedAnvil=[[DARK_RED]]You have placed an anvil, anvils can repair tools and armor.
mcEntityListener.WolfComesBack=[[DARK_GRAY]]Your wolf scurries back to you...
mcPlayerListener.AbilitiesOff=Ability use toggled off
mcPlayerListener.AbilitiesOn=Ability use toggled on
mcPlayerListener.AbilitiesRefreshed=[[GREEN]]**ABILITIES REFRESHED\!**
mcPlayerListener.AcrobaticsSkill=Acrobatics:
mcPlayerListener.ArcherySkill=Archery:
mcPlayerListener.AxesSkill=Axes:
mcPlayerListener.ExcavationSkill=Excavation:
mcPlayerListener.GodModeDisabled=[[YELLOW]]mcMMO Godmode Disabled
mcPlayerListener.GodModeEnabled=[[YELLOW]]mcMMO Godmode Enabled
mcPlayerListener.GreenThumb=[[GREEN]]**GREEN THUMB**
mcPlayerListener.GreenThumbFail=[[RED]]**GREEN THUMB FAIL**
mcPlayerListener.HerbalismSkill=Herbalism:
mcPlayerListener.MiningSkill=Mining:
mcPlayerListener.MyspawnCleared=[[DARK_AQUA]]Myspawn is now cleared.
mcPlayerListener.MyspawnNotExist=[[RED]]Configure your myspawn first with a bed.
mcPlayerListener.MyspawnSet=[[DARK_AQUA]]Myspawn has been set to your current location.
mcPlayerListener.MyspawnTimeNotice=You must wait {0}m {1}s to use myspawn
mcPlayerListener.NoPermission=Insufficient mcPermissions.
mcPlayerListener.NoSkillNote=[[DARK_GRAY]]If you don't have access to a skill it will not be shown here.
mcPlayerListener.NotInParty=[[RED]]You are not in a party.
mcPlayerListener.InviteSuccess=[[GREEN]]Invite sent successfully.
mcPlayerListener.ReceivedInvite1=[[RED]]ALERT: [[GREEN]]You have received a party invite for {0} from {1}
mcPlayerListener.ReceivedInvite2=[[YELLOW]]Type [[GREEN]]/{0}[[YELLOW]] to accept the invite
mcPlayerListener.InviteAccepted=[[GREEN]]Invite Accepted. You have joined party {0}
mcPlayerListener.NoInvites=[[RED]]You have no invites at this time
mcPlayerListener.YouAreInParty=[[GREEN]]You are in party {0}
mcPlayerListener.PartyMembers=[[GREEN]]Party Members
mcPlayerListener.LeftParty=[[RED]]You have left that party
mcPlayerListener.JoinedParty=Joined Party: {0}
mcPlayerListener.PartyChatOn=Party Chat only [[GREEN]]On
mcPlayerListener.PartyChatOff=Party Chat only [[RED]]Off
mcPlayerListener.AdminChatOn=Admin Chat only [[GREEN]]On
mcPlayerListener.AdminChatOff=Admin Chat only [[RED]]Off
mcPlayerListener.MOTD=[[BLUE]]This server is running mcMMO {0} type [[YELLOW]]/{1}[[BLUE]] for help.
mcPlayerListener.WIKI=[[GREEN]]http://mcmmo.wikia.com[[BLUE]] - mcMMO Wiki
mcPlayerListener.PowerLevel=[[DARK_RED]]POWER LEVEL:
mcPlayerListener.PowerLevelLeaderboard=[[YELLOW]]--mcMMO[[BLUE]] Power Level [[YELLOW]]Leaderboard--
mcPlayerListener.SkillLeaderboard=[[YELLOW]]--mcMMO [[BLUE]]{0}[[YELLOW]] Leaderboard--
mcPlayerListener.RepairSkill=Repair:
mcPlayerListener.SwordsSkill=Swords:
mcPlayerListener.TamingSkill=Taming:
mcPlayerListener.UnarmedSkill=Unarmed:
mcPlayerListener.WoodcuttingSkill=Woodcutting:
mcPlayerListener.YourStats=[[GREEN]][mcMMO] Stats
Party.InformedOnJoin={0} [[GREEN]] has joined your party
Party.InformedOnQuit={0} [[GREEN]] has left your party
Skills.YourGreenTerra=[[GREEN]]Your [[YELLOW]]Green Terra [[GREEN]]ability is refreshed!
Skills.YourTreeFeller=[[GREEN]]Your [[YELLOW]]Tree Feller [[GREEN]]ability is refreshed!
Skills.YourSuperBreaker=[[GREEN]]Your [[YELLOW]]Super Breaker [[GREEN]]ability is refreshed!
Skills.YourSerratedStrikes=[[GREEN]]Your [[YELLOW]]Serrated Strikes [[GREEN]]ability is refreshed!
Skills.YourBerserk=[[GREEN]]Your [[YELLOW]]Berserk [[GREEN]]ability is refreshed!
Skills.YourSkullSplitter=[[GREEN]]Your [[YELLOW]]Skull Splitter [[GREEN]]ability is refreshed!
Skills.YourGigaDrillBreaker=[[GREEN]]Your [[YELLOW]]Giga Drill Breaker [[GREEN]]ability is refreshed!
Skills.TooTired=[[RED]]You are too tired to use that ability again.
Skills.ReadyHoe=[[GREEN]]**YOU READY YOUR HOE**
Skills.LowerHoe=[[GRAY]]**YOU LOWER YOUR HOE**
Skills.ReadyAxe=[[GREEN]]**YOU READY YOUR AXE**
Skills.LowerAxe=[[GRAY]]**YOU LOWER YOUR AXE**
Skills.ReadyFists=[[GREEN]]**YOU READY YOUR FISTS**
Skills.LowerFists=[[GRAY]]**YOU LOWER YOUR FISTS**
Skills.ReadyPickAxe=[[GREEN]]**YOU READY YOUR PICKAXE**
Skills.LowerPickAxe=[[GRAY]]**YOU LOWER YOUR PICKAXE**
Skills.ReadyShovel=[[GREEN]]**YOU READY YOUR SHOVEL**
Skills.LowerShovel=[[GRAY]]**YOU LOWER YOUR SHOVEL**
Skills.ReadySword=[[GREEN]]**YOU READY YOUR SWORD**
Skills.LowerSword=[[GRAY]]**YOU LOWER YOUR SWORD**
Skills.BerserkOn=[[GREEN]]**BERSERK ACTIVATED**
Skills.BerserkPlayer=[[GREEN]]{0}[[DARK_GREEN]] has used [[RED]]Berserk!
Skills.GreenTerraOn=[[GREEN]]**GREEN TERRA ACTIVATED**
Skills.GreenTerraPlayer=[[GREEN]]{0}[[DARK_GREEN]] has used [[RED]]Green Terra!
Skills.TreeFellerOn=[[GREEN]]**TREE FELLER ACTIVATED**
Skills.TreeFellerPlayer=[[GREEN]]{0}[[DARK_GREEN]] has used [[RED]]Tree Feller!
Skills.SuperBreakerOn=[[GREEN]]**SUPER BREAKER ACTIVATED**
Skills.SuperBreakerPlayer=[[GREEN]]{0}[[DARK_GREEN]] has used [[RED]]Super Breaker!
Skills.SerratedStrikesOn=[[GREEN]]**SERRATED STRIKES ACTIVATED**
Skills.SerratedStrikesPlayer=[[GREEN]]{0}[[DARK_GREEN]] has used [[RED]]Serrated Strikes!
Skills.SkullSplitterOn=[[GREEN]]**SKULL SPLITTER ACTIVATED**
Skills.SkullSplitterPlayer=[[GREEN]]{0}[[DARK_GREEN]] has used [[RED]]Skull Splitter!
Skills.GigaDrillBreakerOn=[[GREEN]]**GIGA DRILL BREAKER ACTIVATED**
Skills.GigaDrillBreakerPlayer=[[GREEN]]{0}[[DARK_GREEN]] has used [[RED]]Giga Drill Breaker!
Skills.GreenTerraOff=[[RED]]**Green Terra has worn off**
Skills.TreeFellerOff=[[RED]]**Tree Feller has worn off**
Skills.SuperBreakerOff=[[RED]]**Super Breaker has worn off**
Skills.SerratedStrikesOff=[[RED]]**Serrated Strikes has worn off**
Skills.BerserkOff=[[RED]]**Berserk has worn off**
Skills.SkullSplitterOff=[[RED]]**Skull Splitter has worn off**
Skills.GigaDrillBreakerOff=[[RED]]**Giga Drill Breaker has worn off**
Skills.TamingUp=[[YELLOW]]Taming skill increased by {0}. Total ({1})
Skills.AcrobaticsUp=[[YELLOW]]Acrobatics skill increased by {0}. Total ({1})
Skills.ArcheryUp=[[YELLOW]]Archery skill increased by {0}. Total ({1})
Skills.SwordsUp=[[YELLOW]]Swords skill increased by {0}. Total ({1})
Skills.AxesUp=[[YELLOW]]Axes skill increased by {0}. Total ({1})
Skills.UnarmedUp=[[YELLOW]]Unarmed skill increased by {0}. Total ({1})
Skills.HerbalismUp=[[YELLOW]]Herbalism skill increased by {0}. Total ({1})
Skills.MiningUp=[[YELLOW]]Mining skill increased by {0}. Total ({1})
Skills.WoodcuttingUp=[[YELLOW]]Woodcutting skill increased by {0}. Total ({1})
Skills.RepairUp=[[YELLOW]]Repair skill increased by {0}. Total ({1})
Skills.ExcavationUp=[[YELLOW]]Excavation skill increased by {0}. Total ({1})
Skills.FeltEasy=[[GRAY]]That felt easy.
Skills.StackedItems=[[DARK_RED]]You can't repair stacked items
Skills.NeedMore=[[DARK_RED]]You need more
Skills.AdeptDiamond=[[DARK_RED]]You're not skilled enough to repair Diamond
Skills.FullDurability=[[GRAY]]That is at full durability.
Skills.Disarmed=[[DARK_RED]]You have been disarmed!
mcPlayerListener.SorcerySkill=Sorcery:
m.SkillSorcery=SORCERY
Sorcery.HasCast=[[GREEN]]**CASTING**[[GOLD]]
Sorcery.Current_Mana=[[DARK_AQUA]]MP
Sorcery.SpellSelected=[[GREEN]]-=([[GOLD]]{0}[[GREEN]])=- [[RED]]([[GRAY]]{1}[[RED]])
Sorcery.Cost=[[RED]][COST] {0} MP
Sorcery.OOM=[[DARK_AQUA]][[[GOLD]]{2}[[DARK_AQUA]]][[DARK_GRAY]] Out Of Mana [[YELLOW]]([[RED]]{0}[[YELLOW]]/[[GRAY]]{1}[[YELLOW]])
Sorcery.Water.Thunder=THUNDER
Sorcery.Curative.Self=CURE SELF
Sorcery.Curative.Other=CURE OTHER
m.LVL=[[DARK_GRAY]]LVL: [[GREEN]]{0} [[DARK_AQUA]]XP[[YELLOW]]([[GOLD]]{1}[[YELLOW]]/[[GOLD]]{2}[[YELLOW]])
Combat.BeastLore=[[GREEN]]**BEAST LORE**
Combat.BeastLoreOwner=[[DARK_AQUA]]Owner ([[RED]]{0}[[DARK_AQUA]])
Combat.BeastLoreHealthWolfTamed=[[DARK_AQUA]]Health ([[GREEN]]{0}[[DARK_AQUA]]/20)
Combat.BeastLoreHealthWolf=[[DARK_AQUA]]Health ([[GREEN]]{0}[[DARK_AQUA]]/8)

View File

@ -0,0 +1,300 @@
Combat.WolfExamine=[[GREEN]]**Tutkit sutta käyttämällä Pedon Tarinaa**
Combat.WolfShowMaster=[[DARK_GREEN]]Pedon isäntä : {0}
Combat.Ignition=[[RED]]**SYTYTYS**
Combat.BurningArrowHit=[[DARK_RED]]Palava nuoli osui sinuun\!
Combat.TouchedFuzzy=[[DARK_RED]]Touched Fuzzy. Felt Dizzy.
Combat.TargetDazed=Kohde [[DARK_RED]]tyrmätty
Combat.WolfNoMaster=[[GRAY]]Tällä pedolla ei ole isäntää...
Combat.WolfHealth=[[GREEN]]Tämän pedon terveys on {0}
Combat.StruckByGore=[[RED]]**SINUA ON PISTETTY**
Combat.Gore=[[GREEN]]**PISTO**
Combat.ArrowDeflect=[[WHITE]]**NUOLI TORJUTTU**
Item.ChimaeraWingFail=**KHIMAIRAN SIIVEN KÄYTTÖ EPÄONNISTUI\!**
Item.ChimaeraWingPass=**KHIMAIRAN SIIPI**
Item.InjuredWait=Sinua on haavoitettu äskettäin joten joudut odottaa tämän käyttöä. [[YELLOW]]({0}s)
Item.NeedFeathers=[[GRAY]]Tarvitset lisää sulkia..
m.mccPartyCommands=[[GREEN]]--RYHMÄKOMENNOT--
m.mccParty=[party name] [[RED]]- Luo/liity nimettyyn ryhmään
m.mccPartyQ=[[RED]]- Lähde ryhmästä
m.mccPartyToggle=[[RED]] - Laita ryhmäjuttelu päälle/pois
m.mccPartyInvite=[player name] [[RED]]- Lähetä ryhmäkutsu
m.mccPartyAccept=[[RED]]- Hyväksy ryhmäkutsu
m.mccPartyTeleport=[party member name] [[RED]]- Siirry ryhmän jäsenen luo
m.mccOtherCommands=[[GREEN]]--MUUT KOMENNOT--
m.mccStats=- Näytä mcMMO tilastosi
m.mccLeaderboards=- Tulostaulukko
m.mccMySpawn=- Siirtää sinut myspawniin
m.mccClearMySpawn=- Tyhjää myspawnisi
m.mccToggleAbility=- Laita taitojen aktivointi oikealla näppäimellä päälle/pois
m.mccAdminToggle=- Laita admin juttelu päälle/pois
m.mccWhois=[playername] [[RED]]- Näytä yksityiskohtaiset tiedot pelaajasta
m.mccMmoedit=[playername] [skill] [newvalue] [[RED]]- Muokkaa kohdetta
m.mccMcGod=- "God Mode"
m.mccSkillInfo=[skillname] [[RED]]- Näytä ykistyiskohtaiset tiedot taidosta
m.mccModDescription=[[RED]]- Lue lyhyt kuvaus modista
m.SkillHeader=[[RED]]-----[][[GREEN]]{0}[[RED]][]-----
m.XPGain=[[DARK_GRAY]]KOKEMUSPISTEIDEN MÄÄRÄ: [[WHITE]]{0}
m.EffectsTemplate=[[DARK_AQUA]]{0}: [[GREEN]]{1}
m.AbilityLockTemplate=[[GRAY]]{0}
m.AbilityBonusTemplate=[[RED]]{0}: [[YELLOW]]{1}
m.Effects=EFEKTIT
m.YourStats=TILASTOSI
m.SkillTaming=KESYTTÄMINEN
m.XPGainTaming=Susien satuttaminen
m.EffectsTaming1_0=Pedon Tarina
m.EffectsTaming1_1=Luulla lyöminen tutkii susia
m.EffectsTaming2_0=Pisto
m.EffectsTaming2_1=Kriittinen Isku joka lisää Verenvuodon
m.EffectsTaming3_0=Teroitetut Kynnet
m.EffectsTaming3_1=Tuhoamis Bonus
m.EffectsTaming4_0=Ympäristötietoinen
m.EffectsTaming4_1=Kaktus/Laavapelko, immuuni Putousvahingolle
m.EffectsTaming5_0=Paksu Turkki
m.EffectsTaming5_1=Vahingon vähennys, Tulenkestävä
m.EffectsTaming6_0=Räjähdyskestävä
m.EffectsTaming6_1=Räjähdysvahingon vähennys
m.AbilLockTaming1=LUKITTU KUNNES 100+ TAITO (YMPÄRISTÖTIETOINEN)
m.AbilLockTaming2=LUKITTU KUNNES 250+ TAITO (PAKSU TURKKI)
m.AbilLockTaming3=LUKITTU KUNNES 500+ TAITO (RÄJÄHDYSKESTÄVÄ)
m.AbilLockTaming4=LUKITTU KUNNES 750+ TAITO (TEROITETUT KYNNET)
m.AbilBonusTaming1_0=Ympäristötietoinen
m.AbilBonusTaming1_1=Sudet karttavat vaaraa
m.AbilBonusTaming2_0=Paksu Turkki
m.AbilBonusTaming2_1=Puolitettu vahinko, Tulenkestävä
m.AbilBonusTaming3_0=Räjähdyskestävä
m.AbilBonusTaming3_1=Räjähteet vahingoittavat 1/6 vähemmän
m.AbilBonusTaming4_0=Teroitetut Kynnet
m.AbilBonusTaming4_1=+2 Vahinko
m.TamingGoreChance=[[RED]]Piston todennäköisyys: [[YELLOW]]{0}%
m.SkillWoodCutting=PUUN KAATO
m.XPGainWoodCutting=Puiden pilkkominen
m.EffectsWoodCutting1_0=Puunkaataja (TAITO)
m.EffectsWoodCutting1_1=Räjäytä puita
m.EffectsWoodCutting2_0=Lehdenpuhallin
m.EffectsWoodCutting2_1=Puhalla lehtiä pois
m.EffectsWoodCutting3_0=Tuplasaalis
m.EffectsWoodCutting3_1=Tuplaa normaali saalis
m.AbilLockWoodCutting1=LUKITTU KUNNES 100+ TAITO (LEHDENPUHALLIN)
m.AbilBonusWoodCutting1_0=Lehdenpuhallin
m.AbilBonusWoodCutting1_1=Puhalla lehtiä pois
m.WoodCuttingDoubleDropChance=[[RED]]Tuplasaaliin todennäköisyys: [[YELLOW]]{0}%
m.WoodCuttingTreeFellerLength=[[RED]]Puunkaatajan kesto: [[YELLOW]]{0}s
m.SkillArchery=JOUSIAMMUNTA
m.XPGainArchery=Hyökkäämällä hirviöiden kimppuun
m.EffectsArchery1_0=Sytytys
m.EffectsArchery1_1=25% Todennäköisyys että vihollinen syttyy tuleen
m.EffectsArchery2_0=Pökerrys (Pelaajat)
m.EffectsArchery2_1=Saa viholliset pois tolaltaan
m.EffectsArchery3_0=Vahinko+
m.EffectsArchery3_1=Muokkaa vahinkoa
m.EffectsArchery4_0=Nuolenkeräys
m.EffectsArchery4_1=Todennäköisyys kerätä nuolia raadoista
m.ArcheryDazeChance=[[RED]]Todennäköisyys Pökerryttää: [[YELLOW]]{0}%
m.ArcheryRetrieveChance=[[RED]]Todennäköisyys kerätä nuolia: [[YELLOW]]{0}%
m.ArcheryIgnitionLength=[[RED]]Sytytyksen kesto: [[YELLOW]]{0} sekuntia
m.ArcheryDamagePlus=[[RED]]Vahinko+ (Rank{0}): [[YELLOW]]Bonus {0} vahinko
m.SkillAxes=KIRVEET
m.XPGainAxes=Hyökkäämällä hirviöiden kimppuun
m.EffectsAxes1_0=Kallonhalkoja (TAITO)
m.EffectsAxes1_1=Tee aluevahinkoa
m.EffectsAxes2_0=Kriittiset Iskut
m.EffectsAxes2_1=Tuplavahinko
m.EffectsAxes3_0=Kirveiden Herra (500 TAITO)
m.EffectsAxes3_1=Muokkaa vahinkoa
m.AbilLockAxes1=LUKITTU KUNNES 500+ TAITO (KIRVEIDEN HERRA)
m.AbilBonusAxes1_0=Kirveiden Herra
m.AbilBonusAxes1_1=+4 Vahinko
m.AxesCritChance=[[RED]]Todennäköisyys iskeä kriittisesti: [[YELLOW]]{0}%
m.AxesSkullLength=[[RED]]Kallonhalkojan kesto: [[YELLOW]]{0}s
m.SkillSwords=MIEKAT
m.XPGainSwords=Hyökkäämällä hirviöiden kimppuun
m.EffectsSwords1_0=Vastaisku
m.EffectsSwords1_1=Kimmota 50% saadusta vahingosta
m.EffectsSwords2_0=Sahalaitaiset Iskut (TAITO)
m.EffectsSwords2_1=25% Aluevahinko, Verenvuoto+ Aluevahinko
m.EffectsSwords3_0=Sahalaitaiset Iskut Verenvuoto+
m.EffectsSwords3_1=5 Aiheuta Verenvuotoa
m.EffectsSwords4_0=Torjuminen
m.EffectsSwords4_1=Estää saadun vahingon
m.EffectsSwords5_0=Verenvuoto
m.EffectsSwords5_1=Lisää Verenvuoto
m.SwordsCounterAttChance=[[RED]]Vastaiskun todennäköisyys: [[YELLOW]]{0}%
m.SwordsBleedLength=[[RED]]Verenvuodon kesto: [[YELLOW]]{0} vuotoa
m.SwordsBleedChance=[[RED]]Verenvuodon todennäköisyys: [[YELLOW]]{0} %
m.SwordsParryChance=[[RED]]Torjumisen todennäköisyys: [[YELLOW]]{0} %
m.SwordsSSLength=[[RED]]Sahalaitaisten Iskujen kesto: [[YELLOW]]{0}s
m.SwordsTickNote=[[GRAY]]HUOMAA: [[YELLOW]]1 vuoto tapahtuu joka kahdes sekunti
m.SkillAcrobatics=AKROBATIA
m.XPGainAcrobatics=Tippumalla
m.EffectsAcrobatics1_0=Kieriminen
m.EffectsAcrobatics1_1=Vähentää tai estää vahinkoa
m.EffectsAcrobatics2_0=Sulava Kieriminen
m.EffectsAcrobatics2_1=Tuplasti tehokkaampi kuin Kieriminen
m.EffectsAcrobatics3_0=Väistö
m.EffectsAcrobatics3_1=Vähentää vahingon määrän puoleen
m.AcrobaticsRollChance=[[RED]]Kierimisen todennäköisyys: [[YELLOW]]{0}%
m.AcrobaticsGracefulRollChance=[[RED]]Sulavan Kierimisen todennäköisyys: [[YELLOW]]{0}%
m.AcrobaticsDodgeChance=[[RED]]Väistön todennäköisyys: [[YELLOW]]{0}%
m.SkillMining=LOUHINTA
m.XPGainMining=Louhimalla kiveä ja malmia
m.EffectsMining1_0=Supermurskain (TAITO)
m.EffectsMining1_1=Nopeus+, Triplaa saaliin tippumistodennäköisyys
m.EffectsMining2_0=Tuplasaalis
m.EffectsMining2_1=Tuplaa normaali saaliin määrä
m.MiningDoubleDropChance=[[RED]]Tuplasaaliin todennäköisyys: [[YELLOW]]{0}%
m.MiningSuperBreakerLength=[[RED]]Supermurskaimen kesto: [[YELLOW]]{0}s
m.SkillRepair=KORJAUS
m.XPGainRepair=Korjaamalla
m.EffectsRepair1_0=Korjaa
m.EffectsRepair1_1=Korjaa rautatyökaluja ja haarniskoja
m.EffectsRepair2_0=Korjausten Herra
m.EffectsRepair2_1=Lisätty korjausten määrä
m.EffectsRepair3_0=Superkorjaus
m.EffectsRepair3_1=Tuplatehokkuus
m.EffectsRepair4_0=Timanttikorjaus ({0}+ TAITO)
m.EffectsRepair4_1=Korjaa timanttityökaluja ja haarniskoja
m.RepairRepairMastery=[[RED]]Korjausten Herra: [[YELLOW]]Extra {0}% kestävyyttä palautettu
m.RepairSuperRepairChance=[[RED]]Superkorjauksen todennäköisyys: [[YELLOW]]{0}%
m.SkillUnarmed=ASEISTAMATON
m.XPGainUnarmed=Hyökkäämällä hirviöiden kimppuun
m.EffectsUnarmed1_0=Raivopää (TAITO)
m.EffectsUnarmed1_1=+50% vahinko, rikkoo heikkoja materiaaleja
m.EffectsUnarmed2_0=Aseista riisuminen (Pelaajat)
m.EffectsUnarmed2_1=Pudottaa vihollisen esineen kädestä
m.EffectsUnarmed3_0=Aseistamattomuuden Herra
m.EffectsUnarmed3_1=Suuri vahingonlisäys
m.EffectsUnarmed4_0=Aseistamattomuuden Aloittelija
m.EffectsUnarmed4_1=Vahingonlisäys
m.EffectsUnarmed5_0=Nuolentorjunta
m.EffectsUnarmed5_1=Torjuu nuolia
m.AbilLockUnarmed1=LUKITTU KUNNES 250+ TAITO (ASEISTAMATTOMUUDEN ALOITTELIJA)
m.AbilLockUnarmed2=LUKITTU KUNNES 500+ TAITO (ASEISTAMATTOMUUDEN HERRA)
m.AbilBonusUnarmed1_0=Aseistamattomuuden Aloittelija
m.AbilBonusUnarmed1_1=+2 Vahinko
m.AbilBonusUnarmed2_0=Aseistamattomuuden Herra
m.AbilBonusUnarmed2_1=+4 Vahinko
m.UnarmedArrowDeflectChance=[[RED]]Nuolentorjunnan todennäköisyys: [[YELLOW]]{0}%
m.UnarmedDisarmChance=[[RED]]Aseista riisumisen todennäköisyys: [[YELLOW]]{0}%
m.UnarmedBerserkLength=[[RED]]Raivopään kesto: [[YELLOW]]{0}s
m.SkillHerbalism=YRTTIHOITO
m.XPGainHerbalism=Keräämällä yrttejä
m.EffectsHerbalism1_0=Vihermaa (TAITO)
m.EffectsHerbalism1_1=Levitä vihreyttä, 3x saalis
m.EffectsHerbalism2_0=Viherpeukalo (Vehnä)
m.EffectsHerbalism2_1=Istuttaa vehnää automaattisesti kun keräät vehnää
m.EffectsHerbalism3_0=Viherpeukalo (Mukulakivi)
m.EffectsHerbalism3_1=Mukulakivi -> Sammaleinen mukulakivi ja siemeniä
m.EffectsHerbalism4_0=Ruoka+
m.EffectsHerbalism4_1=Muokkaa terveyttä jota saat leivästä/muhennoksesta
m.EffectsHerbalism5_0=Tuplasaalis (Kaikki yrtit)
m.EffectsHerbalism5_1=Tuplaa normaali saaliin määrä
m.HerbalismGreenTerraLength=[[RED]]Vihermaan kesto: [[YELLOW]]{0}s
m.HerbalismGreenThumbChance=[[RED]]Viherpeukalon todennäköisyys: [[YELLOW]]{0}%
m.HerbalismGreenThumbStage=[[RED]]Viherpeukalon vaihe: [[YELLOW]] Vehnä kasvaa {0}:ssa vaiheessa
m.HerbalismDoubleDropChance=[[RED]]Tuplasaaliin todennäköisyys: [[YELLOW]]{0}%
m.HerbalismFoodPlus=[[RED]]Ruoka+ (Rank{0}): [[YELLOW]]Bonus {0} terveyden määrä
m.SkillExcavation=KAIVANTO
m.XPGainExcavation=Kaivamalla ja löytämällä aarteita
m.EffectsExcavation1_0=Giga Drill Breaker (TAITO)
m.EffectsExcavation1_1=3x saaliin määrä, 3x kokemuspisteiden määrä, +Nopeus
m.EffectsExcavation2_0=Aarteenmetsästäjä
m.EffectsExcavation2_1=Taito jonka avulla voit kaivaa aarteita
m.ExcavationGreenTerraLength=[[RED]]Giga Drill Breaker kesto: [[YELLOW]]{0}s
mcBlockListener.PlacedAnvil=[[DARK_RED]]Olet asettanut alasimen maahan, sillä voit korjata työkaluja ja haarniskoja.
mcEntityListener.WolfComesBack=[[DARK_GRAY]]Sutesi kipittää takaisin luoksesi...
mcPlayerListener.AbilitiesOff=Taitojen käyttö pois päältä
mcPlayerListener.AbilitiesOn=Taitojen käyttö päällä
mcPlayerListener.AbilitiesRefreshed=[[GREEN]]**TAIDOT PÄIVITETTY\!**
mcPlayerListener.AcrobaticsSkill=[[YELLOW]]Akrobatia:
mcPlayerListener.ArcherySkill=[[YELLOW]]Jousiammunta:
mcPlayerListener.AxesSkill=[[YELLOW]]Kirveet:
mcPlayerListener.ExcavationSkill=[[YELLOW]]Kaivanto:
mcPlayerListener.GodModeDisabled=[[YELLOW]]mcMMO Godmode pois päältä
mcPlayerListener.GodModeEnabled=[[YELLOW]]mcMMO Godmode päällä
mcPlayerListener.GreenThumb=[[GREEN]]**VIHERPEUKALO**
mcPlayerListener.GreenThumbFail=[[RED]]**VIHERPEUKALO EPÄONNISTUI**
mcPlayerListener.HerbalismSkill=[[YELLOW]]Yrttihoito:
mcPlayerListener.MiningSkill=[[YELLOW]]Kaivanto:
mcPlayerListener.MyspawnCleared=[[DARK_AQUA]]Myspawn on tyhjätty.
mcPlayerListener.MyspawnNotExist=[[RED]]Määrää myspawnisi ensin laittamalla sänky maahan.
mcPlayerListener.MyspawnSet=[[DARK_AQUA]]Myspawn on asetettu tämänhetkiseen sijaintiisi.
mcPlayerListener.MyspawnTimeNotice=Sinun pitää odottaa {0}m {1}s käyttääksesi myspawnia
mcPlayerListener.NoPermission=Puutteelliset oikeudet (mcPermissions)
mcPlayerListener.NoSkillNote=[[DARK_GRAY]]Jos sinulla ei ole käyttöoikeutta johonkin taitoon, sitä ei näytetä täällä.
mcPlayerListener.NotInParty=[[RED]]Et ole ryhmässä.
mcPlayerListener.InviteSuccess=[[GREEN]]Kutsu lähetetty.
mcPlayerListener.ReceivedInvite1=[[RED]]HUOMIO: [[GREEN]]Olet saanut ryhmäkutsun ryhmään {0} pelaajalta {1}
mcPlayerListener.ReceivedInvite2=[[YELLOW]]Kirjoita [[GREEN]]/{0}[[YELLOW]] hyväksyäksesi kutsun
mcPlayerListener.InviteAccepted=[[GREEN]]Kutsu hyväksytty. Olet liittynyt ryhmään {0}
mcPlayerListener.NoInvites=[[RED]]Sinulla ei ole kutsuja
mcPlayerListener.YouAreInParty=[[GREEN]]Olet ryhmässä {0}
mcPlayerListener.PartyMembers=[[GREEN]]Ryhmän jäsenet
mcPlayerListener.LeftParty=[[RED]]Olet lähtenyt ryhmästä
mcPlayerListener.JoinedParty=Liityit ryhmään: {0}
mcPlayerListener.PartyChatOn=Vain ryhmäjuttelu [[GREEN]]Päällä
mcPlayerListener.PartyChatOff=Vain ryhmäjuttelu [[RED]]Pois päältä
mcPlayerListener.AdminChatOn=Vain admin juttelu [[GREEN]]Päällä
mcPlayerListener.AdminChatOff=Vain admin juttelu [[RED]]Pois päältä
mcPlayerListener.MOTD=[[BLUE]]Tällä serverillä on mcMMO {0} kirjoita [[YELLOW]]/{1}[[BLUE]] apua varten.
mcPlayerListener.WIKI=[[GREEN]]http://mcmmo.wikia.com[[BLUE]] - mcMMO Wiki
mcPlayerListener.PowerLevel=[[DARK_RED]]VOIMATASO:
mcPlayerListener.PowerLevelLeaderboard=[[YELLOW]]--mcMMO[[BLUE]] Voimataso [[YELLOW]]Tulostaulukko--
mcPlayerListener.SkillLeaderboard=[[YELLOW]]--mcMMO [[BLUE]]{0}[[YELLOW]] Tulostaulukko--
mcPlayerListener.RepairSkill=[[YELLOW]]Korjaus:
mcPlayerListener.SwordsSkill=[[YELLOW]]Miekat:
mcPlayerListener.TamingSkill=[[YELLOW]]Kesytys:
mcPlayerListener.UnarmedSkill=[[YELLOW]]Aseistamattomuus:
mcPlayerListener.WoodcuttingSkill=[[YELLOW]]Puunkaato:
mcPlayerListener.YourStats=[[GREEN]]Sinun MMO tilastosi
Party.InformedOnJoin={0} [[GREEN]] on liittynyt ryhmään
Party.InformedOnQuit={0} [[GREEN]] on lähtenyt ryhmästä
Skills.YourGreenTerra=[[GREEN]]Your [[YELLOW]]Green Terra [[GREEN]]ability is refreshed!
Skills.YourTreeFeller=[[GREEN]]Your [[YELLOW]]Tree Feller [[GREEN]]ability is refreshed!
Skills.YourSuperBreaker=[[GREEN]]Your [[YELLOW]]Super Breaker [[GREEN]]ability is refreshed!
Skills.YourSerratedStrikes=[[GREEN]]Your [[YELLOW]]Serrated Strikes [[GREEN]]ability is refreshed!
Skills.YourBerserk=[[GREEN]]Your [[YELLOW]]Berserk [[GREEN]]ability is refreshed!
Skills.YourSkullSplitter=[[GREEN]]Your [[YELLOW]]Skull Splitter [[GREEN]]ability is refreshed!
Skills.YourGigaDrillBreaker=[[GREEN]]Your [[YELLOW]]Giga Drill Breaker [[GREEN]]ability is refreshed!
Skills.TooTired=[[RED]]You are too tired to use that ability again.
Skills.ReadyHoe=[[GREEN]]**YOU READY YOUR HOE**
Skills.LowerHoe=[[GRAY]]**YOU LOWER YOUR HOE**
Skills.ReadyAxe=[[GREEN]]**YOU READY YOUR AXE**
Skills.LowerAxe=[[GRAY]]**YOU LOWER YOUR AXE**
Skills.ReadyFists=[[GREEN]]**YOU READY YOUR FISTS**
Skills.LowerFists=[[GRAY]]**YOU LOWER YOUR FISTS**
Skills.ReadyPickAxe=[[GREEN]]**YOU READY YOUR PICKAXE**
Skills.LowerPickAxe=[[GRAY]]**YOU LOWER YOUR PICKAXE**
Skills.ReadyShovel=[[GREEN]]**YOU READY YOUR SHOVEL**
Skills.LowerShovel=[[GRAY]]**YOU LOWER YOUR SHOVEL**
Skills.ReadySword=[[GREEN]]**YOU READY YOUR SWORD**
Skills.LowerSword=[[GRAY]]**YOU LOWER YOUR SWORD**
Skills.GreenTerraOn=[[GREEN]]**GREEN TERRA ACTIVATED**
Skills.GreenTerraPlayer=[[GREEN]]{0}[[DARK_GREEN]] has used [[RED]]Green Terra!
Skills.TreeFellerOn=[[GREEN]]**TREE FELLER ACTIVATED**
Skills.TreeFellerPlayer=[[GREEN]]{0}[[DARK_GREEN]] has used [[RED]]Tree Feller!
Skills.SuperBreakerOn=[[GREEN]]**SUPER BREAKER ACTIVATED**
Skills.SuperBreakerPlayer=[[GREEN]]{0}[[DARK_GREEN]] has used [[RED]]Super Breaker!
Skills.SerratedStrikesOn=[[GREEN]]**SERRATED STRIKES ACTIVATED**
Skills.SerratedStrikesPlayer=[[GREEN]]{0}[[DARK_GREEN]] has used [[RED]]Serrated Strikes!
Skills.SkullSplitterOn=[[GREEN]]**SKULL SPLITTER ACTIVATED**
Skills.SkullSplitterPlayer=[[GREEN]]{0}[[DARK_GREEN]] has used [[RED]]Skull Splitter!
Skills.GigaDrillBreakerOn=[[GREEN]]**GIGA DRILL BREAKER ACTIVATED**
Skills.GigaDrillBreakerPlayer=[[GREEN]]{0}[[DARK_GREEN]] has used [[RED]]Giga Drill Breaker!
Skills.GreenTerraOff=[[RED]]**Green Terra has worn off**
Skills.TreeFellerOff=[[RED]]**Tree Feller has worn off**
Skills.SuperBreakerOff=[[RED]]**Super Breaker has worn off**
Skills.SerratedStrikesOff=[[RED]]**Serrated Strikes has worn off**
Skills.BerserkOff=[[RED]]**Berserk has worn off**
Skills.SkullSplitterOff=[[RED]]**Skull Splitter has worn off**
Skills.GigaDrillBreakerOff=[[RED]]**Giga Drill Breaker has worn off**
Skills.TamingUp=[[YELLOW]]Taming skill increased by {0}. Total ({1})
Skills.AcrobaticsUp=[[YELLOW]]Acrobatics skill increased by {0}. Total ({1})
Skills.ArcheryUp=[[YELLOW]]Archery skill increased by {0}. Total ({1})
Skills.SwordsUp=[[YELLOW]]Swords skill increased by {0}. Total ({1})
Skills.AxesUp=[[YELLOW]]Axes skill increased by {0}. Total ({1})
Skills.UnarmedUp=[[YELLOW]]Unarmed skill increased by {0}. Total ({1})
Skills.HerbalismUp=[[YELLOW]]Herbalism skill increased by {0}. Total ({1})
Skills.MiningUp=[[YELLOW]]Mining skill increased by {0}. Total ({1})
Skills.WoodcuttingUp=[[YELLOW]]Woodcutting skill increased by {0}. Total ({1})
Skills.RepairUp=[[YELLOW]]Repair skill increased by {0}. Total ({1})
Skills.ExcavationUp=[[YELLOW]]Excavation skill increased by {0}. Total ({1})

View File

@ -0,0 +1,321 @@
Combat.WolfExamine=[[GREEN]]**Vous exminez le loup avec le Beast Lore**
Combat.WolfShowMaster=[[DARK_GREEN]]Le Maitre des betes \: {0}
Combat.Ignition=[[RED]]**ALLUMAGE**
Combat.BurningArrowHit=[[DARK_RED]]Vous avez été frappé par une flèche brûlante\!
Combat.TouchedFuzzy=[[DARK_RED]]Vous voyez floue. Vous vous senter étourdi.
Combat.TargetDazed=La cible a été [[DARK_RED]]Étourdi
Combat.WolfNoMaster=[[GRAY]]Cette bete n'a pas de maitre...
Combat.WolfHealth=[[GREEN]]Cette bete a {0} de Vie
Combat.StruckByGore=[[RED]]**FRAPPE JUSQU'AU SANG**
Combat.Gore=[[GREEN]]**SANG**
Combat.ArrowDeflect=[[WHITE]]**FLECHE DEVIER**
Item.ChimaeraWingFail=**CHIMAERA WING MANQUE\!**
Item.ChimaeraWingPass=**CHIMAERA WING**
Item.InjuredWait=Vous avez été blessé récemment et vous devez attendre pour l'utiliser. [[YELLOW]]({0}s)
Item.NeedFeathers=[[GRAY]]Vous avez besoin de plus de plumes..
m.mccPartyCommands=[[GREEN]]--COMMANDES PARTIE--
m.mccParty=[party name] [[RED]]- Créer / Rejoignez partie désignée
m.mccPartyQ=[[RED]]- Vous quitter la partie en cours
m.mccPartyToggle=[[RED]] - Active le Chat en groupe
m.mccPartyInvite=[player name] [[RED]]- Envoye une invite
m.mccPartyAccept=[[RED]]- Accepter l'invitation
m.mccPartyTeleport=[party member name] [[RED]]- Vous teleporte vers la partie
m.mccOtherCommands=[[GREEN]]--AUTRES COMMANDES--
m.mccStats=- Voir les statistiques de votre mcMMO
m.mccLeaderboards=- Classements
m.mccMySpawn=- Téléporte au myspawn
m.mccClearMySpawn=- Efface le MySpawn
m.mccToggleAbility=- Active les capacités avec un clic droit
m.mccAdminToggle=- Active le chat admin
m.mccWhois=[playername] [[RED]]- Voir les infos détaillées du joueur
m.mccMmoedit=[playername] [skill] [newvalue] [[RED]]- Modifier
m.mccMcGod=- Mod dieu
m.mccSkillInfo=[skillname] [[RED]]- Afficher des informations détaillées sur une compétence
m.mccModDescription=[[RED]]- Affiche la description de Mcmmo
m.SkillHeader=[[RED]]-----[][[GREEN]]{0}[[RED]][]-----
m.XPGain=[[DARK_GRAY]]XP GAGNER: [[WHITE]]{0}
m.EffectsTemplate=[[DARK_AQUA]]{0}: [[GREEN]]{1}
m.AbilityLockTemplate=[[GRAY]]{0}
m.AbilityBonusTemplate=[[RED]]{0}: [[YELLOW]]{1}
m.Effects=EFFETS
m.YourStats=VOS STATISTIQUES
m.SkillTaming=APPRIVOISER
m.XPGainTaming=Attaque avec les loups
m.EffectsTaming1_0=Connaissance des betes
m.EffectsTaming1_1=Bone-whacking inspects wolves
m.EffectsTaming2_0=Morsures
m.EffectsTaming2_1=Des coups critiques qui s'applique a la morsures
m.EffectsTaming3_0=Griffes aiguisées
m.EffectsTaming3_1=Bonus de dégâts
m.EffectsTaming4_0=Conscient de l'environnement
m.EffectsTaming4_1=Resistance Cactus/Lava Phobia
m.EffectsTaming5_0=Epaisse fourrure
m.EffectsTaming5_1=Réduction DMG, Résistance au feu
m.EffectsTaming6_0=Résistance aux chocs
m.EffectsTaming6_1=Réduction des dommages explosifs
m.AbilLockTaming1=Verrouillé jusqu'à+ SKILL (Previent du danger)
m.AbilLockTaming2=Verrouillé jusqu'à 250+ SKILL (épaisse fourrure)
m.AbilLockTaming3=Verrouillé jusqu'à 500+ SKILL (antichoc)
m.AbilLockTaming4=Verrouillé jusqu'à 750+ SKILL (Griffes aiguisées)
m.AbilBonusTaming1_0=Conscient de l'environnement
m.AbilBonusTaming1_1=Les loups previent du danger
m.AbilBonusTaming2_0=Epaisse fourrure
m.AbilBonusTaming2_1=Réduit de moitié les dommages dus à la résistance au feu
m.AbilBonusTaming3_0=Résistance aux chocs
m.AbilBonusTaming3_1=1/6 des explotion par rapport au dommages normaux
m.AbilBonusTaming4_0=Griffes aiguisées
m.AbilBonusTaming4_1=+2 Dommages
m.TamingGoreChance=[[RED]]Chancede Morsures: [[YELLOW]]{0}%
m.SkillWoodCutting=COUPAGES DE BOIS
m.XPGainWoodCutting=Abattre des arbres
m.EffectsWoodCutting1_0=Arbre Félée (CAPACITE)
m.EffectsWoodCutting1_1=Faire exploser des arbres
m.EffectsWoodCutting2_0=Soufler les feuilles
m.EffectsWoodCutting2_1=Soufler les feuilles encore +
m.EffectsWoodCutting3_0=Double Drops
m.EffectsWoodCutting3_1=Double du butin normal
m.AbilLockWoodCutting1=Verrouillé jusqu'à 100+ SKILL (LEAF BLOWER)
m.AbilBonusWoodCutting1_0=Soufler les feuilles
m.AbilBonusWoodCutting1_1=Soufler les feuilles encore +
m.WoodCuttingDoubleDropChance=[[RED]]Chance de drop doubler: [[YELLOW]]{0}%
m.WoodCuttingTreeFellerLength=[[RED]]Temps de votre Arbre Félée: [[YELLOW]]{0}s
m.SkillArchery=TIR A L'ARC
m.XPGainArchery=Attaque de monstre
m.EffectsArchery1_0=Bruler
m.EffectsArchery1_1=25% de chance que l'ennemi s'enflamment
m.EffectsArchery2_0=Etourdir (les joueurs)
m.EffectsArchery2_1=Ennemis désoriente
m.EffectsArchery3_0=Dommages+
m.EffectsArchery3_1=Modifie les dommages
m.EffectsArchery4_0=Récupération de fleches
m.EffectsArchery4_1=Chance pour récupérer les flèches sur un cadavres
m.ArcheryDazeChance=[[RED]]Chance d'étourdir: [[YELLOW]]{0}%
m.ArcheryRetrieveChance=[[RED]]Chance pour récupérer les flèches: [[YELLOW]]{0}%
m.ArcheryIgnitionLength=[[RED]]Durée du feux: [[YELLOW]]{0} seconds
m.ArcheryDamagePlus=[[RED]]Dégâts+ (Rank{0}): [[YELLOW]]Bonus {0} dommages
m.SkillAxes=HACHES
m.XPGainAxes=Attaque de monstre
m.EffectsAxes1_0=Casseur de tete (capacité)
m.EffectsAxes1_1=Frappes de dommages AoE
m.EffectsAxes2_0=Coup critiques
m.EffectsAxes2_1=Double Dommages
m.EffectsAxes3_0=Maîtrise de la hache (500 SKILL)
m.EffectsAxes3_1=Modifie les dommages
m.AbilLockAxes1=Verrouillé jusqu'à 500+ SKILL (MAITRISE DE LA HACHE)
m.AbilBonusAxes1_0=Maîtrise de la hache
m.AbilBonusAxes1_1=4 Blessures en bonus
m.AxesCritChance=[[RED]]Chance de coup critique: [[YELLOW]]{0}%
m.AxesSkullLength=[[RED]]Temps de votre Casseur de tete: [[YELLOW]]{0}s
m.SkillSwords=EPEE
m.XPGainSwords=Attaque de monstre
m.EffectsSwords1_0=Contre-Attaque
m.EffectsSwords1_1=Renvoie 50% des degats subis
m.EffectsSwords2_0=Epee cranté (capacité)
m.EffectsSwords2_1=25% DMG AoE, saignement+ AoE
m.EffectsSwords3_0=Epee cranté et saignement+
m.EffectsSwords3_1=5 saignement
m.EffectsSwords4_0=Parer
m.EffectsSwords4_1=Inverse les dommages
m.EffectsSwords5_0=Saignement
m.EffectsSwords5_1=Applique un saignement DoT
m.SwordsCounterAttChance=[[RED]]Chance de Contre-Attaque : [[YELLOW]]{0}%
m.SwordsBleedLength=[[RED]]La longueur du saignement : [[YELLOW]]{0} ticks
m.SwordsBleedChance=[[RED]]Chance de faire saigner: [[YELLOW]]{0} %
m.SwordsParryChance=[[RED]]Chance de parer: [[YELLOW]]{0} %
m.SwordsSSLength=[[RED]]Temps de votre epée cranté: [[YELLOW]]{0}s
m.SwordsTickNote=[[GRAY]]NOTE: [[YELLOW]]1 Le Tick va durer 2 secondes
m.SkillAcrobatics=VOLTIGE
m.XPGainAcrobatics=Chute
m.EffectsAcrobatics1_0=Roulade
m.EffectsAcrobatics1_1=Réduit ou Inverse les dommages
m.EffectsAcrobatics2_0=Super roulade
m.EffectsAcrobatics2_1=Roulade deux fois plus efficace
m.EffectsAcrobatics3_0=Esquive
m.EffectsAcrobatics3_1=Domages reduit de moitié
m.AcrobaticsRollChance=[[RED]]Chance de rouler: [[YELLOW]]{0}%
m.AcrobaticsGracefulRollChance=[[RED]]Chance de super roulade: [[YELLOW]]{0}%
m.AcrobaticsDodgeChance=[[RED]]Chance d'esquive: [[YELLOW]]{0}%
m.SkillMining=MINAGE
m.XPGainMining=Extraction de pierre et de minerais
m.EffectsMining1_0=Super Breaker (capacité)
m.EffectsMining1_1=Vitesse+, Triple Chance de loot
m.EffectsMining2_0=Double Drops
m.EffectsMining2_1=Double du butin normal
m.MiningDoubleDropChance=[[RED]]Double Chance de drop: [[YELLOW]]{0}%
m.MiningSuperBreakerLength=[[RED]]Super Breaker Length: [[YELLOW]]{0}s
m.SkillRepair=RÉPARATION
m.XPGainRepair=Réparation
m.EffectsRepair1_0=Réparer
m.EffectsRepair1_1=Réparation Outils en fer & Armure
m.EffectsRepair2_0=Maitre en reparation
m.EffectsRepair2_1=Augmentation des réparations
m.EffectsRepair3_0=Super Réparation
m.EffectsRepair3_1=Double efficacité
m.EffectsRepair4_0=Réparation du Diamant ({0}+ compétence)
m.EffectsRepair4_1=Réparation des outils diamant & Armure
m.RepairRepairMastery=[[RED]]Maitre en reparation: [[YELLOW]]En plus {0}% durabilité restauré
m.RepairSuperRepairChance=[[RED]]Chance de super réparation: [[YELLOW]]{0}%
m.SkillUnarmed=Sans armes
m.XPGainUnarmed=Attaque de monstre
m.EffectsUnarmed1_0=Berserk (CAPACITE)
m.EffectsUnarmed1_1=+50% DMG, Rend matériaux faibles
m.EffectsUnarmed2_0=Désarmer (Players)
m.EffectsUnarmed2_1=Vole l'objet ennemis dans la main
m.EffectsUnarmed3_0=Maitres en désarmement
m.EffectsUnarmed3_1=De gros dégâts ajouter
m.EffectsUnarmed4_0=Apprentissage désarmement
m.EffectsUnarmed4_1=Dommages ajouter
m.EffectsUnarmed5_0=Fleches dévier
m.EffectsUnarmed5_1=Déviation de fleches
m.AbilLockUnarmed1=Verrouillé jusqu'à 250+ SKILL (APPRENTIE DESARMER)
m.AbilLockUnarmed2=Verrouillé jusqu'à 500+ SKILL (MAITRES EN DESARMEMENT)
m.AbilBonusUnarmed1_0=Apprentissage désarmement
m.AbilBonusUnarmed1_1=+2 DMG ajouter
m.AbilBonusUnarmed2_0=Maitres en désarmement
m.AbilBonusUnarmed2_1=+4 DMG ajouter
m.UnarmedArrowDeflectChance=[[RED]]Chance de Fleches dévier: [[YELLOW]]{0}%
m.UnarmedDisarmChance=[[RED]]Chance de Désarmer: [[YELLOW]]{0}%
m.UnarmedBerserkLength=[[RED]]Temps de votre Berserk: [[YELLOW]]{0}s
m.SkillHerbalism=Herboristerie
m.XPGainHerbalism=La récolte des herbes
m.EffectsHerbalism1_0=Main verte (CAPACITE)
m.EffectsHerbalism1_1=Propage la Main verte, 3x Items
m.EffectsHerbalism2_0=Main verte (Wheat)
m.EffectsHerbalism2_1=Auto-plantes lors de la récolte de blé
m.EffectsHerbalism3_0=Main verte (Cobble)
m.EffectsHerbalism3_1=Cobblestone -> Mossy w/ Seeds
m.EffectsHerbalism4_0=Nouriture+
m.EffectsHerbalism4_1=Modifie la santé a reçu du pain / ragoût
m.EffectsHerbalism5_0=Double items (Toutes les cultures)
m.EffectsHerbalism5_1=Double tout les items
m.HerbalismGreenTerraLength=[[RED]]Temps de la Main verte: [[YELLOW]]{0}s
m.HerbalismGreenThumbChance=[[RED]]Main verte Taux de chance: [[YELLOW]]{0}%
m.HerbalismGreenThumbStage=[[RED]]Main verte par niveaux: [[YELLOW]] Wheat grows in stage {0}
m.HerbalismDoubleDropChance=[[RED]]Double Chance de dropper: [[YELLOW]]{0}%
m.HerbalismFoodPlus=[[RED]]Nourriture+ (Rank{0}): [[YELLOW]]Bonus {0} curatif
m.SkillExcavation=CREUSAGE
m.XPGainExcavation=Creuser et de trouver des trésors
m.EffectsExcavation1_0=Super broyeur (Capacité)
m.EffectsExcavation1_1=3x Drop Rate, 3x EXPERIENCE, +Vitesse
m.EffectsExcavation2_0=Chercheur de trésor
m.EffectsExcavation2_1=Capacité de trouver un trésor
m.ExcavationGreenTerraLength=[[RED]]Temps de votre Super broyeur: [[YELLOW]]{0}s
mcBlockListener.PlacedAnvil=[[DARK_RED]]Vous avez placé une enclume, Les enclumes peuvent réparer les outils et l'armure.
mcEntityListener.WolfComesBack=[[DARK_GRAY]]Votre loup se précipite de nouveau vers vous...
mcPlayerListener.AbilitiesOff=Capacité bascule off
mcPlayerListener.AbilitiesOn=Capacité bascule on
mcPlayerListener.AbilitiesRefreshed=[[GREEN]]**CAPACITE RAFRAICHIE\!**
mcPlayerListener.AcrobaticsSkill=[[YELLOW]]Acrobaties compétences**/Acrobatics**:
mcPlayerListener.ArcherySkill=[[YELLOW]]Tir a l'arc compétences**/Archery**:
mcPlayerListener.AxesSkill=[[YELLOW]]Haches compétences**/Axes**:
mcPlayerListener.ExcavationSkill=[[YELLOW]]Pelle compétences**/Excavation**:
mcPlayerListener.GodModeDisabled=[[YELLOW]]mcMMO Mode Dieux Desactiver
mcPlayerListener.GodModeEnabled=[[YELLOW]]mcMMO Mode Dieux Activer
mcPlayerListener.GreenThumb=[[GREEN]]**GREEN THUMB**
mcPlayerListener.GreenThumbFail=[[RED]]**GREEN THUMB FAIL**
mcPlayerListener.HerbalismSkill=[[YELLOW]]Herboriste compétences**/Herbalism**:
mcPlayerListener.MiningSkill=[[YELLOW]]Minage compétences**/Mining**:
mcPlayerListener.MyspawnCleared=[[DARK_AQUA]]Myspawn est maintenant effacée.
mcPlayerListener.MyspawnNotExist=[[RED]]Configurez votre myspawn en 1er avec un lit.
mcPlayerListener.MyspawnSet=[[DARK_AQUA]]Myspawn a été enregistrer à votre emplacement actuel.
mcPlayerListener.MyspawnTimeNotice=Vous devez attendre {0}m {1}s pour utiliser myspawn
mcPlayerListener.NoPermission=Insufficient mcPermissions.
mcPlayerListener.NoSkillNote=[[DARK_GRAY]]Vous n'avez pas accès a la compétence.
mcPlayerListener.NotInParty=[[RED]]Vous n'êtes pas dans un groupe.
mcPlayerListener.InviteSuccess=[[GREEN]]Invitation a été envoyé avec succès.
mcPlayerListener.ReceivedInvite1=[[RED]]ALERT: [[GREEN]]Vous avez reçu un invitation pour la partie {0} a partir de {1}
mcPlayerListener.ReceivedInvite2=[[YELLOW]]Type [[GREEN]]/{0}[[YELLOW]] à accepter l'invitation
mcPlayerListener.InviteAccepted=[[GREEN]]Invite acceptées. Vous avez rejoint la partie {0}
mcPlayerListener.NoInvites=[[RED]]Vous n'avez pas d'invitation pour le moment
mcPlayerListener.YouAreInParty=[[GREEN]]Vous avez dans la partie {0}
mcPlayerListener.PartyMembers=[[GREEN]]Partie Membres
mcPlayerListener.LeftParty=[[RED]]Vous avez quitté la partie
mcPlayerListener.JoinedParty=Joidre la partie: {0}
mcPlayerListener.PartyChatOn=Party Chat uniquement [[GREEN]]On
mcPlayerListener.PartyChatOff=Party Chat uniquement [[RED]]Off
mcPlayerListener.AdminChatOn=Admin Chat uniquement [[GREEN]]On
mcPlayerListener.AdminChatOff=Admin Chat uniquement [[RED]]Off
mcPlayerListener.MOTD=[[BLUE]]Ce serveur fonctionne avec mcMMO {0} [[YELLOW]]/{1}[[BLUE]] pour voir l'aide.
mcPlayerListener.WIKI=[[GREEN]]http://mcmmo.wikia.com[[BLUE]] - mcMMO Wiki - [[YELLOW]]Traduit par avalondrey
mcPlayerListener.PowerLevel=[[DARK_RED]]POWER LEVEL:
mcPlayerListener.PowerLevelLeaderboard=[[YELLOW]]--mcMMO[[BLUE]] Power Level [[YELLOW]]Leaderboard--
mcPlayerListener.SkillLeaderboard=[[YELLOW]]--mcMMO [[BLUE]]{0}[[YELLOW]] Leaderboard--
mcPlayerListener.RepairSkill=[[YELLOW]]Réparation Compétence**/Repair**:
mcPlayerListener.SwordsSkill=[[YELLOW]]Epee compétence**/Swords**:
mcPlayerListener.TamingSkill=[[YELLOW]]Dressage compétence**/Taming**:
mcPlayerListener.UnarmedSkill=[[YELLOW]]Mains nue Compétence**/Unarmed**:
mcPlayerListener.WoodcuttingSkill=[[YELLOW]]Bucheron Compétence**/Woodcutting**:
mcPlayerListener.YourStats=[[GREEN]]Votre MMO Stats
Party.InformedOnJoin={0} [[GREEN]] a join votre partie
Party.InformedOnQuit={0} [[GREEN]] a quitté votre partie
Skills.YourGreenTerra=[[GREEN]]Your [[YELLOW]]Main verte [[GREEN]]la capacité est revenue!
Skills.YourTreeFeller=[[GREEN]]Your [[YELLOW]]Massacre à la tronçonneuse [[GREEN]]la capacité est revenue!
Skills.YourSuperBreaker=[[GREEN]]Your [[YELLOW]]Broyeur [[GREEN]]la capacité est revenue!
Skills.YourSerratedStrikes=[[GREEN]]Your [[YELLOW]]Epee cranté [[GREEN]]la capacité est revenue!
Skills.YourBerserk=[[GREEN]]Your [[YELLOW]]Berserk [[GREEN]]la capacité est revenue!
Skills.YourSkullSplitter=[[GREEN]]Your [[YELLOW]]Casseur de tete [[GREEN]]la capacité est revenue!
Skills.YourGigaDrillBreaker=[[GREEN]]Your [[YELLOW]]Super broyeur [[GREEN]]la capacité est revenue!
Skills.TooTired=[[RED]]Vous êtes trop fatigué pour utiliser cette capacité à nouveau.
Skills.ReadyHoe=[[GREEN]]**TA BINETTE EST PRETE**
Skills.LowerHoe=[[GRAY]]**Ta binette n'est plus prete**
Skills.ReadyAxe=[[GREEN]]**TA HACHE EST PRETE**
Skills.LowerAxe=[[GRAY]]**Ta hache n'est plus prete**
Skills.ReadyFists=[[GREEN]]**TON POINGS EST PRETE**
Skills.LowerFists=[[GRAY]]**Ton poings n'est plus pret**
Skills.ReadyPickAxe=[[GREEN]]**TA PIOCHE EST PRETE**
Skills.LowerPickAxe=[[GRAY]]**Ta pioche n'est plus prete**
Skills.ReadyShovel=[[GREEN]]**TA PELLE EST PRETE**
Skills.LowerShovel=[[GRAY]]**Ta pelle n'est plus prete**
Skills.ReadySword=[[GREEN]]**TON EPEE EST PRETE**
Skills.LowerSword=[[GRAY]]**Ton épee n'est plus prete**
Skills.GreenTerraOn=[[GREEN]]**MAIN VERTE ACTIF**
Skills.GreenTerraPlayer=[[GREEN]]{0}[[DARK_GREEN]] a utilisé [[RED]]Main verte!
Skills.TreeFellerOn=[[GREEN]]**MASSACRE A LA TRONCONNEUSE ACTIF**
Skills.TreeFellerPlayer=[[GREEN]]{0}[[DARK_GREEN]] a utilisé [[RED]]Massacre à la tronçonneuse!
Skills.SuperBreakerOn=[[GREEN]]**BROYEUR ACTIF**
Skills.SuperBreakerPlayer=[[GREEN]]{0}[[DARK_GREEN]] a utilisé [[RED]]Broyeur!
Skills.SerratedStrikesOn=[[GREEN]]**EPEE CRANTER ACTIF**
Skills.SerratedStrikesPlayer=[[GREEN]]{0}[[DARK_GREEN]] a utilisé [[RED]]Epee cranté!
Skills.SkullSplitterOn=[[GREEN]]**CASSEUR DE TETE ACTIF**
Skills.SkullSplitterPlayer=[[GREEN]]{0}[[DARK_GREEN]] a utilisé [[RED]]Casseur de tete!
Skills.GigaDrillBreakerOn=[[GREEN]]**SUPER BROYEUR ACTIF**
Skills.GigaDrillBreakerPlayer=[[GREEN]]{0}[[DARK_GREEN]] a utilisé [[RED]]Super broyeur!
Skills.GreenTerraOff=[[RED]]**Main verte est fini**
Skills.TreeFellerOff=[[RED]]**Massacre à la tronçonneuse est fini**
Skills.SuperBreakerOff=[[RED]]**Le broyeur est fini**
Skills.SerratedStrikesOff=[[RED]]**Epee cranté est fini**
Skills.BerserkOff=[[RED]]**Berserk est fini**
Skills.SkullSplitterOff=[[RED]]**Casseur de tete est fini**
Skills.GigaDrillBreakerOff=[[RED]]**Super broyeur est fini**
Skills.TamingUp=[[YELLOW]]La competence du dressage a augmenté de {0}. Total ({1})
Skills.AcrobaticsUp=[[YELLOW]]La competence acrobaties a augmenté de {0}. Total ({1})
Skills.ArcheryUp=[[YELLOW]]La competence tir a l'arc a augmenté de {0}. Total ({1})
Skills.SwordsUp=[[YELLOW]]La competence epee a augmenté de {0}. Total ({1})
Skills.AxesUp=[[YELLOW]]La competence hache a augmenté de {0}. Total ({1})
Skills.UnarmedUp=[[YELLOW]]La compétence de combat à mains nues a augmenté de {0}. Total ({1})
Skills.HerbalismUp=[[YELLOW]]La competence herboriste a augmenté de {0}. Total ({1})
Skills.MiningUp=[[YELLOW]]La competence minage a augmenté de {0}. Total ({1})
Skills.WoodcuttingUp=[[YELLOW]]La competence coupe de bois a augmenté de {0}. Total ({1})
Skills.RepairUp=[[YELLOW]]La competence réparation a augmenté de {0}. Total ({1})
Skills.ExcavationUp=[[YELLOW]]La competence creusage a augmenté de {0}. Total ({1})
Skills.FeltEasy=[[GRAY]]That felt easy.
Skills.StackedItems=[[DARK_RED]]You can't repair stacked items
Skills.NeedMore=[[DARK_RED]]You need more
Skills.AdeptDiamond=[[DARK_RED]]You're not skilled enough to repair Diamond
Skills.FullDurability=[[GRAY]]That is at full durability.
Skills.Disarmed=[[DARK_RED]]You have been disarmed!
mcPlayerListener.SorcerySkill=Sorcery:
m.SkillSorcery=SORCERY
Sorcery.HasCast=[[GREEN]]**CASTING**[[GOLD]]
Sorcery.Current_Mana=[[DARK_AQUA]]MP
Sorcery.SpellSelected=[[GREEN]]-=([[GOLD]]{0}[[GREEN]])=- [[RED]]([[GRAY]]{1}[[RED]])
Sorcery.Cost=[[RED]][COST] {0} MP
Sorcery.OOM=[[DARK_AQUA]][[[GOLD]]{2}[[DARK_AQUA]]][[DARK_GRAY]] Out Of Mana [[YELLOW]]([[RED]]{0}[[YELLOW]]/[[GRAY]]{1}[[YELLOW]])
Sorcery.Water.Thunder=THUNDER
Sorcery.Curative.Self=CURE SELF
Sorcery.Curative.Other=CURE OTHER
m.LVL=[[DARK_GRAY]]LVL: [[GREEN]]{0} [[DARK_AQUA]]XP[[YELLOW]]([[GOLD]]{1}[[YELLOW]]/[[GOLD]]{2}[[YELLOW]])
Combat.BeastLore=[[GREEN]]**BEAST LORE**
Combat.BeastLoreOwner=[[DARK_AQUA]]Owner ([[RED]]{0}[[DARK_AQUA]])
Combat.BeastLoreHealthWolfTamed=[[DARK_AQUA]]Health ([[GREEN]]{0}[[DARK_AQUA]]/20)
Combat.BeastLoreHealthWolf=[[DARK_AQUA]]Health ([[GREEN]]{0}[[DARK_AQUA]]/8)

View File

@ -0,0 +1,329 @@
# Dutch translation by Pluis65 v1.1
# To use: Set locale to nl
# DO NOT EDIT THIS FILE WITH NORMAL NOTEPAD, use Notepad++
# Verander deze file alleen met Notepad++
# Geef fouten door aan pluis65@hotmail.com
# Last official edit: 8-7-2011
Combat.WolfExamine=[[GREEN]]**Je bekijkt de wolf met Wolfinspectie**
Combat.WolfShowMaster=[[DARK_GREEN]]Eigenaar van de wolf \: {0}
Combat.Ignition=[[RED]]**IGNITION**
Combat.BurningArrowHit=[[DARK_RED]]Je bent geraakt door een brandende pijl\!
Combat.TouchedFuzzy=[[DARK_RED]]Je raakte Fuzzy aan. Je voelt je duizelig.
Combat.TargetDazed=Doelwit was [[DARK_RED]]versuft
Combat.WolfNoMaster=[[GRAY]]Deze wolf heeft geen eigenaar...
Combat.WolfHealth=[[GREEN]]Deze wolf heeft {0} levens
Combat.StruckByGore=[[RED]]**VAST DOOR GESTOLD BLOED**
Combat.Gore=[[GREEN]]**GESTOLD BLOED**
Combat.ArrowDeflect=[[WHITE]]**PIJL AFWIJKING**
Item.ChimaeraWingFail=**CHIMAERA WING MISLUKT\!**
Item.ChimaeraWingPass=**CHIMAERA WING**
Item.InjuredWait=Je bent gewond en moet wachten. [[YELLOW]]({0}s)
Item.NeedFeathers=[[GRAY]]Je hebt meer veren nodig..
m.mccPartyCommands=[[GREEN]]--PARTY COMMANDOS--
m.mccParty=[party name] [[RED]]- Maak/Join getypte party
m.mccPartyQ=[[RED]]- Verlaat je huidige party
m.mccPartyToggle=[[RED]] - Doe party chat aan/uit
m.mccPartyInvite=[player name] [[RED]]- Stuur een uitnodiging voor je party
m.mccPartyAccept=[[RED]]- Accepteer party uitnodiging
m.mccPartyTeleport=[party member name] [[RED]]- Teleporteer naar je party medelid
m.mccOtherCommands=[[GREEN]]--ANDERE COMMANDOS--
m.mccStats=- Laat je levels zien
m.mccLeaderboards=- Topscores
m.mccMySpawn=- Teleporteer naar MySpawn
m.mccClearMySpawn=- Verwijder je MySpawn
m.mccToggleAbility=- Doe ability activatie aan/uit
m.mccAdminToggle=- Doe admin chat aan/uit
m.mccWhois=[playername] [[RED]]- Laat informatie zien over speler
m.mccMmoedit=[playername] [skill] [newvalue] [[RED]]- Verander levels
m.mccMcGod=- God Modus
m.mccSkillInfo=[skillname] [[RED]]- Laat informatie zien over een skill
m.mccModDescription=[[RED]]- Lees MOD beschrijving
m.SkillHeader=[[RED]]-----[][[GREEN]]{0}[[RED]][]-----
m.XPGain=[[DARK_GRAY]]XP: [[WHITE]]{0}
m.EffectsTemplate=[[DARK_AQUA]]{0}: [[GREEN]]{1}
m.AbilityLockTemplate=[[GRAY]]{0}
m.AbilityBonusTemplate=[[RED]]{0}: [[YELLOW]]{1}
m.Effects=EFFECTEN
m.YourStats=JOUW STATUS
m.SkillTaming=TEMMEN
m.XPGainTaming=Wolven krijgen schade
m.EffectsTaming1_0=Wolfinspectie
m.EffectsTaming1_1=Bone-meal inspecteert wolven
m.EffectsTaming2_0=Gestold bloed
m.EffectsTaming2_1=Critical Strike zorgt voor bloedingen
m.EffectsTaming3_0=Scherpere klauwen
m.EffectsTaming3_1=Geeft meer schade
m.EffectsTaming4_0=Mileukennis
m.EffectsTaming4_1=Geen cactus/lava schade, geen falldamage
m.EffectsTaming5_0=Dikke huis
m.EffectsTaming5_1=Minder schade, kan tegen vuur
m.EffectsTaming6_0=Explosieschild
m.EffectsTaming6_1=Minder explosie schade
m.AbilLockTaming1=GEBLOKEERD TOT 100+ SKILL (MILIEUKENNIS)
m.AbilLockTaming2=GEBLOKEERD TOT 250+ SKILL (DIKKE HUIS)
m.AbilLockTaming3=GEBLOKEERD TOT 500+ SKILL (EXPLOSIESCHILD)
m.AbilLockTaming4=GEBLOKEERD TOT 750+ SKILL (SCHERPERE KLAUWEN)
m.AbilBonusTaming1_0=Milieukennis
m.AbilBonusTaming1_1=Wolven ontwijken gevaar (cactus, lava)
m.AbilBonusTaming2_0=Dikkere huid
m.AbilBonusTaming2_1=Halve schade, kan tegen vuur
m.AbilBonusTaming3_0=Explosieschild
m.AbilBonusTaming3_1=Explosies geven 1/6 van de normale schade
m.AbilBonusTaming4_0=Scherpere klauwen
m.AbilBonusTaming4_1=+2 Schade
m.TamingGoreChance=[[RED]]Kans op gestold bloed: [[YELLOW]]{0}%
m.SkillWoodCutting=HOUTHAKKEN
m.XPGainWoodCutting=Bomen omhakken
m.EffectsWoodCutting1_0=Tree Feller (ABILITY)
m.EffectsWoodCutting1_1=Laat bomen deels exploderen
m.EffectsWoodCutting2_0=Leaf Blower
m.EffectsWoodCutting2_1=Laat leaves verdwijnen
m.EffectsWoodCutting3_0=Dubbele Drop
m.EffectsWoodCutting3_1=Geeft een dubbele drop
m.AbilLockWoodCutting1=GEBLOKEERD TOT 100+ SKILL (LEAF BLOWER)
m.AbilBonusWoodCutting1_0=Leaf Blower
m.AbilBonusWoodCutting1_1=Laat leaves verdwijnen
m.WoodCuttingDoubleDropChance=[[RED]]Dubbele Drop kans: [[YELLOW]]{0}%
m.WoodCuttingTreeFellerLength=[[RED]]Tree Feller lengte: [[YELLOW]]{0}s
m.SkillArchery=BOOGSCHIETEN
m.XPGainArchery=Schiet op vijanden
m.EffectsArchery1_0=Brandende pijl
m.EffectsArchery1_1=25% kans dat een vijand verbrand
m.EffectsArchery2_0=Verdoof (Players)
m.EffectsArchery2_1=Gedesorienteerde vijanden
m.EffectsArchery3_0=Schade+
m.EffectsArchery3_1=Verhoogt schade
m.EffectsArchery4_0=Pijlen terugkrijgen
m.EffectsArchery4_1=Kans dat dode vijanden pijlen droppen
m.ArcheryDazeChance=[[RED]]Kans op verdoving: [[YELLOW]]{0}%
m.ArcheryRetrieveChance=[[RED]]Kans om pijlen terug te krijgen: [[YELLOW]]{0}%
m.ArcheryIgnitionLength=[[RED]]Lengte van Brandende pijl: [[YELLOW]]{0} seconds
m.ArcheryDamagePlus=[[RED]]Schade+ (Rank{0}): [[YELLOW]]Bonus {0} schade
m.SkillAxes=BIJLEN
m.XPGainAxes=Val monsters aan met een bijl
m.EffectsAxes1_0=Schedelsplijter (ABILITY)
m.EffectsAxes1_1=Geef schade rond om je heen
m.EffectsAxes2_0=Critical Strikes
m.EffectsAxes2_1=Dubbele schade
m.EffectsAxes3_0=Bijl Master (500 SKILL)
m.EffectsAxes3_1=Verhoogt schade
m.AbilLockAxes1=GEBLOKEERD TOT 500+ SKILL (BIJL MASTER)
m.AbilBonusAxes1_0=Bijl Master
m.AbilBonusAxes1_1=4 schade extra
m.AxesCritChance=[[RED]]Kans op Critical Strikes: [[YELLOW]]{0}%
m.AxesSkullLength=[[RED]]Schedelsplijter lengte: [[YELLOW]]{0}s
m.SkillSwords=ZWAARDEN
m.XPGainSwords=Val monsters aan met een zwaard
m.EffectsSwords1_0=Terugkaats Aanval
m.EffectsSwords1_1=Kaats 50% van de schade terug
m.EffectsSwords2_0=Serrated Strikes (ABILITY)
m.EffectsSwords2_1=25% meer schade, kans op Bloeding+ om je heen
m.EffectsSwords3_0=Serrated Strikes Bloeding+
m.EffectsSwords3_1=Kans op extra bloeding bij vijanden
m.EffectsSwords4_0=Pareren
m.EffectsSwords4_1=Blokkeer vijandelijke aanval
m.EffectsSwords5_0=5 Tikken van Bloeding
m.EffectsSwords5_1=Laat anderen bloeden
m.SwordsCounterAttChance=[[RED]]Kans op Terugkeer Aanval: [[YELLOW]]{0}%
m.SwordsBleedLength=[[RED]]Bloeding lengte: [[YELLOW]]{0} ticks
m.SwordsBleedChance=[[RED]]Kans op Bloeding: [[YELLOW]]{0} %
m.SwordsParryChance=[[RED]]Kans op Pareren: [[YELLOW]]{0} %
m.SwordsSSLength=[[RED]]Serrated Strikes lengte: [[YELLOW]]{0}s
m.SwordsTickNote=[[GRAY]]NOTE: [[YELLOW]]1 tik per 2 seconden
m.SkillAcrobatics=ACROBATIEK
m.XPGainAcrobatics=Vallen
m.EffectsAcrobatics1_0=Rollen
m.EffectsAcrobatics1_1=Verminderd of voorkomt schade
m.EffectsAcrobatics2_0=Perfecte Rol
m.EffectsAcrobatics2_1=Twee keer zo effectief als Rollen
m.EffectsAcrobatics3_0=Ontwijken
m.EffectsAcrobatics3_1=50% minder schade
m.AcrobaticsRollChance=[[RED]]Kans om te rollen: [[YELLOW]]{0}%
m.AcrobaticsGracefulRollChance=[[RED]]Kans op Perfecte Rol: [[YELLOW]]{0}%
m.AcrobaticsDodgeChance=[[RED]]Kans om te ontwijken: [[YELLOW]]{0}%
m.SkillMining=MIJNBOUW
m.XPGainMining=Hak steen & erts met een pickaxe
m.EffectsMining1_0=Super Breeker (ABILITY)
m.EffectsMining1_1=Hogere snelheid, Kans op 3x drop
m.EffectsMining2_0=Dubbele Drops
m.EffectsMining2_1=Dubbele van normale drop
m.MiningDoubleDropChance=[[RED]]Kans op Dubbele Drop: [[YELLOW]]{0}%
m.MiningSuperBreakerLength=[[RED]]Super Breeker lengte: [[YELLOW]]{0}s
m.SkillRepair=REPAREREN
m.XPGainRepair=Repareer tools en armor
m.EffectsRepair1_0=Repareer
m.EffectsRepair1_1=Repareer Iron Tools & Armor
m.EffectsRepair2_0=Repareer Master
m.EffectsRepair2_1=Vergroot de reparatiehoeveelheid
m.EffectsRepair3_0=Super Repareren
m.EffectsRepair3_1=Dubbel effectief
m.EffectsRepair4_0=Diamond Repareren ({0}+ SKILL)
m.EffectsRepair4_1=Repareer Diamond Tools & Armor
m.RepairRepairMastery=[[RED]]Repareer Master: [[YELLOW]]Extra {0}% durability restored
m.RepairSuperRepairChance=[[RED]]Kans op Super Repareren: [[YELLOW]]{0}%
m.SkillUnarmed=ONBEWAPEND
m.XPGainUnarmed=Val monsters aan met hand
m.EffectsUnarmed1_0=Onbewapende gek (ABILITY)
m.EffectsUnarmed1_1=+50% schade, hak zachte materialen weg
m.EffectsUnarmed2_0=Ontwapen (Players)
m.EffectsUnarmed2_1=Dropt het wapen van de vijand
m.EffectsUnarmed3_0=Onbewapende held
m.EffectsUnarmed3_1=Nog meer schade
m.EffectsUnarmed4_0=Onbewapende leerling
m.EffectsUnarmed4_1=Meer schade
m.EffectsUnarmed5_0=Pijlafwijking
m.EffectsUnarmed5_1=Laat pijlen afwijken
m.AbilLockUnarmed1=GEBLOKEERD TOT 250+ SKILL (Onbewapende leerling)
m.AbilLockUnarmed2=GEBLOKEERD TOT 500+ SKILL (Onbewapende held)
m.AbilBonusUnarmed1_0=Onbewapende leerling
m.AbilBonusUnarmed1_1=+2 meer schade
m.AbilBonusUnarmed2_0=Onbewapende held
m.AbilBonusUnarmed2_1=+4 meer schade
m.UnarmedArrowDeflectChance=[[RED]]Kans op Pijlafwijking: [[YELLOW]]{0}%
m.UnarmedDisarmChance=[[RED]]Kans op Ontwapening: [[YELLOW]]{0}%
m.UnarmedBerserkLength=[[RED]]Lengte van Onbewapende gek: [[YELLOW]]{0}s
m.SkillHerbalism=LANDBOUW
m.XPGainHerbalism=Verzamel kruiden en planten
m.EffectsHerbalism1_0=Groene Aarde (ABILITY)
m.EffectsHerbalism1_1=3x meer XP en kans op 3x drop
m.EffectsHerbalism2_0=Groene vingers (Wheat)
m.EffectsHerbalism2_1=Plant wheat bij het oogsten
m.EffectsHerbalism3_0=Groene vingers (Cobble)
m.EffectsHerbalism3_1=Maakt van cobblestone moss-stone met seeds
m.EffectsHerbalism4_0=Voedsel+
m.EffectsHerbalism4_1=Verhoogt de heling van brood en stews
m.EffectsHerbalism5_0=Dubbele Drop (Alle planten)
m.EffectsHerbalism5_1=Dubbele drop van planten
m.HerbalismGreenTerraLength=[[RED]]Groene Aarde lengte: [[YELLOW]]{0}s
m.HerbalismGreenThumbChance=[[RED]]Kans op Groene vingers: [[YELLOW]]{0}%
m.HerbalismGreenThumbStage=[[RED]]Groene vingers periode: [[YELLOW]] Wheat groeit in periode {0}
m.HerbalismDoubleDropChance=[[RED]]Kans op Dubbele Drop: [[YELLOW]]{0}%
m.HerbalismFoodPlus=[[RED]]Voedsel+ (Rank{0}): [[YELLOW]]Bonus {0} heling
m.SkillExcavation=UITGRAVING
m.XPGainExcavation=Graven
m.EffectsExcavation1_0=Giga Drilboor (ABILITY)
m.EffectsExcavation1_1=3x drop, 3x XP, hogere snelheid
m.EffectsExcavation2_0=Schatzoeker
m.EffectsExcavation2_1=Mogelijkheid om schatten te zoeken
m.ExcavationGreenTerraLength=[[RED]]Giga Drilboor lengte: [[YELLOW]]{0}s
mcBlockListener.PlacedAnvil=[[DARK_RED]]Je hebt een aambeeld geplaatst. Hierop kun je tools en armor repareren.
mcEntityListener.WolfComesBack=[[DARK_GRAY]]Je wolf dribbelt terug naar je...
mcPlayerListener.AbilitiesOff=Ability activatie is uit
mcPlayerListener.AbilitiesOn=Ability activatie is aan
mcPlayerListener.AbilitiesRefreshed=[[GREEN]]**ABILITIES HERLADEN\!**
mcPlayerListener.AcrobaticsSkill=Acrobatiek:
mcPlayerListener.ArcherySkill=Boogschieten:
mcPlayerListener.AxesSkill=Bijlen:
mcPlayerListener.ExcavationSkill=Uitgraving:
mcPlayerListener.GodModeDisabled=[[YELLOW]]Godmodus uitgeschakeld
mcPlayerListener.GodModeEnabled=[[YELLOW]]Godmodus ingeschakeld
mcPlayerListener.GreenThumb=[[GREEN]]**GROENE VINGERS**
mcPlayerListener.GreenThumbFail=[[RED]]**GROENE VINNGERS MISLUKT**
mcPlayerListener.HerbalismSkill=Landbouw:
mcPlayerListener.MiningSkill=Mijnbouw:
mcPlayerListener.MyspawnCleared=[[DARK_AQUA]]Myspawn is verwijderd.
mcPlayerListener.MyspawnNotExist=[[RED]]Plaats Myspawn eerst door op een bed te drukken.
mcPlayerListener.MyspawnSet=[[DARK_AQUA]]Myspawn is geplaatst op je huidige locatie.
mcPlayerListener.MyspawnTimeNotice=Je moet {0}m {1}s wachten voordat je myspawn kan gebruiken.
mcPlayerListener.NoPermission=Je hebt geen permissie.
mcPlayerListener.NoSkillNote=[[DARK_GRAY]]Als je geen toegang hebt tot een skill wordt hij hier niet weergegeven.
mcPlayerListener.NotInParty=[[RED]]Je zit niet in een party.
mcPlayerListener.InviteSuccess=[[GREEN]]Uitnodiging succesvol verzonden.
mcPlayerListener.ReceivedInvite1=[[RED]]BERICHT: [[GREEN]]Je bent uitgenodigd voor de party {0} door {1}
mcPlayerListener.ReceivedInvite2=[[YELLOW]]Type [[GREEN]]/{0}[[YELLOW]] om de uitnodiging te accepteren.
mcPlayerListener.InviteAccepted=[[GREEN]]Uitnodiging geaccepteerd. Je bent nu lid van {0}
mcPlayerListener.NoInvites=[[RED]]Je hebt geen uitnodigingen
mcPlayerListener.YouAreInParty=[[GREEN]]Je zit in de party {0}
mcPlayerListener.PartyMembers=[[GREEN]]Party Leden
mcPlayerListener.LeftParty=[[RED]]Je hebt de party verlaten
mcPlayerListener.JoinedParty=Lid geworden van: {0}
mcPlayerListener.PartyChatOn=Alleen Party Chat [[GREEN]]aan
mcPlayerListener.PartyChatOff=Alleen Party Chat [[RED]]uit
mcPlayerListener.AdminChatOn=Alleen Admin Chat [[GREEN]]aan
mcPlayerListener.AdminChatOff=Alleen Admin Chat [[RED]]uit
mcPlayerListener.MOTD=[[BLUE]]Deze server werkt op mcMMO {0} type [[YELLOW]]/{1}[[BLUE]] voor hulp.
mcPlayerListener.WIKI=[[GREEN]]http://mcmmo.wikia.com[[BLUE]] - mcMMO Wiki
mcPlayerListener.PowerLevel=[[DARK_RED]]POWER LEVEL:
mcPlayerListener.PowerLevelLeaderboard=[[YELLOW]]--mcMMO[[BLUE]] Power Level [[YELLOW]]Highscore--
mcPlayerListener.SkillLeaderboard=[[YELLOW]]--mcMMO [[BLUE]]{0}[[YELLOW]] Highscore--
mcPlayerListener.RepairSkill=Repareren:
mcPlayerListener.SwordsSkill=Zwaarden:
mcPlayerListener.TamingSkill=Temmen:
mcPlayerListener.UnarmedSkill=Onbewapend:
mcPlayerListener.WoodcuttingSkill=Houthakken:
mcPlayerListener.YourStats=[[GREEN]][mcMMO] Status
Party.InformedOnJoin={0} [[GREEN]] heeft je party gejoined
Party.InformedOnQuit={0} [[GREEN]] heeft je party verlaten
Skills.YourGreenTerra=[[GREEN]]Je [[YELLOW]]Groene Aarde [[GREEN]]ability is opgeladen!
Skills.YourTreeFeller=[[GREEN]]Je [[YELLOW]]Tree Feller [[GREEN]]ability is opgeladen!
Skills.YourSuperBreaker=[[GREEN]]Je [[YELLOW]]Super Breeker [[GREEN]]ability is opgeladen!
Skills.YourSerratedStrikes=[[GREEN]]Je [[YELLOW]]Serrated Strikes [[GREEN]]ability is opgeladen!
Skills.YourBerserk=[[GREEN]]Je [[YELLOW]]Onbewapende gek [[GREEN]]ability is opgeladen!
Skills.YourSkullSplitter=[[GREEN]]Je [[YELLOW]]Schedelsplijter [[GREEN]]ability is opgeladen!
Skills.YourGigaDrillBreaker=[[GREEN]]Je [[YELLOW]]Giga Drilboor [[GREEN]]ability is opgeladen!
Skills.TooTired=[[RED]]Je bent te moe om die ability te gebruiken.
Skills.ReadyHoe=[[GREEN]]**JE TILT JE SCHOFFEL OP**
Skills.LowerHoe=[[GRAY]]**JE LAAT JE SCHOFFEL ZAKKEN**
Skills.ReadyAxe=[[GREEN]]**JE TILT JE BIJL OP**
Skills.LowerAxe=[[GRAY]]**JE LAAT JE BIJL ZAKKEN**
Skills.ReadyFists=[[GREEN]]**JE BALT JE VUISTEN**
Skills.LowerFists=[[GRAY]]**JE LAAT JE VUISTEN ZAKKEN**
Skills.ReadyPickAxe=[[GREEN]]**JE TILT JE PICKAXE OP**
Skills.LowerPickAxe=[[GRAY]]**JE LAAT JE PICKAXE ZAKKEN**
Skills.ReadyShovel=[[GREEN]]**JE TILT JE SCHEP OP**
Skills.LowerShovel=[[GRAY]]**JE LAAT JE SCHEP ZAKKEN**
Skills.ReadySword=[[GREEN]]**JE TILT JE ZWAARD OP**
Skills.LowerSword=[[GRAY]]**JE LAAT JE ZWAARD ZAKKEN**
Skills.BerserkOn=[[GREEN]]**ONBEWAPENDE GEK GEACTIVEERD**
Skills.BerserkPlayer=[[GREEN]]{0}[[DARK_GREEN]] gebruikt [[RED]]Onbewapende gek!
Skills.GreenTerraOn=[[GREEN]]**GROENE AARDE GEACTIVEERD**
Skills.GreenTerraPlayer=[[GREEN]]{0}[[DARK_GREEN]] gebruikt [[RED]]Groene Aarde!
Skills.TreeFellerOn=[[GREEN]]**TREE FELLER GEACTIVEERD**
Skills.TreeFellerPlayer=[[GREEN]]{0}[[DARK_GREEN]] gebruikt [[RED]]Tree Feller!
Skills.SuperBreakerOn=[[GREEN]]**SUPER BREEKER GEACTIVEERD**
Skills.SuperBreakerPlayer=[[GREEN]]{0}[[DARK_GREEN]] gebruikt [[RED]]Super Breeker!
Skills.SerratedStrikesOn=[[GREEN]]**SERRATED STRIKES GEACTIVEERD**
Skills.SerratedStrikesPlayer=[[GREEN]]{0}[[DARK_GREEN]] gebruikt [[RED]]Serrated Strikes!
Skills.SkullSplitterOn=[[GREEN]]**SCHEDELSPLIJTER GEACTIVEERD**
Skills.SkullSplitterPlayer=[[GREEN]]{0}[[DARK_GREEN]] gebruikt [[RED]]Schedelsplijter!
Skills.GigaDrillBreakerOn=[[GREEN]]**GIGA DRILBOOR GEACTIVEERD**
Skills.GigaDrillBreakerPlayer=[[GREEN]]{0}[[DARK_GREEN]] gebruikt [[RED]]Giga Drilboor!
Skills.GreenTerraOff=[[RED]]**Groene Aarde is uitgewerkt**
Skills.TreeFellerOff=[[RED]]**Tree Feller is uitgewerkt**
Skills.SuperBreakerOff=[[RED]]**Super Breeker is uitgewerkt**
Skills.SerratedStrikesOff=[[RED]]**Serrated Strikes is uitgewerkt**
Skills.BerserkOff=[[RED]]**Onbewapende gek is uitgewerkt**
Skills.SkullSplitterOff=[[RED]]**Schedelsplijter is uitgewerkt**
Skills.GigaDrillBreakerOff=[[RED]]**Giga Drilboor is uitgewerkt**
Skills.TamingUp=[[YELLOW]]Temmen skill verhoogt met {0}. Totaal ({1})
Skills.AcrobaticsUp=[[YELLOW]]Acrobatics skill verhoogt met {0}. Total ({1})
Skills.ArcheryUp=[[YELLOW]]Boogschieten skill verhoogt met {0}. Totaal ({1})
Skills.SwordsUp=[[YELLOW]]Zwaarden skill verhoogt met {0}. Totaal ({1})
Skills.AxesUp=[[YELLOW]]Bijlen skill verhoogt met {0}. Totaal ({1})
Skills.UnarmedUp=[[YELLOW]]Onbewapend skill verhoogt met {0}. Totaal ({1})
Skills.HerbalismUp=[[YELLOW]]Landbouw skill verhoogt met {0}. Totaal ({1})
Skills.MiningUp=[[YELLOW]]Mijnbouw skill verhoogt met {0}. Totaal ({1})
Skills.WoodcuttingUp=[[YELLOW]]Houthakken skill verhoogt met {0}. Totaal ({1})
Skills.RepairUp=[[YELLOW]]Repareren skill verhoogt met {0}. Totaal ({1})
Skills.ExcavationUp=[[YELLOW]]Uitgraven skill verhoogt met {0}. Totaal ({1})
Skills.FeltEasy=[[GRAY]]Dat was makkelijk.
Skills.StackedItems=[[DARK_RED]]Je kan geen gestackte items repareren
Skills.NeedMore=[[DARK_RED]]Je hebt te weinig
Skills.AdeptDiamond=[[DARK_RED]]Je bent niet goed genoeg om diamond te repareren.
Skills.FullDurability=[[GRAY]]Dat is nog helemaal heel.
Skills.Disarmed=[[DARK_RED]]Je bent ontwapend!
mcPlayerListener.SorcerySkill=Tovenarij:
m.SkillSorcery=TOVERNARIJ
Sorcery.HasCast=[[GREEN]]**UITROEPEN VAN**[[GOLD]]
Sorcery.Current_Mana=[[DARK_AQUA]]MP
Sorcery.SpellSelected=[[GREEN]]-=([[GOLD]]{0}[[GREEN]])=- [[RED]]([[GRAY]]{1}[[RED]])
Sorcery.Cost=[[RED]][COST] {0} MP
Sorcery.OOM=[[DARK_AQUA]][[[GOLD]]{2}[[DARK_AQUA]]][[DARK_GRAY]] Geen Mana meer [[YELLOW]]([[RED]]{0}[[YELLOW]]/[[GRAY]]{1}[[YELLOW]])
Sorcery.Water.Thunder=DONDER
Sorcery.Curative.Self=HEEL JEZELF
Sorcery.Curative.Other=HEEL EEN ANDER
m.LVL=[[DARK_GRAY]]LVL: [[GREEN]]{0} [[DARK_AQUA]]XP[[YELLOW]]([[GOLD]]{1}[[YELLOW]]/[[GOLD]]{2}[[YELLOW]])
Combat.BeastLore=[[GREEN]]**WOLFINSPECTIE**
Combat.BeastLoreOwner=[[DARK_AQUA]]Eigenaar ([[RED]]{0}[[DARK_AQUA]])
Combat.BeastLoreHealthWolfTamed=[[DARK_AQUA]]Levens ([[GREEN]]{0}[[DARK_AQUA]]/20)
Combat.BeastLoreHealthWolf=[[DARK_AQUA]]Levens ([[GREEN]]{0}[[DARK_AQUA]]/8)

View File

@ -0,0 +1,323 @@
Combat.WolfExamine=[[GREEN]]**Zbadales Wilka uzywajac Wiedzy Besti**
Combat.WolfShowMaster=[[DARK_GREEN]]Wlascicielem besti jest \: {0}
Combat.Ignition=[[RED]]**PODPALENIE**
Combat.BurningArrowHit=[[DARK_RED]]Zostales trafiony plonaca strzala\!
Combat.TouchedFuzzy=[[DARK_RED]]Czujesz sie oszolomiony.
Combat.TargetDazed=Target was [[DARK_RED]]Oszolomiony.
Combat.WolfNoMaster=[[GRAY]]Ta Bestia nie ma wlasciciela...
Combat.WolfHealth=[[GREEN]]Ta bestia ma {0} zycia.
Combat.StruckByGore=[[RED]]**POWALONY**
Combat.Gore=[[GREEN]]**WYLEW KRWI**
Combat.ArrowDeflect=[[WHITE]]**ODBICIE STRZALU**
Item.ChimaeraWingFail=**UZYCIE SKRZYDLA CHIMAERY NIE POWIODLO SIE\!**
Item.ChimaeraWingPass=**UZYLES SKRZYDEL CHIMAERY**
Item.InjuredWait=Musisz poczekac aby znowu to uzyc. [[YELLOW]]({0}sekund)
Item.NeedFeathers=[[GRAY]]Potrzebujesz wiecej pior.
m.mccPartyCommands=[[GREEN]]--KOMENDY DRUZYNOWE--
m.mccParty=[party name] [[RED]]- Tworzy lub dolacza do danej druzyny.
m.mccPartyQ=[[RED]]- Pozwala opuscic druzyne.
m.mccPartyToggle=[[RED]] - Wlacza chat druzyny.
m.mccPartyInvite=[player name] [[RED]]- Wysyla zaproszenie do druzyny.
m.mccPartyAccept=[[RED]]- Akceptuje zaproszenie do druzyny.
m.mccPartyTeleport=[party member name] [[RED]]- Teleportuje cie do czlonka druzyny.
m.mccOtherCommands=[[GREEN]]--INNE KOMENDY--
m.mccStats=- Pokazuje twoje statystyki.
m.mccLeaderboards=- Pokazuje najlepszych graczy.
m.mccMySpawn=- Teleportuje do spawna.
m.mccClearMySpawn=- Kasuje twoj spawn i zmienia na domyslny.
m.mccToggleAbility=- Wlacza specjalna umiejetnosc prawym przyciskiem myszy.
m.mccAdminToggle=- Wlacza chat adminow.
m.mccWhois=[nazwa gracza] [[RED]]- Zobacz dokladne informacje na temat gracza.
m.mccMmoedit=[nazwa gracza] [umiejetnosc] [nowa wartosc] [[RED]]- Modyfikuje cel.
m.mccMcGod=- Tryb Boga.
m.mccSkillInfo=[nazwa umiejetnosci (np. Mining)] [[RED]]- Pokazuje dokladne informacje o umiejetnosci.
m.mccModDescription=[[RED]]- Wyswietla opis moda.
m.SkillHeader=[[RED]]-----[][[GREEN]]{0}[[RED]][]-----
m.XPGain=[[DARK_GRAY]]Dostajesz doswiadczenie za: [[WHITE]]{0}
m.EffectsTemplate=[[DARK_AQUA]]{0}: [[GREEN]]{1}
m.AbilityLockTemplate=[[GRAY]]{0}
m.AbilityBonusTemplate=[[RED]]{0}: [[YELLOW]]{1}
m.Effects=EFEKTY
m.YourStats=TWOJE STATYSTYKI
m.SkillTaming=OSWAJANIE
m.XPGainTaming=Wilki zostaja oswojone.
m.EffectsTaming1_0=Wiedza Besti
m.EffectsTaming1_1=Kosci pozwalaja sprawdzic wilki.
m.EffectsTaming2_0=Krwotok
m.EffectsTaming2_1=Atak Krytyczny powodujacy silny krwotok.
m.EffectsTaming3_0=Naostrzone pazury
m.EffectsTaming3_1=Bonus do obrazen
m.EffectsTaming4_0=Swiadome srodowisko
m.EffectsTaming4_1=Strach przed kaktusami i lawa, odpornosc na obrazenia ze spadania.
m.EffectsTaming5_0=Grube Futro
m.EffectsTaming5_1=Redukcja obrazen, obrona przeciw ogniowi.
m.EffectsTaming6_0=Odpornosc na wstrzasy.
m.EffectsTaming6_1=Redukajca obrazen spowodowanych wybuchem.
m.AbilLockTaming1=Zablokowane puki nie osiagniesz umiejetnosci na poziomie 100+ (SWIADOME SRODOWISKO)
m.AbilLockTaming2=Zablokowane puki nie osiagniesz umiejetnosci na poziomie 250+ (GRUBE FUTRO)
m.AbilLockTaming3=Zablokowane puki nie osiganiesz umiejetnosci na poziomie 500+ (ODPORNOSC NA WSTRZASY)
m.AbilLockTaming4=Zablokowane puki nie osiagniesz umiejetnosci na poziomie 750+ (NAOSTRZONE PAZURY)
m.AbilBonusTaming1_0=Swiadome srodowisko.
m.AbilBonusTaming1_1=Wilki unikaja zagrozenia.
m.AbilBonusTaming2_0=Grube futro.
m.AbilBonusTaming2_1=Polowa obrazen, obrona przeciw ogniowi.
m.AbilBonusTaming3_0=Odpornosc na wstrzasy.
m.AbilBonusTaming3_1=Wybuchy powoduja 1/6 normalnych obrazen.
m.AbilBonusTaming4_0=Naostrzone pazury
m.AbilBonusTaming4_1=+2 Obrazen
m.TamingGoreChance=[[RED]]Szansa na spowodowanie krwotoku: [[YELLOW]]{0}%
m.SkillWoodCutting=Scinanie Drzew
m.XPGainWoodCutting=Powalanie drzew
m.EffectsWoodCutting1_0=Powalacz drzew (UMIEJETNOSC)
m.EffectsWoodCutting1_1=Powoduje ze drzewa blyskawicznie zostaja powalone
m.EffectsWoodCutting2_0=Wysadzacz lisci
m.EffectsWoodCutting2_1=Wyrzuca liscie
m.EffectsWoodCutting3_0=Podwojna Zaplata
m.EffectsWoodCutting3_1=Podwaja normalny drop przedmiotow.
m.AbilLockWoodCutting1=Zablokowane puki nie osiagniesz umiejetnosci na poziomie 100+ (WYSADZACZ LISCI)
m.AbilBonusWoodCutting1_0=Wysadzacz lisci
m.AbilBonusWoodCutting1_1=Wyrzuca liscie
m.WoodCuttingDoubleDropChance=[[RED]]Szansa na Podwojna Zaplate: [[YELLOW]]{0}%
m.WoodCuttingTreeFellerLength=[[RED]]Dlugosc Powalacza Drzew: [[YELLOW]]{0}sekund
m.SkillArchery=LUCZNICTWO
m.XPGainArchery=Atakowanie potworow przy uzyciu luku.
m.EffectsArchery1_0=Podpalenie
m.EffectsArchery1_1=25% szansy, ze cel zostanie podpalony.
m.EffectsArchery2_0=Oszolomienie(Tylko na graczy)
m.EffectsArchery2_1=Dezorientuje przeciwnikow.
m.EffectsArchery3_0=Obrazenia+
m.EffectsArchery3_1=Modyfikuje obrazenia.
m.EffectsArchery4_0=Odzyskanie strzal.
m.EffectsArchery4_1=Szansa na wyciagniecie strzalow ze zwlok.
m.ArcheryDazeChance=[[RED]]Szansa na oszolomienie: [[YELLOW]]{0}%
m.ArcheryRetrieveChance=[[RED]]Szansa na odzyskanie strzal: [[YELLOW]]{0}%
m.ArcheryIgnitionLength=[[RED]]Dlugosc podpalenia: [[YELLOW]]{0} sekund
m.ArcheryDamagePlus=[[RED]]Obrazenia+ (Rank{0}): [[YELLOW]]Dodatkowe {0} obrazenia
m.SkillAxes=TOPORY
m.XPGainAxes=Atakowanie potworow przy uzyciu toporow.
m.EffectsAxes1_0=Lamacz Czaszek (UMIEJETNOSC)
m.EffectsAxes1_1=Powoduje obrazenia dla calego obszaru.
m.EffectsAxes2_0=Krytyczne Ataki
m.EffectsAxes2_1=Podwojna Sila
m.EffectsAxes3_0=Mistrzostwo Toporow
m.EffectsAxes3_1=Modyfikuje obrazenia
m.AbilLockAxes1=Zablokowane puki nie osiagniesz umiejetnosci na poziomie 500+ (MISTRZOSTWO TOPOROW)
m.AbilBonusAxes1_0=Mistrzostwo Toporow
m.AbilBonusAxes1_1=Dodatkowe 4 obrazen
m.AxesCritChance=[[RED]]Szansa na krytyczne ataki: [[YELLOW]]{0}%
m.AxesSkullLength=[[RED]]Dlugosc Lamacza Czaszek: [[YELLOW]]{0}sekund
m.SkillSwords=MIECZE
m.XPGainSwords=Atakowanie potworow przy uzyciu mieczy.
m.EffectsSwords1_0=Konter-Atak
m.EffectsSwords1_1=Odbija 50% poniesionych obrazen.
m.EffectsSwords2_0=Zabkowany Atak (UMIEJETNOSC)
m.EffectsSwords2_1=25% obrazen obszarowych, Krwotok+ obszarowy
m.EffectsSwords3_0=Zabkowany Atak, Krwotok+
m.EffectsSwords3_1=Powoduje dlugotrwaly krwotok.
m.EffectsSwords4_0=Blok.
m.EffectsSwords4_1=Nie ponosisz obrazen.
m.EffectsSwords5_0=Krwotok
m.EffectsSwords5_1=Powoduje Krwotok
m.SwordsCounterAttChance=[[RED]]Szansa na Konter-Atak: [[YELLOW]]{0}%
m.SwordsBleedLength=[[RED]]Dlugosc Krwotoku: [[YELLOW]]{0} wylewow krwi.
m.SwordsBleedChance=[[RED]]Szansa na spowodowanie Krwotoku: [[YELLOW]]{0} %
m.SwordsParryChance=[[RED]]Parry Chance: [[YELLOW]]{0} %
m.SwordsSSLength=[[RED]]Dlugosc Zabkowanego Ataku: [[YELLOW]]{0}sekund
m.SwordsTickNote=[[GRAY]]UWAGA: [[YELLOW]]1 Wylew Krwi pojawia sie co 2 sekundy.
m.SkillAcrobatics=AKROBATYKI
m.XPGainAcrobatics=Spadanie
m.EffectsAcrobatics1_0=Rolowanie sie.
m.EffectsAcrobatics1_1=Redukuje albo usuwa obrazenia.
m.EffectsAcrobatics2_0=Wielka przewrotka
m.EffectsAcrobatics2_1=Dwa razy efektowowniejsze niz rolowanie sie.
m.EffectsAcrobatics3_0=Unik
m.EffectsAcrobatics3_1=Redukuje polowe obrazen.
m.AcrobaticsRollChance=[[RED]]Szansa na rolowanie sie: [[YELLOW]]{0}%
m.AcrobaticsGracefulRollChance=[[RED]]Szansa na wielka przewrotke: [[YELLOW]]{0}%
m.AcrobaticsDodgeChance=[[RED]]Szansa na unik: [[YELLOW]]{0}%
m.SkillMining=WYKOPALISKA
m.XPGainMining=Wykopywanie kamienia i roznych rud.
m.EffectsMining1_0=Super Kopacz (UMIEJETNOSC)
m.EffectsMining1_1=Szybkosc+, Szansa na potrujna zaplate.
m.EffectsMining2_0=Podwojna zaplata.
m.EffectsMining2_1=Podwaja normalny drop.
m.MiningDoubleDropChance=[[RED]]Szansa na podwojna zaplate: [[YELLOW]]{0}%
m.MiningSuperBreakerLength=[[RED]]Dlugosc super kopania: [[YELLOW]]{0}sekund
m.SkillRepair=NAPRAWA
m.XPGainRepair=Naprawianie przedmiotow.
m.EffectsRepair1_0=Naprawa
m.EffectsRepair1_1=Naprawianie zelaznych przedmiotow.
m.EffectsRepair2_0=Mistrz naprawy
m.EffectsRepair2_1=Powiekszona liczba napraw.
m.EffectsRepair3_0=Super Naprawa
m.EffectsRepair3_1=Podwojna efektownosc.
m.EffectsRepair4_0=Diamentowa Odnowa ({0}+ UMIEJETNOSC)
m.EffectsRepair4_1=Naprawia diamentowe przedmioty.
m.RepairRepairMastery=[[RED]]Mistrz naprawy: [[YELLOW]]Dodatkowe {0}% wytrzymalosci odzyskane.
m.RepairSuperRepairChance=[[RED]]Szansa na Super Odnowe: [[YELLOW]]{0}%
m.SkillUnarmed=BEZBRONNY
m.XPGainUnarmed=Atakowanie potworow piescia.
m.EffectsUnarmed1_0=Furia (UMIEJETNOSC)
m.EffectsUnarmed1_1=+50% obrazen, niszczy slabe materialy.
m.EffectsUnarmed2_0=Rozbrojenie (Gracze)
m.EffectsUnarmed2_1=Wyrzuca przedmioty przyciwnikow trzymane przez nich w rekach.
m.EffectsUnarmed3_0=Mistrzostwo walki gola piescia
m.EffectsUnarmed3_1=Ogromne ulepszenie obrazen
m.EffectsUnarmed4_0=Poczatkujacy bezbronny
m.EffectsUnarmed4_1=Ulepszenie obrazen
m.EffectsUnarmed5_0=Odbicie strzaly
m.EffectsUnarmed5_1=Odbija strzaly
m.AbilLockUnarmed1=Zablokowane puki nie osiagniesz umiejetnosci na poziomie 250+ (POCZATKUJACY BEZBRONNY)
m.AbilLockUnarmed2=Zablokowane puki nie osiagniesz umiejetnosci na poziomie 500+ (MISTRZOSTWO WALKI GOLA PIESCIA)
m.AbilBonusUnarmed1_0=Poczatkujacy bezbronny
m.AbilBonusUnarmed1_1=+2 obrazen
m.AbilBonusUnarmed2_0=Mistrzostwo walki gola piescia
m.AbilBonusUnarmed2_1=+4 obrazen
m.UnarmedArrowDeflectChance=[[RED]]Szansa na odbicie strzaly: [[YELLOW]]{0}%
m.UnarmedDisarmChance=[[RED]]Szansa na rozbrojenie: [[YELLOW]]{0}%
m.UnarmedBerserkLength=[[RED]]Dlugosc Furii: [[YELLOW]]{0}s
m.SkillHerbalism=ZIELARSTWO
m.XPGainHerbalism=Zbieranie ziol.
m.EffectsHerbalism1_0=Zielona Ziemia (UMIEJETNOSC)
m.EffectsHerbalism1_1=Rozprzestrzenia ziemie, Potraja Wynagrodzenie.
m.EffectsHerbalism2_0=Zielony Kciuk (Zboze)
m.EffectsHerbalism2_1=Automatycznie zasadza nasiona przy zbieraniu zboza.
m.EffectsHerbalism3_0=Zielony Kciuk (Cobbletone)
m.EffectsHerbalism3_1=Zamienia Cooblestone w Mossy Stone
m.EffectsHerbalism4_0=Jedzenie+
m.EffectsHerbalism4_1=Modyfikuje ilosc zycia regenerowana przez zjedzenie chleba/zupy grzybowej.
m.EffectsHerbalism5_0=Podwojne wynagrodzenie
m.EffectsHerbalism5_1=Podwaja normalny drop
m.HerbalismGreenTerraLength=[[RED]]Czas Trwania Zielonego Kciuka: [[YELLOW]]{0}sekund
m.HerbalismGreenThumbChance=[[RED]]Szansa na powodzenie Zielonego Kciuka: [[YELLOW]]{0}%
m.HerbalismGreenThumbStage=[[RED]]Poziom Zielonego Kciuka: [[YELLOW]] Zboze rosnie na poziomie {0}
m.HerbalismDoubleDropChance=[[RED]]Podwojne wynagrodzenie: [[YELLOW]]{0}%
m.HerbalismFoodPlus=[[RED]]Jedzenie+ (Rank{0}): [[YELLOW]]Dodatkowe {0} zycia
m.SkillExcavation=ARCHEOLOGIA
m.XPGainExcavation=Kopanie i odnajdywanie skarbow
m.EffectsExcavation1_0=Wielki Lamacz Wiertla (UMIEJETNOSC)
m.EffectsExcavation1_1=3x wieksze wynagrodzenei, 3x wiecej doswiadczenia, +Szybkosc
m.EffectsExcavation2_0=Lowca Skarbow
m.EffectsExcavation2_1=Umiejetnosc znajdywania skarbow
m.ExcavationGreenTerraLength=[[RED]]Wielki Lamacz Wiertla: [[YELLOW]]{0}s
mcBlockListener.PlacedAnvil=[[DARK_RED]]Polozyles kowadlo, ktore pozwala na naprawe przedmiotow.
mcEntityListener.WolfComesBack=[[DARK_GRAY]]Twoj Wilk do Ciebie wraca.
mcPlayerListener.AbilitiesOff=Uzywanie umiejetnosci wylaczone
mcPlayerListener.AbilitiesOn=Uzywanie umiejetnosci wlaczone
mcPlayerListener.AbilitiesRefreshed=[[GREEN]]**UMIEJETNOSCI ODSWIEZONE\!**
mcPlayerListener.AcrobaticsSkill=Akrobatyka:
mcPlayerListener.ArcherySkill=Lucznictwo:
mcPlayerListener.AxesSkill=Topory:
mcPlayerListener.ExcavationSkill=Archeologia:
mcPlayerListener.GodModeDisabled=[[YELLOW]]Tryb boga wylaczony
mcPlayerListener.GodModeEnabled=[[YELLOW]]Tryb boga wlaczony
mcPlayerListener.GreenThumb=[[GREEN]]**UZYLES ZIELONY KCIUK**
mcPlayerListener.GreenThumbFail=[[RED]]**UZYWANIE ZIELONEGO KCIUKA NIE POWIODLO SIE**
mcPlayerListener.HerbalismSkill=Zielarstwo:
mcPlayerListener.MiningSkill=Wykopaliska:
mcPlayerListener.MyspawnCleared=[[DARK_AQUA]]Twoj spawn jest teraz oczyszczony.
mcPlayerListener.MyspawnNotExist=[[RED]]Ustaw wpierw swoj spawn za pomoca lozka.
mcPlayerListener.MyspawnSet=[[DARK_AQUA]]Twoj spawn zostal ustawiony na twoje aktualne polozenie.
mcPlayerListener.MyspawnTimeNotice=Musisz zaczekac {0}minut i {1}sekund aby przeteleportowac sie na spawn.
mcPlayerListener.NoPermission=Brak mcPermissions.
mcPlayerListener.NoSkillNote=[[DARK_GRAY]]Jesli nie masz prawa do uzywania umiejetnosci, nie pokaze sie ona tu.
mcPlayerListener.NotInParty=[[RED]]Nie jestes w grupie.
mcPlayerListener.InviteSuccess=[[GREEN]]Zaproszenie wyslane.
mcPlayerListener.ReceivedInvite1=[[RED]]UWAGA: [[GREEN]]Dostales zaproszenie do grupy {0} od {1}
mcPlayerListener.ReceivedInvite2=[[YELLOW]Wpisz [[GREEN]]/{0}[[YELLOW]] aby zaakceptowac zaproszenie
mcPlayerListener.InviteAccepted=[[GREEN]]Zaproszenie akceptowane. Doszles do grupy {0}
mcPlayerListener.NoInvites=[[RED]]Nie masz zadnych zaproszen do grupy
mcPlayerListener.YouAreInParty=[[GREEN]]Jestes w grupie {0}
mcPlayerListener.PartyMembers=[[GREEN]]Czlonkowie grupy
mcPlayerListener.LeftParty=[[RED]]Wyszles z tej grupy
mcPlayerListener.JoinedParty=Doszedles do grupy: {0}
mcPlayerListener.PartyChatOn=Chat tylko dla grupy [[GREEN]]WLACZONY
mcPlayerListener.PartyChatOff=Chat tylko dla grupy [[RED]]WYLACZONY
mcPlayerListener.AdminChatOn=Chat tylko dla adminow [[GREEN]]WLACZONY
mcPlayerListener.AdminChatOff=Chat tylko dla adminow [[RED]]WYLACZONY
mcPlayerListener.MOTD=[[BLUE]]Ten server uzywa plugina mcMMO {0} wpisz [[YELLOW]]/{1}[[BLUE]] aby uzyskac pomoc.
mcPlayerListener.WIKI=[[GREEN]]http://mcmmo.wikia.com[[BLUE]] - mcMMO Wiki
mcPlayerListener.PowerLevel=[[DARK_RED]]POZIOM MOCY:
mcPlayerListener.PowerLevelLeaderboard=[[YELLOW]]--Ranking [[BLUE]]poziomu mocy [[YELLOW]]mcMMO--
mcPlayerListener.SkillLeaderboard=[[YELLOW]]--Ranking [[BLUE]]{0}[[YELLOW]] mcMMO--
mcPlayerListener.RepairSkill=Naprawa:
mcPlayerListener.SwordsSkill=Miecze:
mcPlayerListener.TamingSkill=Oswajanie:
mcPlayerListener.UnarmedSkill=Bezbronny:
mcPlayerListener.WoodcuttingSkill=Scinanie drzew:
mcPlayerListener.YourStats=[[GREEN]][mcMMO] Statystyki
Party.InformedOnJoin={0} [[GREEN]] dolaczyl do twojej grupy
Party.InformedOnQuit={0} [[GREEN]] wyszedl z twojej grupy
Skills.YourGreenTerra=[[GREEN]]Twoja umiejetnosc [[YELLOW]]Zielona Ziemia [[GREEN]]zostala naladowana!
Skills.YourTreeFeller=[[GREEN]]Twoja umiejetnosc [[YELLOW]]Powalacz Drzew [[GREEN]]zostala naladowana!
Skills.YourSuperBreaker=[[GREEN]]Twoja umiejetnosc [[YELLOW]]Super Kopacz [[GREEN]]zostala naladowana!
Skills.YourSerratedStrikes=[[GREEN]]Twoja umiejetnosc [[YELLOW]]Zabkowany Atak [[GREEN]]zostala naladowana!
Skills.YourBerserk=[[GREEN]]Twoja umiejetnosc [[YELLOW]]Furia [[GREEN]]zostala naladowana!
Skills.YourSkullSplitter=[[GREEN]]Twoja umiejetnosc [[YELLOW]]Lamacz Czaszek [[GREEN]]zostala naladowana!
Skills.YourGigaDrillBreaker=[[GREEN]]Twoja umiejetnosc [[YELLOW]]Wielki Lamacz Wiertla [[GREEN]]zostala naladowana!
Skills.TooTired=[[RED]]Jestes zbyt zmeczony zeby uzyc znowu tej umiejetnosci.
Skills.ReadyHoe=[[GREEN]]**NALADOWALES SWOJA MOTYKE**
Skills.LowerHoe=[[GRAY]]**ZWOLNILES SWOJA MOTYKE**
Skills.ReadyAxe=[[GREEN]]**NALADOWALES SWOJ TOPOR**
Skills.LowerAxe=[[GRAY]]**ZWOLNILES SWOJ TOPOR**
Skills.ReadyFists=[[GREEN]]**NALADOWALES SWOJE PIESCI**
Skills.LowerFists=[[GRAY]]**ZWOLNILES SWOJE PIESCI**
Skills.ReadyPickAxe=[[GREEN]]**NALADOWALES SWOJ KILOF**
Skills.LowerPickAxe=[[GRAY]]**ZWOLNILES SWOJ KILOF**
Skills.ReadyShovel=[[GREEN]]**NALADOWALES SWOJA LOPATE**
Skills.LowerShovel=[[GRAY]]**ZWOLNILES SWOJA LOPATE**
Skills.ReadySword=[[GREEN]]**NALADOWALES SWOJ MIECZ**
Skills.LowerSword=[[GRAY]]**ZWOLNILES SWOJ MIECZ**
Skills.BerserkOn=[[GREEN]]**FURIA AKTYWOWANA**
Skills.BerserkPlayer=[[GREEN]]{0}[[DARK_GREEN]] uzyl [[RED]]Furie!
Skills.GreenTerraOn=[[GREEN]]**ZIELONA ZIEMIA AKTYWOWANA**
Skills.GreenTerraPlayer=[[GREEN]]{0}[[DARK_GREEN]] uzyl [[RED]]Zielona Ziemie!
Skills.TreeFellerOn=[[GREEN]]**POWALACZ DRZEW AKTYWOWANY**
Skills.TreeFellerPlayer=[[GREEN]]{0}[[DARK_GREEN]] uzyl [[RED]]Powalacza Drzew!
Skills.SuperBreakerOn=[[GREEN]]**SUPER KOPACZ AKTYWOWANY**
Skills.SuperBreakerPlayer=[[GREEN]]{0}[[DARK_GREEN]] uzyl [[RED]]Super Kopacza!
Skills.SerratedStrikesOn=[[GREEN]]**ZABKOWANY ATAK AKTYWOWANY**
Skills.SerratedStrikesPlayer=[[GREEN]]{0}[[DARK_GREEN]] uzyl [[RED]]Zabkowany Atak!
Skills.SkullSplitterOn=[[GREEN]]**LAMACZ CZASZEK AKTYWOWANY**
Skills.SkullSplitterPlayer=[[GREEN]]{0}[[DARK_GREEN]] uzyl [[RED]]Lamacza Czaszek!
Skills.GigaDrillBreakerOn=[[GREEN]]**WIELKI LAMACZ WIERTLA AKTYWOWANY**
Skills.GigaDrillBreakerPlayer=[[GREEN]]{0}[[DARK_GREEN]] uzyl [[RED]]Wielki Lamacz Wiertla!
Skills.GreenTerraOff=[[RED]]**Zielona Ziemia zostala zuzyta**
Skills.TreeFellerOff=[[RED]]**Powalacz drzew zostal zuzyty**
Skills.SuperBreakerOff=[[RED]]**Super Kopacz zostal zuzyty**
Skills.SerratedStrikesOff=[[RED]]**Zabkowany Atak zostal zuzyty**
Skills.BerserkOff=[[RED]]**Furia zostala zuzyta**
Skills.SkullSplitterOff=[[RED]]**Lamacz czaszek zostal zuzyty**
Skills.GigaDrillBreakerOff=[[RED]]**Wielki Lamacz Wiertla zostal zuzyty**
Skills.TamingUp=[[YELLOW]]Umiejetnosc oswajania ulepszona o {0}. Razem ({1})
Skills.AcrobaticsUp=[[YELLOW]]Umiejetnosci akrobatyczne ulepszone o {0}. Razem ({1})
Skills.ArcheryUp=[[YELLOW]]Umiejetnosc lucznictwa ulepszona o {0}. Razem ({1})
Skills.SwordsUp=[[YELLOW]]Umiejetnosc uzywania mieczy ulepszona o {0}. Razem ({1})
Skills.AxesUp=[[YELLOW]]Umiejetnosc uzywania topora ulepszona o {0}. Razem ({1})
Skills.UnarmedUp=[[YELLOW]]Umiejetnosc bezbronnosci ulepszona o {0}. Razem ({1})
Skills.HerbalismUp=[[YELLOW]]Umiejetnosc zielarstwa ulepszona o {0}. Razem ({1})
Skills.MiningUp=[[YELLOW]]Umiejetnosc wykopalisk ulepszona o {0}. Razem ({1})
Skills.WoodcuttingUp=[[YELLOW]]Umiejetnosc ciecia drzew ulepszona o {0}. Razem ({1})
Skills.RepairUp=[[YELLOW]]Umiejetnosc naprawy ulepszona o {0}. Razem ({1})
Skills.ExcavationUp=[[YELLOW]]Umiejetnosc archeologii ulepszona o {0}. Razem ({1})
Skills.FeltEasy=[[GRAY]]To poszlo latwo.
Skills.StackedItems=[[DARK_RED]]Nie mozesz naprawiac przedmiotow ulozonych na sterte.
Skills.NeedMore=[[DARK_RED]]Potrzebujesz wiecej
Skills.AdeptDiamond=[[DARK_RED]]Nie jestes wystarczajaco utalentowany zeby naprawic Diament
Skills.FullDurability=[[GRAY]]Ten przedmiot jest w pelni wytrzymaly.
Skills.Disarmed=[[DARK_RED]]Zostales rozbrojony!
mcPlayerListener.SorcerySkill=Magia:
m.SkillSorcery=MAGIA
Sorcery.HasCast=[[GREEN]]**RZUCANIE ZAKLECIA**[[GOLD]]
Sorcery.Current_Mana=[[DARK_AQUA]]MP
Sorcery.SpellSelected=[[GREEN]]-=([[GOLD]]{0}[[GREEN]])=- [[RED]]([[GRAY]]{1}[[RED]])
Sorcery.Cost=[[RED]][COST] {0} MP
Sorcery.OOM=[[DARK_AQUA]][[[GOLD]]{2}[[DARK_AQUA]]][[DARK_GRAY]] Koniec Many [[YELLOW]]([[RED]]{0}[[YELLOW]]/[[GRAY]]{1}[[YELLOW]])
Sorcery.Water.Thunder=PIORUN
Sorcery.Curative.Self=LECZENIE SIEBIE
Sorcery.Curative.Other=LECZENIE INNYCH LUDZI
m.LVL=[[DARK_GRAY]]LVL: [[GREEN]]{0} [[DARK_AQUA]]Doswiadczenia[[YELLOW]]([[GOLD]]{1}[[YELLOW]]/[[GOLD]]{2}[[YELLOW]])
Combat.BeastLore=[[GREEN]]**WIEDZA BESTI**
Combat.BeastLoreOwner=[[DARK_AQUA]]Wlasciciel ([[RED]]{0}[[DARK_AQUA]])
Combat.BeastLoreHealthWolfTamed=[[DARK_AQUA]]Zycie ([[GREEN]]{0}[[DARK_AQUA]]/20)
Combat.BeastLoreHealthWolf=[[DARK_AQUA]]Zycie ([[GREEN]]{0}[[DARK_AQUA]]/8)

View File

@ -0,0 +1,74 @@
package com.gmail.nossr50.locale;
import java.text.MessageFormat;
import java.util.Locale;
import java.util.MissingResourceException;
import java.util.ResourceBundle;
import org.bukkit.ChatColor;
import com.gmail.nossr50.config.LoadProperties;
public class mcLocale
{
private static final String BUNDLE_NAME = "com.gmail.nossr50.locale.locale"; //$NON-NLS-1$
private static ResourceBundle RESOURCE_BUNDLE = null;
public static String getString(String key)
{
return getString(key, null);
}
public static String getString(String key, Object[] messageArguments)
{
try {
if (RESOURCE_BUNDLE == null)
{
String myLocale = LoadProperties.locale.toLowerCase();
try {
//attempt to get the locale denoted
RESOURCE_BUNDLE = ResourceBundle.getBundle(BUNDLE_NAME, new Locale(myLocale));
} catch (MissingResourceException e) {
//System.out.println("Failed to load locale specified by mcmmo.properties '"+myLocale+"', defaulting to en_us");
RESOURCE_BUNDLE = ResourceBundle.getBundle(BUNDLE_NAME, new Locale("en_us"));
}
}
String output = RESOURCE_BUNDLE.getString(key);
if (messageArguments != null) {
MessageFormat formatter = new MessageFormat("");
formatter.applyPattern(output);
output = formatter.format(messageArguments);
}
output = addColors(output);
return output;
} catch (MissingResourceException e) {
return '!' + key + '!';
}
}
private static String addColors(String input) {
input = input.replaceAll("\\Q[[BLACK]]\\E", ChatColor.BLACK.toString());
input = input.replaceAll("\\Q[[DARK_BLUE]]\\E", ChatColor.DARK_BLUE.toString());
input = input.replaceAll("\\Q[[DARK_GREEN]]\\E", ChatColor.DARK_GREEN.toString());
input = input.replaceAll("\\Q[[DARK_AQUA]]\\E", ChatColor.DARK_AQUA.toString());
input = input.replaceAll("\\Q[[DARK_RED]]\\E", ChatColor.DARK_RED.toString());
input = input.replaceAll("\\Q[[DARK_PURPLE]]\\E", ChatColor.DARK_PURPLE.toString());
input = input.replaceAll("\\Q[[GOLD]]\\E", ChatColor.GOLD.toString());
input = input.replaceAll("\\Q[[GRAY]]\\E", ChatColor.GRAY.toString());
input = input.replaceAll("\\Q[[DARK_GRAY]]\\E", ChatColor.DARK_GRAY.toString());
input = input.replaceAll("\\Q[[BLUE]]\\E", ChatColor.BLUE.toString());
input = input.replaceAll("\\Q[[GREEN]]\\E", ChatColor.GREEN.toString());
input = input.replaceAll("\\Q[[AQUA]]\\E", ChatColor.AQUA.toString());
input = input.replaceAll("\\Q[[RED]]\\E", ChatColor.RED.toString());
input = input.replaceAll("\\Q[[LIGHT_PURPLE]]\\E", ChatColor.LIGHT_PURPLE.toString());
input = input.replaceAll("\\Q[[YELLOW]]\\E", ChatColor.YELLOW.toString());
input = input.replaceAll("\\Q[[WHITE]]\\E", ChatColor.WHITE.toString());
return input;
}
}

View File

@ -5,22 +5,24 @@ import java.io.FileReader;
import java.util.logging.Level; import java.util.logging.Level;
import java.util.logging.Logger; import java.util.logging.Logger;
import org.bukkit.ChatColor;
import org.bukkit.Location; import org.bukkit.Location;
import org.bukkit.Material; import org.bukkit.Material;
import org.bukkit.block.Block; import org.bukkit.block.Block;
import org.bukkit.entity.*; import org.bukkit.entity.*;
import org.bukkit.event.player.PlayerChatEvent;
import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.ItemStack;
import org.bukkit.plugin.Plugin; import org.bukkit.plugin.Plugin;
import com.gmail.nossr50.config.*; import com.gmail.nossr50.config.*;
import com.gmail.nossr50.datatypes.PlayerProfile; import com.gmail.nossr50.datatypes.PlayerProfile;
import com.gmail.nossr50.datatypes.FakeBlockBreakEvent; import com.gmail.nossr50.datatypes.FakeBlockBreakEvent;
public class m {
public static final Logger log = Logger.getLogger("Minecraft"); //$NON-NLS-1$ public class m
{
public static final Logger log = Logger.getLogger("Minecraft");
/* /*
* I'm storing my misc functions/methods in here in an unorganized manner. Spheal with it. * I'm storing my misc functions/methods in here in an unorganized manner. Spheal with it.
* This is probably the most embarrassing part of my code for mcMMO
* I really should find an organized place for these things!
*/ */
//The lazy way to default to 0 //The lazy way to default to 0
@ -28,34 +30,38 @@ public class m {
{ {
if(isInt(string)) if(isInt(string))
{ {
return Integer.valueOf(string); return Integer.parseInt(string);
} }
else else
{ {
return 0; return 0;
} }
} }
public static Double getDouble(String string) public static Double getDouble(String string)
{ {
if(isDouble(string)) if(isDouble(string))
{ {
return Double.valueOf(string); return Double.parseDouble(string);
} }
else else
{ {
return (double) 0; return (double) 0;
} }
} }
public static boolean isDouble(String string) public static boolean isDouble(String string)
{ {
try { try
Double x = Double.valueOf(string); {
Double.parseDouble(string);
} }
catch(NumberFormatException nFE) { catch(NumberFormatException nFE) {
return false; return false;
} }
return true; return true;
} }
public static boolean shouldBeWatched(Block block) public static boolean shouldBeWatched(Block block)
{ {
int id = block.getTypeId(); int id = block.getTypeId();
@ -128,25 +134,6 @@ public class m {
} }
} }
} }
public boolean hasArrows(Player player){
for(ItemStack x : player.getInventory().getContents()){
if(x.getTypeId() == 262)
return true;
}
return false;
}
public void addArrows(Player player){
ItemStack[] inventory = player.getInventory().getContents();
for(ItemStack x : inventory){
if(x != null && x.getTypeId() == 262){
if(x.getAmount() >= 1 && x.getAmount() < 64){
x.setAmount(x.getAmount() + 1);
player.getInventory().setContents(inventory);
}
return;
}
}
}
public static Integer getTier(Player player){ public static Integer getTier(Player player){
int i = player.getItemInHand().getTypeId(); int i = player.getItemInHand().getTypeId();
if(i == 268 || i == 269 || i == 270 || i == 271 || i == 290){ if(i == 268 || i == 269 || i == 270 || i == 271 || i == 290){
@ -232,10 +219,12 @@ public class m {
} }
} }
public static boolean isInt(String string){ public static boolean isInt(String string){
try { try
int x = Integer.parseInt(string); {
Integer.parseInt(string);
} }
catch(NumberFormatException nFE) { catch(NumberFormatException nFE)
{
return false; return false;
} }
return true; return true;
@ -278,14 +267,17 @@ public class m {
return false; return false;
} }
} }
public static boolean isMiningPick(ItemStack is){ public static boolean isMiningPick(ItemStack is)
if(is.getTypeId() == 270 || is.getTypeId() == 274 || is.getTypeId() == 285 || is.getTypeId() == 257 || is.getTypeId() == 278){ {
if(is.getTypeId() == 270 || is.getTypeId() == 274 || is.getTypeId() == 285 || is.getTypeId() == 257 || is.getTypeId() == 278)
{
return true; return true;
} else { } else {
return false; return false;
} }
} }
public boolean isGold(ItemStack is){ public boolean isGold(ItemStack is)
{
int i = is.getTypeId(); int i = is.getTypeId();
if(i == 283 || i == 284 || i == 285 || i == 286 || i == 294 || i == 314 || i == 315 || i == 316 || i == 317){ if(i == 283 || i == 284 || i == 285 || i == 286 || i == 294 || i == 314 || i == 315 || i == 316 || i == 317){
return true; return true;
@ -297,12 +289,12 @@ public class m {
{ {
if(!LoadProperties.useMySQL) if(!LoadProperties.useMySQL)
return; return;
String location = "plugins/mcMMO/mcmmo.users"; //$NON-NLS-1$ String location = "plugins/mcMMO/mcmmo.users";
try { try {
//Open the user file //Open the user file
FileReader file = new FileReader(location); FileReader file = new FileReader(location);
BufferedReader in = new BufferedReader(file); BufferedReader in = new BufferedReader(file);
String line = ""; //$NON-NLS-1$ String line = "";
String playerName = null, mining = null, party = null, miningXP = null, woodcutting = null, woodCuttingXP = null, repair = null, unarmed = null, herbalism = null, String playerName = null, mining = null, party = null, miningXP = null, woodcutting = null, woodCuttingXP = null, repair = null, unarmed = null, herbalism = null,
excavation = null, archery = null, swords = null, axes = null, acrobatics = null, repairXP = null, unarmedXP = null, herbalismXP = null, excavationXP = null, archeryXP = null, swordsXP = null, axesXP = null, excavation = null, archery = null, swords = null, axes = null, acrobatics = null, repairXP = null, unarmedXP = null, herbalismXP = null, excavationXP = null, archeryXP = null, swordsXP = null, axesXP = null,
acrobaticsXP = null, taming = null, tamingXP = null; acrobaticsXP = null, taming = null, tamingXP = null;
@ -310,10 +302,10 @@ public class m {
while((line = in.readLine()) != null) while((line = in.readLine()) != null)
{ {
//Find if the line contains the player we want. //Find if the line contains the player we want.
String[] character = line.split(":"); //$NON-NLS-1$ String[] character = line.split(":");
playerName = character[0]; playerName = character[0];
//Check for things we don't want put in the DB //Check for things we don't want put in the DB
if(playerName == null || playerName.equals("null") || playerName.equals("#Storage place for user information")) //$NON-NLS-1$ //$NON-NLS-2$ if(playerName == null || playerName.equals("null") || playerName.equals("#Storage place for user information"))
continue; continue;
//Get Mining //Get Mining
@ -366,7 +358,7 @@ public class m {
if(character.length > 25) if(character.length > 25)
tamingXP = character[25]; tamingXP = character[25];
//Check to see if the user is in the DB //Check to see if the user is in the DB
id = mcMMO.database.GetInt("SELECT id FROM "+LoadProperties.MySQLtablePrefix+"users WHERE user = '" + playerName + "'"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ id = mcMMO.database.GetInt("SELECT id FROM "+LoadProperties.MySQLtablePrefix+"users WHERE user = '" + playerName + "'");
//Prepare some variables //Prepare some variables
/* /*
if(myspawn != null && myspawn.length() > 0) if(myspawn != null && myspawn.length() > 0)
@ -385,542 +377,85 @@ public class m {
{ {
theCount++; theCount++;
//Update the skill values //Update the skill values
mcMMO.database.Write("UPDATE "+LoadProperties.MySQLtablePrefix+"users SET lastlogin = " + 0 + " WHERE id = " + id); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ mcMMO.database.Write("UPDATE "+LoadProperties.MySQLtablePrefix+"users SET lastlogin = " + 0 + " WHERE id = " + id);
//if(getDouble(x) > 0 && getDouble(y) > 0 && getDouble(z) > 0) //if(getDouble(x) > 0 && getDouble(y) > 0 && getDouble(z) > 0)
//mcMMO.database.Write("UPDATE "+LoadProperties.MySQLtablePrefix+"spawn SET world = '" + myspawnworld + "', x = " +getDouble(x)+", y = "+getDouble(y)+", z = "+getDouble(z)+" WHERE user_id = "+id); //mcMMO.database.Write("UPDATE "+LoadProperties.MySQLtablePrefix+"spawn SET world = '" + myspawnworld + "', x = " +getDouble(x)+", y = "+getDouble(y)+", z = "+getDouble(z)+" WHERE user_id = "+id);
mcMMO.database.Write("UPDATE "+LoadProperties.MySQLtablePrefix+"skills SET " //$NON-NLS-1$ //$NON-NLS-2$ mcMMO.database.Write("UPDATE "+LoadProperties.MySQLtablePrefix+"skills SET "
+" taming = taming+"+getInt(taming) //$NON-NLS-1$ +" taming = taming+"+getInt(taming)
+", mining = mining+"+getInt(mining) //$NON-NLS-1$ +", mining = mining+"+getInt(mining)
+", repair = repair+"+getInt(repair) //$NON-NLS-1$ +", repair = repair+"+getInt(repair)
+", woodcutting = woodcutting+"+getInt(woodcutting) //$NON-NLS-1$ +", woodcutting = woodcutting+"+getInt(woodcutting)
+", unarmed = unarmed+"+getInt(unarmed) //$NON-NLS-1$ +", unarmed = unarmed+"+getInt(unarmed)
+", herbalism = herbalism+"+getInt(herbalism) //$NON-NLS-1$ +", herbalism = herbalism+"+getInt(herbalism)
+", excavation = excavation+"+getInt(excavation) //$NON-NLS-1$ +", excavation = excavation+"+getInt(excavation)
+", archery = archery+" +getInt(archery) //$NON-NLS-1$ +", archery = archery+" +getInt(archery)
+", swords = swords+" +getInt(swords) //$NON-NLS-1$ +", swords = swords+" +getInt(swords)
+", axes = axes+"+getInt(axes) //$NON-NLS-1$ +", axes = axes+"+getInt(axes)
+", acrobatics = acrobatics+"+getInt(acrobatics) //$NON-NLS-1$ +", acrobatics = acrobatics+"+getInt(acrobatics)
+" WHERE user_id = "+id); //$NON-NLS-1$ +" WHERE user_id = "+id);
mcMMO.database.Write("UPDATE "+LoadProperties.MySQLtablePrefix+"experience SET " //$NON-NLS-1$ //$NON-NLS-2$ mcMMO.database.Write("UPDATE "+LoadProperties.MySQLtablePrefix+"experience SET "
+" taming = "+getInt(tamingXP) //$NON-NLS-1$ +" taming = "+getInt(tamingXP)
+", mining = "+getInt(miningXP) //$NON-NLS-1$ +", mining = "+getInt(miningXP)
+", repair = "+getInt(repairXP) //$NON-NLS-1$ +", repair = "+getInt(repairXP)
+", woodcutting = "+getInt(woodCuttingXP) //$NON-NLS-1$ +", woodcutting = "+getInt(woodCuttingXP)
+", unarmed = "+getInt(unarmedXP) //$NON-NLS-1$ +", unarmed = "+getInt(unarmedXP)
+", herbalism = "+getInt(herbalismXP) //$NON-NLS-1$ +", herbalism = "+getInt(herbalismXP)
+", excavation = "+getInt(excavationXP) //$NON-NLS-1$ +", excavation = "+getInt(excavationXP)
+", archery = " +getInt(archeryXP) //$NON-NLS-1$ +", archery = " +getInt(archeryXP)
+", swords = " +getInt(swordsXP) //$NON-NLS-1$ +", swords = " +getInt(swordsXP)
+", axes = "+getInt(axesXP) //$NON-NLS-1$ +", axes = "+getInt(axesXP)
+", acrobatics = "+getInt(acrobaticsXP) //$NON-NLS-1$ +", acrobatics = "+getInt(acrobaticsXP)
+" WHERE user_id = "+id); //$NON-NLS-1$ +" WHERE user_id = "+id);
} }
else else
{ {
theCount++; theCount++;
//Create the user in the DB //Create the user in the DB
mcMMO.database.Write("INSERT INTO "+LoadProperties.MySQLtablePrefix+"users (user, lastlogin) VALUES ('" + playerName + "'," + System.currentTimeMillis() / 1000 +")"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ mcMMO.database.Write("INSERT INTO "+LoadProperties.MySQLtablePrefix+"users (user, lastlogin) VALUES ('" + playerName + "'," + System.currentTimeMillis() / 1000 +")");
id = mcMMO.database.GetInt("SELECT id FROM "+LoadProperties.MySQLtablePrefix+"users WHERE user = '" + playerName + "'"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ id = mcMMO.database.GetInt("SELECT id FROM "+LoadProperties.MySQLtablePrefix+"users WHERE user = '" + playerName + "'");
mcMMO.database.Write("INSERT INTO "+LoadProperties.MySQLtablePrefix+"spawn (user_id) VALUES ("+id+")"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ mcMMO.database.Write("INSERT INTO "+LoadProperties.MySQLtablePrefix+"spawn (user_id) VALUES ("+id+")");
mcMMO.database.Write("INSERT INTO "+LoadProperties.MySQLtablePrefix+"skills (user_id) VALUES ("+id+")"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ mcMMO.database.Write("INSERT INTO "+LoadProperties.MySQLtablePrefix+"skills (user_id) VALUES ("+id+")");
mcMMO.database.Write("INSERT INTO "+LoadProperties.MySQLtablePrefix+"experience (user_id) VALUES ("+id+")"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ mcMMO.database.Write("INSERT INTO "+LoadProperties.MySQLtablePrefix+"experience (user_id) VALUES ("+id+")");
//Update the skill values //Update the skill values
mcMMO.database.Write("UPDATE "+LoadProperties.MySQLtablePrefix+"users SET lastlogin = " + 0 + " WHERE id = " + id); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ mcMMO.database.Write("UPDATE "+LoadProperties.MySQLtablePrefix+"users SET lastlogin = " + 0 + " WHERE id = " + id);
mcMMO.database.Write("UPDATE "+LoadProperties.MySQLtablePrefix+"users SET party = '"+party+"' WHERE id = " +id); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ mcMMO.database.Write("UPDATE "+LoadProperties.MySQLtablePrefix+"users SET party = '"+party+"' WHERE id = " +id);
/* /*
if(getDouble(x) > 0 && getDouble(y) > 0 && getDouble(z) > 0) if(getDouble(x) > 0 && getDouble(y) > 0 && getDouble(z) > 0)
mcMMO.database.Write("UPDATE "+LoadProperties.MySQLtablePrefix+"spawn SET world = '" + myspawnworld + "', x = " +getDouble(x)+", y = "+getDouble(y)+", z = "+getDouble(z)+" WHERE user_id = "+id); mcMMO.database.Write("UPDATE "+LoadProperties.MySQLtablePrefix+"spawn SET world = '" + myspawnworld + "', x = " +getDouble(x)+", y = "+getDouble(y)+", z = "+getDouble(z)+" WHERE user_id = "+id);
*/ */
mcMMO.database.Write("UPDATE "+LoadProperties.MySQLtablePrefix+"skills SET " //$NON-NLS-1$ //$NON-NLS-2$ mcMMO.database.Write("UPDATE "+LoadProperties.MySQLtablePrefix+"skills SET "
+" taming = "+getInt(taming) //$NON-NLS-1$ +" taming = "+getInt(taming)
+", mining = "+getInt(mining) //$NON-NLS-1$ +", mining = "+getInt(mining)
+", repair = "+getInt(repair) //$NON-NLS-1$ +", repair = "+getInt(repair)
+", woodcutting = "+getInt(woodcutting) //$NON-NLS-1$ +", woodcutting = "+getInt(woodcutting)
+", unarmed = "+getInt(unarmed) //$NON-NLS-1$ +", unarmed = "+getInt(unarmed)
+", herbalism = "+getInt(herbalism) //$NON-NLS-1$ +", herbalism = "+getInt(herbalism)
+", excavation = "+getInt(excavation) //$NON-NLS-1$ +", excavation = "+getInt(excavation)
+", archery = " +getInt(archery) //$NON-NLS-1$ +", archery = " +getInt(archery)
+", swords = " +getInt(swords) //$NON-NLS-1$ +", swords = " +getInt(swords)
+", axes = "+getInt(axes) //$NON-NLS-1$ +", axes = "+getInt(axes)
+", acrobatics = "+getInt(acrobatics) //$NON-NLS-1$ +", acrobatics = "+getInt(acrobatics)
+" WHERE user_id = "+id); //$NON-NLS-1$ +" WHERE user_id = "+id);
mcMMO.database.Write("UPDATE "+LoadProperties.MySQLtablePrefix+"experience SET " //$NON-NLS-1$ //$NON-NLS-2$ mcMMO.database.Write("UPDATE "+LoadProperties.MySQLtablePrefix+"experience SET "
+" taming = "+getInt(tamingXP) //$NON-NLS-1$ +" taming = "+getInt(tamingXP)
+", mining = "+getInt(miningXP) //$NON-NLS-1$ +", mining = "+getInt(miningXP)
+", repair = "+getInt(repairXP) //$NON-NLS-1$ +", repair = "+getInt(repairXP)
+", woodcutting = "+getInt(woodCuttingXP) //$NON-NLS-1$ +", woodcutting = "+getInt(woodCuttingXP)
+", unarmed = "+getInt(unarmedXP) //$NON-NLS-1$ +", unarmed = "+getInt(unarmedXP)
+", herbalism = "+getInt(herbalismXP) //$NON-NLS-1$ +", herbalism = "+getInt(herbalismXP)
+", excavation = "+getInt(excavationXP) //$NON-NLS-1$ +", excavation = "+getInt(excavationXP)
+", archery = " +getInt(archeryXP) //$NON-NLS-1$ +", archery = " +getInt(archeryXP)
+", swords = " +getInt(swordsXP) //$NON-NLS-1$ +", swords = " +getInt(swordsXP)
+", axes = "+getInt(axesXP) //$NON-NLS-1$ +", axes = "+getInt(axesXP)
+", acrobatics = "+getInt(acrobaticsXP) //$NON-NLS-1$ +", acrobatics = "+getInt(acrobaticsXP)
+" WHERE user_id = "+id); //$NON-NLS-1$ +" WHERE user_id = "+id);
} }
} }
System.out.println("[mcMMO] MySQL Updated from users file, "+theCount+" items added/updated to MySQL DB"); //$NON-NLS-1$ //$NON-NLS-2$ System.out.println("[mcMMO] MySQL Updated from users file, "+theCount+" items added/updated to MySQL DB");
in.close(); in.close();
} catch (Exception e) { } catch (Exception e) {
log.log(Level.SEVERE, "Exception while reading " //$NON-NLS-1$ log.log(Level.SEVERE, "Exception while reading "
+ location + " (Are you sure you formatted it correctly?)", e); //$NON-NLS-1$ + location + " (Are you sure you formatted it correctly?)", e);
}
}
public static void mmoHelpCheck(String[] split, Player player, PlayerChatEvent event){
PlayerProfile PP = Users.getProfile(player);
if(split[0].equalsIgnoreCase("/taming") || split[0].toLowerCase().equalsIgnoreCase("/"+Messages.getString("m.SkillTaming").toLowerCase())){ //$NON-NLS-1$
event.setCancelled(true);
float skillvalue = (float)PP.getSkill("taming");
String percentage = String.valueOf((skillvalue / 1000) * 100);
player.sendMessage(Messages.getString("m.SkillHeader", new Object[] {Messages.getString("m.SkillTaming")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.XPGain", new Object[] {Messages.getString("m.XPGainTaming")})); //$NON-NLS-1$
if(mcPermissions.getInstance().taming(player))
player.sendMessage(Messages.getString("m.LVL", new Object[] {PP.getSkillToString("taming"), PP.getSkillToString("tamingXP"), PP.getXpToLevel("taming")}));
player.sendMessage(Messages.getString("m.SkillHeader", new Object[] {Messages.getString("m.Effects")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsTaming1_0"), Messages.getString("m.EffectsTaming1_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsTaming2_0"), Messages.getString("m.EffectsTaming2_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsTaming3_0"), Messages.getString("m.EffectsTaming3_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsTaming4_0"), Messages.getString("m.EffectsTaming4_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsTaming5_0"), Messages.getString("m.EffectsTaming5_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsTaming6_0"), Messages.getString("m.EffectsTaming6_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.SkillHeader", new Object[] {Messages.getString("m.YourStats")})); //$NON-NLS-1$
if(PP.getSkill("taming") < 100)
player.sendMessage(Messages.getString("m.AbilityLockTemplate", new Object[] {Messages.getString("m.AbilLockTaming1")})); //$NON-NLS-1$
else
player.sendMessage(Messages.getString("m.AbilityBonusTemplate", new Object[] {Messages.getString("m.AbilBonusTaming1_0"), Messages.getString("m.AbilBonusTaming1_1")})); //$NON-NLS-1$
if(PP.getSkill("taming") < 250)
player.sendMessage(Messages.getString("m.AbilityLockTemplate", new Object[] {Messages.getString("m.AbilLockTaming2")})); //$NON-NLS-1$
else
player.sendMessage(Messages.getString("m.AbilityBonusTemplate", new Object[] {Messages.getString("m.AbilBonusTaming2_0"), Messages.getString("m.AbilBonusTaming2_1")})); //$NON-NLS-1$
if(PP.getSkill("taming") < 500)
player.sendMessage(Messages.getString("m.AbilityLockTemplate", new Object[] {Messages.getString("m.AbilLockTaming3")})); //$NON-NLS-1$
else
player.sendMessage(Messages.getString("m.AbilityBonusTemplate", new Object[] {Messages.getString("m.AbilBonusTaming3_0"), Messages.getString("m.AbilBonusTaming3_1")})); //$NON-NLS-1$
if(PP.getSkill("taming") < 750)
player.sendMessage(Messages.getString("m.AbilityLockTemplate", new Object[] {Messages.getString("m.AbilLockTaming4")})); //$NON-NLS-1$
else
player.sendMessage(Messages.getString("m.AbilityBonusTemplate", new Object[] {Messages.getString("m.AbilBonusTaming4_0"), Messages.getString("m.AbilBonusTaming4_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.TamingGoreChance", new Object[] {percentage})); //$NON-NLS-1$
}
if(split[0].equalsIgnoreCase("/woodcutting") || split[0].toLowerCase().equalsIgnoreCase("/"+Messages.getString("m.SkillWoodCutting").toLowerCase())){ //$NON-NLS-1$
event.setCancelled(true);
float skillvalue = (float)PP.getSkill("woodcutting");
int ticks = 2;
int x = PP.getSkill("woodcutting");
while(x >= 50){
x-=50;
ticks++;
}
String percentage = String.valueOf((skillvalue / 1000) * 100);
player.sendMessage(Messages.getString("m.SkillHeader", new Object[] {Messages.getString("m.SkillWoodCutting")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.XPGain", new Object[] {Messages.getString("m.XPGainWoodCutting")})); //$NON-NLS-1$
if(mcPermissions.getInstance().woodcutting(player))
player.sendMessage(Messages.getString("m.LVL", new Object[] {PP.getSkillToString("woodcutting"), PP.getSkillToString("woodcuttingXP"), PP.getXpToLevel("woodcutting")}));
player.sendMessage(Messages.getString("m.SkillHeader", new Object[] {Messages.getString("m.Effects")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsWoodCutting1_0"), Messages.getString("m.EffectsWoodCutting1_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsWoodCutting2_0"), Messages.getString("m.EffectsWoodCutting2_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsWoodCutting3_0"), Messages.getString("m.EffectsWoodCutting3_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.SkillHeader", new Object[] {Messages.getString("m.YourStats")})); //$NON-NLS-1$
if(PP.getSkill("woodcutting") < 100)
player.sendMessage(Messages.getString("m.AbilityLockTemplate", new Object[] {Messages.getString("m.AbilLockWoodCutting1")})); //$NON-NLS-1$
else
player.sendMessage(Messages.getString("m.AbilityBonusTemplate", new Object[] {Messages.getString("m.AbilBonusWoodCutting1_0"), Messages.getString("m.AbilBonusWoodCutting1_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.WoodCuttingDoubleDropChance", new Object[] {percentage})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.WoodCuttingTreeFellerLength", new Object[] {ticks})); //$NON-NLS-1$
}
if(split[0].equalsIgnoreCase("/archery") || split[0].toLowerCase().equalsIgnoreCase("/"+Messages.getString("m.SkillArchery").toLowerCase())){ //$NON-NLS-1$
event.setCancelled(true);
Integer rank = 0;
if(PP.getSkill("archery") >= 50)
rank++;
if(PP.getSkill("archery") >= 250)
rank++;
if(PP.getSkill("archery") >= 575)
rank++;
if(PP.getSkill("archery") >= 725)
rank++;
if(PP.getSkill("archery") >= 1000)
rank++;
float skillvalue = (float)PP.getSkill("archery");
String percentage = String.valueOf((skillvalue / 1000) * 100);
int ignition = 20;
if(PP.getSkill("archery") >= 200)
ignition+=20;
if(PP.getSkill("archery") >= 400)
ignition+=20;
if(PP.getSkill("archery") >= 600)
ignition+=20;
if(PP.getSkill("archery") >= 800)
ignition+=20;
if(PP.getSkill("archery") >= 1000)
ignition+=20;
String percentagedaze;
if(PP.getSkill("archery") < 1000){
percentagedaze = String.valueOf((skillvalue / 2000) * 100);
} else {
percentagedaze = "50"; //$NON-NLS-1$
}
player.sendMessage(Messages.getString("m.SkillHeader", new Object[] {Messages.getString("m.SkillArchery")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.XPGain", new Object[] {Messages.getString("m.XPGainArchery")})); //$NON-NLS-1$
if(mcPermissions.getInstance().archery(player))
player.sendMessage(Messages.getString("m.LVL", new Object[] {PP.getSkillToString("archery"), PP.getSkillToString("archeryXP"), PP.getXpToLevel("archery")}));
player.sendMessage(Messages.getString("m.SkillHeader", new Object[] {Messages.getString("m.Effects")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsArchery1_0"), Messages.getString("m.EffectsArchery1_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsArchery2_0"), Messages.getString("m.EffectsArchery2_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsArchery3_0"), Messages.getString("m.EffectsArchery3_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsArchery4_0"), Messages.getString("m.EffectsArchery4_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.SkillHeader", new Object[] {Messages.getString("m.YourStats")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.ArcheryDazeChance", new Object[] {percentagedaze})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.ArcheryRetrieveChance", new Object[] {percentage})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.ArcheryIgnitionLength", new Object[] {(ignition / 20)})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.ArcheryDamagePlus", new Object[] {rank})); //$NON-NLS-1$
}
if(split[0].equalsIgnoreCase("/axes") || split[0].toLowerCase().equalsIgnoreCase("/"+Messages.getString("m.SkillAxes"))){ //$NON-NLS-1$
event.setCancelled(true);
String percentage;
float skillvalue = (float)PP.getSkill("axes");
if(PP.getSkill("axes") < 750){
percentage = String.valueOf((skillvalue / 1000) * 100);
} else {
percentage = "75"; //$NON-NLS-1$
}
int ticks = 2;
int x = PP.getSkill("axes");
while(x >= 50){
x-=50;
ticks++;
}
player.sendMessage(Messages.getString("m.SkillHeader", new Object[] {Messages.getString("m.SkillAxes")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.XPGain", new Object[] {Messages.getString("m.XPGainAxes")})); //$NON-NLS-1$
if(mcPermissions.getInstance().axes(player))
player.sendMessage(Messages.getString("m.LVL", new Object[] {PP.getSkillToString("axes"), PP.getSkillToString("axesXP"), PP.getXpToLevel("axes")}));
player.sendMessage(Messages.getString("m.SkillHeader", new Object[] {Messages.getString("m.Effects")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsAxes1_0"), Messages.getString("m.EffectsAxes1_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsAxes2_0"), Messages.getString("m.EffectsAxes2_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsAxes3_0"), Messages.getString("m.EffectsAxes3_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.SkillHeader", new Object[] {Messages.getString("m.YourStats")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.AxesCritChance", new Object[] {percentage})); //$NON-NLS-1$
if(PP.getSkill("axes") < 500){
player.sendMessage(Messages.getString("m.AbilityLockTemplate", new Object[] {Messages.getString("m.AbilLockAxes1")})); //$NON-NLS-1$
} else {
player.sendMessage(Messages.getString("m.AbilityBonusTemplate", new Object[] {Messages.getString("m.AbilBonusAxes1_0"), Messages.getString("m.AbilBonusAxes1_1")})); //$NON-NLS-1$
}
player.sendMessage(Messages.getString("m.AxesSkullLength", new Object[] {ticks})); //$NON-NLS-1$
}
if(split[0].equalsIgnoreCase("/swords") || split[0].toLowerCase().equalsIgnoreCase("/"+Messages.getString("m.SkillSwords").toLowerCase())){ //$NON-NLS-1$
event.setCancelled(true);
int bleedrank = 2;
String percentage, parrypercentage = null, counterattackpercentage;
float skillvalue = (float)PP.getSkill("swords");
if(PP.getSkill("swords") < 750){
percentage = String.valueOf((skillvalue / 1000) * 100);
} else {
percentage = "75"; //$NON-NLS-1$
}
if(skillvalue >= 750)
bleedrank+=1;
if(PP.getSkill("swords") <= 900){
parrypercentage = String.valueOf((skillvalue / 3000) * 100);
} else {
parrypercentage = "30"; //$NON-NLS-1$
}
if(PP.getSkill("swords") <= 600){
counterattackpercentage = String.valueOf((skillvalue / 2000) * 100);
} else {
counterattackpercentage = "30"; //$NON-NLS-1$
}
int ticks = 2;
int x = PP.getSkill("swords");
while(x >= 50){
x-=50;
ticks++;
}
player.sendMessage(Messages.getString("m.SkillHeader", new Object[] {Messages.getString("m.SkillSwords")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.XPGain", new Object[] {Messages.getString("m.XPGainSwords")})); //$NON-NLS-1$
if(mcPermissions.getInstance().swords(player))
player.sendMessage(Messages.getString("m.LVL", new Object[] {PP.getSkillToString("swords"), PP.getSkillToString("swordsXP"), PP.getXpToLevel("swords")}));
player.sendMessage(Messages.getString("m.SkillHeader", new Object[] {Messages.getString("m.Effects")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsSwords1_0"), Messages.getString("m.EffectsSwords1_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsSwords2_0"), Messages.getString("m.EffectsSwords2_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsSwords3_0"), Messages.getString("m.EffectsSwords3_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsSwords4_0"), Messages.getString("m.EffectsSwords4_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsSwords5_0"), Messages.getString("m.EffectsSwords5_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.SkillHeader", new Object[] {Messages.getString("m.YourStats")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.SwordsCounterAttChance", new Object[] {counterattackpercentage})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.SwordsBleedLength", new Object[] {bleedrank})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.SwordsTickNote")); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.SwordsBleedLength", new Object[] {percentage})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.SwordsParryChance", new Object[] {parrypercentage})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.SwordsSSLength", new Object[] {ticks})); //$NON-NLS-1$
}
if(split[0].equalsIgnoreCase("/acrobatics") || split[0].toLowerCase().equalsIgnoreCase("/"+Messages.getString("m.SkillAcrobatics").toLowerCase())){ //$NON-NLS-1$
event.setCancelled(true);
String dodgepercentage;
float skillvalue = (float)PP.getSkill("acrobatics");
String percentage = String.valueOf((skillvalue / 1000) * 100);
String gracepercentage = String.valueOf(((skillvalue / 1000) * 100) * 2);
if(PP.getSkill("acrobatics") <= 800){
dodgepercentage = String.valueOf((skillvalue / 4000 * 100));
} else {
dodgepercentage = "20";
}
player.sendMessage(Messages.getString("m.SkillHeader", new Object[] {Messages.getString("m.SkillAcrobatics")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.XPGain", new Object[] {Messages.getString("m.XPGainAcrobatics")})); //$NON-NLS-1$
if(mcPermissions.getInstance().acrobatics(player))
player.sendMessage(Messages.getString("m.LVL", new Object[] {PP.getSkillToString("acrobatics"), PP.getSkillToString("acrobaticsXP"), PP.getXpToLevel("acrobatics")}));
player.sendMessage(Messages.getString("m.SkillHeader", new Object[] {Messages.getString("m.Effects")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsAcrobatics1_0"), Messages.getString("m.EffectsAcrobatics1_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsAcrobatics2_0"), Messages.getString("m.EffectsAcrobatics2_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsAcrobatics3_0"), Messages.getString("m.EffectsAcrobatics3_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.SkillHeader", new Object[] {Messages.getString("m.YourStats")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.AcrobaticsRollChance", new Object[] {percentage})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.AcrobaticsGracefulRollChance", new Object[] {gracepercentage})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.AcrobaticsDodgeChance", new Object[] {dodgepercentage})); //$NON-NLS-1$
}
if(split[0].equalsIgnoreCase("/mining") || split[0].toLowerCase().equalsIgnoreCase("/"+Messages.getString("m.SkillMining"))){ //$NON-NLS-1$
float skillvalue = (float)PP.getSkill("mining");
String percentage = String.valueOf((skillvalue / 1000) * 100);
int ticks = 2;
int x = PP.getSkill("mining");
while(x >= 50){
x-=50;
ticks++;
}
event.setCancelled(true);
player.sendMessage(Messages.getString("m.SkillHeader", new Object[] {Messages.getString("m.SkillMining")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.XPGain", new Object[] {Messages.getString("m.XPGainMining")})); //$NON-NLS-1$
if(mcPermissions.getInstance().mining(player))
player.sendMessage(Messages.getString("m.LVL", new Object[] {PP.getSkillToString("mining"), PP.getSkillToString("miningXP"), PP.getXpToLevel("mining")}));
player.sendMessage(Messages.getString("m.SkillHeader", new Object[] {Messages.getString("m.Effects")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsMining1_0"), Messages.getString("m.EffectsMining1_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsMining2_0"), Messages.getString("m.EffectsMining2_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.SkillHeader", new Object[] {Messages.getString("m.YourStats")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.MiningDoubleDropChance", new Object[] {percentage})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.MiningSuperBreakerLength", new Object[] {ticks})); //$NON-NLS-1$
}
if(split[0].equalsIgnoreCase("/repair") || split[0].toLowerCase().equalsIgnoreCase("/"+Messages.getString("m.SkillRepair").toLowerCase())){ //$NON-NLS-1$
float skillvalue = (float)PP.getSkill("repair");
String percentage = String.valueOf((skillvalue / 1000) * 100);
String repairmastery = String.valueOf((skillvalue / 500) * 100);
event.setCancelled(true);
player.sendMessage(Messages.getString("m.SkillHeader", new Object[] {Messages.getString("m.SkillRepair")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.XPGain", new Object[] {Messages.getString("m.XPGainRepair")})); //$NON-NLS-1$
if(mcPermissions.getInstance().repair(player))
player.sendMessage(Messages.getString("m.LVL", new Object[] {PP.getSkillToString("repair"), PP.getSkillToString("repairXP"), PP.getXpToLevel("repair")}));
player.sendMessage(Messages.getString("m.SkillHeader", new Object[] {Messages.getString("m.Effects")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsRepair1_0"), Messages.getString("m.EffectsRepair1_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsRepair2_0"), Messages.getString("m.EffectsRepair2_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsRepair3_0"), Messages.getString("m.EffectsRepair3_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsRepair4_0", new Object[]{LoadProperties.repairdiamondlevel}), Messages.getString("m.EffectsRepair4_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.SkillHeader", new Object[] {Messages.getString("m.YourStats")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.RepairRepairMastery", new Object[] {repairmastery})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.RepairSuperRepairChance", new Object[] {percentage})); //$NON-NLS-1$
}
if(split[0].equalsIgnoreCase("/unarmed")){ //$NON-NLS-1$
event.setCancelled(true);
String percentage, arrowpercentage;
float skillvalue = (float)PP.getSkill("unarmed");
if(PP.getSkill("unarmed") < 1000){
percentage = String.valueOf((skillvalue / 4000) * 100);
} else {
percentage = "25"; //$NON-NLS-1$
}
if(PP.getSkill("unarmed") < 1000){
arrowpercentage = String.valueOf(((skillvalue / 1000) * 100) / 2);
} else {
arrowpercentage = "50"; //$NON-NLS-1$
}
int ticks = 2;
int x = PP.getSkill("unarmed");
while(x >= 50){
x-=50;
ticks++;
}
player.sendMessage(Messages.getString("m.SkillHeader", new Object[] {Messages.getString("m.SkillUnarmed")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.XPGain", new Object[] {Messages.getString("m.XPGainUnarmed")})); //$NON-NLS-1$
if(mcPermissions.getInstance().unarmed(player))
player.sendMessage(Messages.getString("m.LVL", new Object[] {PP.getSkillToString("unarmed"), PP.getSkillToString("unarmedXP"), PP.getXpToLevel("unarmed")}));
player.sendMessage(Messages.getString("m.SkillHeader", new Object[] {Messages.getString("m.Effects")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsUnarmed1_0"), Messages.getString("m.EffectsUnarmed1_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsUnarmed2_0"), Messages.getString("m.EffectsUnarmed2_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsUnarmed3_0"), Messages.getString("m.EffectsUnarmed3_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsUnarmed4_0"), Messages.getString("m.EffectsUnarmed4_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsUnarmed5_0"), Messages.getString("m.EffectsUnarmed5_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.SkillHeader", new Object[] {Messages.getString("m.YourStats")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.UnarmedArrowDeflectChance", new Object[] {arrowpercentage})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.UnarmedDisarmChance", new Object[] {percentage})); //$NON-NLS-1$
if(PP.getSkill("unarmed") < 250){
player.sendMessage(Messages.getString("m.AbilityLockTemplate", new Object[] {Messages.getString("m.AbilLockUnarmed1")})); //$NON-NLS-1$
} else if(PP.getSkill("unarmed") >= 250 && PP.getSkill("unarmed") < 500){
player.sendMessage(Messages.getString("m.AbilityBonusTemplate", new Object[] {Messages.getString("m.AbilBonusUnarmed1_0"), Messages.getString("m.AbilBonusUnarmed1_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.AbilityLockTemplate", new Object[] {Messages.getString("m.AbilLockUnarmed2")})); //$NON-NLS-1$
} else {
player.sendMessage(Messages.getString("m.AbilityBonusTemplate", new Object[] {Messages.getString("m.AbilBonusUnarmed2_0"), Messages.getString("m.AbilBonusUnarmed2_1")})); //$NON-NLS-1$
}
player.sendMessage(Messages.getString("m.UnarmedBerserkLength", new Object[] {ticks})); //$NON-NLS-1$
}
if(split[0].equalsIgnoreCase("/herbalism") || split[0].toLowerCase().equalsIgnoreCase("/"+Messages.getString("m.SkillHerbalism").toLowerCase())){ //$NON-NLS-1$
event.setCancelled(true);
int rank = 0;
if(PP.getSkill("herbalism") >= 50)
rank++;
if (PP.getSkill("herbalism") >= 150)
rank++;
if (PP.getSkill("herbalism") >= 250)
rank++;
if (PP.getSkill("herbalism") >= 350)
rank++;
if (PP.getSkill("herbalism") >= 450)
rank++;
if (PP.getSkill("herbalism") >= 550)
rank++;
if (PP.getSkill("herbalism") >= 650)
rank++;
if (PP.getSkill("herbalism") >= 750)
rank++;
int bonus = 0;
if(PP.getSkill("herbalism") >= 200)
bonus++;
if(PP.getSkill("herbalism") >= 400)
bonus++;
if(PP.getSkill("herbalism") >= 600)
bonus++;
int ticks = 2;
int x = PP.getSkill("herbalism");
while(x >= 50){
x-=50;
ticks++;
}
float skillvalue = (float)PP.getSkill("herbalism");
String percentage = String.valueOf((skillvalue / 1000) * 100);
String gpercentage = String.valueOf((skillvalue / 1500) * 100);
player.sendMessage(Messages.getString("m.SkillHeader", new Object[] {Messages.getString("m.SkillHerbalism")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.XPGain", new Object[] {Messages.getString("m.XPGainHerbalism")})); //$NON-NLS-1$
if(mcPermissions.getInstance().herbalism(player))
player.sendMessage(Messages.getString("m.LVL", new Object[] {PP.getSkillToString("herbalism"), PP.getSkillToString("herbalismXP"), PP.getXpToLevel("herbalism")}));
player.sendMessage(Messages.getString("m.SkillHeader", new Object[] {Messages.getString("m.Effects")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsHerbalism1_0"), Messages.getString("m.EffectsHerbalism1_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsHerbalism2_0"), Messages.getString("m.EffectsHerbalism2_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsHerbalism3_0"), Messages.getString("m.EffectsHerbalism3_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsHerbalism4_0"), Messages.getString("m.EffectsHerbalism4_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsHerbalism5_0"), Messages.getString("m.EffectsHerbalism5_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.SkillHeader", new Object[] {Messages.getString("m.YourStats")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.HerbalismGreenTerraLength", new Object[] {ticks})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.HerbalismGreenThumbChance", new Object[] {gpercentage})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.HerbalismGreenThumbStage", new Object[] {bonus})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.HerbalismDoubleDropChance", new Object[] {percentage})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.HerbalismFoodPlus", new Object[] {rank})); //$NON-NLS-1$
}
if(split[0].equalsIgnoreCase("/excavation") || split[0].toLowerCase().equalsIgnoreCase("/"+Messages.getString("m.SkillExcavation").toLowerCase())) //$NON-NLS-1$
{
event.setCancelled(true);
int ticks = 2;
int x = PP.getSkill("excavation");
while(x >= 50){
x-=50;
ticks++;
}
player.sendMessage(Messages.getString("m.SkillHeader", new Object[] {Messages.getString("m.SkillExcavation")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.XPGain", new Object[] {Messages.getString("m.XPGainExcavation")})); //$NON-NLS-1$
if(mcPermissions.getInstance().excavation(player))
player.sendMessage(Messages.getString("m.LVL", new Object[] {PP.getSkillToString("excavation"), PP.getSkillToString("excavationXP"), PP.getXpToLevel("excavation")}));
player.sendMessage(Messages.getString("m.SkillHeader", new Object[] {Messages.getString("m.Effects")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsExcavation1_0"), Messages.getString("m.EffectsExcavation1_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsExcavation2_0"), Messages.getString("m.EffectsExcavation2_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.SkillHeader", new Object[] {Messages.getString("m.YourStats")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.ExcavationGreenTerraLength", new Object[] {ticks})); //$NON-NLS-1$
}
if(split[0].equalsIgnoreCase("/sorcery") || split[0].toLowerCase().equalsIgnoreCase("/"+Messages.getString("m.SkillSorcery").toLowerCase())) //$NON-NLS-1$
{
event.setCancelled(true);
/*
player.sendMessage(Messages.getString("m.SkillHeader", new Object[] {Messages.getString("m.SkillExcavation")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.XPGain", new Object[] {Messages.getString("m.XPGainExcavation")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.SkillHeader", new Object[] {Messages.getString("m.Effects")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsExcavation1_0"), Messages.getString("m.EffectsExcavation1_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.EffectsTemplate", new Object[] {Messages.getString("m.EffectsExcavation2_0"), Messages.getString("m.EffectsExcavation2_1")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.SkillHeader", new Object[] {Messages.getString("m.YourStats")})); //$NON-NLS-1$
player.sendMessage(Messages.getString("m.ExcavationGreenTerraLength", new Object[] {ticks})); //$NON-NLS-1$
*/
}
if(LoadProperties.mcmmoEnable && split[0].equalsIgnoreCase("/"+LoadProperties.mcmmo)){
event.setCancelled(true);
player.sendMessage(ChatColor.RED+"-----[]"+ChatColor.GREEN+"mMO"+ChatColor.RED+"[]-----");
player.sendMessage(ChatColor.YELLOW+"mcMMO is an RPG server mod for minecraft.");
player.sendMessage(ChatColor.YELLOW+"There are many skills added by mcMMO to minecraft.");
player.sendMessage(ChatColor.YELLOW+"They can do anything from giving a chance");
player.sendMessage(ChatColor.YELLOW+"for double drops to letting you break materials instantly.");
player.sendMessage(ChatColor.YELLOW+"For example, by harvesting logs from trees you will gain");
player.sendMessage(ChatColor.YELLOW+"Woodcutting xp and once you have enough xp you will gain");
player.sendMessage(ChatColor.YELLOW+"a skill level in Woodcutting. By raising this skill you will");
player.sendMessage(ChatColor.YELLOW+"be able to receive benefits like "+ChatColor.RED+"double drops");
player.sendMessage(ChatColor.YELLOW+"and increase the effects of the "+ChatColor.RED+"\"Tree Felling\""+ChatColor.YELLOW+" ability.");
player.sendMessage(ChatColor.YELLOW+"mMO has abilities related to the skill, skills normally");
player.sendMessage(ChatColor.YELLOW+"provide passive bonuses but they also have activated");
player.sendMessage(ChatColor.YELLOW+"abilities too. Each ability is activated by holding");
player.sendMessage(ChatColor.YELLOW+"the appropriate tool and "+ChatColor.RED+"right clicking.");
player.sendMessage(ChatColor.YELLOW+"For example, if you hold a Mining Pick and right click");
player.sendMessage(ChatColor.YELLOW+"you will ready your Pickaxe, attack mining materials");
player.sendMessage(ChatColor.YELLOW+"and then "+ChatColor.RED+"Super Breaker "+ChatColor.YELLOW+"will activate.");
player.sendMessage(ChatColor.GREEN+"Find out mcMMO commands with "+ChatColor.DARK_AQUA+"/"+LoadProperties.mcc);
player.sendMessage(ChatColor.GREEN+"You can donate via paypal to"+ChatColor.DARK_RED+" nossr50@gmail.com");
}
if(LoadProperties.mccEnable && split[0].equalsIgnoreCase("/"+LoadProperties.mcc)){
event.setCancelled(true);
player.sendMessage(ChatColor.RED+"---[]"+ChatColor.YELLOW+"mcMMO Commands"+ChatColor.RED+"[]---");
if(mcPermissions.getInstance().party(player)){
player.sendMessage(Messages.getString("m.mccPartyCommands"));
player.sendMessage("/"+LoadProperties.party+" "+Messages.getString("m.mccParty"));
player.sendMessage("/"+LoadProperties.party+" q "+Messages.getString("m.mccPartyQ"));
if(mcPermissions.getInstance().partyChat(player))
player.sendMessage("/p "+Messages.getString("m.mccPartyToggle"));
player.sendMessage("/"+LoadProperties.invite+" "+Messages.getString("m.mccPartyInvite"));
player.sendMessage("/"+LoadProperties.accept+" "+Messages.getString("m.mccPartyAccept"));
if(mcPermissions.getInstance().partyTeleport(player))
player.sendMessage("/"+LoadProperties.ptp+" "+Messages.getString("m.mccPartyTeleport"));
}
player.sendMessage(Messages.getString("m.mccOtherCommands"));
player.sendMessage("/"+LoadProperties.stats+ChatColor.RED+" "+Messages.getString("m.mccStats"));
player.sendMessage("/mctop <skillname> <page> "+ChatColor.RED+Messages.getString("m.mccLeaderboards"));
if(mcPermissions.getInstance().mySpawn(player)){
player.sendMessage("/"+LoadProperties.myspawn+" "+ChatColor.RED+Messages.getString("m.mccMySpawn"));
player.sendMessage("/"+LoadProperties.clearmyspawn+" "+ChatColor.RED+Messages.getString("m.mccClearMySpawn"));
}
if(mcPermissions.getInstance().mcAbility(player))
player.sendMessage("/"+LoadProperties.mcability+ChatColor.RED+" "+Messages.getString("m.mccToggleAbility"));
if(mcPermissions.getInstance().adminChat(player)){
player.sendMessage("/a "+ChatColor.RED+Messages.getString("m.mccAdminToggle"));
}
if(mcPermissions.getInstance().whois(player))
player.sendMessage("/"+LoadProperties.whois+" "+Messages.getString("m.mccWhois"));
if(mcPermissions.getInstance().mmoedit(player)){
//player.sendMessage("/"+LoadProperties.mmoedit+" [skill] [newvalue] "+ChatColor.RED+"Modify the designated skill value");
player.sendMessage("/"+LoadProperties.mmoedit+Messages.getString("m.mccMmoedit"));
}
if(mcPermissions.getInstance().mcgod(player))
player.sendMessage("/"+LoadProperties.mcgod+ChatColor.RED+" "+Messages.getString("m.mccMcGod"));
player.sendMessage("/"+Messages.getString("m.mccSkillInfo"));
player.sendMessage("/"+LoadProperties.mcmmo+" "+Messages.getString("m.mccModDescription"));
} }
} }
} }

File diff suppressed because it is too large Load Diff

View File

@ -8,27 +8,36 @@ import org.bukkit.entity.Player;
import org.bukkit.plugin.Plugin; import org.bukkit.plugin.Plugin;
import com.nijikokun.bukkit.Permissions.Permissions; import com.nijikokun.bukkit.Permissions.Permissions;
public class mcPermissions { public class mcPermissions
//Thanks to myWarp source code for helping me figure this shit out! {
private static Permissions permissionsPlugin; private static Permissions permissionsPlugin;
public static boolean permissionsEnabled = false; public static boolean permissionsEnabled = false;
private static volatile mcPermissions instance; private static volatile mcPermissions instance;
public static void initialize(Server server) { public static void initialize(Server server)
{
Plugin test = server.getPluginManager().getPlugin("Permissions"); Plugin test = server.getPluginManager().getPlugin("Permissions");
if (test != null) { if (test != null)
{
Logger log = Logger.getLogger("Minecraft"); Logger log = Logger.getLogger("Minecraft");
permissionsPlugin = ((Permissions) test); permissionsPlugin = ((Permissions) test);
permissionsEnabled = true; permissionsEnabled = true;
log.log(Level.INFO, "[mcMMO] Permissions enabled."); log.log(Level.INFO, "[mcMMO] Permissions enabled.");
} else { } else
{
Logger log = Logger.getLogger("Minecraft"); Logger log = Logger.getLogger("Minecraft");
log.log(Level.SEVERE, "[mcMMO] Permissions isn't loaded, there are no restrictions."); log.log(Level.SEVERE, "[mcMMO] Permissions isn't loaded, there are no restrictions.");
} }
} }
private static boolean permission(Player player, String string) { public static boolean getEnabled()
return permissionsPlugin.Security.permission(player, string); {
return permissionsEnabled;
}
private static boolean permission(Player player, String string)
{
return permissionsPlugin.getHandler().has(player, string);
} }
public boolean admin(Player player){ public boolean admin(Player player){
if (permissionsEnabled) { if (permissionsEnabled) {

View File

@ -21,7 +21,6 @@ public class mcTimer extends TimerTask
public void run() public void run()
{ {
long before = System.currentTimeMillis();
for(Player player : plugin.getServer().getOnlinePlayers()) for(Player player : plugin.getServer().getOnlinePlayers())
{ {
if(player == null) if(player == null)
@ -107,15 +106,5 @@ public class mcTimer extends TimerTask
thecount++; thecount++;
if(thecount >= 41) if(thecount >= 41)
thecount = 1; thecount = 1;
if(LoadProperties.print_reports)
{
long after = System.currentTimeMillis();
plugin.mcTimerx+=(after-before);
if(thecount == 40)
plugin.printDelays();
}
} }
} }

View File

@ -2,55 +2,71 @@ package com.gmail.nossr50.party;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;
import com.gmail.nossr50.Messages;
import com.gmail.nossr50.Users; import com.gmail.nossr50.Users;
import com.gmail.nossr50.mcMMO; import com.gmail.nossr50.mcMMO;
import com.gmail.nossr50.locale.mcLocale;
public class Party { public class Party
{
private static mcMMO plugin; private static mcMMO plugin;
public Party(mcMMO instance) { public Party(mcMMO instance)
{
plugin = instance; plugin = instance;
} }
private static volatile Party instance; private static volatile Party instance;
public static Party getInstance() { public static Party getInstance()
if (instance == null) { {
if (instance == null)
{
instance = new Party(plugin); instance = new Party(plugin);
} }
return instance; return instance;
} }
public boolean inSameParty(Player playera, Player playerb){ public boolean inSameParty(Player playera, Player playerb){
if(Users.getProfile(playera) == null || Users.getProfile(playerb) == null){ if(Users.getProfile(playera) == null || Users.getProfile(playerb) == null)
{
Users.addUser(playera); Users.addUser(playera);
Users.addUser(playerb); Users.addUser(playerb);
} }
if(Users.getProfile(playera).inParty() && Users.getProfile(playerb).inParty()){ if(Users.getProfile(playera).inParty() && Users.getProfile(playerb).inParty())
if(Users.getProfile(playera).getParty().equals(Users.getProfile(playerb).getParty())){ {
if(Users.getProfile(playera).getParty().equals(Users.getProfile(playerb).getParty()))
{
return true; return true;
} else { } else
{
return false; return false;
} }
} else { } else
{
return false; return false;
} }
} }
public int partyCount(Player player, Player[] players){ public int partyCount(Player player, Player[] players)
{
int x = 0; int x = 0;
for(Player hurrdurr : players){ for(Player hurrdurr : players)
if(player != null && hurrdurr != null){ {
if(player != null && hurrdurr != null)
{
if(Users.getProfile(player).getParty().equals(Users.getProfile(hurrdurr).getParty())) if(Users.getProfile(player).getParty().equals(Users.getProfile(hurrdurr).getParty()))
x++; x++;
} }
} }
return x; return x;
} }
public void informPartyMembers(Player player, Player[] players){ public void informPartyMembers(Player player, Player[] players)
{
int x = 0; int x = 0;
for(Player p : players){ for(Player p : players)
if(player != null && p != null){ {
if(inSameParty(player, p) && !p.getName().equals(player.getName())){ if(player != null && p != null)
p.sendMessage(Messages.getString("Party.InformedOnJoin", new Object[] {player.getName()})); {
if(inSameParty(player, p) && !p.getName().equals(player.getName()))
{
p.sendMessage(mcLocale.getString("Party.InformedOnJoin", new Object[] {player.getName()}));
x++; x++;
} }
} }
@ -63,7 +79,7 @@ public class Party {
if(player != null && p != null){ if(player != null && p != null){
if(inSameParty(player, p) && !p.getName().equals(player.getName())) if(inSameParty(player, p) && !p.getName().equals(player.getName()))
{ {
p.sendMessage(Messages.getString("Party.InformedOnQuit", new Object[] {player.getName()})); p.sendMessage(mcLocale.getString("Party.InformedOnQuit", new Object[] {player.getName()}));
x++; x++;
} }
} }

View File

@ -1,5 +1,99 @@
package com.gmail.nossr50.skills; package com.gmail.nossr50.skills;
public class Archery { import org.bukkit.Location;
import org.bukkit.entity.Entity;
import org.bukkit.entity.Player;
import org.bukkit.event.entity.EntityDamageByProjectileEvent;
import com.gmail.nossr50.Users;
import com.gmail.nossr50.mcMMO;
import com.gmail.nossr50.datatypes.PlayerProfile;
import com.gmail.nossr50.locale.mcLocale;
import com.gmail.nossr50.party.Party;
public class Archery
{
public static void trackArrows(mcMMO pluginx, Entity x, EntityDamageByProjectileEvent event, Player attacker)
{
PlayerProfile PPa = Users.getProfile(attacker);
if(!pluginx.misc.arrowTracker.containsKey(x) && event.getDamage() > 0)
{
pluginx.misc.arrowTracker.put(x, 0);
if(attacker != null)
{
if(Math.random() * 1000 <= PPa.getSkill("archery"))
{
pluginx.misc.arrowTracker.put(x, 1);
}
}
} else
{
if(event.getDamage() > 0)
{
if(attacker != null)
{
if(Math.random() * 1000 <= PPa.getSkill("archery"))
{
pluginx.misc.arrowTracker.put(x, 1);
}
}
}
}
}
public static void ignitionCheck(Entity x, EntityDamageByProjectileEvent event, Player attacker)
{
PlayerProfile PPa = Users.getProfile(attacker);
if(Math.random() * 100 >= 75)
{
int ignition = 20;
if(PPa.getSkill("archery") >= 200)
ignition+=20;
if(PPa.getSkill("archery") >= 400)
ignition+=20;
if(PPa.getSkill("archery") >= 600)
ignition+=20;
if(PPa.getSkill("archery") >= 800)
ignition+=20;
if(PPa.getSkill("archery") >= 1000)
ignition+=20;
if(x instanceof Player)
{
Player Defender = (Player)x;
if(!Party.getInstance().inSameParty(attacker, Defender))
{
event.getEntity().setFireTicks(ignition);
attacker.sendMessage(mcLocale.getString("Combat.Ignition")); //$NON-NLS-1$
Defender.sendMessage(mcLocale.getString("Combat.BurningArrowHit")); //$NON-NLS-1$
}
} else {
event.getEntity().setFireTicks(ignition);
attacker.sendMessage(mcLocale.getString("Combat.Ignition")); //$NON-NLS-1$
}
}
}
public static void dazeCheck(Player defender, Player attacker)
{
PlayerProfile PPa = Users.getProfile(attacker);
Location loc = defender.getLocation();
if(Math.random() * 10 > 5)
{
loc.setPitch(90);
} else {
loc.setPitch(-90);
}
if(PPa.getSkill("archery") >= 1000){
if(Math.random() * 1000 <= 500){
defender.teleport(loc);
defender.sendMessage(mcLocale.getString("Combat.TouchedFuzzy")); //$NON-NLS-1$
attacker.sendMessage(mcLocale.getString("Combat.TargetDazed")); //$NON-NLS-1$ //$NON-NLS-2$
}
} else if(Math.random() * 2000 <= PPa.getSkill("archery")){
defender.teleport(loc);
defender.sendMessage(mcLocale.getString("Combat.TouchedFuzzy")); //$NON-NLS-1$
attacker.sendMessage(mcLocale.getString("Combat.TargetDazed")); //$NON-NLS-1$ //$NON-NLS-2$
}
}
} }

View File

@ -1,17 +1,14 @@
package com.gmail.nossr50.skills; package com.gmail.nossr50.skills;
import org.bukkit.ChatColor; import org.bukkit.ChatColor;
import org.bukkit.entity.Animals;
import org.bukkit.entity.Entity; import org.bukkit.entity.Entity;
import org.bukkit.entity.LivingEntity; import org.bukkit.entity.LivingEntity;
import org.bukkit.entity.Monster;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;
import org.bukkit.entity.Wolf; import org.bukkit.entity.Wolf;
import org.bukkit.event.entity.EntityDamageByEntityEvent; import org.bukkit.event.entity.EntityDamageByEntityEvent;
import org.bukkit.plugin.Plugin; import org.bukkit.plugin.Plugin;
import com.gmail.nossr50.Combat; import com.gmail.nossr50.locale.mcLocale;
import com.gmail.nossr50.Messages;
import com.gmail.nossr50.Users; import com.gmail.nossr50.Users;
import com.gmail.nossr50.m; import com.gmail.nossr50.m;
import com.gmail.nossr50.mcPermissions; import com.gmail.nossr50.mcPermissions;
@ -26,7 +23,8 @@ public class Axes {
/* /*
* CHECK FOR AXE PREP MODE * CHECK FOR AXE PREP MODE
*/ */
if(PP.getAxePreparationMode()){ if(PP.getAxePreparationMode())
{
PP.setAxePreparationMode(false); PP.setAxePreparationMode(false);
} }
int ticks = 2; int ticks = 2;
@ -37,17 +35,17 @@ public class Axes {
} }
if(!PP.getSkullSplitterMode() && Skills.cooldownOver(player, PP.getSkullSplitterDeactivatedTimeStamp(), LoadProperties.skullSplitterCooldown)){ if(!PP.getSkullSplitterMode() && Skills.cooldownOver(player, PP.getSkullSplitterDeactivatedTimeStamp(), LoadProperties.skullSplitterCooldown)){
player.sendMessage(Messages.getString("Skills.SkullSplitterOn")); player.sendMessage(mcLocale.getString("Skills.SkullSplitterOn"));
for(Player y : pluginx.getServer().getOnlinePlayers()){ for(Player y : pluginx.getServer().getOnlinePlayers()){
if(y != null && y != player && m.getDistance(player.getLocation(), y.getLocation()) < 10) if(y != null && y != player && m.getDistance(player.getLocation(), y.getLocation()) < 10)
y.sendMessage(Messages.getString("Skills.SkullSplitterPlayer", new Object[] {player.getName()})); y.sendMessage(mcLocale.getString("Skills.SkullSplitterPlayer", new Object[] {player.getName()}));
} }
PP.setSkullSplitterActivatedTimeStamp(System.currentTimeMillis()); PP.setSkullSplitterActivatedTimeStamp(System.currentTimeMillis());
PP.setSkullSplitterDeactivatedTimeStamp(System.currentTimeMillis() + (ticks * 1000)); PP.setSkullSplitterDeactivatedTimeStamp(System.currentTimeMillis() + (ticks * 1000));
PP.setSkullSplitterMode(true); PP.setSkullSplitterMode(true);
} }
if(!PP.getSkullSplitterMode() && !Skills.cooldownOver(player, PP.getSkullSplitterDeactivatedTimeStamp(), LoadProperties.skullSplitterCooldown)){ if(!PP.getSkullSplitterMode() && !Skills.cooldownOver(player, PP.getSkullSplitterDeactivatedTimeStamp(), LoadProperties.skullSplitterCooldown)){
player.sendMessage(Messages.getString("Skills.TooTired") player.sendMessage(mcLocale.getString("Skills.TooTired")
+ChatColor.YELLOW+" ("+Skills.calculateTimeLeft(player, PP.getSkullSplitterDeactivatedTimeStamp(), LoadProperties.skullSplitterCooldown)+"s)"); +ChatColor.YELLOW+" ("+Skills.calculateTimeLeft(player, PP.getSkullSplitterDeactivatedTimeStamp(), LoadProperties.skullSplitterCooldown)+"s)");
} }
} }

View File

@ -7,7 +7,7 @@ import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.ItemStack;
import org.bukkit.plugin.Plugin; import org.bukkit.plugin.Plugin;
import com.gmail.nossr50.Messages; import com.gmail.nossr50.locale.mcLocale;
import com.gmail.nossr50.Users; import com.gmail.nossr50.Users;
import com.gmail.nossr50.m; import com.gmail.nossr50.m;
import com.gmail.nossr50.config.LoadProperties; import com.gmail.nossr50.config.LoadProperties;
@ -33,10 +33,10 @@ public class Excavation {
} }
if(!PP.getGigaDrillBreakerMode() && PP.getGigaDrillBreakerDeactivatedTimeStamp() < System.currentTimeMillis()){ if(!PP.getGigaDrillBreakerMode() && PP.getGigaDrillBreakerDeactivatedTimeStamp() < System.currentTimeMillis()){
player.sendMessage(Messages.getString("Skills.GigaDrillBreakerOn")); player.sendMessage(mcLocale.getString("Skills.GigaDrillBreakerOn"));
for(Player y : pluginx.getServer().getOnlinePlayers()){ for(Player y : pluginx.getServer().getOnlinePlayers()){
if(y != null && y != player && m.getDistance(player.getLocation(), y.getLocation()) < 10) if(y != null && y != player && m.getDistance(player.getLocation(), y.getLocation()) < 10)
y.sendMessage(Messages.getString("Skills.GigaDrillBreakerPlayer", new Object[] {player.getName()})); y.sendMessage(mcLocale.getString("Skills.GigaDrillBreakerPlayer", new Object[] {player.getName()}));
} }
PP.setGigaDrillBreakerActivatedTimeStamp(System.currentTimeMillis()); PP.setGigaDrillBreakerActivatedTimeStamp(System.currentTimeMillis());
PP.setGigaDrillBreakerDeactivatedTimeStamp(System.currentTimeMillis() + (ticks * 1000)); PP.setGigaDrillBreakerDeactivatedTimeStamp(System.currentTimeMillis() + (ticks * 1000));

View File

@ -9,12 +9,12 @@ import org.bukkit.event.block.BlockBreakEvent;
import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.ItemStack;
import org.bukkit.plugin.Plugin; import org.bukkit.plugin.Plugin;
import com.gmail.nossr50.Messages;
import com.gmail.nossr50.Users; import com.gmail.nossr50.Users;
import com.gmail.nossr50.m; import com.gmail.nossr50.m;
import com.gmail.nossr50.mcMMO; import com.gmail.nossr50.mcMMO;
import com.gmail.nossr50.config.LoadProperties; import com.gmail.nossr50.config.LoadProperties;
import com.gmail.nossr50.datatypes.PlayerProfile; import com.gmail.nossr50.datatypes.PlayerProfile;
import com.gmail.nossr50.locale.mcLocale;
public class Herbalism { public class Herbalism {
@ -106,10 +106,10 @@ public class Herbalism {
} }
if(!PP.getGreenTerraMode() && Skills.cooldownOver(player, PP.getGreenTerraDeactivatedTimeStamp(), LoadProperties.greenTerraCooldown)){ if(!PP.getGreenTerraMode() && Skills.cooldownOver(player, PP.getGreenTerraDeactivatedTimeStamp(), LoadProperties.greenTerraCooldown)){
player.sendMessage(Messages.getString("Skills.GreenTerraOn")); player.sendMessage(mcLocale.getString("Skills.GreenTerraOn"));
for(Player y : pluginx.getServer().getOnlinePlayers()){ for(Player y : pluginx.getServer().getOnlinePlayers()){
if(y != null && y != player && m.getDistance(player.getLocation(), y.getLocation()) < 10) if(y != null && y != player && m.getDistance(player.getLocation(), y.getLocation()) < 10)
y.sendMessage(Messages.getString("Skills.GreenTerraPlayer", new Object[] {player.getName()})); y.sendMessage(mcLocale.getString("Skills.GreenTerraPlayer", new Object[] {player.getName()}));
} }
PP.setGreenTerraActivatedTimeStamp(System.currentTimeMillis()); PP.setGreenTerraActivatedTimeStamp(System.currentTimeMillis());
PP.setGreenTerraDeactivatedTimeStamp(System.currentTimeMillis() + (ticks * 1000)); PP.setGreenTerraDeactivatedTimeStamp(System.currentTimeMillis() + (ticks * 1000));

View File

@ -8,12 +8,12 @@ import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.ItemStack;
import org.bukkit.plugin.Plugin; import org.bukkit.plugin.Plugin;
import com.gmail.nossr50.Messages;
import com.gmail.nossr50.Users; import com.gmail.nossr50.Users;
import com.gmail.nossr50.m; import com.gmail.nossr50.m;
import com.gmail.nossr50.mcMMO; import com.gmail.nossr50.mcMMO;
import com.gmail.nossr50.config.LoadProperties; import com.gmail.nossr50.config.LoadProperties;
import com.gmail.nossr50.datatypes.PlayerProfile; import com.gmail.nossr50.datatypes.PlayerProfile;
import com.gmail.nossr50.locale.mcLocale;
public class Mining { public class Mining {
@ -38,11 +38,11 @@ public class Mining {
} }
if(!PP.getSuperBreakerMode() && Skills.cooldownOver(player, PP.getSuperBreakerDeactivatedTimeStamp(), LoadProperties.superBreakerCooldown)){ if(!PP.getSuperBreakerMode() && Skills.cooldownOver(player, PP.getSuperBreakerDeactivatedTimeStamp(), LoadProperties.superBreakerCooldown)){
player.sendMessage(Messages.getString("Skills.SuperBreakerOn")); player.sendMessage(mcLocale.getString("Skills.SuperBreakerOn"));
for(Player y : pluginx.getServer().getOnlinePlayers()) for(Player y : pluginx.getServer().getOnlinePlayers())
{ {
if(y != null && y != player && m.getDistance(player.getLocation(), y.getLocation()) < 10) if(y != null && y != player && m.getDistance(player.getLocation(), y.getLocation()) < 10)
y.sendMessage(Messages.getString("Skills.SuperBreakerPlayer", new Object[] {player.getName()})); y.sendMessage(mcLocale.getString("Skills.SuperBreakerPlayer", new Object[] {player.getName()}));
} }
PP.setSuperBreakerActivatedTimeStamp(System.currentTimeMillis()); PP.setSuperBreakerActivatedTimeStamp(System.currentTimeMillis());
PP.setSuperBreakerDeactivatedTimeStamp(System.currentTimeMillis() + (ticks * 1000)); PP.setSuperBreakerDeactivatedTimeStamp(System.currentTimeMillis() + (ticks * 1000));

View File

@ -5,12 +5,12 @@ import org.bukkit.block.Block;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.ItemStack;
import com.gmail.nossr50.Messages;
import com.gmail.nossr50.Users; import com.gmail.nossr50.Users;
import com.gmail.nossr50.m; import com.gmail.nossr50.m;
import com.gmail.nossr50.mcPermissions; import com.gmail.nossr50.mcPermissions;
import com.gmail.nossr50.config.LoadProperties; import com.gmail.nossr50.config.LoadProperties;
import com.gmail.nossr50.datatypes.PlayerProfile; import com.gmail.nossr50.datatypes.PlayerProfile;
import com.gmail.nossr50.locale.mcLocale;
public class Repair { public class Repair {
@ -30,6 +30,7 @@ public class Repair {
private static String nIron = LoadProperties.nIron; private static String nIron = LoadProperties.nIron;
@SuppressWarnings("deprecation")
public static void repairCheck(Player player, ItemStack is, Block block){ public static void repairCheck(Player player, ItemStack is, Block block){
PlayerProfile PP = Users.getProfile(player); PlayerProfile PP = Users.getProfile(player);
short durabilityBefore = player.getItemInHand().getDurability(); short durabilityBefore = player.getItemInHand().getDurability();
@ -164,7 +165,7 @@ public class Repair {
} }
} else { } else {
player.sendMessage(Messages.getString("Skills.FullDurability")); player.sendMessage(mcLocale.getString("Skills.FullDurability"));
} }
player.updateInventory(); player.updateInventory();
/* /*
@ -450,32 +451,32 @@ public class Repair {
public static void needMoreVespeneGas(ItemStack is, Player player){ public static void needMoreVespeneGas(ItemStack is, Player player){
PlayerProfile PP = Users.getProfile(player); PlayerProfile PP = Users.getProfile(player);
if ((isDiamondTools(is) || isDiamondArmor(is)) && PP.getSkill("repair") < LoadProperties.repairdiamondlevel){ if ((isDiamondTools(is) || isDiamondArmor(is)) && PP.getSkill("repair") < LoadProperties.repairdiamondlevel){
player.sendMessage(Messages.getString("AdeptDiamond")); player.sendMessage(mcLocale.getString("AdeptDiamond"));
} else if (isDiamondTools(is) && !hasItem(player, rDiamond) || isIronTools(is) && !hasItem(player, rIron) || isGoldTools(is) && !hasItem(player, rGold)){ } else if (isDiamondTools(is) && !hasItem(player, rDiamond) || isIronTools(is) && !hasItem(player, rIron) || isGoldTools(is) && !hasItem(player, rGold)){
if(isDiamondTools(is) && !hasItem(player, rDiamond)) if(isDiamondTools(is) && !hasItem(player, rDiamond))
player.sendMessage(Messages.getString("Skills.NeedMore")+" "+ChatColor.BLUE+ nDiamond); player.sendMessage(mcLocale.getString("Skills.NeedMore")+" "+ChatColor.BLUE+ nDiamond);
if(isIronTools(is) && !hasItem(player, rIron)) if(isIronTools(is) && !hasItem(player, rIron))
player.sendMessage(Messages.getString("Skills.NeedMore")+" "+ChatColor.GRAY+ nIron); player.sendMessage(mcLocale.getString("Skills.NeedMore")+" "+ChatColor.GRAY+ nIron);
if(isGoldTools(is) && !hasItem(player, rGold)) if(isGoldTools(is) && !hasItem(player, rGold))
player.sendMessage(Messages.getString("Skills.NeedMore")+" "+ChatColor.GOLD+nGold); player.sendMessage(mcLocale.getString("Skills.NeedMore")+" "+ChatColor.GOLD+nGold);
if(isWoodTools(is) && !hasItem(player,rWood)) if(isWoodTools(is) && !hasItem(player,rWood))
player.sendMessage(Messages.getString("Skills.NeedMore")+" "+ChatColor.DARK_GREEN+ nWood); player.sendMessage(mcLocale.getString("Skills.NeedMore")+" "+ChatColor.DARK_GREEN+ nWood);
if(isStoneTools(is) && !hasItem(player, rStone)) if(isStoneTools(is) && !hasItem(player, rStone))
player.sendMessage(Messages.getString("Skills.NeedMore")+" "+ChatColor.GRAY+nStone); player.sendMessage(mcLocale.getString("Skills.NeedMore")+" "+ChatColor.GRAY+nStone);
} else if (isDiamondArmor(is) && !hasItem(player, rDiamond)){ } else if (isDiamondArmor(is) && !hasItem(player, rDiamond)){
player.sendMessage(Messages.getString("Skills.NeedMore")+" "+ChatColor.BLUE+ nDiamond); player.sendMessage(mcLocale.getString("Skills.NeedMore")+" "+ChatColor.BLUE+ nDiamond);
} else if (isIronArmor(is) && !hasItem(player, rIron)){ } else if (isIronArmor(is) && !hasItem(player, rIron)){
player.sendMessage(Messages.getString("Skills.NeedMore")+" "+ChatColor.GRAY+ nIron); player.sendMessage(mcLocale.getString("Skills.NeedMore")+" "+ChatColor.GRAY+ nIron);
} else if (isGoldArmor(is) && !hasItem(player, rGold)){ } else if (isGoldArmor(is) && !hasItem(player, rGold)){
player.sendMessage(Messages.getString("Skills.NeedMore")+" "+ChatColor.GOLD+ nGold); player.sendMessage(mcLocale.getString("Skills.NeedMore")+" "+ChatColor.GOLD+ nGold);
} else if (is.getAmount() > 1) } else if (is.getAmount() > 1)
player.sendMessage(Messages.getString("Skills.StackedItems")); player.sendMessage(mcLocale.getString("Skills.StackedItems"));
} }
public static boolean checkPlayerProcRepair(Player player){ public static boolean checkPlayerProcRepair(Player player){
PlayerProfile PP = Users.getProfile(player); PlayerProfile PP = Users.getProfile(player);
if(player != null){ if(player != null){
if(Math.random() * 1000 <= PP.getSkill("repair")){ if(Math.random() * 1000 <= PP.getSkill("repair")){
player.sendMessage(Messages.getString("Skills.FeltEasy")); player.sendMessage(mcLocale.getString("Skills.FeltEasy"));
return true; return true;
} }
} }

View File

@ -7,7 +7,6 @@ import org.bukkit.entity.Entity;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.ItemStack;
import com.gmail.nossr50.Leaderboard; import com.gmail.nossr50.Leaderboard;
import com.gmail.nossr50.Messages;
import com.gmail.nossr50.Users; import com.gmail.nossr50.Users;
import com.gmail.nossr50.m; import com.gmail.nossr50.m;
import com.gmail.nossr50.mcMMO; import com.gmail.nossr50.mcMMO;
@ -15,6 +14,7 @@ import com.gmail.nossr50.mcPermissions;
import com.gmail.nossr50.config.LoadProperties; import com.gmail.nossr50.config.LoadProperties;
import com.gmail.nossr50.datatypes.PlayerProfile; import com.gmail.nossr50.datatypes.PlayerProfile;
import com.gmail.nossr50.datatypes.PlayerStat; import com.gmail.nossr50.datatypes.PlayerStat;
import com.gmail.nossr50.locale.mcLocale;
public class Skills { public class Skills {
@ -74,42 +74,42 @@ public class Skills {
PlayerProfile PP = Users.getProfile(player); PlayerProfile PP = Users.getProfile(player);
if(!PP.getGreenTerraInformed() && System.currentTimeMillis() - PP.getGreenTerraDeactivatedTimeStamp() >= (LoadProperties.greenTerraCooldown * 1000)){ if(!PP.getGreenTerraInformed() && System.currentTimeMillis() - PP.getGreenTerraDeactivatedTimeStamp() >= (LoadProperties.greenTerraCooldown * 1000)){
PP.setGreenTerraInformed(true); PP.setGreenTerraInformed(true);
player.sendMessage(Messages.getString("Skills.YourGreenTerra")); player.sendMessage(mcLocale.getString("Skills.YourGreenTerra"));
} }
if(!PP.getTreeFellerInformed() && System.currentTimeMillis() - PP.getTreeFellerDeactivatedTimeStamp() >= (LoadProperties.greenTerraCooldown * 1000)){ if(!PP.getTreeFellerInformed() && System.currentTimeMillis() - PP.getTreeFellerDeactivatedTimeStamp() >= (LoadProperties.greenTerraCooldown * 1000)){
PP.setTreeFellerInformed(true); PP.setTreeFellerInformed(true);
player.sendMessage(Messages.getString("Skills.YourTreeFeller")); player.sendMessage(mcLocale.getString("Skills.YourTreeFeller"));
} }
if(!PP.getSuperBreakerInformed() && System.currentTimeMillis() - PP.getSuperBreakerDeactivatedTimeStamp() >= (LoadProperties.superBreakerCooldown * 1000)){ if(!PP.getSuperBreakerInformed() && System.currentTimeMillis() - PP.getSuperBreakerDeactivatedTimeStamp() >= (LoadProperties.superBreakerCooldown * 1000)){
PP.setSuperBreakerInformed(true); PP.setSuperBreakerInformed(true);
player.sendMessage(Messages.getString("Skills.YourSuperBreaker")); player.sendMessage(mcLocale.getString("Skills.YourSuperBreaker"));
} }
if(!PP.getSerratedStrikesInformed() && System.currentTimeMillis() - PP.getSerratedStrikesDeactivatedTimeStamp() >= (LoadProperties.serratedStrikeCooldown * 1000)){ if(!PP.getSerratedStrikesInformed() && System.currentTimeMillis() - PP.getSerratedStrikesDeactivatedTimeStamp() >= (LoadProperties.serratedStrikeCooldown * 1000)){
PP.setSerratedStrikesInformed(true); PP.setSerratedStrikesInformed(true);
player.sendMessage(Messages.getString("Skills.YourSerratedStrikes")); player.sendMessage(mcLocale.getString("Skills.YourSerratedStrikes"));
} }
if(!PP.getBerserkInformed() && System.currentTimeMillis() - PP.getBerserkDeactivatedTimeStamp() >= (LoadProperties.berserkCooldown * 1000)){ if(!PP.getBerserkInformed() && System.currentTimeMillis() - PP.getBerserkDeactivatedTimeStamp() >= (LoadProperties.berserkCooldown * 1000)){
PP.setBerserkInformed(true); PP.setBerserkInformed(true);
player.sendMessage(Messages.getString("Skills.YourBerserk")); player.sendMessage(mcLocale.getString("Skills.YourBerserk"));
} }
if(!PP.getSkullSplitterInformed() && System.currentTimeMillis() - PP.getSkullSplitterDeactivatedTimeStamp() >= (LoadProperties.skullSplitterCooldown * 1000)){ if(!PP.getSkullSplitterInformed() && System.currentTimeMillis() - PP.getSkullSplitterDeactivatedTimeStamp() >= (LoadProperties.skullSplitterCooldown * 1000)){
PP.setSkullSplitterInformed(true); PP.setSkullSplitterInformed(true);
player.sendMessage(Messages.getString("Skills.YourSkullSplitter")); player.sendMessage(mcLocale.getString("Skills.YourSkullSplitter"));
} }
if(!PP.getGigaDrillBreakerInformed() && System.currentTimeMillis() - PP.getGigaDrillBreakerDeactivatedTimeStamp() >= (LoadProperties.gigaDrillBreakerCooldown * 1000)){ if(!PP.getGigaDrillBreakerInformed() && System.currentTimeMillis() - PP.getGigaDrillBreakerDeactivatedTimeStamp() >= (LoadProperties.gigaDrillBreakerCooldown * 1000)){
PP.setGigaDrillBreakerInformed(true); PP.setGigaDrillBreakerInformed(true);
player.sendMessage(Messages.getString("Skills.YourGigaDrillBreaker")); player.sendMessage(mcLocale.getString("Skills.YourGigaDrillBreaker"));
} }
} }
public static void hoeReadinessCheck(Player player){ public static void hoeReadinessCheck(Player player){
PlayerProfile PP = Users.getProfile(player); PlayerProfile PP = Users.getProfile(player);
if(mcPermissions.getInstance().herbalismAbility(player) && m.isHoe(player.getItemInHand()) && !PP.getHoePreparationMode()){ if(mcPermissions.getInstance().herbalismAbility(player) && m.isHoe(player.getItemInHand()) && !PP.getHoePreparationMode()){
if(!PP.getGreenTerraMode() && !cooldownOver(player, PP.getGreenTerraDeactivatedTimeStamp(), LoadProperties.greenTerraCooldown)){ if(!PP.getGreenTerraMode() && !cooldownOver(player, PP.getGreenTerraDeactivatedTimeStamp(), LoadProperties.greenTerraCooldown)){
player.sendMessage(Messages.getString("Skills.TooTired") player.sendMessage(mcLocale.getString("Skills.TooTired")
+ChatColor.YELLOW+" ("+calculateTimeLeft(player, PP.getGreenTerraDeactivatedTimeStamp(), LoadProperties.greenTerraCooldown)+"s)"); +ChatColor.YELLOW+" ("+calculateTimeLeft(player, PP.getGreenTerraDeactivatedTimeStamp(), LoadProperties.greenTerraCooldown)+"s)");
return; return;
} }
player.sendMessage(Messages.getString("Skills.ReadyHoe")); player.sendMessage(mcLocale.getString("Skills.ReadyHoe"));
PP.setHoePreparationATS(System.currentTimeMillis()); PP.setHoePreparationATS(System.currentTimeMillis());
PP.setHoePreparationMode(true); PP.setHoePreparationMode(true);
} }
@ -122,27 +122,27 @@ public class Skills {
{ {
if(PP.getHoePreparationMode() && System.currentTimeMillis() - PP.getHoePreparationATS() >= 4000){ if(PP.getHoePreparationMode() && System.currentTimeMillis() - PP.getHoePreparationATS() >= 4000){
PP.setHoePreparationMode(false); PP.setHoePreparationMode(false);
player.sendMessage(Messages.getString("Skills.LowerHoe")); player.sendMessage(mcLocale.getString("Skills.LowerHoe"));
} }
if(PP.getAxePreparationMode() && System.currentTimeMillis() - PP.getAxePreparationATS() >= 4000){ if(PP.getAxePreparationMode() && System.currentTimeMillis() - PP.getAxePreparationATS() >= 4000){
PP.setAxePreparationMode(false); PP.setAxePreparationMode(false);
player.sendMessage(Messages.getString("Skills.LowerAxe")); player.sendMessage(mcLocale.getString("Skills.LowerAxe"));
} }
if(PP.getPickaxePreparationMode() && System.currentTimeMillis() - PP.getPickaxePreparationATS() >= 4000){ if(PP.getPickaxePreparationMode() && System.currentTimeMillis() - PP.getPickaxePreparationATS() >= 4000){
PP.setPickaxePreparationMode(false); PP.setPickaxePreparationMode(false);
player.sendMessage(Messages.getString("Skills.LowerPickAxe")); player.sendMessage(mcLocale.getString("Skills.LowerPickAxe"));
} }
if(PP.getSwordsPreparationMode() && System.currentTimeMillis() - PP.getSwordsPreparationATS() >= 4000){ if(PP.getSwordsPreparationMode() && System.currentTimeMillis() - PP.getSwordsPreparationATS() >= 4000){
PP.setSwordsPreparationMode(false); PP.setSwordsPreparationMode(false);
player.sendMessage(Messages.getString("Skills.LowerSword")); player.sendMessage(mcLocale.getString("Skills.LowerSword"));
} }
if(PP.getFistsPreparationMode() && System.currentTimeMillis() - PP.getFistsPreparationATS() >= 4000){ if(PP.getFistsPreparationMode() && System.currentTimeMillis() - PP.getFistsPreparationATS() >= 4000){
PP.setFistsPreparationMode(false); PP.setFistsPreparationMode(false);
player.sendMessage(Messages.getString("Skills.LowerFists")); player.sendMessage(mcLocale.getString("Skills.LowerFists"));
} }
if(PP.getShovelPreparationMode() && System.currentTimeMillis() - PP.getShovelPreparationATS() >= 4000){ if(PP.getShovelPreparationMode() && System.currentTimeMillis() - PP.getShovelPreparationATS() >= 4000){
PP.setShovelPreparationMode(false); PP.setShovelPreparationMode(false);
player.sendMessage(Messages.getString("Skills.LowerShovel")); player.sendMessage(mcLocale.getString("Skills.LowerShovel"));
} }
/* /*
@ -152,7 +152,7 @@ public class Skills {
if(PP.getGreenTerraMode() && PP.getGreenTerraDeactivatedTimeStamp() <= System.currentTimeMillis()){ if(PP.getGreenTerraMode() && PP.getGreenTerraDeactivatedTimeStamp() <= System.currentTimeMillis()){
PP.setGreenTerraMode(false); PP.setGreenTerraMode(false);
PP.setGreenTerraInformed(false); PP.setGreenTerraInformed(false);
player.sendMessage(Messages.getString("Skills.GreenTerraOff")); player.sendMessage(mcLocale.getString("Skills.GreenTerraOff"));
} }
} }
/* /*
@ -162,7 +162,7 @@ public class Skills {
if(PP.getSkullSplitterMode() && PP.getSkullSplitterDeactivatedTimeStamp() <= System.currentTimeMillis()){ if(PP.getSkullSplitterMode() && PP.getSkullSplitterDeactivatedTimeStamp() <= System.currentTimeMillis()){
PP.setSkullSplitterMode(false); PP.setSkullSplitterMode(false);
PP.setSkullSplitterInformed(false); PP.setSkullSplitterInformed(false);
player.sendMessage(Messages.getString("Skills.SkullSplitterOff")); player.sendMessage(mcLocale.getString("Skills.SkullSplitterOff"));
} }
} }
/* /*
@ -172,7 +172,7 @@ public class Skills {
if(PP.getTreeFellerMode() && PP.getTreeFellerDeactivatedTimeStamp() <= System.currentTimeMillis()){ if(PP.getTreeFellerMode() && PP.getTreeFellerDeactivatedTimeStamp() <= System.currentTimeMillis()){
PP.setTreeFellerMode(false); PP.setTreeFellerMode(false);
PP.setTreeFellerInformed(false); PP.setTreeFellerInformed(false);
player.sendMessage(Messages.getString("Skills.TreeFellerOff")); player.sendMessage(mcLocale.getString("Skills.TreeFellerOff"));
} }
} }
/* /*
@ -182,7 +182,7 @@ public class Skills {
if(PP.getSuperBreakerMode() && PP.getSuperBreakerDeactivatedTimeStamp() <= System.currentTimeMillis()){ if(PP.getSuperBreakerMode() && PP.getSuperBreakerDeactivatedTimeStamp() <= System.currentTimeMillis()){
PP.setSuperBreakerMode(false); PP.setSuperBreakerMode(false);
PP.setSuperBreakerInformed(false); PP.setSuperBreakerInformed(false);
player.sendMessage(Messages.getString("Skills.SuperBreakerOff")); player.sendMessage(mcLocale.getString("Skills.SuperBreakerOff"));
} }
} }
/* /*
@ -192,7 +192,7 @@ public class Skills {
if(PP.getGigaDrillBreakerMode() && PP.getGigaDrillBreakerDeactivatedTimeStamp() <= System.currentTimeMillis()){ if(PP.getGigaDrillBreakerMode() && PP.getGigaDrillBreakerDeactivatedTimeStamp() <= System.currentTimeMillis()){
PP.setGigaDrillBreakerMode(false); PP.setGigaDrillBreakerMode(false);
PP.setGigaDrillBreakerInformed(false); PP.setGigaDrillBreakerInformed(false);
player.sendMessage(Messages.getString("Skills.GigaDrillBreakerOff")); player.sendMessage(mcLocale.getString("Skills.GigaDrillBreakerOff"));
} }
} }
/* /*
@ -202,7 +202,7 @@ public class Skills {
if(PP.getSerratedStrikesMode() && PP.getSerratedStrikesDeactivatedTimeStamp() <= System.currentTimeMillis()){ if(PP.getSerratedStrikesMode() && PP.getSerratedStrikesDeactivatedTimeStamp() <= System.currentTimeMillis()){
PP.setSerratedStrikesMode(false); PP.setSerratedStrikesMode(false);
PP.setSerratedStrikesInformed(false); PP.setSerratedStrikesInformed(false);
player.sendMessage(Messages.getString("Skills.SerratedStrikesOff")); player.sendMessage(mcLocale.getString("Skills.SerratedStrikesOff"));
} }
} }
/* /*
@ -212,7 +212,7 @@ public class Skills {
if(PP.getBerserkMode() && PP.getBerserkDeactivatedTimeStamp() <= System.currentTimeMillis()){ if(PP.getBerserkMode() && PP.getBerserkDeactivatedTimeStamp() <= System.currentTimeMillis()){
PP.setBerserkMode(false); PP.setBerserkMode(false);
PP.setBerserkInformed(false); PP.setBerserkInformed(false);
player.sendMessage(Messages.getString("Skills.BerserkOff")); player.sendMessage(mcLocale.getString("Skills.BerserkOff"));
} }
} }
} }
@ -224,47 +224,47 @@ public class Skills {
return; return;
if(mcPermissions.getInstance().miningAbility(player) && m.isMiningPick(player.getItemInHand()) && !PP.getPickaxePreparationMode()){ if(mcPermissions.getInstance().miningAbility(player) && m.isMiningPick(player.getItemInHand()) && !PP.getPickaxePreparationMode()){
if(!PP.getSuperBreakerMode() && !cooldownOver(player, PP.getSuperBreakerDeactivatedTimeStamp(), LoadProperties.superBreakerCooldown)){ if(!PP.getSuperBreakerMode() && !cooldownOver(player, PP.getSuperBreakerDeactivatedTimeStamp(), LoadProperties.superBreakerCooldown)){
player.sendMessage(Messages.getString("Skills.TooTired") player.sendMessage(mcLocale.getString("Skills.TooTired")
+ChatColor.YELLOW+" ("+calculateTimeLeft(player, PP.getSuperBreakerDeactivatedTimeStamp(), LoadProperties.superBreakerCooldown)+"s)"); +ChatColor.YELLOW+" ("+calculateTimeLeft(player, PP.getSuperBreakerDeactivatedTimeStamp(), LoadProperties.superBreakerCooldown)+"s)");
return; return;
} }
player.sendMessage(Messages.getString("Skills.ReadyPickAxe")); player.sendMessage(mcLocale.getString("Skills.ReadyPickAxe"));
PP.setPickaxePreparationATS(System.currentTimeMillis()); PP.setPickaxePreparationATS(System.currentTimeMillis());
PP.setPickaxePreparationMode(true); PP.setPickaxePreparationMode(true);
} }
if(mcPermissions.getInstance().excavationAbility(player) && m.isShovel(player.getItemInHand()) && !PP.getShovelPreparationMode()){ if(mcPermissions.getInstance().excavationAbility(player) && m.isShovel(player.getItemInHand()) && !PP.getShovelPreparationMode()){
if(!PP.getGigaDrillBreakerMode() && !cooldownOver(player, PP.getGigaDrillBreakerDeactivatedTimeStamp(), LoadProperties.gigaDrillBreakerCooldown)){ if(!PP.getGigaDrillBreakerMode() && !cooldownOver(player, PP.getGigaDrillBreakerDeactivatedTimeStamp(), LoadProperties.gigaDrillBreakerCooldown)){
player.sendMessage(Messages.getString("Skills.TooTired") player.sendMessage(mcLocale.getString("Skills.TooTired")
+ChatColor.YELLOW+" ("+calculateTimeLeft(player, PP.getGigaDrillBreakerDeactivatedTimeStamp(), LoadProperties.gigaDrillBreakerCooldown)+"s)"); +ChatColor.YELLOW+" ("+calculateTimeLeft(player, PP.getGigaDrillBreakerDeactivatedTimeStamp(), LoadProperties.gigaDrillBreakerCooldown)+"s)");
return; return;
} }
player.sendMessage(Messages.getString("Skills.ReadyShovel")); player.sendMessage(mcLocale.getString("Skills.ReadyShovel"));
PP.setShovelPreparationATS(System.currentTimeMillis()); PP.setShovelPreparationATS(System.currentTimeMillis());
PP.setShovelPreparationMode(true); PP.setShovelPreparationMode(true);
} }
if(mcPermissions.getInstance().swordsAbility(player) && m.isSwords(player.getItemInHand()) && !PP.getSwordsPreparationMode()){ if(mcPermissions.getInstance().swordsAbility(player) && m.isSwords(player.getItemInHand()) && !PP.getSwordsPreparationMode()){
if(!PP.getSerratedStrikesMode() && !cooldownOver(player, PP.getSerratedStrikesDeactivatedTimeStamp(), LoadProperties.serratedStrikeCooldown)){ if(!PP.getSerratedStrikesMode() && !cooldownOver(player, PP.getSerratedStrikesDeactivatedTimeStamp(), LoadProperties.serratedStrikeCooldown)){
player.sendMessage(Messages.getString("Skills.TooTired") player.sendMessage(mcLocale.getString("Skills.TooTired")
+ChatColor.YELLOW+" ("+calculateTimeLeft(player, PP.getSerratedStrikesDeactivatedTimeStamp(), LoadProperties.serratedStrikeCooldown)+"s)"); +ChatColor.YELLOW+" ("+calculateTimeLeft(player, PP.getSerratedStrikesDeactivatedTimeStamp(), LoadProperties.serratedStrikeCooldown)+"s)");
return; return;
} }
player.sendMessage(Messages.getString("Skills.ReadySword")); player.sendMessage(mcLocale.getString("Skills.ReadySword"));
PP.setSwordsPreparationATS(System.currentTimeMillis()); PP.setSwordsPreparationATS(System.currentTimeMillis());
PP.setSwordsPreparationMode(true); PP.setSwordsPreparationMode(true);
} }
if(mcPermissions.getInstance().unarmedAbility(player) && player.getItemInHand().getTypeId() == 0 && !PP.getFistsPreparationMode()){ if(mcPermissions.getInstance().unarmedAbility(player) && player.getItemInHand().getTypeId() == 0 && !PP.getFistsPreparationMode()){
if(!PP.getBerserkMode() && !cooldownOver(player, PP.getBerserkDeactivatedTimeStamp(), LoadProperties.berserkCooldown)){ if(!PP.getBerserkMode() && !cooldownOver(player, PP.getBerserkDeactivatedTimeStamp(), LoadProperties.berserkCooldown)){
player.sendMessage(Messages.getString("Skills.TooTired") player.sendMessage(mcLocale.getString("Skills.TooTired")
+ChatColor.YELLOW+" ("+calculateTimeLeft(player, PP.getBerserkDeactivatedTimeStamp(), LoadProperties.berserkCooldown)+"s)"); +ChatColor.YELLOW+" ("+calculateTimeLeft(player, PP.getBerserkDeactivatedTimeStamp(), LoadProperties.berserkCooldown)+"s)");
return; return;
} }
player.sendMessage(Messages.getString("Skills.ReadyFists")); player.sendMessage(mcLocale.getString("Skills.ReadyFists"));
PP.setFistsPreparationATS(System.currentTimeMillis()); PP.setFistsPreparationATS(System.currentTimeMillis());
PP.setFistsPreparationMode(true); PP.setFistsPreparationMode(true);
} }
if((mcPermissions.getInstance().axes(player) || mcPermissions.getInstance().woodcutting(player)) && !PP.getAxePreparationMode()){ if((mcPermissions.getInstance().axes(player) || mcPermissions.getInstance().woodcutting(player)) && !PP.getAxePreparationMode()){
if(m.isAxes(player.getItemInHand())){ if(m.isAxes(player.getItemInHand())){
player.sendMessage(Messages.getString("Skills.ReadyAxe")); player.sendMessage(mcLocale.getString("Skills.ReadyAxe"));
PP.setAxePreparationATS(System.currentTimeMillis()); PP.setAxePreparationATS(System.currentTimeMillis());
PP.setAxePreparationMode(true); PP.setAxePreparationMode(true);
} }
@ -294,7 +294,7 @@ public class Skills {
Leaderboard.updateLeaderboard(ps, "taming"); Leaderboard.updateLeaderboard(ps, "taming");
} }
if(player != null && PP != null && PP.getSkillToString("taming") != null) if(player != null && PP != null && PP.getSkillToString("taming") != null)
player.sendMessage(Messages.getString("Skills.TamingUp", new Object[] {String.valueOf(skillups), PP.getSkillToString("taming")})); player.sendMessage(mcLocale.getString("Skills.TamingUp", new Object[] {String.valueOf(skillups), PP.getSkillToString("taming")}));
} }
/* /*
* ACROBATICS * ACROBATICS
@ -317,7 +317,7 @@ public class Skills {
} }
if(player != null && PP != null && PP.getSkillToString("acrobatics") != null) if(player != null && PP != null && PP.getSkillToString("acrobatics") != null)
player.sendMessage(Messages.getString("Skills.AcrobaticsUp", new Object[] {String.valueOf(skillups), PP.getSkillToString("acrobatics")})); player.sendMessage(mcLocale.getString("Skills.AcrobaticsUp", new Object[] {String.valueOf(skillups), PP.getSkillToString("acrobatics")}));
} }
/* /*
* ARCHERY * ARCHERY
@ -339,7 +339,7 @@ public class Skills {
Leaderboard.updateLeaderboard(ps, "archery"); Leaderboard.updateLeaderboard(ps, "archery");
} }
if(player != null && PP != null && PP.getSkillToString("archery") != null) if(player != null && PP != null && PP.getSkillToString("archery") != null)
player.sendMessage(Messages.getString("Skills.ArcheryUp", new Object[] {String.valueOf(skillups), PP.getSkillToString("archery")})); player.sendMessage(mcLocale.getString("Skills.ArcheryUp", new Object[] {String.valueOf(skillups), PP.getSkillToString("archery")}));
} }
/* /*
* SWORDS * SWORDS
@ -362,7 +362,7 @@ public class Skills {
} }
if(player != null && PP != null && PP.getSkillToString("swords") != null) if(player != null && PP != null && PP.getSkillToString("swords") != null)
player.sendMessage(Messages.getString("Skills.SwordsUp", new Object[] {String.valueOf(skillups), PP.getSkillToString("swords")})); player.sendMessage(mcLocale.getString("Skills.SwordsUp", new Object[] {String.valueOf(skillups), PP.getSkillToString("swords")}));
} }
/* /*
* AXES * AXES
@ -384,7 +384,7 @@ public class Skills {
Leaderboard.updateLeaderboard(ps, "axes"); Leaderboard.updateLeaderboard(ps, "axes");
} }
if(player != null && PP != null && PP.getSkillToString("axes") != null) if(player != null && PP != null && PP.getSkillToString("axes") != null)
player.sendMessage(Messages.getString("Skills.AxesUp", new Object[] {String.valueOf(skillups), PP.getSkillToString("axes")})); player.sendMessage(mcLocale.getString("Skills.AxesUp", new Object[] {String.valueOf(skillups), PP.getSkillToString("axes")}));
} }
/* /*
* UNARMED * UNARMED
@ -406,7 +406,7 @@ public class Skills {
Leaderboard.updateLeaderboard(ps, "unarmed"); Leaderboard.updateLeaderboard(ps, "unarmed");
} }
if(player != null && PP != null && PP.getSkillToString("unarmed") != null) if(player != null && PP != null && PP.getSkillToString("unarmed") != null)
player.sendMessage(Messages.getString("Skills.UnarmedUp", new Object[] {String.valueOf(skillups), PP.getSkillToString("unarmed")})); player.sendMessage(mcLocale.getString("Skills.UnarmedUp", new Object[] {String.valueOf(skillups), PP.getSkillToString("unarmed")}));
} }
/* /*
* HERBALISM * HERBALISM
@ -428,7 +428,7 @@ public class Skills {
Leaderboard.updateLeaderboard(ps, "herbalism"); Leaderboard.updateLeaderboard(ps, "herbalism");
} }
if(player != null && PP != null && PP.getSkillToString("herbalism") != null) if(player != null && PP != null && PP.getSkillToString("herbalism") != null)
player.sendMessage(Messages.getString("Skills.HerbalismUp", new Object[] {String.valueOf(skillups), PP.getSkillToString("herbalism")})); player.sendMessage(mcLocale.getString("Skills.HerbalismUp", new Object[] {String.valueOf(skillups), PP.getSkillToString("herbalism")}));
} }
/* /*
* MINING * MINING
@ -450,7 +450,7 @@ public class Skills {
Leaderboard.updateLeaderboard(ps, "mining"); Leaderboard.updateLeaderboard(ps, "mining");
} }
if(player != null && PP != null && PP.getSkillToString("mining") != null) if(player != null && PP != null && PP.getSkillToString("mining") != null)
player.sendMessage(Messages.getString("Skills.MiningUp", new Object[] {String.valueOf(skillups), PP.getSkillToString("mining")})); player.sendMessage(mcLocale.getString("Skills.MiningUp", new Object[] {String.valueOf(skillups), PP.getSkillToString("mining")}));
} }
/* /*
* WOODCUTTING * WOODCUTTING
@ -472,7 +472,7 @@ public class Skills {
Leaderboard.updateLeaderboard(ps, "woodcutting"); Leaderboard.updateLeaderboard(ps, "woodcutting");
} }
if(player != null && PP != null && PP.getSkillToString("woodcutting") != null) if(player != null && PP != null && PP.getSkillToString("woodcutting") != null)
player.sendMessage(Messages.getString("Skills.WoodcuttingUp", new Object[] {String.valueOf(skillups), PP.getSkillToString("woodcutting")})); player.sendMessage(mcLocale.getString("Skills.WoodcuttingUp", new Object[] {String.valueOf(skillups), PP.getSkillToString("woodcutting")}));
} }
/* /*
* REPAIR * REPAIR
@ -494,7 +494,7 @@ public class Skills {
Leaderboard.updateLeaderboard(ps, "repair"); Leaderboard.updateLeaderboard(ps, "repair");
} }
if(player != null && PP != null && PP.getSkillToString("repair") != null) if(player != null && PP != null && PP.getSkillToString("repair") != null)
player.sendMessage(Messages.getString("Skills.RepairUp", new Object[] {String.valueOf(skillups), PP.getSkillToString("repair")})); player.sendMessage(mcLocale.getString("Skills.RepairUp", new Object[] {String.valueOf(skillups), PP.getSkillToString("repair")}));
} }
/* /*
* EXCAVATION * EXCAVATION
@ -516,7 +516,7 @@ public class Skills {
Leaderboard.updateLeaderboard(ps, "excavation"); Leaderboard.updateLeaderboard(ps, "excavation");
} }
if(player != null && PP != null && PP.getSkillToString("excavation") != null) if(player != null && PP != null && PP.getSkillToString("excavation") != null)
player.sendMessage(Messages.getString("Skills.ExcavationUp", new Object[] {String.valueOf(skillups), PP.getSkillToString("excavation")})); player.sendMessage(mcLocale.getString("Skills.ExcavationUp", new Object[] {String.valueOf(skillups), PP.getSkillToString("excavation")}));
//player.sendMessage(ChatColor.YELLOW+"Excavation skill increased by "+String.valueOf(skillups)+"."+" Total ("+PP.getSkillToString("excavation")+")"); //player.sendMessage(ChatColor.YELLOW+"Excavation skill increased by "+String.valueOf(skillups)+"."+" Total ("+PP.getSkillToString("excavation")+")");
} }
@ -537,13 +537,13 @@ public class Skills {
if(skillname.equals("all")){ if(skillname.equals("all")){
return true; return true;
} }
if(skillname.equals("sorcery")){ else if(skillname.equals("sorcery")){
return true; return true;
} }
if(skillname.equals("taming")){ else if(skillname.equals("taming")){
return true; return true;
} }
if(skillname.equals("mining")){ else if(skillname.equals("mining")){
return true; return true;
} }
else if(skillname.equals("woodcutting")){ else if(skillname.equals("woodcutting")){

View File

@ -7,13 +7,13 @@ import org.bukkit.Material;
import org.bukkit.block.Block; import org.bukkit.block.Block;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;
import com.gmail.nossr50.Messages;
import com.gmail.nossr50.Users; import com.gmail.nossr50.Users;
import com.gmail.nossr50.m; import com.gmail.nossr50.m;
import com.gmail.nossr50.mcMMO; import com.gmail.nossr50.mcMMO;
import com.gmail.nossr50.mcPermissions; import com.gmail.nossr50.mcPermissions;
import com.gmail.nossr50.config.LoadProperties; import com.gmail.nossr50.config.LoadProperties;
import com.gmail.nossr50.datatypes.PlayerProfile; import com.gmail.nossr50.datatypes.PlayerProfile;
import com.gmail.nossr50.locale.mcLocale;
public class Sorcery public class Sorcery
{ {
@ -37,13 +37,13 @@ public class Sorcery
} }
public void informSelected(String spellname, int cost, Player player) public void informSelected(String spellname, int cost, Player player)
{ {
player.sendMessage(Messages.getString("Sorcery.SpellSelected", new Object[] {spellname, cost})); player.sendMessage(mcLocale.getString("Sorcery.SpellSelected", new Object[] {spellname, cost}));
} }
public void informSpell(String spellname, Player player) public void informSpell(String spellname, Player player)
{ {
PlayerProfile PP = Users.getProfile(player); PlayerProfile PP = Users.getProfile(player);
player.sendMessage(Messages.getString("Sorcery.HasCast") +" "+spellname+" "+ Messages.getString("Sorcery.Current_Mana")+ChatColor.YELLOW+"("+ChatColor.GRAY+PP.getCurrentMana()+ChatColor.YELLOW+"/"+ChatColor.GREEN+PP.getMaxMana()+ChatColor.YELLOW+")"); player.sendMessage(mcLocale.getString("Sorcery.HasCast") +" "+spellname+" "+ mcLocale.getString("Sorcery.Current_Mana")+ChatColor.YELLOW+"("+ChatColor.GRAY+PP.getCurrentMana()+ChatColor.YELLOW+"/"+ChatColor.GREEN+PP.getMaxMana()+ChatColor.YELLOW+")");
} }
public void shoutSpell(String spellname, Player player) public void shoutSpell(String spellname, Player player)
@ -79,7 +79,7 @@ public class Sorcery
PP.setGreenDyeCycleSel(1); PP.setGreenDyeCycleSel(1);
PP.setGreenDyeCycle(0); PP.setGreenDyeCycle(0);
informSelected(Messages.getString("Sorcery.Curative.Self"), LoadProperties.cure_self, player); informSelected(mcLocale.getString("Sorcery.Curative.Self"), LoadProperties.cure_self, player);
break; break;
} }
@ -94,7 +94,7 @@ public class Sorcery
PP.setGreenDyeCycleSel(0); PP.setGreenDyeCycleSel(0);
PP.setGreenDyeCycle(1); PP.setGreenDyeCycle(1);
informSelected(Messages.getString("Sorcery.Curative.Other"), LoadProperties.cure_other, player); informSelected(mcLocale.getString("Sorcery.Curative.Other"), LoadProperties.cure_other, player);
break; break;
} }
else else

View File

@ -1,7 +1,6 @@
package com.gmail.nossr50.skills; package com.gmail.nossr50.skills;
import org.bukkit.ChatColor; import org.bukkit.ChatColor;
import org.bukkit.entity.Animals;
import org.bukkit.entity.Entity; import org.bukkit.entity.Entity;
import org.bukkit.entity.LivingEntity; import org.bukkit.entity.LivingEntity;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;
@ -12,17 +11,16 @@ import org.bukkit.event.entity.EntityDamageEvent;
import org.bukkit.plugin.Plugin; import org.bukkit.plugin.Plugin;
import com.gmail.nossr50.Combat; import com.gmail.nossr50.Combat;
import com.gmail.nossr50.Messages;
import com.gmail.nossr50.Users; import com.gmail.nossr50.Users;
import com.gmail.nossr50.m; import com.gmail.nossr50.m;
import com.gmail.nossr50.mcMMO; import com.gmail.nossr50.mcMMO;
import com.gmail.nossr50.mcPermissions; import com.gmail.nossr50.mcPermissions;
import com.gmail.nossr50.config.LoadProperties;
import com.gmail.nossr50.datatypes.PlayerProfile; import com.gmail.nossr50.datatypes.PlayerProfile;
import com.gmail.nossr50.locale.mcLocale;
import com.gmail.nossr50.party.Party; import com.gmail.nossr50.party.Party;
public class Swords { public class Swords
{
public static void serratedStrikesActivationCheck(Player player, Plugin pluginx){ public static void serratedStrikesActivationCheck(Player player, Plugin pluginx){
PlayerProfile PP = Users.getProfile(player); PlayerProfile PP = Users.getProfile(player);
if(m.isSwords(player.getItemInHand())) if(m.isSwords(player.getItemInHand()))
@ -41,11 +39,11 @@ public class Swords {
if(!PP.getSerratedStrikesMode() && PP.getSerratedStrikesDeactivatedTimeStamp() < System.currentTimeMillis()) if(!PP.getSerratedStrikesMode() && PP.getSerratedStrikesDeactivatedTimeStamp() < System.currentTimeMillis())
{ {
player.sendMessage(Messages.getString("Skills.SerratedStrikesOn")); player.sendMessage(mcLocale.getString("Skills.SerratedStrikesOn"));
for(Player y : pluginx.getServer().getOnlinePlayers()) for(Player y : pluginx.getServer().getOnlinePlayers())
{ {
if(y != null && y != player && m.getDistance(player.getLocation(), y.getLocation()) < 10) if(y != null && y != player && m.getDistance(player.getLocation(), y.getLocation()) < 10)
y.sendMessage(Messages.getString("Skills.SerratedStrikesPlayer", new Object[] {player.getName()})); y.sendMessage(mcLocale.getString("Skills.SerratedStrikesPlayer", new Object[] {player.getName()}));
} }
PP.setSerratedStrikesActivatedTimeStamp(System.currentTimeMillis()); PP.setSerratedStrikesActivatedTimeStamp(System.currentTimeMillis());
PP.setSerratedStrikesDeactivatedTimeStamp(System.currentTimeMillis() + (ticks * 1000)); PP.setSerratedStrikesDeactivatedTimeStamp(System.currentTimeMillis() + (ticks * 1000));
@ -231,8 +229,6 @@ public class Swords {
} }
public static void bleedSimulate(mcMMO plugin) public static void bleedSimulate(mcMMO plugin)
{ {
long before = System.currentTimeMillis();
//Add items from Que list to BleedTrack list //Add items from Que list to BleedTrack list
for(LivingEntity x : plugin.misc.bleedQue) for(LivingEntity x : plugin.misc.bleedQue)
@ -269,11 +265,5 @@ public class Swords {
x.damage(2); x.damage(2);
} }
} }
long after = System.currentTimeMillis();
if(LoadProperties.print_reports)
{
plugin.bleedSimulation+=(after-before);
}
} }
} }

View File

@ -8,7 +8,8 @@ import org.bukkit.plugin.Plugin;
public class Taming public class Taming
{ {
public static boolean ownerOnline(Wolf theWolf, Plugin pluginx){ public static boolean ownerOnline(Wolf theWolf, Plugin pluginx)
{
for(Player x : pluginx.getServer().getOnlinePlayers()) for(Player x : pluginx.getServer().getOnlinePlayers())
{ {
if(x instanceof AnimalTamer) if(x instanceof AnimalTamer)

View File

@ -6,11 +6,11 @@ import org.bukkit.event.entity.EntityDamageByEntityEvent;
import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.ItemStack;
import org.bukkit.plugin.Plugin; import org.bukkit.plugin.Plugin;
import com.gmail.nossr50.Messages;
import com.gmail.nossr50.Users; import com.gmail.nossr50.Users;
import com.gmail.nossr50.m; import com.gmail.nossr50.m;
import com.gmail.nossr50.config.LoadProperties; import com.gmail.nossr50.config.LoadProperties;
import com.gmail.nossr50.datatypes.PlayerProfile; import com.gmail.nossr50.datatypes.PlayerProfile;
import com.gmail.nossr50.locale.mcLocale;
public class Unarmed { public class Unarmed {
public static void berserkActivationCheck(Player player, Plugin pluginx){ public static void berserkActivationCheck(Player player, Plugin pluginx){
@ -27,10 +27,10 @@ public class Unarmed {
} }
if(!PP.getBerserkMode() && Skills.cooldownOver(player, PP.getBerserkDeactivatedTimeStamp(), LoadProperties.berserkCooldown)){ if(!PP.getBerserkMode() && Skills.cooldownOver(player, PP.getBerserkDeactivatedTimeStamp(), LoadProperties.berserkCooldown)){
player.sendMessage(Messages.getString("Skills.BerserkOn")); player.sendMessage(mcLocale.getString("Skills.BerserkOn"));
for(Player y : pluginx.getServer().getOnlinePlayers()){ for(Player y : pluginx.getServer().getOnlinePlayers()){
if(y != null && y != player && m.getDistance(player.getLocation(), y.getLocation()) < 10) if(y != null && y != player && m.getDistance(player.getLocation(), y.getLocation()) < 10)
y.sendMessage(Messages.getString("Skills.BerserkPlayer", new Object[] {player.getName()})); y.sendMessage(mcLocale.getString("Skills.BerserkPlayer", new Object[] {player.getName()}));
} }
PP.setBerserkActivatedTimeStamp(System.currentTimeMillis()); PP.setBerserkActivatedTimeStamp(System.currentTimeMillis());
PP.setBerserkDeactivatedTimeStamp(System.currentTimeMillis() + (ticks * 1000)); PP.setBerserkDeactivatedTimeStamp(System.currentTimeMillis() + (ticks * 1000));
@ -60,7 +60,7 @@ public class Unarmed {
Location loc = defender.getLocation(); Location loc = defender.getLocation();
if(defender.getItemInHand() != null && defender.getItemInHand().getTypeId() != 0) if(defender.getItemInHand() != null && defender.getItemInHand().getTypeId() != 0)
{ {
defender.sendMessage(Messages.getString("Skills.Disarmed")); defender.sendMessage(mcLocale.getString("Skills.Disarmed"));
ItemStack item = defender.getItemInHand(); ItemStack item = defender.getItemInHand();
if(item != null) if(item != null)
{ {
@ -75,7 +75,7 @@ public class Unarmed {
Location loc = defender.getLocation(); Location loc = defender.getLocation();
if(defender.getItemInHand() != null && defender.getItemInHand().getTypeId() != 0) if(defender.getItemInHand() != null && defender.getItemInHand().getTypeId() != 0)
{ {
defender.sendMessage(Messages.getString("Skills.Disarmed")); defender.sendMessage(mcLocale.getString("Skills.Disarmed"));
ItemStack item = defender.getItemInHand(); ItemStack item = defender.getItemInHand();
if(item != null) if(item != null)
{ {

View File

@ -10,11 +10,11 @@ import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.ItemStack;
import org.bukkit.plugin.Plugin; import org.bukkit.plugin.Plugin;
import com.gmail.nossr50.Messages;
import com.gmail.nossr50.Users; import com.gmail.nossr50.Users;
import com.gmail.nossr50.m; import com.gmail.nossr50.m;
import com.gmail.nossr50.mcMMO; import com.gmail.nossr50.mcMMO;
import com.gmail.nossr50.datatypes.PlayerProfile; import com.gmail.nossr50.datatypes.PlayerProfile;
import com.gmail.nossr50.locale.mcLocale;
import com.gmail.nossr50.config.*; import com.gmail.nossr50.config.*;
@ -58,10 +58,10 @@ public class WoodCutting {
} }
if(!PP.getTreeFellerMode() && Skills.cooldownOver(player, PP.getTreeFellerDeactivatedTimeStamp(), LoadProperties.treeFellerCooldown)){ if(!PP.getTreeFellerMode() && Skills.cooldownOver(player, PP.getTreeFellerDeactivatedTimeStamp(), LoadProperties.treeFellerCooldown)){
player.sendMessage(Messages.getString("Skills.TreeFellerOn")); player.sendMessage(mcLocale.getString("Skills.TreeFellerOn"));
for(Player y : pluginx.getServer().getOnlinePlayers()){ for(Player y : pluginx.getServer().getOnlinePlayers()){
if(y != null && y != player && m.getDistance(player.getLocation(), y.getLocation()) < 10) if(y != null && y != player && m.getDistance(player.getLocation(), y.getLocation()) < 10)
y.sendMessage(Messages.getString("Skills.TreeFellerPlayer", new Object[] {player.getName()})); y.sendMessage(mcLocale.getString("Skills.TreeFellerPlayer", new Object[] {player.getName()}));
} }
PP.setTreeFellerActivatedTimeStamp(System.currentTimeMillis()); PP.setTreeFellerActivatedTimeStamp(System.currentTimeMillis());
PP.setTreeFellerDeactivatedTimeStamp(System.currentTimeMillis() + (ticks * 1000)); PP.setTreeFellerDeactivatedTimeStamp(System.currentTimeMillis() + (ticks * 1000));

View File

@ -1,3 +1,66 @@
name: mcMMO name: mcMMO
main: com.gmail.nossr50.mcMMO main: com.gmail.nossr50.mcMMO
version: 1.0.34 version: 1.0.35
commands:
mcc:
description: Lists mcMMO commands
mcmmo:
description: Shows a brief mod description
mctop:
description: Shows leader boards for mcMMO
addxp:
description: Add XP to a user
mcability:
description: Toggle whether or not abilities get readied on right click
mcrefresh:
description: Refresh all cooldowns for mcMMO
mcgod:
description: Make yourself invulnerable
stats:
description: Shows your mcMMO stats and xp
mmoedit:
description: Edit the skill values for a user
ptp:
description: Teleport to a party member
party:
description: Create/join a party
myspawn:
description: Teleport to your MySpawn
whois:
description: View mcMMO stats of another player
invite:
description: Invite a player into your party
accept:
description: Accept a party invite
clearmyspawn:
description: Clear your MySpawn location
mmoupdate:
description: Convert from Flat File to MySQL
p:
description: Toggle Party chat or send party chat messages
excavation:
description: Detailed skill info
herbalism:
description: Detailed skill info
mining:
description: Detailed skill info
woodcutting:
description: Detailed skill info
axes:
description: Detailed skill info
archery:
description: Detailed skill info
swords:
description: Detailed skill info
taming:
description: Detailed skill info
unarmed:
description: Detailed skill info
acrobatics:
description: Detailed skill info
repair:
description: Detailed skill info
a:
description: Toggle Admin chat or send admin chat messages
sorcery:
description: Detailed skill info