Esempio n. 1
0
        public void TerminateWorker(int id, DateTime terminateDate, bool leaver, int leavingReasonId)
        {
            if (!leaver)
            {
                var worker = _service.GetById(id);
                worker.TerminationDate = terminateDate;
                worker.Completed       = true;
                _service.Update(worker);

                var jobseeker = new JobSeeker {
                    IntervieweeId = worker.IntervieweeId, DateStart = terminateDate
                };
                _jobseekerService.Create(jobseeker);
            }
            else
            {
                var worker = _service.GetById(id);
                worker.TerminationDate = terminateDate;
                worker.Completed       = true;
                _service.Update(worker);

                var leave = new Leaver {
                    IntervieweeId = worker.IntervieweeId, LeavingDate = terminateDate, LeavingReasonId = leavingReasonId
                };
                _leaverService.Create(leave);
            }
        }
Esempio n. 2
0
    void createNewPassenger(int door_id)
    {
        audio.Play(audio.passenger_in, passenger_sfx_volume);
        grid.spawnPassenger(door_id);
        Leaver l = new Leaver(door_id);

        enterers.Add(l);
        added++;
    }
Esempio n. 3
0
    void AnimateBabyExit()
    {
        GameObject baby = this.babies[0];

        Leaver babyLeaver = baby.GetComponent <Leaver> ();

        babyLeaver.Leave();
        this.babies.RemoveAt(0);
    }
Esempio n. 4
0
 bool containsByID(Leaver l)
 {
     foreach (Leaver leaver in leavers)
     {
         if (leaver.getID() == l.getID())
         {
             return(true);
         }
     }
     return(false);
 }
Esempio n. 5
0
    void callNextLeaver(int id, Direction dir)
    {
        int    newId = calculateTargetID(dir, id);
        Leaver l     = new Leaver(newId);

        if (!containsByID(l))
        {
            leavers.Add(l);
        }
        setAllLeavers(l);
    }
        public void Terminate(int id, DateTime leaveDate, int leavingReason)
        {
            var userid = User.Identity.GetUserId();
            var seeker = _service.GetById(id);

            seeker.DateEnd   = DateTime.Today;
            seeker.ChangedBy = userid;
            _service.Update(seeker);

            var leaver = new Leaver {
                IntervieweeId = seeker.IntervieweeId, LeavingDate = leaveDate, ChangedBy = userid, CreatedBy = userid, LeavingReasonId = leavingReason
            };

            _leaverService.Create(leaver);
        }
Esempio n. 7
0
    void setAllLeavers(Leaver l)
    {
        int           id        = l.getID();
        int           player_id = getIDPlayer();
        IDPosFromDoor pos       = getPosFromDoor(id);

        l.setPos(pos);
        Direction nextDir;

        if (pos == IDPosFromDoor.ON_DOOR)
        {
            return;
        }
        nextDir = calculateNextDir(pos, id, player_id);
        callNextLeaver(id, nextDir);
    }
Esempio n. 8
0
    bool IEventListener.HandleEvent(IEvent evt)
    {
        switch (evt.GetName())
        {
        case "GameOverEvent":
            this.rigidbody2D.isKinematic = true;
            Leaver l = this.gameObject.AddComponent <Leaver>();
            l.speed = 15;
            l.Leave();
            SetMovementInteractionEnabled(false);
            break;

        case "GameStartEvent":
            SetMovementInteractionEnabled(true);
            break;
        }
        return(false);
    }
Esempio n. 9
0
        public void ConvertToLeaver(int id, DateTime finishDate, int leavingReasonId)
        {
            if (finishDate == null)
            {
                finishDate = DateTime.Today;
            }
            var userid = User.Identity.GetUserId();
            var worker = _service.GetById(id);

            var leaver = new Leaver {
                IntervieweeId = worker.IntervieweeId, LeavingDate = finishDate, CreatedBy = userid, ChangedBy = userid, LeavingReasonId = leavingReasonId
            };

            _leaverService.Create(leaver);

            worker.Completed = true;
            worker.ChangedBy = userid;
            _service.Update(worker);
        }
Esempio n. 10
0
    public IEnumerator triggerEnd()
    {
        print("o começo do fim chegou");

        StopCoroutine(at.leaving_coroutine);
        StopCoroutine(tm.turn_loop);

        StartCoroutine(audio.Fade_Out(4f));
        audio.bus_background_source.Stop();
        StartCoroutine(Ending_Song());

        //List<int> not_seats = grid.getAllNotSeats();
        for (int i = 0; i < grid.tiles.Count; i++)
        {
            if (grid.getPlayerID() == i)
            {
                continue;
            }
            Leaver l = new Leaver(i);
            l.setPos(grid.posFromDoor(i));
            leavers.Add(l);
        }
        at.leavers = leavers;

        yield return(new WaitForSeconds(2.0f));

        mainCamera.GetComponent <Animator>().SetTrigger("stop_shake");
        yield return(new WaitForSeconds(2.0f));

        Coroutine end_loop = StartCoroutine(at.leavingLoop());

        yield return(at.waitForReadyForAdvance());

        tm.setTurnToBetweenStations_Ending();
        grid.ending_event = true;
    }
Esempio n. 11
0
    IEnumerator enteringLoop()
    {
        enterers = new List <Leaver>();
        added    = 0;

        if (is_door_empty(Door.DOOR_1))
        {
            createNewPassenger(getDoorID(Door.DOOR_1));
        }
        if (is_door_empty(Door.DOOR_2))
        {
            createNewPassenger(getDoorID(Door.DOOR_2));
        }

        while (added < n_leavers)
        {
            for (int i = 0; i < added; i++)
            {
                Leaver p    = enterers[i];
                int    p_id = p.getID();

                List <GameObject> adjs = grid.calculateAdj(p_id);

                adjs = Sort_Tiles(adjs);

                foreach (GameObject tile in adjs)
                {
                    int  player_id = getIDPlayer();
                    int  tile_id   = tile.GetComponent <Tile>().getTileId();
                    bool empty     = grid.tileIsEmpty(tile_id);

                    if (empty)
                    {
                        float mov_threshold = 0.3f;
                        float mov_time      = Random.Range(swap_duration - mov_threshold, swap_duration + mov_threshold);
                        grid.movePassenger(p_id, tile_id, swap_duration);
                        p.setID(tile_id);
                        yield return(new WaitForSeconds(0.1f));

                        break;
                    }
                }
            }

            yield return(new WaitForSeconds(swap_duration + 0.1f));

            if (is_door_empty(Door.DOOR_1))
            {
                createNewPassenger(getDoorID(Door.DOOR_1));
            }
            if (is_door_empty(Door.DOOR_2))
            {
                createNewPassenger(getDoorID(Door.DOOR_2));
            }
        }

        print("aaaaaaaa, added: " + added + ", n_leavers: " + n_leavers);
        ready_to_advance = true;

        //print("vou pausar");
        //Debug.Break();
    }
Esempio n. 12
0
    public IEnumerator leavingLoop()
    {
        printLeaversList();
        int leavers_count = leavers.Count;

        foreach (Leaver l in leavers)
        {
//            print("id #" + l.getID() + ", pos: " + l.getPos());
            if (l.getPos() == IDPosFromDoor.ON_DOOR)
            {
                audio.Play(audio.passenger_out, passenger_sfx_volume);
                Destroy(grid.passengers[l.getID()]);
                grid.passengers[l.getID()] = null;
                leavers_count--;
            }
        }
        while (leavers_count > 0)
        {
            bool moved = false;
            for (int i = 0; i < leavers.Count; i++)
            {
                Leaver        l   = leavers[i];
                int           id  = l.getID();
                IDPosFromDoor pos = l.getPos();

//				print ("id #" + id + ", pos: " + pos);

                if (grid.passengers[id] == null)
                {
                    continue;
                }
                List <GameObject> adjs = grid.calculateAdj(id);
                foreach (GameObject tile in adjs)
                {
                    int           player_id = getIDPlayer();
                    int           tile_id   = tile.GetComponent <Tile>().getTileId();
                    IDPosFromDoor tile_pos  = grid.posFromDoor(tile_id);
                    bool          empty     = grid.tileIsEmpty(tile_id);

                    if (empty)
                    {
                        Direction tileDir = calculateDirByID(id, tile_id);
                        Direction doorDir = calculateNextDir(pos, id, player_id);

                        if (id == 15)
                        {
                            print("ID#" + id + ", tile_id#" + tile_id);
                            print("Tile_DIR: " + tileDir + ", Door_DIR: " + doorDir);
                        }

                        if (/*forbidden.Contains(tileDir) || */ tileDir != doorDir)
                        {
                            continue;
                        }

                        //print ("Tile #" + tile_id + " is empty (detected by passenger #" + id + ").");
                        float mov_threshold = 0.1f;
                        float mov_time      = Random.Range(swap_duration - mov_threshold, swap_duration + mov_threshold);
                        grid.movePassenger(id, tile_id, mov_time);
                        moved = true;
                        //yield return new WaitForSeconds(0.5f);
                        break;
                    }
                    else
                    {
                        //print ("Tile #" + tile_id + " is NOT empty (detected by passenger #" + id + ").");
                    }
                }
            }
            if (!moved)
            {
                for (int i = 0; i < leavers.Count; i++)
                {
                    Leaver l  = leavers [i];
                    int    id = l.getID();

                    if (l.getPos() == IDPosFromDoor.ON_DOOR)
                    {
                        if (grid.passengers [l.getID()] == null)
                        {
                            continue;
                        }
                        GameObject    go     = grid.passengers [l.getID()];
                        PassengerType p_type = go.GetComponent <Passenger> ().getPassengerType();
                        grid.types_counter [p_type]--;
                        Destroy(go);
                        audio.Play(audio.passenger_out, passenger_sfx_volume);
                        grid.passengers [l.getID()] = null;
                        leavers_count--;
                    }
                }
            }

            float cycle_threshold = 0.1f;
            float cycle_time      = Random.Range(swap_duration, swap_duration + cycle_threshold);
            yield return(new WaitForSeconds(cycle_time));
        }
        print("Leavers.count: " + leavers.Count);
        ready_to_advance = true;
    }
Esempio n. 13
0
    IEnumerator getUpLeavers(int id)
    {
        leavers = new List <Leaver>();
        float threshold        = 0.3f;
        float random_wait_time = Random.Range(0f, threshold);

        yield return(new WaitForSeconds(Random.Range(0.3f, 0.5f)));

        if (passengerOnFirstLineOfSeats(id))
        {
            grid.swapTwoPassengers(id,
                                   getIDPassengerBellow(id),
                                   swap_duration
                                   );

            yield return(new WaitForSeconds(swap_duration + random_wait_time));

            grid.swapTwoPassengers(
                getIDPassengerBellow(id),
                getIDPassengerBellow(getIDPassengerBellow(id)),
                swap_duration
                );
            Leaver l = new Leaver(getIDPassengerBellow(getIDPassengerBellow(id)));
            leavers.Add(l);
        }
        else if (passengerOnSecondLineOfSeats(id))
        {
            grid.swapTwoPassengers(
                id,
                getIDPassengerBellow(id),
                swap_duration
                );
            Leaver l = new Leaver(getIDPassengerBellow(id));
            leavers.Add(l);
        }
        else if (passengerOnFirstLastLineOfSeats(id))
        {
            grid.swapTwoPassengers(
                id,
                getIDPassengerUp(id),
                swap_duration
                );
            Leaver l = new Leaver((getIDPassengerUp(id)));
            leavers.Add(l);
        }
        else if (passengerOnSecondLastLineOfSeats(id))
        {
            grid.swapTwoPassengers(
                id,
                getIDPassengerUp(id),
                swap_duration
                );
            yield return(new WaitForSeconds(swap_duration + random_wait_time));

            grid.swapTwoPassengers(
                getIDPassengerUp(id),
                getIDPassengerUp(getIDPassengerUp(id)),
                swap_duration
                );
            Leaver l = new Leaver((getIDPassengerUp(getIDPassengerUp(id))));
            leavers.Add(l);
        }
        else
        {
            Debug.Log("erro, id: " + id);
        }
    }
Esempio n. 14
0
 public void Delete(Leaver entity)
 {
     _repository.Delete(entity);
 }
Esempio n. 15
0
 public void Update(Leaver entity)
 {
     _repository.Update(entity);
 }
Esempio n. 16
0
 public void Create(Leaver entity)
 {
     _repository.Insert(entity);
 }