public void OnUpdate(float deletaTime) { bool bulletActivat = false; for (int i = 0; i < infolist.Count; ++i) { infolist[i].CreateTimeCount += deletaTime; if (infolist[i].CreateTimeCount >= infolist[i].CreateTime) { setTweenAngle(i); BasicBullet temp = BulletManager.GetInstance().GetBullet(); temp.OnActive(infolist[i].TweenAngle, 730f, _bulletAnimationTime); infolist[i].listMyBullet.Add(temp); infolist[i].CreateTimeCount = 0f; bulletActivat = true; } for (int j = 0; j < infolist[i].listMyBullet.Count; ++j) { infolist[i].listMyBullet[j].SetBulletAngleInfo(infolist[i].TweenAngle); } } if (bulletActivat) { _direction *= -1; } }
public void OnUpdate(float deletaTime) { for (int i = 0; i < infolist_left.Count; ++i) { infolist_left[i].CreateTimeCount += deletaTime; if (infolist_left[i].CreateTimeCount >= infolist_left[i].CreateTime) { BasicBullet temp = BulletManager.GetInstance().GetBullet(); temp.OnActive(infolist_left[i].TweenAngle, 730f, _bulletAnimationTime); infolist_left[i].listMyBullet.Add(temp); infolist_left[i].CreateTimeCount = 0f; } } for (int i = 0; i < infolist_right.Count; ++i) { infolist_right[i].CreateTimeCount += deletaTime; if (infolist_right[i].CreateTimeCount >= infolist_right[i].CreateTime) { BasicBullet temp = BulletManager.GetInstance().GetBullet(); temp.OnActive(infolist_right[i].TweenAngle, 730f, _bulletAnimationTime); infolist_right[i].listMyBullet.Add(temp); infolist_right[i].CreateTimeCount = 0f; } } }
public Circle(BasicBullet b, int amount, float speed, Color c) { _bullet = b; _amount = amount; _speed = speed; _color = c; }
IEnumerator shootine() { while (true) { if (Input.GetButton(FireButton)) { Vector3 firingForce = transform.forward * FiringForceMagnitude; BasicBullet bullet = Instantiate(BulletPrefab, transform.position, Quaternion.Euler(firingForce)); bullet.Rigidbody.AddForce(firingForce, ForceMode.VelocityChange); Player.Instance.Movement.Knockback(-firingForce); Player.Instance.Resources.Heat -= HeatPerShot; FireSource.Play(); yield return(new WaitForSeconds(TimePerShot)); } else { yield return(null); } } }
public SprayAndPray(BasicBullet b, float speed, float minRotation, float maxRotation, Color color) { _speed = speed; _bullet = b; _minRotation = minRotation; _maxRotation = maxRotation; _color = color; }
private void ShootBullets() { GameObject newBullet = Instantiate(mBulletPrefab, mSpawnPoint.position, mSpawnPoint.rotation); BasicBullet bullet = newBullet.GetComponent <BasicBullet>(); if (bullet != null) { bullet.SetTarget(mCurrentTarget); } }
public void OnUpdate(float deletaTime) { _patternTimeCheck += deletaTime; for (int i = 0; i < infolist.Count; ++i) { infolist[i].StartWaveTimeCount += deletaTime; if (infolist[i].StartWaveTimeCount >= infolist[i].StartWaveTime) { if (!infolist[i].IsMoveUse) { if (i == 0) { infolist[i].TweenAngle = GameManager.GetInstance().player.GetAngle() - _startAngle; } else { infolist[i].TweenAngle = GameManager.GetInstance().player.GetAngle() + _startAngle; } } if (!infolist[i].IsUse) { infolist[i].IsUse = true; } infolist[i].CreateTimeCount += deletaTime; if (infolist[i].CreateTimeCount >= infolist[i].CreateTime) { BasicBullet temp = BulletManager.GetInstance().GetBullet(); temp.OnActive(infolist[i].TweenAngle, 730f, _bulletAnimationTime); infolist[i].listMyBullet.Add(temp); infolist[i].CreateTimeCount = 0f; } } if (_patternTimeCheck >= _startWaveTime * infolist.Count + _bulletAnimationTime) { if (isAllUse()) { if (!infolist[i].IsMoveUse) { infolist[i].IsMoveUse = true; setTweenAngle(i); } } } if (!infolist[i].IsMoveUse) { for (int j = 0; j < infolist[i].listMyBullet.Count; ++j) { infolist[i].listMyBullet[j].SetBulletAngleInfo(infolist[i].TweenAngle); } } } }
public GameObject Spawn(GameObject owner) { if (bulletPool == null) { GameObject[] goArray = new GameObject[1]; goArray[0] = BulletPrefab; bulletPool = new ObjectPooler(goArray); } GameObject instance = bulletPool.GetNewObject(); BasicBullet bulletRef = instance.GetComponent <BasicBullet>(); bulletRef.ownedObject = owner; return(instance); }
public void OnTriggerEnter2D(Collider2D collision) { GameObject collider = collision.gameObject; if (collider.tag == "BasicBullet") { BasicBullet bullet = collider.GetComponent <BasicBullet>(); health -= bullet.damage; //May need to add some sort of Coroutine in the bullet for destroy animations Destroy(collider); if (health <= 0) { StartCoroutine(GameObject.Find("Canvas").GetComponent <EndGameCanvasController>().endGame(false)); Destroy(gameObject, 0.1f); } } }
public GameObject Spawn(Vector3 position, Quaternion rotation, GameObject owner) { if (bulletPool == null) { GameObject[] goArray = new GameObject[1]; goArray[0] = BulletPrefab; bulletPool = new ObjectPooler(goArray); } GameObject instance = bulletPool.GetNewObject(); instance.transform.position = position; instance.transform.rotation = rotation; BasicBullet bulletRef = instance.GetComponent <BasicBullet>(); bulletRef.ownedObject = owner; return(instance); }
void FireBullet() { // Get the direction to fire the bullet Vector3 playerCenter = player.transform.position + player.center; Vector3 bulletDirection = playerCenter - muzzle.position; // Create a new bullet to be fired BasicBullet newBullet = Instantiate(bullet, muzzle.position, Quaternion.identity) as BasicBullet; // Bullet needs to ignore other parts of the enemy Physics.IgnoreCollision(newBullet.collider, muzzle.collider); Physics.IgnoreCollision(newBullet.collider, muzzle.parent.transform.collider); // Normalize so a speed can be applied more easily bulletDirection.Normalize(); newBullet.direction = bulletDirection; newBullet.speed = bulletSpeed; }
public void OnTriggerEnter2D(Collider2D collision) { if (collision.gameObject.tag == "FriendlyBullet") { BasicBullet bullet = collision.GetComponent <BasicBullet>(); hurt((int)bullet.damage); // plays hurt sound AudioClip audio = Resources.Load <AudioClip>("bullet_impact_body_flesh_02"); this.GetComponent <AudioSource>().PlayOneShot(audio); Destroy(collision.gameObject); } else if (collision.gameObject.tag == "FriendlyExplosion") { explosion explosionObj = collision.GetComponent <explosion>(); hurt((int)explosionObj.damage); } }
public void OnUpdate(float deletaTime) { if (_BallCnt >= _totalBallNumber) { _tweening = false; return; } _createTimeCount += Time.deltaTime; if (_createTimeCount >= _createTime) { _createTime = Random.Range(0.0f, 0.1f); float Angle = Random.Range(0f, 360f); float BulletMoveTime = Random.Range(1.0f, 2.0f); BasicBullet temp = BulletManager.GetInstance().GetBullet(); temp.OnActive(Angle, 730f, BulletMoveTime); _createTimeCount = 0f; _BallCnt++; } }
public Aim(BasicBullet b, float speed, Color c) { _bullet = b; _speed = speed; _color = c; }
public Spiral(BasicBullet b, float speed, int amount) { _bullet = b; _speed = speed; _amount = amount; }
public void OnUpdate(float deletaTime) { for (int i = 0; i < infolist.Count; ++i) { infolist[i].StartWaveTimeCount += deletaTime; if (infolist[i].StartWaveTimeCount >= infolist[i].StartWaveTime) { if (!infolist[i].IsUse) { infolist[i].IsUse = true; if (i == 0) { infolist[i].TweenAngle = GameManager.GetInstance().player.GetAngle(); _startAngle = GameManager.GetInstance().player.GetAngle(); } else { if (i == 1) { if (_startAngle >= GameManager.GetInstance().player.GetAngle()) { IsRight = true; } else { IsRight = false; } } if (IsRight) { infolist[i].TweenAngle = _startAngle + (360f - (360f / infolist.Count) * i); } else { infolist[i].TweenAngle = _startAngle - (360f - (360f / infolist.Count) * i); } } } infolist[i].CreateTimeCount += deletaTime; if (infolist[i].CreateTimeCount >= infolist[i].CreateTime) { BasicBullet temp = BulletManager.GetInstance().GetBullet(); temp.OnActive(infolist[i].TweenAngle, 730f, _bulletAnimationTime); infolist[i].listMyBullet.Add(temp); infolist[i].CreateTimeCount = 0f; } } if (isAllUse()) { if (!infolist[i].IsMoveUse) { infolist[i].IsMoveUse = true; setTweenAngle(i); } } //for (int j = 0; j < infolist[i].listMyBullet.Count; ++j) //{ // infolist[i].listMyBullet[j].SetBulletAngleInfo(infolist[i].TweenAngle); //} } }
public void ReturnBullet(BasicBullet b) { bulletPool.ReturnObject(b); }