Calculate EHP cleanly to correct issue with some overwriting variable...somewhere...???
This commit is contained in:
parent
1922897d05
commit
167f7e59d5
3 changed files with 11 additions and 13 deletions
|
@ -5,8 +5,7 @@ class Barbarian extends DiabloClass {
|
||||||
}
|
}
|
||||||
|
|
||||||
function EHPScore() {
|
function EHPScore() {
|
||||||
$this->calculateEHP();
|
$ehp = $this->calculateEHP();
|
||||||
$ehp = $this->stats->getStat('EHP Unbuffed');
|
|
||||||
|
|
||||||
if($this->type == 'pvp') {
|
if($this->type == 'pvp') {
|
||||||
return $ehp / 10000;
|
return $ehp / 10000;
|
||||||
|
@ -64,5 +63,6 @@ class Barbarian extends DiabloClass {
|
||||||
+ $this->stats->getStat('Missile Damage Reduction')) / 2);
|
+ $this->stats->getStat('Missile Damage Reduction')) / 2);
|
||||||
|
|
||||||
$this->stats->stats['EHP Unbuffed'] = $final_ehp;
|
$this->stats->stats['EHP Unbuffed'] = $final_ehp;
|
||||||
|
return $final_ehp;
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -5,8 +5,7 @@ class DemonHunter extends DiabloClass {
|
||||||
}
|
}
|
||||||
|
|
||||||
function EHPScore() {
|
function EHPScore() {
|
||||||
$this->calculateEHP();
|
$ehp = $this->calculateEHP();
|
||||||
$ehp = $this->stats->getStat('EHP Unbuffed');
|
|
||||||
|
|
||||||
if($this->type == 'pvp') {
|
if($this->type == 'pvp') {
|
||||||
return $ehp / 10000;
|
return $ehp / 10000;
|
||||||
|
@ -24,6 +23,7 @@ class DemonHunter extends DiabloClass {
|
||||||
}
|
}
|
||||||
|
|
||||||
function sustainScore() {
|
function sustainScore() {
|
||||||
|
$ehp = $this->calculateEHP();
|
||||||
if($this->stats->getStat('Attacks per Second') > 2) {
|
if($this->stats->getStat('Attacks per Second') > 2) {
|
||||||
$lsCoefficient = .1;
|
$lsCoefficient = .1;
|
||||||
} else {
|
} else {
|
||||||
|
@ -32,7 +32,7 @@ class DemonHunter extends DiabloClass {
|
||||||
|
|
||||||
$effectiveLs = $this->stats->getStat('DPS Unbuffed') *
|
$effectiveLs = $this->stats->getStat('DPS Unbuffed') *
|
||||||
$this->stats->getStat('Life Steal') * $lsCoefficient;
|
$this->stats->getStat('Life Steal') * $lsCoefficient;
|
||||||
$mitigation = $this->stats->getStat('EHP Unbuffed') / $this->stats->getStat('Life');
|
$mitigation = $ehp / $this->stats->getStat('Life');
|
||||||
$loh = $this->stats->getStat('Life on Hit');
|
$loh = $this->stats->getStat('Life on Hit');
|
||||||
|
|
||||||
if($this->type == 'pvp') {
|
if($this->type == 'pvp') {
|
||||||
|
@ -45,7 +45,7 @@ class DemonHunter extends DiabloClass {
|
||||||
(1 + ($this->stats->getStat('Attacks per Second') - 1) / 2) +
|
(1 + ($this->stats->getStat('Attacks per Second') - 1) / 2) +
|
||||||
$this->stats->getStat('Life per Second') + $effectiveLs) /
|
$this->stats->getStat('Life per Second') + $effectiveLs) /
|
||||||
($this->stats->getStat('Life') * $this->EHPScore() * 10000 /
|
($this->stats->getStat('Life') * $this->EHPScore() * 10000 /
|
||||||
$this->stats->getStat('EHP Unbuffed'));
|
$ehp);
|
||||||
|
|
||||||
if($rawSustainScore <= 1.5) {
|
if($rawSustainScore <= 1.5) {
|
||||||
return $rawSustainScore;
|
return $rawSustainScore;
|
||||||
|
@ -105,5 +105,6 @@ class DemonHunter extends DiabloClass {
|
||||||
+ $this->stats->getStat('Missile Damage Reduction')) / 2);
|
+ $this->stats->getStat('Missile Damage Reduction')) / 2);
|
||||||
|
|
||||||
$this->stats->stats['EHP Unbuffed'] = $final_ehp;
|
$this->stats->stats['EHP Unbuffed'] = $final_ehp;
|
||||||
|
return $final_ehp;
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -36,7 +36,7 @@ class DiabloClass {
|
||||||
$this->stats->stats['All Elemental Damage'] = $this->elementalDamage();
|
$this->stats->stats['All Elemental Damage'] = $this->elementalDamage();
|
||||||
|
|
||||||
$this->modifyDPSUnbuffed();
|
$this->modifyDPSUnbuffed();
|
||||||
$this->modifyEHP();
|
$this->calculateEHP();
|
||||||
}
|
}
|
||||||
|
|
||||||
function hallScore() {
|
function hallScore() {
|
||||||
|
@ -57,9 +57,10 @@ class DiabloClass {
|
||||||
}
|
}
|
||||||
|
|
||||||
function sustainScore() {
|
function sustainScore() {
|
||||||
|
$ehp = $this->calculateEHP();
|
||||||
$effectiveLS = $this->stats->getStat('DPS Unbuffed') *
|
$effectiveLS = $this->stats->getStat('DPS Unbuffed') *
|
||||||
$this->stats->getStat('Life Steal') * .5;
|
$this->stats->getStat('Life Steal') * .5;
|
||||||
$mitigation = $this->stats->getStat('EHP Unbuffed') / $this->stats->getStat('Life');
|
$mitigation = $ehp / $this->stats->getStat('Life');
|
||||||
$loh = $this->stats->getStat('Life on Hit');
|
$loh = $this->stats->getStat('Life on Hit');
|
||||||
|
|
||||||
if($this->type == 'pvp') {
|
if($this->type == 'pvp') {
|
||||||
|
@ -71,7 +72,7 @@ class DiabloClass {
|
||||||
(1 + ($this->stats->getStat('Attacks per Second') - 1) / 2) +
|
(1 + ($this->stats->getStat('Attacks per Second') - 1) / 2) +
|
||||||
$effectiveLS + $this->stats->getStat('Life per Second')) /
|
$effectiveLS + $this->stats->getStat('Life per Second')) /
|
||||||
($this->stats->getStat('Life') * $this->EHPScore() * 10000 /
|
($this->stats->getStat('Life') * $this->EHPScore() * 10000 /
|
||||||
$this->stats->getStat('EHP Unbuffed'));
|
$ehp);
|
||||||
|
|
||||||
if($rawSustainScore <= 1.5) {
|
if($rawSustainScore <= 1.5) {
|
||||||
return $rawSustainScore;
|
return $rawSustainScore;
|
||||||
|
@ -142,8 +143,4 @@ class DiabloClass {
|
||||||
$this->stats->stats['Exp Bonus'] = $this->stats->getStat('Exp Bonus') - .35;
|
$this->stats->stats['Exp Bonus'] = $this->stats->getStat('Exp Bonus') - .35;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function modifyEHP() {
|
|
||||||
$this->calculateEHP();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue