private void ShareSPCallback(float from, float to, float amount)
        {
            if ((amount > 0f) && base.actor.abilityPlugin.EvaluateAbilityPredicate(this.config.Predicates, base.instancedAbility, base.instancedModifier, null, null))
            {
                float num = base.instancedAbility.Evaluate(this.config.ShareSPRatio) * amount;
                List <BaseMonoAvatar> allPlayerAvatars = Singleton <AvatarManager> .Instance.GetAllPlayerAvatars();

                for (int i = 0; i < allPlayerAvatars.Count; i++)
                {
                    BaseMonoAvatar avatar = allPlayerAvatars[i];
                    if (((avatar != null) && avatar.IsAlive()) && (avatar.GetRuntimeID() != base.actor.runtimeID))
                    {
                        Singleton <EventManager> .Instance.GetActor <AvatarActor>(avatar.GetRuntimeID()).HealSP(num);
                    }
                }
            }
        }