コード例 #1
0
    private void Start()
    {
        if (GetComponentInParent <EmotionController>() != null)
        {
            emotionState = false;
            magnetState  = false;

            playerT   = GetComponentInParent <PlayerController>().transform;
            direction = GetComponentInParent <EmotionController>().direction;

            onPositionState = true;
        }
        emotionController = PlayerController.staticController.transform.GetComponent <EmotionController>();
        tempPos           = transform.position;
        tempVal           = transform.position.y;
    }
コード例 #2
0
    public void Idle()
    {
        tempPos.y          = tempVal + amplitude * Mathf.Sin(speed * Time.time); //emotion y-coord change by amplitude (length of up-down), mathf.sin calculate up-down position from 0 to 1
        transform.position = tempPos;

        if (colliderDetector.GetListOfTriggerColliders().Count != 0)     // if collider list in trigger zone isn't empty
        {                                                                // or if trigger zone contain colliders
            nearestTransform = Helper.GetClosestTransform(colliderDetector.GetListOfTriggerTransforms(), transform);

            closestEmotionController = nearestTransform.GetComponentInChildren <EmotionController>();    // !
            // foundClosestTransform = true;

            if ((closestEmotionController != null) && (!closestEmotionController.EmotionExists(emotionColor)))
            {
                fsm.TransitTo(Magnet);
            }
        }
    }
コード例 #3
0
 // Start is called before the first frame update
 void Start()
 {
     rigidbody2d       = GetComponent <Rigidbody2D>();
     animator          = GetComponent <Animator>();
     emotionController = GetComponent <EmotionController>();
 }
コード例 #4
0
 private void Start()
 {
     emotion = GameObject.Find("PlayerGhost").GetComponent <EmotionController>();
 }