Unified Combat System
This commit is contained in:
@@ -9,7 +9,7 @@
|
||||
|
||||
package engine.jobs;
|
||||
|
||||
import engine.gameManager.CombatManager;
|
||||
import engine.gameManager.FinalCombatManager;
|
||||
import engine.job.AbstractJob;
|
||||
import engine.objects.AbstractCharacter;
|
||||
|
||||
@@ -28,7 +28,7 @@ public class AttackJob extends AbstractJob {
|
||||
|
||||
@Override
|
||||
protected void doJob() {
|
||||
CombatManager.doCombat(this.source, slot);
|
||||
FinalCombatManager.combatCycle(this.source,this.source.combatTarget);
|
||||
}
|
||||
|
||||
public boolean success() {
|
||||
|
||||
@@ -9,7 +9,6 @@
|
||||
|
||||
package engine.jobs;
|
||||
|
||||
import engine.gameManager.CombatManager;
|
||||
import engine.gameManager.PowersManager;
|
||||
import engine.math.Vector3fImmutable;
|
||||
import engine.objects.AbstractCharacter;
|
||||
@@ -77,10 +76,12 @@ public class DeferredPowerJob extends AbstractEffectJob {
|
||||
// Wtf? Method returns TRUE if rage test fails? Seriously?
|
||||
|
||||
//DO valid range check ONLY for weapon powers with range less than attack range.
|
||||
if (attackRange > powerRange)
|
||||
if (CombatManager.NotInRange((AbstractCharacter) this.source, tar, powerRange))
|
||||
if (attackRange > powerRange) {
|
||||
float rangeSquared = this.source.loc.distanceSquared(tar.loc);
|
||||
if (rangeSquared > powerRange * powerRange) {
|
||||
return;
|
||||
|
||||
}
|
||||
}
|
||||
//Range check passed, apply power and clear weapon power.
|
||||
((PlayerCharacter) this.source).setWeaponPower(null);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user