|
|
|
@ -222,6 +222,7 @@ void Player::Update(float fElapsedTime){ |
|
|
|
|
notificationDisplay.second=std::max(0.f,notificationDisplay.second-fElapsedTime); |
|
|
|
|
lastHitTimer=std::max(0.f,lastHitTimer-fElapsedTime); |
|
|
|
|
blockTimer=std::max(0.f,blockTimer-fElapsedTime); |
|
|
|
|
lastCombatTime=lastCombatTime+fElapsedTime; |
|
|
|
|
manaTickTimer-=fElapsedTime; |
|
|
|
|
if(castInfo.castTimer>0){ |
|
|
|
|
castInfo.castTimer-=fElapsedTime; |
|
|
|
@ -553,6 +554,7 @@ bool Player::Hurt(int damage,bool onUpperLevel,float z){ |
|
|
|
|
if(hp<=0||HasIframes()||OnUpperLevel()!=onUpperLevel||abs(GetZ()-z)>1) return false; |
|
|
|
|
if(GetState()==State::BLOCK)damage*=1-"Warrior.Right Click Ability.DamageReduction"_F; |
|
|
|
|
float mod_dmg=damage; |
|
|
|
|
lastCombatTime=0; |
|
|
|
|
for(Buff&b:GetBuffs(BuffType::DAMAGE_REDUCTION)){ |
|
|
|
|
mod_dmg-=damage*b.intensity; |
|
|
|
|
} |
|
|
|
@ -750,3 +752,11 @@ void Player::ConsumeMana(int amt){ |
|
|
|
|
void Player::SetSizeMult(float size){ |
|
|
|
|
this->size=size; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
void Player::ResetLastCombatTime(){ |
|
|
|
|
lastCombatTime=0; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
bool Player::IsOutOfCombat(){ |
|
|
|
|
return lastCombatTime>="Player.Out of Combat Time"_F; |
|
|
|
|
} |