public void ShootWind() { windAnimator.TriggerGust(); PositionWind(); Vector3 mousePosition = PlayerAimWeapon.GetMouseWorldPosition(); // working on a 2d game, rotation works differently Vector3 aimDirection = (mousePosition - transform.position).normalized; float angle = Mathf.Atan2(aimDirection.y, aimDirection.x) * Mathf.Rad2Deg; Collider2D[] hits = Physics2D.OverlapBoxAll(transform.position, new Vector2(5, 1), angle, interactables); foreach (Collider2D collider in hits) { Debug.Log(collider.name); IWindable wind = collider.transform.GetComponent <IWindable>(); if (wind != null) { wind.Wind(aimDirection.normalized); } } }
public void MovementSetup() { player = GameObject.Find("Player"); playerAimWeapon = player.GetComponent <PlayerAimWeapon>(); target = playerAimWeapon.shootPosition; speed = playerAimWeapon.projectileSpeed; }
// Start is called before the first frame update void Start() { lineRenderer.enabled = true; player = GameObject.Find("Player"); playerAimWeapon = player.GetComponent <PlayerAimWeapon>(); playerScript = player.GetComponent <Player>(); target = playerAimWeapon.shootPosition; speed = playerAimWeapon.projectileSpeed; }
public void PositionWind() { windTransform.position = transform.position; Vector3 mousePosition = PlayerAimWeapon.GetMouseWorldPosition(); // working on a 2d game, rotation works differently Vector3 aimDirection = (mousePosition - transform.position).normalized; float angle = Mathf.Atan2(aimDirection.y, aimDirection.x) * Mathf.Rad2Deg; windTransform.eulerAngles = new Vector3(0, 0, angle); }
//private Animator animator; // Start is called before the first frame update void Awake() { spriteRenderer = GetComponent <SpriteRenderer>(); normalColor = spriteRenderer.color; grapple = GetComponent <GrappleSystem>(); // animator = GetComponent<Animator>(); rb = GetComponent <Rigidbody2D>(); pistol = GetComponent <Pistol>(); shotgun = GetComponent <Shotgun>(); playerSound = GetComponent <AudioSource>(); Aim = gameObject.transform.Find("Arm").gameObject.GetComponent <PlayerAimWeapon>(); armSprite = gameObject.transform.Find("Arm").gameObject.GetComponent <SpriteRenderer>(); armSprite.sprite = RightArm; }
// Start is called before the first frame update void Start() { aim = gameObject.GetComponentInChildren <PlayerAimWeapon>(); curAmmoCount = ammo; canShoot = true; }