Пример #1
0
    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);
            }
        }
    }
Пример #2
0
 public void MovementSetup()
 {
     player          = GameObject.Find("Player");
     playerAimWeapon = player.GetComponent <PlayerAimWeapon>();
     target          = playerAimWeapon.shootPosition;
     speed           = playerAimWeapon.projectileSpeed;
 }
Пример #3
0
 // 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;
 }
Пример #4
0
    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;
 }