private void rollForConditionEffect(Actor actor, ActorConditionEffect conditionEffect) { int chanceRollBias = 0; if (actor.isPlayer) chanceRollBias = SkillController.getActorConditionEffectChanceRollBias(conditionEffect, (Player) actor); if (!Constants.rollResult(conditionEffect.chance, chanceRollBias)) return; applyActorCondition(actor, conditionEffect); }
private void removeConditionsFromSkillEffects(Player player) { if (SkillController.rollForSkillChance( player, SkillCollection.SkillID.rejuvenation, SkillCollection.PER_SKILLPOINT_INCREASE_REJUVENATION_CHANCE)) { int i = getRandomConditionForRejuvenate(player); if (i >= 0) { ActorCondition c = player.conditions.get(i); if (c.magnitude > 1) { c.magnitude -= 1; actorConditionListeners.onActorConditionMagnitudeChanged(player, c); } else { player.conditions.remove(i); actorConditionListeners.onActorConditionRemoved(player, c); } recalculatePlayerStats(player); } } }