pocketmine\entity\Effect::canTick PHP Method

canTick() public method

public canTick ( )
    public function canTick()
    {
        if ($this->amplifier < 0) {
            $this->amplifier = 0;
        }
        switch ($this->id) {
            case Effect::POISON:
                if (($interval = 25 >> $this->amplifier) > 0) {
                    return $this->duration % $interval === 0;
                }
                return true;
            case Effect::WITHER:
                if (($interval = 50 >> $this->amplifier) > 0) {
                    return $this->duration % $interval === 0;
                }
                return true;
            case Effect::REGENERATION:
                if (($interval = 40 >> $this->amplifier) > 0) {
                    return $this->duration % $interval === 0;
                }
                return true;
            case Effect::HUNGER:
                if ($this->amplifier < 0) {
                    // prevents hacking with amplifier -1
                    return false;
                }
                if (($interval = 20) > 0) {
                    return $this->duration % $interval === 0;
                }
                return true;
            case Effect::HEALING:
            case Effect::HARMING:
                return true;
            case Effect::SATURATION:
                if (($interval = 20 >> $this->amplifier) > 0) {
                    return $this->duration % $interval === 0;
                }
                return true;
        }
        return false;
    }