Пример #1
0
/*    public static void EnqueueCustomerToQueueHead(CustomerNpc npc, string key = "")
 *  {
 *      if (LookupValid)
 *      {
 *          if (TryGetCustomerQueueHead(key, out CustomerQueueHead queueHead))
 *          {
 *              queueHead.EnqueueCustomers(npc);
 *          }
 *      }
 *  }*/
    public static void SetNameAndAdjustForDuplicates(CustomerQueueHead queueHead)
    {
        InitializeLookup();

        int iterations = 0;

        while (queueHeadLookupDict.ContainsKey(queueHead.Key))
        {
            iterations++;
            queueHead.AdjustKeyForDuplicate(iterations);
        }
        queueHeadLookupDict.Add(queueHead.Key, queueHead);
    }
Пример #2
0
    private static CustomerQueueHead GetCustomerQueueHead(string queueHeadLookup = "")
    {
        CustomerQueueHead head = null;

        if (LookupValid)
        {
            if (string.IsNullOrEmpty(queueHeadLookup) || !queueHeadLookupDict.TryGetValue(queueHeadLookup, out head))
            {
                return(queueHeadLookupDict.ElementAt(0).Value);
            }
        }

        return(head);
    }
Пример #3
0
 public static bool TryGetCustomerQueueHead(string key, out CustomerQueueHead queueHead)
 {
     queueHead = GetCustomerQueueHead(key);
     return(queueHead != null);
 }