public bool WillInteract(HandApply interaction, NetworkSide side)
        {
            if (!DefaultWillInteract.Default(interaction, side))
            {
                return(false);
            }
            if (!construction.IsFullyBuilt())
            {
                return(false);
            }
            if (interaction.HandObject != null && interaction.Intent == Intent.Harm)
            {
                return(false);
            }
            if (interaction.HandObject != null && !Validations.HasItemTrait(interaction.HandObject, CommonTraits.Instance.LightReplacer) && !Validations.HasItemTrait(interaction.HandObject, traitRequired))
            {
                return(false);
            }

            return(true);
        }