コード例 #1
0
ファイル: Missile.cs プロジェクト: zd613/InvadingUFO
        private void OnTriggerEnter(Collider other)
        {
            //プレイヤーに当たってしまうので応急処置

            if (other.tag == "Player")
            {
                return;
            }

            if (!canHitToAttacker)
            {
                //TODO:プレイヤーとミサイルが当たるので応急処置
                var core = GetComponentInParent <Health>();
                if (core != null)
                {
                    if (core.gameObject == attacker)
                    {
                        return;
                    }
                }
                //if (collision.gameObject == attacker)
                //    return;
            }

            if (other.tag == "Player")
            {
                return;
            }

            var obj = Instantiate(hitEffect, transform.position, transform.rotation);


            //hp 削る
            //print("missile hit");
            var health = other.gameObject.GetComponentInParent <IDamageable>();

            if (health != null)
            {
                health.ApplyDamage(damage, attacker);
            }


            if (hitSoundPrefab != null)
            {
                Instantiate(hitSoundPrefab, transform.position, Quaternion.identity);
            }

            if (OnMissileHit != null)
            {
                var t = other.transform;
                OnMissileHit.Invoke(t);
            }

            Destroy(gameObject);
        }
コード例 #2
0
ファイル: Packets.cs プロジェクト: Backup521/Orbwalker
 static Packets()
 {
     try
     {
         Attack = new OnAttack();
         MissileHit = new OnMissileHit();
     }
     catch (Exception)
     {
         //ignored
     }
 }
コード例 #3
0
 static Packets()
 {
     try
     {
         Attack     = new OnAttack();
         MissileHit = new OnMissileHit();
     }
     catch (Exception)
     {
         //ignored
     }
 }
コード例 #4
0
ファイル: Packets.cs プロジェクト: Backup521/Orbwalker
 static Packets()
 {
     try
     {
         Attack = new OnAttack();
         MissileHit = new OnMissileHit();
         Disengaged = new OnDisengaged();
         MonsterSkill = new OnMonsterSkill();
         CreateGromp = new OnCreateGromp();
         CreateCampIcon = new OnCreateCampIcon();
     }
     catch (Exception)
     {
         //ignored
     }
 }
コード例 #5
0
ファイル: Packets.cs プロジェクト: Burbb/Portaio
 static Packets()
 {
     try
     {
         Attack         = new OnAttack();
         MissileHit     = new OnMissileHit();
         Disengaged     = new OnDisengaged();
         MonsterSkill   = new OnMonsterSkill();
         CreateGromp    = new OnCreateGromp();
         CreateCampIcon = new OnCreateCampIcon();
     }
     catch (Exception)
     {
         //ignored
     }
 }
コード例 #6
0
ファイル: Missile.cs プロジェクト: ewingzhou/tanks
 public void SetOnMissileHit(OnMissileHit onHitFn)
 {
     onMissileHitFn = onHitFn;
 }