31 lines
589 B
C#
31 lines
589 B
C#
using UnityEngine;
|
|
using System.Collections;
|
|
using System.Collections.Generic;
|
|
|
|
public class MultiKeyDictionary<T1, T2, T3> : Dictionary<T1, Dictionary<T2, T3>>
|
|
{
|
|
new public Dictionary<T2, T3> this[T1 key]
|
|
{
|
|
get
|
|
{
|
|
if (!ContainsKey(key))
|
|
Add(key, new Dictionary<T2, T3>());
|
|
|
|
Dictionary<T2, T3> returnObj;
|
|
TryGetValue(key, out returnObj);
|
|
|
|
return returnObj;
|
|
}
|
|
}
|
|
|
|
public bool ContainsKey(T1 key1, T2 key2)
|
|
{
|
|
Dictionary<T2, T3> returnObj;
|
|
TryGetValue(key1, out returnObj);
|
|
if (returnObj == null)
|
|
return false;
|
|
|
|
return returnObj.ContainsKey(key2);
|
|
}
|
|
}
|