This commit is contained in:
Gerard Gascón 2025-04-24 17:09:22 +02:00
commit 16da8e4dde
333 changed files with 109229 additions and 0 deletions

View file

@ -0,0 +1,67 @@
//#define TEST_DEATH
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.InputSystem;
public class Shoot : MonoBehaviour{
public float[] timeBetweenShots;
public Transform[] firePoint;
public Transform secondaryFirePoint;
PlayerController player;
float shotCounter;
bool shooting;
// Start is called before the first frame update
void Start(){
player = GetComponent<PlayerController>();
}
public void PlayerShoot(InputAction.CallbackContext state){
if (state.performed){
shooting = true;
#if TEST_DEATH
FindObjectOfType<HealthBar>().hp = 0f;
#endif
}
if (state.canceled){
shooting = false;
}
}
// Update is called once per frame
void Update(){
if (shooting && player.gunSelected == 0){
shotCounter -= Time.deltaTime;
if (shotCounter <= 0){
shotCounter = timeBetweenShots[0];
AudioManager.instance.Play("Shoot");
ObjectPooler.Instance.SpawnFromPool("Bullet", firePoint[0].position, firePoint[0].rotation);
player.speed = player.shootingSpeed;
}
}else if(shooting && player.gunSelected == 1){
shotCounter -= Time.deltaTime;
if (shotCounter <= 0){
shotCounter = timeBetweenShots[1];
AudioManager.instance.Play("Shoot");
ObjectPooler.Instance.SpawnFromPool("BigBullet", firePoint[1].position, firePoint[1].rotation);
player.speed = player.shootingSpeed;
}
}else if(shooting && player.gunSelected == 2){
shotCounter -= Time.deltaTime;
if (shotCounter <= 0){
shotCounter = timeBetweenShots[2];
AudioManager.instance.Play("Shoot");
ObjectPooler.Instance.SpawnFromPool("Bullet", firePoint[2].position, firePoint[2].rotation);
ObjectPooler.Instance.SpawnFromPool("Bullet", secondaryFirePoint.position, secondaryFirePoint.rotation);
player.speed = player.shootingSpeed;
}
}else{
shotCounter = 0;
player.speed = player.defaultSpeed;
}
}
}