private void Update() { playerData = GameManager.manager.playerData; if (Input.GetMouseButton(1)) { anim.SetBool("Aiming", true); gunPivot.gameObject.SetActive(true); gunPivot.rotation = Quaternion.Euler(0, 0, Mathf.Atan2(controller.direction.y, controller.direction.x) * Mathf.Rad2Deg); gunPivot.localScale = new Vector3(transform.localScale.x, 1, 1); if (Input.GetMouseButtonDown(0) && !gun.automatic && Time.time > delay || Input.GetMouseButton(0) && gun.automatic && Time.time > delay) { if (playerData.ammoInClip[playerData.gun] > 0) { delay = Time.time + (1f / gun.RPS); Fire(); GameManager.manager.playerData.ammoInClip[playerData.gun]--; } else { audioSources[0].clip = gun.noAmmoSound; audioSources[0].pitch = Random.Range(0.8f, 1.2f); audioSources[0].Play(); } } } else { gunPivot.gameObject.SetActive(false); anim.SetBool("Aiming", false); } if (Input.GetKeyDown("r")) { delay = Time.time + gun.reloadTime; Reload(); } }
public void Initialize(GameManager.PlayerData data) { Mover.OnTileChanged += OnTileChanged; WorldManager.Instance.OnZoneEntered += OnZoneEntered; WorldManager.Instance.OnZoneLeft += OnZoneLeft; }