IEnumerator delayBullet1() { int count = 10; for (int i = 0; i < count; i++) { GameObject obj = GameObject.Instantiate(rbullet); RotateBullet bullet = obj.GetComponent <RotateBullet>(); bullet.player = transform; bullet.effectObj = damageEffect1; bullet.bulleting(); bullet.y = 0.7f; bullet.flag = -1f; yield return(new WaitForSeconds(0.1f)); if (i % 9 == 0) { AttackedController c = GameObject.Find("bigzhangjiao (1)").GetComponent <AttackedController>(); c.attacked(); if (damageEffect2 != null) { GameObject obj1 = GameObject.Instantiate(damageEffect2); ParticlesEffect effect = obj1.AddComponent <ParticlesEffect>(); Transform target = GameObject.Find("bigzhangjiao (1)").transform; effect.transform.position = MathUtil.findChild(target, "attackedPivot").position; effect.play(); } } } }
/// <summary> /// 弾丸を発射する /// </summary> public void Enter(bool isTestScene = false) { isTest = isTestScene; if (abnState == null) { bulletObj = Instantiate(prefab.GetComponent <Bullet>().bulletObj, transform); if (!bulletObj.GetComponent <BulletObject>()) { BulletObject bulObj = bulletObj.AddComponent <BulletObject>(); bulObj.parent = this; } } else { ChangeElement(abnState); } //弾道を自身の子にする //bulletObj.transform.SetParent(transform); //bulletObj.transform.localPosition = GetDefaultPos (); ReturnToDefaultPos(); switch (bulletType) { case BulletType.beam: StartCoroutine(WaitShotEndTime(moveTime)); break; case BulletType.fixe: StartCoroutine(WaitShotEndTime(moveTime)); //StartCoroutine(WaitShotEndTime(moveTime)); RotateBullet rotate = bulletObj.AddComponent <RotateBullet>(); rotate.SetTarget(GameObject.FindGameObjectWithTag(Tags.Player)); rotate.speed = 600; rotate.SetTime(moveTime); break; default: Hashtable hash = new Hashtable(); switch (movePath.GetLength(0)) { case 0: Debug.LogAssertion("経路が設定されていません"); return; case 1: hash.Add("position", transform.position + Rotate(movePath[0])); break; default: Vector3[] path = new Vector3[movePath.Length]; for (int i = 0; i < path.GetLength(0); i++) { path[i] = transform.position + Rotate(movePath[i]); } hash.Add("path", path); break; } hash.Add("time", moveTime); hash.Add("easetype", type); hash.Add("oncompletetarget", gameObject); hash.Add("oncomplete", "MoveEnd"); iTween.MoveTo(bulletObj, hash); //弾道を親から外す bulletObj.transform.parent = null; break; } switch (bulletType) { case BulletType.beam: break; default: //経路予測線を消去 DeleteDrawLine(); //if (!isDraw) if (isTest) { StartCoroutine(MovePathDraw()); } break; } bulletObj.GetComponent <BulletObject>().ShotStart(); if (pairBullet) { pairBullet.Enter(isTestScene); } }