mirror of
https://github.com/mcMMO-Dev/mcMMO.git
synced 2024-11-23 13:46:46 +01:00
Updates to Unarmed
This commit is contained in:
parent
dd445dbac5
commit
cae4b47538
@ -16,7 +16,6 @@
|
|||||||
*/
|
*/
|
||||||
package com.gmail.nossr50.skills;
|
package com.gmail.nossr50.skills;
|
||||||
|
|
||||||
import org.bukkit.Location;
|
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
import org.bukkit.event.entity.EntityDamageByEntityEvent;
|
import org.bukkit.event.entity.EntityDamageByEntityEvent;
|
||||||
import org.bukkit.inventory.ItemStack;
|
import org.bukkit.inventory.ItemStack;
|
||||||
@ -32,12 +31,11 @@ public class Unarmed {
|
|||||||
public static void berserkActivationCheck(Player player)
|
public static void berserkActivationCheck(Player player)
|
||||||
{
|
{
|
||||||
PlayerProfile PP = Users.getProfile(player);
|
PlayerProfile PP = Users.getProfile(player);
|
||||||
if(player.getItemInHand().getTypeId() == 0)
|
AbilityType ability = AbilityType.BERSERK;
|
||||||
|
if(player.getItemInHand() == null)
|
||||||
{
|
{
|
||||||
if(PP.getFistsPreparationMode())
|
if(PP.getFistsPreparationMode())
|
||||||
{
|
|
||||||
PP.setFistsPreparationMode(false);
|
PP.setFistsPreparationMode(false);
|
||||||
}
|
|
||||||
|
|
||||||
int ticks = 2;
|
int ticks = 2;
|
||||||
int x = PP.getSkillLevel(SkillType.UNARMED);
|
int x = PP.getSkillLevel(SkillType.UNARMED);
|
||||||
@ -48,16 +46,16 @@ public class Unarmed {
|
|||||||
ticks++;
|
ticks++;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(!PP.getBerserkMode() && Skills.cooldownOver(player, PP.getSkillDATS(AbilityType.BERSERK), LoadProperties.berserkCooldown))
|
if(!PP.getBerserkMode() && Skills.cooldownOver(player, PP.getSkillDATS(ability), LoadProperties.berserkCooldown))
|
||||||
{
|
{
|
||||||
|
|
||||||
player.sendMessage(mcLocale.getString("Skills.BerserkOn"));
|
player.sendMessage(mcLocale.getString("Skills.BerserkOn"));
|
||||||
for(Player y : player.getWorld().getPlayers())
|
for(Player y : player.getWorld().getPlayers())
|
||||||
{
|
{
|
||||||
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(mcLocale.getString("Skills.BerserkPlayer", new Object[] {player.getName()}));
|
y.sendMessage(mcLocale.getString("Skills.BerserkPlayer", new Object[] {player.getName()}));
|
||||||
}
|
}
|
||||||
PP.setSkillDATS(AbilityType.BERSERK, System.currentTimeMillis()+(ticks*1000));
|
PP.setSkillDATS(ability, System.currentTimeMillis()+(ticks*1000));
|
||||||
System.out.println("getSkillDATS(): "+PP.getSkillDATS(AbilityType.BERSERK));
|
|
||||||
PP.setBerserkMode(true);
|
PP.setBerserkMode(true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -65,53 +63,45 @@ public class Unarmed {
|
|||||||
|
|
||||||
public static void unarmedBonus(Player attacker, EntityDamageByEntityEvent event)
|
public static void unarmedBonus(Player attacker, EntityDamageByEntityEvent event)
|
||||||
{
|
{
|
||||||
PlayerProfile PPa = Users.getProfile(attacker);
|
|
||||||
int bonus = 3;
|
int bonus = 3;
|
||||||
|
|
||||||
//Add 1 DMG for every 50 skill levels
|
//Add 1 DMG for every 50 skill levels
|
||||||
bonus += PPa.getSkillLevel(SkillType.UNARMED)/50;
|
bonus += Users.getProfile(attacker).getSkillLevel(SkillType.UNARMED)/50;
|
||||||
|
|
||||||
if(bonus > 8)
|
if(bonus > 8)
|
||||||
bonus = 8;
|
bonus = 8;
|
||||||
|
|
||||||
event.setDamage(event.getDamage()+bonus);
|
event.setDamage(event.getDamage() + bonus);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void disarmProcCheck(Player attacker, Player defender)
|
public static void disarmProcCheck(Player attacker, Player defender)
|
||||||
{
|
{
|
||||||
PlayerProfile PP = Users.getProfile(attacker);
|
int skillLevel = Users.getProfile(attacker).getSkillLevel(SkillType.UNARMED);
|
||||||
if(attacker.getItemInHand().getTypeId() == 0)
|
if(attacker.getItemInHand() == null)
|
||||||
{
|
{
|
||||||
if(PP.getSkillLevel(SkillType.UNARMED) >= 1000)
|
if(skillLevel >= 1000)
|
||||||
{
|
{
|
||||||
if(Math.random() * 4000 <= 1000)
|
if(Math.random() * 4000 <= 1000)
|
||||||
{
|
{
|
||||||
Location loc = defender.getLocation();
|
|
||||||
if(defender.getItemInHand() != null && defender.getItemInHand().getTypeId() != 0)
|
|
||||||
{
|
|
||||||
defender.sendMessage(mcLocale.getString("Skills.Disarmed"));
|
|
||||||
ItemStack item = defender.getItemInHand();
|
ItemStack item = defender.getItemInHand();
|
||||||
if(item != null)
|
if(item != null)
|
||||||
{
|
|
||||||
m.mcDropItem(loc, item);
|
|
||||||
ItemStack itemx = null;
|
|
||||||
defender.setItemInHand(itemx);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
if(Math.random() * 4000 <= PP.getSkillLevel(SkillType.UNARMED)){
|
|
||||||
Location loc = defender.getLocation();
|
|
||||||
if(defender.getItemInHand() != null && defender.getItemInHand().getTypeId() != 0)
|
|
||||||
{
|
{
|
||||||
defender.sendMessage(mcLocale.getString("Skills.Disarmed"));
|
defender.sendMessage(mcLocale.getString("Skills.Disarmed"));
|
||||||
|
m.mcDropItem(defender.getLocation(), item);
|
||||||
|
defender.setItemInHand(null);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if(Math.random() * 4000 <= skillLevel)
|
||||||
|
{
|
||||||
ItemStack item = defender.getItemInHand();
|
ItemStack item = defender.getItemInHand();
|
||||||
if(item != null)
|
if(item != null)
|
||||||
{
|
{
|
||||||
m.mcDropItem(loc, item);
|
defender.sendMessage(mcLocale.getString("Skills.Disarmed"));
|
||||||
ItemStack itemx = null;
|
m.mcDropItem(defender.getLocation(), item);
|
||||||
defender.setItemInHand(itemx);
|
defender.setItemInHand(null);
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user