Documentation index for AI agents (llms.txt) A Markdown version of every page is available: request the page's source under /docs/, follow the "alternate" link in this page's head, or start from /llms.txt.
Visual Script logo Manual

Has Component#

Game Object / Has Component

  • Can Read

  • Cannot Write

Description#

Returns True if the Game Object has the specified Component attached

Parameters#

Name Description
Game Object The Game Object that is checked
Type The Component type searched for

Code#

using System;
using UnityEngine;
using VisualScript.Icons;

namespace VisualScript.Runtime
{
    [Get]

    [Title("Has Component")]
    [Category("Game Object/Has Component")]

    [Description("Returns True if the Game Object has the specified Component attached")]
    [Image(typeof(IconCubeSolid), ColorTheme.Type.TextLight, typeof(BadgeTick))]

    [Parameter("Game Object", "The Game Object that is checked")]
    [Parameter("Type", "The Component type searched for")]

    [Keywords("Contains", "Attached", "Script", "Behaviour", "Type")]

    [Serializable]
    public class TypeBoolGameObjectHasComponent : TypeBool
    {
        [SerializeField] private GetGameObject m_GameObject = new GetGameObject();
        [SerializeField] private TypeReferenceComponent m_Type = new TypeReferenceComponent();

        public override bool Get(Args args)
        {
            GameObject gameObject = this.m_GameObject.Get(args);
            if (gameObject == null) return false;

            Type type = this.m_Type.Type;
            return type != null && gameObject.GetComponent(type) != null;
        }

        public override string ToString()
        {
            return $"{this.m_GameObject} has {this.m_Type}";
        }

        protected override SubscriptionMode Subscription => SubscriptionMode.OnChange;
    }
}
Visual Script logoVisual Script © Catsoft Works 2026. All rights reserved.