public static Retracting Instance(float speed, float radius, short? objType)
 {
     var key = new Tuple<float, float, short?>(speed, radius, objType);
     Retracting ret;
     if (!instances.TryGetValue(key, out ret))
         ret = instances[key] = new Retracting(speed, radius, objType);
     return ret;
 }
        public static Retracting Instance(float speed, float radius, short?objType)
        {
            var        key = new Tuple <float, float, short?>(speed, radius, objType);
            Retracting ret;

            if (!instances.TryGetValue(key, out ret))
            {
                ret = instances[key] = new Retracting(speed, radius, objType);
            }
            return(ret);
        }