Example #1
0
 void OnRequestNewStatus(Request_NewStatus e)
 {
     if (e.IsMainRequest && (e.NewStatus == RequestStatus.Finished))
     {
         var req    = _request.Get(e.Id);
         var user   = req.Owner;
         var client = user.Client;
         var change = _rules.CalculateClientMoodChange(user.Mood);
         _logger.MessageFormat("Update client {0} mood to: {1} (from user mood: {2})", client, change, user.Mood);
         _client.UpdateMood(client, change);
         var newMood = _client.Get(client)?.Mood;
         _logger.MessageFormat("New client {0} mood is {1}", client, newMood);
         if (newMood <= 0)
         {
             _client.RemoveClient(client);
         }
     }
 }
Example #2
0
        void OnNewStatus(Request_NewStatus e)
        {
            var id   = e.Id;
            var view = GetOrSpawnView(id);

            if (view == null)
            {
                return;
            }
            switch (e.NewStatus)
            {
            case RequestStatus.Outgoing: {
                view.EndPos   = view.StartPos;
                view.StartPos = view.transform.position;
            }
            break;

            case RequestStatus.Finished: {
                ObjectPool.Recycle(view);
                _views.Remove(id);
            }
            break;
            }
        }