/// <summary>
    /// Sorts the data. Easier for retrieval later
    /// Hash -- Key: missionID, Value: (Hash -- Key: category , Value: List<ImmutableDataWellapadTask>)
    /// </summary>
    /// <param name="data">Data.</param>
    private void SortData(ImmutableDataWellapadTask data)
    {
        if (missionTaskHash == null)
        {
            missionTaskHash = new Hashtable();
        }

        string missionID = data.GetTaskType();

        if (!missionTaskHash.ContainsKey(missionID))
        {
            missionTaskHash[missionID] = new Hashtable();
        }

        // this is the hashtable of tasks in a mission
        Hashtable taskHash = (Hashtable)missionTaskHash[missionID];

        // now drill deeper -- we want to sort by categories
        string category = data.GetCategory();

        if (!taskHash.ContainsKey(category))
        {
            taskHash[category] = new List <ImmutableDataWellapadTask>();
        }

        List <ImmutableDataWellapadTask> tasks = (List <ImmutableDataWellapadTask>)taskHash[category];

        tasks.Add(data);
    }
Exemple #2
0
 public MutableDataWellapadTask(ImmutableDataWellapadTask data, WellapadTaskCompletionStates completionStatus = WellapadTaskCompletionStates.Uncompleted)
 {
     TaskID = data.GetTaskID();
     if (data.GetCategory() == "Critical")
     {
         Category = MiniGameCategory.Critical;
     }
     else
     {
         Category = MiniGameCategory.Regular;
     }
     Amount    = data.GetRandomCompleteCondition();
     Completed = completionStatus;
 }