コード例 #1
0
    void Update()
    {
        bool            offInputOn = false;
        EntityComponent offEntity  = offInput.component;

        if (offEntity != null)
        {
            offInputOn = offEntity.IsOn();
        }

        bool            onInputOn = false;
        EntityComponent onEntity  = onInput.component;

        if (onEntity != null)
        {
            onInputOn = onEntity.IsOn();
        }

        if (offInputOn && onInputOn)
        {
            if (!bothOn)
            {
                bothOn = true;
                value  = !value;
                if (value)
                {
                    AddActivators(onEntity.GetActivators());
                }
                else
                {
                    ClearActivators();
                }
            }
        }
        else
        {
            bothOn = false;
            if (offInputOn)
            {
                value = false;
                ClearActivators();
            }
            else if (onInputOn)
            {
                if (!value)
                {
                    AddActivators(onEntity.GetActivators());
                }
                value = true;
            }
        }
    }