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