示例#1
0
    public void LeaveDancer(GameObject dancer)
    {
        Vector3     dancerExit      = GetDancerExit();
        DancerState dancerStateComp = dancer.GetComponent <DancerState>();

        dancerStateComp.SetState(GameEnums.DancerStateNames.Leaving);
        dancerStateComp.MoveToDestination(dancerExit);
        DancerMood dancerMoodComp = dancer.GetComponent <DancerMood>();

        dancerMoodComp.PlayWalkAnimation();
    }
示例#2
0
    public void SpawnDancer()
    {
        if (dancers.Count < MAX_DANCERS)
        {
            Vector3    dancerEntrance    = GetDancerEntrance();
            Vector3    dancerDestination = GetDancingSpot();
            GameObject randomDancer      = GetRandomDancer();
            GameObject dancer            = Instantiate(randomDancer, dancerEntrance, Quaternion.identity);

            DancerState dancerStateComp = dancer.GetComponent <DancerState>();
            dancerStateComp.SetState(GameEnums.DancerStateNames.Created);
            dancerStateComp.MoveToDestination(dancerDestination);
            dancerStateComp.manager = this;
            DancerMood dancerMoodComp = dancer.GetComponent <DancerMood>();
            dancerMoodComp.manager = this;
            dancerMoodComp.PlayWalkAnimation();

            dancers.Add(dancer);
        }
    }