public virtual void FireWeapon() { if (isDead == true) { return; } if (weaponHandler.NowWeapon != null) { if (weaponHandler.NowWeapon.hasAmmo() == false) { UseSpecificItem(ItemType.Bullet); } } if (GameOption.FireStyle == FireStyle.Auto) { GameObject nearEnemy = MonsterManager.Instance.GetNearestMonsterPos(this.transform.position); if (nearEnemy != null && weaponHandler != null) { Vector3 fireDir = nearEnemy.transform.position - this.transform.position; weaponHandler.FireBullet(this.FirePos.position, fireDir); } else if (nearEnemy == null) { if (lastMoveDir != Vector3.zero) { weaponHandler.FireBullet(this.FirePos.position, lastMoveDir); } else { weaponHandler.FireBullet(this.FirePos.position, Vector3.left); } } } else if (GameOption.FireStyle == FireStyle.Manual) { if (weaponHandler != null) { Vector3 fd = FireJoyStick.Instance.FireDir; if (fd != Vector3.zero) { weaponHandler.FireBullet(this.FirePos.position, fd); lastFireDirection = fd; } else { weaponHandler.FireBullet(this.FirePos.position, lastFireDirection); } } } }
protected virtual void FireWeapon() { if (nowWeapon != null) { Vector3 fireDir = GamePlayerManager.Instance.player.transform.position - this.transform.position; nowWeapon.FireBullet(this.transform.position, fireDir.normalized); } }
private void FireNowWeapon() { if (weaponHandler1 != null) { Vector3 fireDir = GamePlayerManager.Instance.player.transform.position - this.transform.position; weaponHandler1.FireBullet(weaponHandler1.transform.position, fireDir); } if (weaponHandler2 != null) { Vector3 fireDir = GamePlayerManager.Instance.player.transform.position - this.transform.position; weaponHandler2.FireBullet(weaponHandler2.transform.position, fireDir); } }