void endEffect()
    {
        playerWeapon playerScript = player.GetComponent <playerWeapon>();

        playerScript.powerUp(false, type);
        Destroy(gameObject);
    }
    private void Update()
    {
        currentweapon = WeaponManager.getCurrentWeapon();
        if (pauseMenu.isOn)
        {
            return;
        }

        if (currentweapon.firerate <= 0f)
        {
            if (Input.GetButtonDown("Fire1"))
            {
                shoot();
            }
        }
        else
        {
            if (Input.GetButtonDown("Fire1"))
            {
                InvokeRepeating("shoot", 0f, 1f / currentweapon.firerate);
            }
            else if (Input.GetButtonUp("Fire1"))
            {
                CancelInvoke("shoot");
            }
        }
    }
    void startEffect()
    {
        playerWeapon playerScript = player.GetComponent <playerWeapon>();

        playerScript.powerUp(true, type);

        GetComponent <SpriteRenderer>().enabled   = false;
        GetComponent <CircleCollider2D>().enabled = false;
    }
    void EquipWeapon(playerWeapon _weapon)
    {
        currentWeapon = _weapon;
        GameObject weaponIns = (GameObject)Instantiate(_weapon.weaponGfx, weaponHolder.position, weaponHolder.rotation);

        weaponIns.transform.SetParent(weaponHolder);

        currentGfx = weaponIns.GetComponent <weaponGfx>();
        if (currentGfx == null)
        {
            Debug.LogError("Graphics Not Attached");
        }

        if (isLocalPlayer)
        {
            Utility.SetLayerReccursively(weaponIns, LayerMask.NameToLayer(WeaponLayerName));
        }
    }