public void UpdateHitEffectTarget()
 {
     if (!((UnityEngine.Object)hitEffect == (UnityEngine.Object)null))
     {
         Workable         workable    = base.sm.workable.Get <Workable>(base.smi);
         Worker           worker      = base.sm.worker.Get <Worker>(base.smi);
         AnimEventHandler component   = worker.GetComponent <AnimEventHandler>();
         Vector3          targetPoint = workable.GetTargetPoint();
         worker.GetComponent <Facing>().Face(workable.transform.GetPosition());
         anims = GetAnimationStrings(workable, worker, "dig");
         PlayLoop();
         component.SetTargetPos(targetPoint);
         component.UpdateWorkTarget(workable.GetTargetPoint());
         hitEffect.transform.SetPosition(targetPoint);
     }
 }
        public void CreateHitEffect()
        {
            Worker   worker   = base.sm.worker.Get <Worker>(base.smi);
            Workable workable = base.sm.workable.Get <Workable>(base.smi);

            if (!((UnityEngine.Object)worker == (UnityEngine.Object)null) && !((UnityEngine.Object)workable == (UnityEngine.Object)null))
            {
                if (Grid.PosToCell(workable) != Grid.PosToCell(worker))
                {
                    worker.Trigger(-673283254, null);
                }
                Diggable diggable = workable as Diggable;
                if ((bool)diggable)
                {
                    Element targetElement = diggable.GetTargetElement();
                    worker.Trigger(-1762453998, targetElement);
                }
                if (!((UnityEngine.Object)hitEffectPrefab == (UnityEngine.Object)null))
                {
                    if ((UnityEngine.Object)hitEffect != (UnityEngine.Object)null)
                    {
                        DestroyHitEffect();
                    }
                    AnimEventHandler component   = worker.GetComponent <AnimEventHandler>();
                    Vector3          targetPoint = workable.GetTargetPoint();
                    component.SetTargetPos(targetPoint);
                    hitEffect = GameUtil.KInstantiate(hitEffectPrefab, targetPoint, Grid.SceneLayer.FXFront2, null, 0);
                    KBatchedAnimController component2 = hitEffect.GetComponent <KBatchedAnimController>();
                    hitEffect.SetActive(true);
                    component2.sceneLayer = Grid.SceneLayer.FXFront2;
                    component2.enabled    = false;
                    component2.enabled    = true;
                    component.UpdateWorkTarget(workable.GetTargetPoint());
                }
            }
        }