private void Smashing()
    {
        isSmashed = true;

        myPlayerControl.AnimatorHammerHit();
        StartCoroutine(CS_Global.DelayToInvokeDo(() =>
        {
            CapsuleCollider[] t_colliderArray = GetComponents <CapsuleCollider> ();
            foreach (CapsuleCollider t_collider in t_colliderArray)
            {
                t_collider.center += Vector3.forward * 2;
            }
        }, 0.4f));
        StartCoroutine(CS_Global.DelayToInvokeDo(() =>
        {
            Smashed();
        }, 0.5f));
    }
示例#2
0
    private bool CheckIfFarEnoughLine(Vector3 g_position, List <GameObject> g_list, float g_distance)
    {
        if (g_list.Count < 2)
        {
            return(true);
        }

        for (int i = 0; i < g_list.Count; i++)
        {
            int t_numb = i + 1;
            if (t_numb >= g_list.Count)
            {
                t_numb -= g_list.Count;
            }
            if (CS_Global.DistanceToLine(g_list[i].transform.position, g_list[t_numb].transform.position, g_position) < g_distance)
            {
                return(false);
            }
        }
        return(true);
    }