Beispiel #1
0
    public void EnterElevator(ElevatorAgent el)
    {
        if (floorNo != (int)el.GetFloor() || !el.IsEnterableState())
        {
            return;
        }

        float delay = 0;

        int idx = 0;

        while (idx < listPassenger.Count)
        {
            if (!el.IsEnterableState())
            {
                break;
            }

            if (el.AddPassenger(listPassenger[idx]))
            {
                listPassenger.RemoveAt(idx);
                delay += Random.Range(0.6f, 1.0f);
            }
            else
            {
                ++idx;
            }
        }


        textPassenger.text = listPassenger.Count.ToString();


        LandingElevators.Add(el);
        return;
    }
Beispiel #2
0
 public MOVE_STATE GetAction(int floor, ElevatorAgent el)
 {
     return(MOVE_STATE.Stop);
 }