For the complete documentation index, see llms.txt. This page is also available as Markdown.

Accessing Other Components

Get and Add Components

Similar to Unity, accessing other components can be done through the GetComponent<T>() method, as well as other component fetching methods, such as GetComponents<T>().

However, to fetch other AirshipBehaviour components, you must use the GetAirshipComponent<T>() method, et. al.

The same applies for adding components, such as AddComponent<T>() and AddAirshipComponent<T>().

// File 1
export default class Test extends AirshipBehaviour {}

// File 2
export default class MyComponent extends AirshipBehaviour {
    public Start() {
        // Adding a Unity and Airship component:
        this.gameObject.AddComponent<BoxCollider>();
        this.gameObject.AddAirshipComponent<Test>();
        
        // Get Unity and Airship components:
        const boxCollider = this.gameObject.GetComponent<BoxCollider>();
        const test = this.gameObject.GetAirshipComponent<Test>();
    }
}

Performance Considerations

Fetching components via methods such as GetComponent and GetAirshipComponent are expensive. Avoid calling these sorts of methods in per-frame code, such as the Update method. Instead, cache the result of the call to a variable.

Alternatively, the above code could expose boxCollider as a public variable, in which the variable could be assigned in-editor.

Last updated