public static SpawnMinnionImmediateAngled Instance(float angle, float range, short objType, int minCount, int maxCount) { var key = new Tuple<float, float, short, int, int>(angle, range, objType, minCount, maxCount); SpawnMinnionImmediateAngled ret; if (!instances.TryGetValue(key, out ret)) ret = instances[key] = new SpawnMinnionImmediateAngled(angle, range, objType, minCount, maxCount); return ret; }