public static AngleMultiAttack Instance(float angle, float projAngle, int numShot, int projectileIndex = 0) { var key = new Tuple<float, float, int, int>(angle, projAngle, numShot, projectileIndex); AngleMultiAttack ret; if (!instances.TryGetValue(key, out ret)) ret = instances[key] = new AngleMultiAttack(angle, projAngle, numShot, projectileIndex); return ret; }
public static AngleMultiAttack Instance(float angle, float projAngle, int numShot, int projectileIndex = 0) { var key = new Tuple <float, float, int, int>(angle, projAngle, numShot, projectileIndex); AngleMultiAttack ret; if (!instances.TryGetValue(key, out ret)) { ret = instances[key] = new AngleMultiAttack(angle, projAngle, numShot, projectileIndex); } return(ret); }