فهرست منبع

LOCALE ALL THE THINGS!

GJ 13 سال پیش
والد
کامیت
0aaf02f208

+ 0 - 3
src/main/java/com/gmail/nossr50/datatypes/PlayerProfile.java

@@ -1047,10 +1047,7 @@ public class PlayerProfile
 					bonusModifier = 2;
 				
 				double trueBonus = bonusModifier * xp;
-				//double oldxp = xp;
 				xp+=trueBonus;
-				//double percent = (trueBonus/oldxp)*100;
-				//thisplayer.sendMessage(ChatColor.GREEN+"XP: "+oldxp+" Bonus XP: "+trueBonus+" Total: "+xp+ChatColor.GOLD+" [Master: "+leaderName+" " +" +"+(int)percent+"%]");
 			}
 			Bukkit.getPluginManager().callEvent(new McMMOPlayerXpGainEvent(Bukkit.getPlayer(playerName), skillType, xp));
 			skillsXp.put(skillType, skillsXp.get(skillType)+xp);

+ 5 - 5
src/main/java/com/gmail/nossr50/skills/Acrobatics.java

@@ -16,7 +16,6 @@
 */
 package com.gmail.nossr50.skills;
 
-import org.bukkit.ChatColor;
 import org.bukkit.entity.Player;
 import org.bukkit.event.entity.EntityDamageByEntityEvent;
 import org.bukkit.event.entity.EntityDamageEvent;
@@ -25,6 +24,7 @@ import com.gmail.nossr50.Users;
 import com.gmail.nossr50.mcPermissions;
 import com.gmail.nossr50.datatypes.PlayerProfile;
 import com.gmail.nossr50.datatypes.SkillType;
+import com.gmail.nossr50.locale.mcLocale;
 
 
 public class Acrobatics {
@@ -59,9 +59,9 @@ public class Acrobatics {
 				if(event.getDamage() <= 0)
 					event.setCancelled(true);
 				if(player.isSneaking()){
-					player.sendMessage(ChatColor.GREEN+"**GRACEFUL ROLL**");
+					player.sendMessage(mcLocale.getString("Acrobatics.GracefulRoll"));
 				} else {
-					player.sendMessage("**ROLL**");
+					player.sendMessage(mcLocale.getString("Acrobatics.Roll"));
 				}
 			}
 		} 
@@ -78,7 +78,7 @@ public class Acrobatics {
 		if(mcPermissions.getInstance().acrobatics(defender)){
 			if(PPd.getSkillLevel(SkillType.ACROBATICS) <= 800){
 	    		if(Math.random() * 4000 <= PPd.getSkillLevel(SkillType.ACROBATICS)){
-	    			defender.sendMessage(ChatColor.GREEN+"**DODGE**");
+	    			defender.sendMessage(mcLocale.getString("Acrobatics.Dodge"));
 	    			if(System.currentTimeMillis() >= 5000 + PPd.getRespawnATS() && defender.getHealth() >= 1){
 	    				PPd.addXP(SkillType.ACROBATICS, (event.getDamage() * 12)*1, defender);
 	    				Skills.XpCheckSkill(SkillType.ACROBATICS, defender);
@@ -89,7 +89,7 @@ public class Acrobatics {
 	    				event.setDamage(1);
 	    		}
 			} else if(Math.random() * 4000 <= 800) {
-				defender.sendMessage(ChatColor.GREEN+"**DODGE**");
+				defender.sendMessage(mcLocale.getString("Acrobatics.Dodge"));
 				if(System.currentTimeMillis() >= 5000 + PPd.getRespawnATS() && defender.getHealth() >= 1){
 					PPd.addXP(SkillType.ACROBATICS, (event.getDamage() * 12)*10, defender);
 					Skills.XpCheckSkill(SkillType.ACROBATICS, defender);

+ 5 - 6
src/main/java/com/gmail/nossr50/skills/Axes.java

@@ -16,7 +16,6 @@
 */
 package com.gmail.nossr50.skills;
 
-import org.bukkit.ChatColor;
 import org.bukkit.Material;
 import org.bukkit.entity.Entity;
 import org.bukkit.entity.LivingEntity;
@@ -70,26 +69,26 @@ public class Axes {
     					int damage = (event.getDamage() * 2) - (event.getDamage() / 2);
     					event.setDamage(damage);
     					Player player = (Player)x;
-    					player.sendMessage(ChatColor.DARK_RED + "You were CRITICALLY hit!");
+    					player.sendMessage(mcLocale.getString("Axes.HitCritically"));
     				}
     				else {
     					int damage = event.getDamage() * 2;
         				event.setDamage(damage);
         			}
-    				attacker.sendMessage(ChatColor.RED+"CRITICAL HIT!");
+    				attacker.sendMessage(mcLocale.getString("Axes.CriticalHit"));
     			}
     		} else if(Math.random() * 2000 <= PPa.getSkillLevel(SkillType.AXES) && !x.isDead()){
     			if(x instanceof Player){
     				int damage = (event.getDamage() * 2) - (event.getDamage() / 2);
 					event.setDamage(damage);
     				Player player = (Player)x;
-    				player.sendMessage(ChatColor.DARK_RED + "You were CRITICALLY hit!");
+    				player.sendMessage(mcLocale.getString("Axes.HitCritically"));
     			}
     			else {
     				int damage = event.getDamage() * 2;
     				event.setDamage(damage);
     			}
-				attacker.sendMessage(ChatColor.RED+"CRITICAL HIT!");
+				attacker.sendMessage(mcLocale.getString("Axes.CriticalHit"));
     		}
     	}
     }
@@ -186,7 +185,7 @@ public class Axes {
 	    				if(targets >= 1 && derp.getWorld().getPVP())
 	    				{
 	    				    Combat.dealDamage(target, dmgAmount, attacker);
-	    					target.sendMessage(ChatColor.DARK_RED+"Struck by CLEAVE!");
+	    					target.sendMessage(mcLocale.getString("Axes.HitByCleave"));
 	    					targets--;
 	    					continue;
 	    				}

+ 8 - 8
src/main/java/com/gmail/nossr50/skills/Swords.java

@@ -16,7 +16,6 @@
 */
 package com.gmail.nossr50.skills;
 
-import org.bukkit.ChatColor;
 import org.bukkit.entity.Entity;
 import org.bukkit.entity.LivingEntity;
 import org.bukkit.entity.Player;
@@ -29,6 +28,7 @@ import com.gmail.nossr50.mcMMO;
 import com.gmail.nossr50.mcPermissions;
 import com.gmail.nossr50.datatypes.PlayerProfile;
 import com.gmail.nossr50.datatypes.SkillType;
+import com.gmail.nossr50.locale.mcLocale;
 import com.gmail.nossr50.party.Party;
 
 public class Swords 
@@ -61,7 +61,7 @@ public class Swords
 						Player target = (Player)x;
 						Users.getProfile(target).addBleedTicks(3);
 					}
-					attacker.sendMessage(ChatColor.GREEN+"**ENEMY BLEEDING**");
+					attacker.sendMessage(mcLocale.getString("Swords.EnemyBleeding"));
 				}
 			} 
 			else if (Math.random() * 1000 <= PPa.getSkillLevel(SkillType.SWORDS))
@@ -73,7 +73,7 @@ public class Swords
 					Player target = (Player)x;
 					Users.getProfile(target).addBleedTicks(2);
 				}
-				attacker.sendMessage(ChatColor.GREEN+"**ENEMY BLEEDING**");
+				attacker.sendMessage(mcLocale.getString("Swords.EnemyBleeding"));
 			}
 		}
     }
@@ -125,7 +125,7 @@ public class Swords
 	    				if(targets >= 1 && derp.getWorld().getPVP())
 	    				{
 	    					Combat.dealDamage(target, dmgAmount, attacker);
-	    					target.sendMessage(ChatColor.DARK_RED+"Struck by Serrated Strikes!");
+	    					target.sendMessage(mcLocale.getString("Swords.HitBySerratedStrikes"));
 	        				Users.getProfile(target).addBleedTicks(5);
 	    					targets--;
 	    					continue;
@@ -166,17 +166,17 @@ public class Swords
 		    			if(Math.random() * 2000 <= 600)
 		    			{
 			    			Combat.dealDamage((LivingEntity) f, event.getDamage() / 2);
-		    				defender.sendMessage(ChatColor.GREEN+"**COUNTER-ATTACKED**");
+			    			defender.sendMessage(mcLocale.getString("Swords.CounterAttacked"));
 			    			if(f instanceof Player)
-		    				((Player) f).sendMessage(ChatColor.DARK_RED+"Hit with counterattack!");
+		    				((Player) f).sendMessage(mcLocale.getString("Swords.HitByCounterAttack"));
 		    			}
 		    		}
 		    		else if (Math.random() * 2000 <= PPd.getSkillLevel(SkillType.SWORDS))
 		    		{
 			    		Combat.dealDamage((LivingEntity) f, event.getDamage() / 2);
-			    		defender.sendMessage(ChatColor.GREEN+"**COUNTER-ATTACKED**");
+			    		defender.sendMessage(mcLocale.getString("Swords.CounterAttacked"));
 		    			if(f instanceof Player)
-		    				((Player) f).sendMessage(ChatColor.DARK_RED+"Hit with counterattack!");
+		    				((Player) f).sendMessage(mcLocale.getString("Swords.HitByCounterAttack"));
 		    		}
 		   		}
 		    }

+ 11 - 1
src/main/resources/locale/locale_de.properties

@@ -418,4 +418,14 @@ Skills.GigaDrillBreakerPlayerOff=[[RED]]Giga Drill Breaker[[GREEN]] has worn off
 Skills.SerratedStrikesPlayerOff=[[RED]]Serrated Strikes[[GREEN]] has worn off for [[YELLOW]]{0}
 Skills.BlastMiningPlayer=[[GREEN]]{0}[[DARK_GREEN]] has used [[RED]]Blast Mining!
 Skills.YourBlastMining=[[GREEN]]Your [[YELLOW]]Blast Mining [[GREEN]]ability is refreshed!
-TreeFeller.AxeSplinters=[[RED]]YOUR AXE SPLINTERS INTO DOZENS OF PIECES
+TreeFeller.AxeSplinters=[[RED]]YOUR AXE SPLINTERS INTO DOZENS OF PIECES
+Acrobatics.GracefulRoll=[[GREEN]]**GRACEFUL ROLL**
+Acrobatics.Dodge=[[GREEN]]**DODGE**
+Acrobatics.Roll=**ROLL**
+Axes.HitCritically=[[DARK_RED]]You were CRITICALLY hit!
+Axes.CriticalHit=[[RED]]CRITIAL HIT!
+Axes.HitByCleave=[[DARK_RED]]Struck by CLEAVE!
+Swords.EnemyBleeding=[[GREEN]]**ENEMY BLEEDING**
+Swords.HitBySerratedStrikes=[[DARK_RED]]Struck by SERRATED STRIKES!
+Swords.CounterAttacked=[[GREEN]]**COUNTER-ATTACKED**
+Swords.HitByCounterAttack=[[DARK_RED]]Hit with a counter-attack!

+ 11 - 1
src/main/resources/locale/locale_en_us.properties

@@ -414,4 +414,14 @@ Skills.SerratedStrikesPlayerOff=[[RED]]Serrated Strikes[[GREEN]] has worn off fo
 Skills.BlastMiningPlayer=[[GREEN]]{0}[[DARK_GREEN]] has used [[RED]]Blast Mining!
 Skills.YourBlastMining=[[GREEN]]Your [[YELLOW]]Blast Mining [[GREEN]]ability is refreshed!
 TreeFeller.AxeSplinters=[[RED]]YOUR AXE SPLINTERS INTO DOZENS OF PIECES
-Guides.Excavation=XP GAIN:\n\nGain XP from soft materials with your shovel.\nMaterials include Grass, Dirt, Sand,\nGravel, Mycelium, and Clay\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHE END
+Guides.Excavation=XP GAIN:\n\nGain XP from soft materials with your shovel.\nMaterials include Grass, Dirt, Sand,\nGravel, Mycelium, and Clay\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHIS IS PROOF\nOF CONCEPT\nTHE END
+Acrobatics.GracefulRoll=[[GREEN]]**GRACEFUL ROLL**
+Acrobatics.Dodge=[[GREEN]]**DODGE**
+Acrobatics.Roll=**ROLL**
+Axes.HitCritically=[[DARK_RED]]You were CRITICALLY hit!
+Axes.CriticalHit=[[RED]]CRITIAL HIT!
+Axes.HitByCleave=[[DARK_RED]]Struck by CLEAVE!
+Swords.EnemyBleeding=[[GREEN]]**ENEMY BLEEDING**
+Swords.HitBySerratedStrikes=[[DARK_RED]]Struck by SERRATED STRIKES!
+Swords.CounterAttacked=[[GREEN]]**COUNTER-ATTACKED**
+Swords.HitByCounterAttack=[[DARK_RED]]Hit with a counter-attack!

+ 11 - 1
src/main/resources/locale/locale_es_es.properties

@@ -411,4 +411,14 @@ Skills.GigaDrillBreakerPlayerOff=[[RED]]Giga Drill Breaker[[GREEN]] has worn off
 Skills.SerratedStrikesPlayerOff=[[RED]]Serrated Strikes[[GREEN]] has worn off for [[YELLOW]]{0}
 Skills.BlastMiningPlayer=[[GREEN]]{0}[[DARK_GREEN]] has used [[RED]]Blast Mining!
 Skills.YourBlastMining=[[GREEN]]Your [[YELLOW]]Blast Mining [[GREEN]]ability is refreshed!
-TreeFeller.AxeSplinters=[[RED]]YOUR AXE SPLINTERS INTO DOZENS OF PIECES
+TreeFeller.AxeSplinters=[[RED]]YOUR AXE SPLINTERS INTO DOZENS OF PIECES
+Acrobatics.GracefulRoll=[[GREEN]]**GRACEFUL ROLL**
+Acrobatics.Dodge=[[GREEN]]**DODGE**
+Acrobatics.Roll=**ROLL**
+Axes.HitCritically=[[DARK_RED]]You were CRITICALLY hit!
+Axes.CriticalHit=[[RED]]CRITIAL HIT!
+Axes.HitByCleave=[[DARK_RED]]Struck by CLEAVE!
+Swords.EnemyBleeding=[[GREEN]]**ENEMY BLEEDING**
+Swords.HitBySerratedStrikes=[[DARK_RED]]Struck by SERRATED STRIKES!
+Swords.CounterAttacked=[[GREEN]]**COUNTER-ATTACKED**
+Swords.HitByCounterAttack=[[DARK_RED]]Hit with a counter-attack!

+ 11 - 1
src/main/resources/locale/locale_fi.properties

@@ -400,4 +400,14 @@ Skills.GigaDrillBreakerPlayerOff=[[RED]]Giga Drill Breaker[[GREEN]] has worn off
 Skills.SerratedStrikesPlayerOff=[[RED]]Serrated Strikes[[GREEN]] has worn off for [[YELLOW]]{0}
 Skills.BlastMiningPlayer=[[GREEN]]{0}[[DARK_GREEN]] has used [[RED]]Blast Mining!
 Skills.YourBlastMining=[[GREEN]]Your [[YELLOW]]Blast Mining [[GREEN]]ability is refreshed!
-TreeFeller.AxeSplinters=[[RED]]YOUR AXE SPLINTERS INTO DOZENS OF PIECES
+TreeFeller.AxeSplinters=[[RED]]YOUR AXE SPLINTERS INTO DOZENS OF PIECES
+Acrobatics.GracefulRoll=[[GREEN]]**GRACEFUL ROLL**
+Acrobatics.Dodge=[[GREEN]]**DODGE**
+Acrobatics.Roll=**ROLL**
+Axes.HitCritically=[[DARK_RED]]You were CRITICALLY hit!
+Axes.CriticalHit=[[RED]]CRITIAL HIT!
+Axes.HitByCleave=[[DARK_RED]]Struck by CLEAVE!
+Swords.EnemyBleeding=[[GREEN]]**ENEMY BLEEDING**
+Swords.HitBySerratedStrikes=[[DARK_RED]]Struck by SERRATED STRIKES!
+Swords.CounterAttacked=[[GREEN]]**COUNTER-ATTACKED**
+Swords.HitByCounterAttack=[[DARK_RED]]Hit with a counter-attack!

+ 11 - 1
src/main/resources/locale/locale_fr.properties

@@ -411,4 +411,14 @@ Skills.GigaDrillBreakerPlayerOff=[[RED]]Giga Drill Breaker[[GREEN]] has worn off
 Skills.SerratedStrikesPlayerOff=[[RED]]Serrated Strikes[[GREEN]] has worn off for [[YELLOW]]{0}
 Skills.BlastMiningPlayer=[[GREEN]]{0}[[DARK_GREEN]] has used [[RED]]Blast Mining!
 Skills.YourBlastMining=[[GREEN]]Your [[YELLOW]]Blast Mining [[GREEN]]ability is refreshed!
-TreeFeller.AxeSplinters=[[RED]]YOUR AXE SPLINTERS INTO DOZENS OF PIECES
+TreeFeller.AxeSplinters=[[RED]]YOUR AXE SPLINTERS INTO DOZENS OF PIECES
+Acrobatics.GracefulRoll=[[GREEN]]**GRACEFUL ROLL**
+Acrobatics.Dodge=[[GREEN]]**DODGE**
+Acrobatics.Roll=**ROLL**
+Axes.HitCritically=[[DARK_RED]]You were CRITICALLY hit!
+Axes.CriticalHit=[[RED]]CRITIAL HIT!
+Axes.HitByCleave=[[DARK_RED]]Struck by CLEAVE!
+Swords.EnemyBleeding=[[GREEN]]**ENEMY BLEEDING**
+Swords.HitBySerratedStrikes=[[DARK_RED]]Struck by SERRATED STRIKES!
+Swords.CounterAttacked=[[GREEN]]**COUNTER-ATTACKED**
+Swords.HitByCounterAttack=[[DARK_RED]]Hit with a counter-attack!

+ 11 - 1
src/main/resources/locale/locale_nl.properties

@@ -417,4 +417,14 @@ Skills.GigaDrillBreakerPlayerOff=[[RED]]Giga Drill Breaker[[GREEN]] has worn off
 Skills.SerratedStrikesPlayerOff=[[RED]]Serrated Strikes[[GREEN]] has worn off for [[YELLOW]]{0}
 Skills.BlastMiningPlayer=[[GREEN]]{0}[[DARK_GREEN]] has used [[RED]]Blast Mining!
 Skills.YourBlastMining=[[GREEN]]Your [[YELLOW]]Blast Mining [[GREEN]]ability is refreshed!
-TreeFeller.AxeSplinters=[[RED]]YOUR AXE SPLINTERS INTO DOZENS OF PIECES
+TreeFeller.AxeSplinters=[[RED]]YOUR AXE SPLINTERS INTO DOZENS OF PIECES
+Acrobatics.GracefulRoll=[[GREEN]]**GRACEFUL ROLL**
+Acrobatics.Dodge=[[GREEN]]**DODGE**
+Acrobatics.Roll=**ROLL**
+Axes.HitCritically=[[DARK_RED]]You were CRITICALLY hit!
+Axes.CriticalHit=[[RED]]CRITIAL HIT!
+Axes.HitByCleave=[[DARK_RED]]Struck by CLEAVE!
+Swords.EnemyBleeding=[[GREEN]]**ENEMY BLEEDING**
+Swords.HitBySerratedStrikes=[[DARK_RED]]Struck by SERRATED STRIKES!
+Swords.CounterAttacked=[[GREEN]]**COUNTER-ATTACKED**
+Swords.HitByCounterAttack=[[DARK_RED]]Hit with a counter-attack!

+ 11 - 1
src/main/resources/locale/locale_pl.properties

@@ -411,4 +411,14 @@ Skills.GigaDrillBreakerPlayerOff=[[RED]]Giga Drill Breaker[[GREEN]] has worn off
 Skills.SerratedStrikesPlayerOff=[[RED]]Serrated Strikes[[GREEN]] has worn off for [[YELLOW]]{0}
 Skills.BlastMiningPlayer=[[GREEN]]{0}[[DARK_GREEN]] has used [[RED]]Blast Mining!
 Skills.YourBlastMining=[[GREEN]]Your [[YELLOW]]Blast Mining [[GREEN]]ability is refreshed!
-TreeFeller.AxeSplinters=[[RED]]YOUR AXE SPLINTERS INTO DOZENS OF PIECES
+TreeFeller.AxeSplinters=[[RED]]YOUR AXE SPLINTERS INTO DOZENS OF PIECES
+Acrobatics.GracefulRoll=[[GREEN]]**GRACEFUL ROLL**
+Acrobatics.Dodge=[[GREEN]]**DODGE**
+Acrobatics.Roll=**ROLL**
+Axes.HitCritically=[[DARK_RED]]You were CRITICALLY hit!
+Axes.CriticalHit=[[RED]]CRITIAL HIT!
+Axes.HitByCleave=[[DARK_RED]]Struck by CLEAVE!
+Swords.EnemyBleeding=[[GREEN]]**ENEMY BLEEDING**
+Swords.HitBySerratedStrikes=[[DARK_RED]]Struck by SERRATED STRIKES!
+Swords.CounterAttacked=[[GREEN]]**COUNTER-ATTACKED**
+Swords.HitByCounterAttack=[[DARK_RED]]Hit with a counter-attack!

+ 11 - 1
src/main/resources/locale/locale_pt_br.properties

@@ -418,4 +418,14 @@ Skills.GigaDrillBreakerPlayerOff=[[RED]]Giga Drill Breaker[[GREEN]] has worn off
 Skills.SerratedStrikesPlayerOff=[[RED]]Serrated Strikes[[GREEN]] has worn off for [[YELLOW]]{0}
 Skills.BlastMiningPlayer=[[GREEN]]{0}[[DARK_GREEN]] has used [[RED]]Blast Mining!
 Skills.YourBlastMining=[[GREEN]]Your [[YELLOW]]Blast Mining [[GREEN]]ability is refreshed!
-TreeFeller.AxeSplinters=[[RED]]YOUR AXE SPLINTERS INTO DOZENS OF PIECES
+TreeFeller.AxeSplinters=[[RED]]YOUR AXE SPLINTERS INTO DOZENS OF PIECES
+Acrobatics.GracefulRoll=[[GREEN]]**GRACEFUL ROLL**
+Acrobatics.Dodge=[[GREEN]]**DODGE**
+Acrobatics.Roll=**ROLL**
+Axes.HitCritically=[[DARK_RED]]You were CRITICALLY hit!
+Axes.CriticalHit=[[RED]]CRITIAL HIT!
+Axes.HitByCleave=[[DARK_RED]]Struck by CLEAVE!
+Swords.EnemyBleeding=[[GREEN]]**ENEMY BLEEDING**
+Swords.HitBySerratedStrikes=[[DARK_RED]]Struck by SERRATED STRIKES!
+Swords.CounterAttacked=[[GREEN]]**COUNTER-ATTACKED**
+Swords.HitByCounterAttack=[[DARK_RED]]Hit with a counter-attack!

+ 11 - 1
src/main/resources/locale/locale_ru.properties

@@ -403,4 +403,14 @@ Skills.GigaDrillBreakerPlayerOff=[[RED]]Giga Drill Breaker[[GREEN]] has worn off
 Skills.SerratedStrikesPlayerOff=[[RED]]Serrated Strikes[[GREEN]] has worn off for [[YELLOW]]{0}
 Skills.BlastMiningPlayer=[[GREEN]]{0}[[DARK_GREEN]] has used [[RED]]Blast Mining!
 Skills.YourBlastMining=[[GREEN]]Your [[YELLOW]]Blast Mining [[GREEN]]ability is refreshed!
-TreeFeller.AxeSplinters=[[RED]]YOUR AXE SPLINTERS INTO DOZENS OF PIECES
+TreeFeller.AxeSplinters=[[RED]]YOUR AXE SPLINTERS INTO DOZENS OF PIECES
+Acrobatics.GracefulRoll=[[GREEN]]**GRACEFUL ROLL**
+Acrobatics.Dodge=[[GREEN]]**DODGE**
+Acrobatics.Roll=**ROLL**
+Axes.HitCritically=[[DARK_RED]]You were CRITICALLY hit!
+Axes.CriticalHit=[[RED]]CRITIAL HIT!
+Axes.HitByCleave=[[DARK_RED]]Struck by CLEAVE!
+Swords.EnemyBleeding=[[GREEN]]**ENEMY BLEEDING**
+Swords.HitBySerratedStrikes=[[DARK_RED]]Struck by SERRATED STRIKES!
+Swords.CounterAttacked=[[GREEN]]**COUNTER-ATTACKED**
+Swords.HitByCounterAttack=[[DARK_RED]]Hit with a counter-attack!