Linking CSharp Script and Animator Controller


I’m using Unity 2019.4.31f1 to build a world for VRChat. I’m working with CSharp scripting and animator controllers.

My goal is to have the player enter a code into a keypad that allows for certain animations to play, and likewise disable these animations when an ‘emergency shutdown’ button is pressed.

My keypad is working to enable and disable the system, but I am getting errors when trying to link my script with my animator controller. Despite my research and implementation of recommended codes, I am still getting these errors.

I have attempted to implement “-animatorcontrollername-.SetBool(”-booleanname-“, true);” but I am getting error messages.

My script combines the keypad buttons, password system, and the ‘system on-system off’ parameters, but when I’ve attempted to invoke the boolean name of the animator controller actions, it doesn’t seem to work.

I’ve verified the names of my animator controller, booleans, and other parameters are correct. I’ve tested my animations and ensured they function, and the script returns logs indicating the system is able to turn on and off. So, they function separately.

Any assistance would be appreciated.

My codes and errors are as follows:

public class AquaControlSystemKeypad : UdonSharpBehaviour

    private VRCPlayerApi _playerLocal;
    private bool _isEditor;
    private bool _isSet; // This installs the requirement that a password should always be "set" (input into the Password field in Unity) to be accepted when Enter is pressed.
    private string _input = "";

    public Text numberField;
    public string password = "0000"; // This created the "Password" field in the Keypad Canvas Utilities section; allows for password to be set manually in Unity.
    public UdonSharpBehaviour target;
    public bool networked;
    public string targetEvent;

    public Animator AquaAnimator; // Fetches the AquaAnimator animation controller and creates "Aqua Animator" entry in the "Aqua Control System Keypad (U# Script)" object entry with no animation controlled assignable.\

    public bool AquaActive; // This bool is directly associated with the Aqua System. This creates a check box named "Aqua Active" in the "Aqua Control System Keypad (U# Script)" object entry.

    private void Start()
        numberField.text = _input;
        _playerLocal = Networking.LocalPlayer;
        if (_playerLocal == null) _isEditor = true;
        if (password != "") _isSet = true; // This condition declares if a password is not null, then the password is "Set." Therefore, a password must be "set" for the code to be accepted.
        AquaAnimator = gameObject.GetComponent<Animator>();
        AquaActive = false;

    private void Update()
        if (numberField.text != _input) numberField.text = _input;

    public void AquaSystemEnable() // Aqua System enabled when condition is true. Assigned as Keypad Canvas Target Event.
        AquaActive = true;
        Debug.Log(message: "Aqua System has been activated.");
        AquaAnimator.SetBool("AquaActive", true);  // Causes Udon to fire an exception error

    public void AquaSystemDisable() // Aqua System disabled when condition is false. Not assigned as any Target Event.
        AquaActive = false;
        Debug.Log(message: "Aqua System has been deactivated.");
        AquaAnimator.SetBool("AquaActive", false); // Causes Udon to fire an exception error

Error messages, animation controller, and interface images are as follows: