Refactored effects handling, split up concerns of effect types and instances

Removed json insanity for effects

Split up effect types and effect instances

Saturation is an instant effect
This commit is contained in:
Dylan K. Taylor
2018-03-07 12:42:31 +00:00
parent c7f8796136
commit dc3bf8546e
17 changed files with 442 additions and 453 deletions

View File

@ -24,6 +24,7 @@ declare(strict_types=1);
namespace pocketmine\item;
use pocketmine\entity\Effect;
use pocketmine\entity\EffectInstance;
class GoldenAppleEnchanted extends GoldenApple{
@ -33,10 +34,10 @@ class GoldenAppleEnchanted extends GoldenApple{
public function getAdditionalEffects() : array{
return [
Effect::getEffect(Effect::REGENERATION)->setDuration(600)->setAmplifier(4),
Effect::getEffect(Effect::ABSORPTION)->setDuration(2400)->setAmplifier(3),
Effect::getEffect(Effect::DAMAGE_RESISTANCE)->setDuration(6000),
Effect::getEffect(Effect::FIRE_RESISTANCE)->setDuration(6000),
new EffectInstance(Effect::getEffect(Effect::REGENERATION), 600, 4),
new EffectInstance(Effect::getEffect(Effect::ABSORPTION), 2400, 3),
new EffectInstance(Effect::getEffect(Effect::RESISTANCE), 6000),
new EffectInstance(Effect::getEffect(Effect::FIRE_RESISTANCE), 6000)
];
}
}