public bool DoDispose(Sim Actor, Plant Target, InteractionInstance interaction)
        {
            IDisposePlantInteraction disposePlantInteraction = interaction as IDisposePlantInteraction;

            if (disposePlantInteraction == null)
            {
                return(false);
            }

            EWHerbLoreSkill skill = EWHerbLoreSkill.StartSkillGain(Actor);

            if (skill != null)
            {
                disposePlantInteraction.ReachedPlantDeletePointOfNoReturn();
                interaction.StandardEntry();
                interaction.BeginCommodityUpdates();

                // TODO: Hope to use dig animation here. Need to be converted?
                AcquireStateMachine("eatharvestablepet");
                mCurrentStateMachine.SetActor("x", Actor);
                mCurrentStateMachine.EnterState("x", "Enter");
                SetParameter("IsEatingOnGround", paramValue: true);

                uint footprintHash = Target.GetFootprintHash();
                Target.DisableFootprint(footprintHash);
                Target.GetSoil().DisableFootprint(1478897068u);

                AnimateSim("EatHarvestable");
                AnimateSim("Exit");
                interaction.EndCommodityUpdates(true);
                interaction.StandardExit();
                return(true);
            }
            return(false);
        }