Pickup and Drop Object Script -- Need small assistance with script not working

I have another script attached to a trigger object. When the player enters the trigger, the trigger script tells the script below that canPickUp is true. It doesn’t tell the script pickUpPaper is true. Hopefully someone can help. I’m sure I’m just not thinking right! Brb, gotta take my pills lol

function Update ()
{
    if (canPickUpPaper)
    {
        if (Input.GetKeyDown(KeyCode.E))
        {
            if (pickupTimer == 0.5)
            {
                if (!dropPaper)
                {
                    pickUpPaper = true;
                    Debug.Log("Picking up paper " + dropPaper);
                    countDown = true;
                }
                if (dropPaper)
                {
                    pickUpPaper = true;
                    dropPaper = false;
                    Debug.Log("Dropping " + dropPaper);
                    countDown = true;
                }
                if (pickUpPaper)
                {
                    dropPaper = true;
                    Debug.Log("Picking paper back up " + pickUpPaper);
                    countDown = true;
                }
            }
        }
    }
    if (pickupTimer <= 0.0)
    {   
        countDown = false;
        pickupTimer = 0.5;
    }
}

u can try with visual scripting like playmaker,uscript and icanscript,this things very fast in vs.

Yeah, but I like coding way more. I feel like using playmaker is “cheating”. I don’t know lol

what is meaning of cheating?
Now many users even programmers also love to do with visual scripting.
any way this is personal opinion.

Yeah, I know. I’m just weird about stuff lol. I don’t like to do things if they feel too easy because I feel like I’m not working hard. And if I’m not working hard I feel like anyone can do what I’m doing. And if anyone can do what I’m doing, then what I’m doing isn’t special

I figured it out btw. I was just tired and making it too complicated