public void ActivateFromSource(ActivatableObjectSource source)
    {
        Debug.Log(source.AO_ID);
        bool activate = (_sources.Count > 0);

        if (source.sourceType == SourceType.Compound)
        {
            activate = ActivateFromCompoundSource();
        }
        else if (source.sourceType == SourceType.Toggle)
        {
            activate = ToggleFromSource();
            if (activate)
            {
                Activate();
            }
            else
            {
                Deactivate();
            }
            return;
        }
        else
        {
            activate = ActivateFromSerialSource();
        }

        if (activate)
        {
            Activate();
        }
    }
    public void DeactivateFromSource(ActivatableObjectSource source)
    {
        bool deactivate = (_sources.Count == 0);

        if (source.sourceType == SourceType.Compound)
        {
            deactivate = DeactivateFromCompoundSource();
        }
        else if (source.sourceType == SourceType.Toggle)
        {
            deactivate = !ToggleFromSource();
            if (deactivate)
            {
                Deactivate();
            }
            else
            {
                Activate();
            }
            return;
        }
        else
        {
            deactivate = DeactivateFromSerialSource();
        }

        if (deactivate)
        {
            Deactivate();
        }
    }
예제 #3
0
 // Use this for initialization
 void Start()
 {
     _source = GetComponent <ActivatableObjectSource>();
     SetInitialState();
 }