Пример #1
0
 public void SetSettings(ImpactEffects.AOEImpact impactEffect, MetaData.PlayerMetaData senderParam)
 {
     AOE           = impactEffect;
     radius        = AOE.radius;
     sender        = senderParam;
     effectsToPlay = AOE.effectsToPlay;
 }
        public virtual void InstantiateObject(Vector3 position, Quaternion rotation, MetaData.PlayerMetaData senderParam, ImpactEffect[] effects)
        {
            foreach (var effect in effects)
            {
                effect.SetProjectile(this);
            }
            impactEffects = effects;
            sender        = senderParam;

            instantiatedObject = Instantiate(projectilePrefab, position, rotation) as GameObject;
            projectileable     = instantiatedObject.AddComponent(typeof(MonoHelper.Projectilable)) as MonoHelper.Projectilable;
            projectileable.Init(this, impactEffects, sender);
            OnInstantiate();
        }
Пример #3
0
        public void Init(Projectiles.Projectile projectileParam,
                         Projectiles.ImpactEffect[] impactEffectsParam,
                         MetaData.PlayerMetaData senderParam)
        {
            hasHit        = false;
            sender        = senderParam;
            projectile    = projectileParam;
            impactEffects = impactEffectsParam;

            if (impactEffects.Length == 0)
            {
                print("<color=olive>Warning ! no impact effects found</color>\n" +
                      "Making no effort to collision check");
            }
        }
Пример #4
0
        public override void OnCollision(Collider other, MetaData.PlayerMetaData sender)
        {
            foreach (var item in affectsToSender)
            {
                sender.AddAffect(item);
            }

            if (other.gameObject.GetComponent <MetaData.ObjectMetaData>() != null)
            {
                foreach (var item in affectsToHit)
                {
                    other.gameObject.GetComponent <MetaData.ObjectMetaData>().AddAffect(item);
                }
            }
        }
Пример #5
0
        public void OnCollision(Collider otherCollider, MetaData.PlayerMetaData senderParam, Vector3 AOEcenter, ImpactEffects.AOEImpact impactEffect)
        {
            AOE    = impactEffect;
            center = AOEcenter;
            sender = senderParam;
            other  = otherCollider;

            foreach (Projectiles.CollisionCheck check in collisionChecks)
            {
                if (check.Validate(other))
                {
                    OnHit();
                    break;
                }
            }
        }
        /// <summary>
        /// The Hello world script for testing effect scripts.
        ///
        /// Good for beginners and for debugging and testing
        /// </summary>


        public override void OnStart(MetaData.PlayerMetaData senderParam, Effect containerParam)
        {
            base.OnStart(senderParam, containerParam);
            debuglog("OnStart", "One time, on Start()");
        }
Пример #7
0
 public abstract void OnCollision(Collider other, MetaData.PlayerMetaData sender);
Пример #8
0
 public abstract void OnCollision(Collision collision, MetaData.PlayerMetaData sender);