private void OnEnable()
    {
        G.Engine.Computer(cd, new object[] { toggle }, () =>
        {
            if (toggle.Count % 2 == 1)
            {
                IsEnabled.Write(!IsEnabled);
            }
        });

        G.Engine.Writer(cd, new object[] { IsEnabled, G.Tick }, () =>
        {
            if (!IsEnabled)
            {
                IsGunFiring.Write(false);
            }
            else if (G.Tick)
            {
                var hit = Physics2D.Raycast(transform.position, transform.right, 10, 1 << 8);
                IsGunFiring.Write(hit && hit.transform);
            }
        });
    }