|
|
|
@ -15,6 +15,7 @@ import engine.Enum.*;
@@ -15,6 +15,7 @@ import engine.Enum.*;
|
|
|
|
|
import engine.ai.MobileFSM.STATE; |
|
|
|
|
import engine.gameManager.ChatManager; |
|
|
|
|
import engine.gameManager.CombatManager; |
|
|
|
|
import engine.gameManager.DbManager; |
|
|
|
|
import engine.gameManager.PowersManager; |
|
|
|
|
import engine.math.Vector3fImmutable; |
|
|
|
|
import engine.net.DispatchMessage; |
|
|
|
@ -25,6 +26,7 @@ import engine.powers.PowersBase;
@@ -25,6 +26,7 @@ import engine.powers.PowersBase;
|
|
|
|
|
import engine.server.MBServerStatics; |
|
|
|
|
import org.pmw.tinylog.Logger; |
|
|
|
|
|
|
|
|
|
import java.util.HashMap; |
|
|
|
|
import java.util.Random; |
|
|
|
|
import java.util.Set; |
|
|
|
|
import java.util.concurrent.ThreadLocalRandom; |
|
|
|
@ -241,7 +243,6 @@ public class CombatUtilities {
@@ -241,7 +243,6 @@ public class CombatUtilities {
|
|
|
|
|
speed = agent.getSpeedHandOne(); |
|
|
|
|
else |
|
|
|
|
speed = agent.getSpeedHandTwo(); |
|
|
|
|
|
|
|
|
|
DamageType dt = DamageType.Crush; |
|
|
|
|
if (agent.isSiege()) |
|
|
|
|
dt = DamageType.Siege; |
|
|
|
@ -284,6 +285,26 @@ public class CombatUtilities {
@@ -284,6 +285,26 @@ public class CombatUtilities {
|
|
|
|
|
else if(triggerBlock(agent,target)) |
|
|
|
|
swingIsBlock(agent,target, passiveAnim); |
|
|
|
|
else |
|
|
|
|
//check for a cast here?
|
|
|
|
|
if(agent.isCasting() == true) |
|
|
|
|
{ |
|
|
|
|
//force stop if they are already casting
|
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
if(agent.mobPowers.size() > 0) |
|
|
|
|
{ |
|
|
|
|
//get cast chance
|
|
|
|
|
int random = ThreadLocalRandom.current().nextInt(agent.mobPowers.size() * 3); |
|
|
|
|
//allow casting of spell
|
|
|
|
|
if(random <= agent.mobPowers.size()) |
|
|
|
|
{ |
|
|
|
|
//cast a spell
|
|
|
|
|
ActionsBase ab = new ActionsBase(); |
|
|
|
|
|
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
//finished with casting check
|
|
|
|
|
swingIsDamage(agent,target, determineDamage(agent,target, mainHand, speed, dt), anim); |
|
|
|
|
|
|
|
|
|
if (agent.getWeaponPower() != null) |
|
|
|
@ -419,6 +440,7 @@ public class CombatUtilities {
@@ -419,6 +440,7 @@ public class CombatUtilities {
|
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
float range = max - min; |
|
|
|
|
float damage = min + ((ThreadLocalRandom.current().nextFloat()*range)+(ThreadLocalRandom.current().nextFloat()*range))/2; |
|
|
|
|