(this is a library)
The function GetUniqueInt is being called with (5, 5) as the variables.
Currently the code will stall unity to a complete halt, or crash my PC with a memory overflow error.
Does anyone have any ideas as to how I could prevent it from crashing or what is making it crash?
using UnityEngine;
namespace MajorSolution
{
    public static class MajorMath
    {
        public static int[] GetUniqueInt(int intCount, int intLength)
        {
            int[] returnValue = new int[intCount];
            int[] temp = new int[intLength];
            for (int a = 0; a < intCount; a++)
            {
                string create = new string("create".ToCharArray());
                switch (create)
                {
                    case "create":
                        returnValue[a] = GetRandomInt(intCount);
                        goto case "check";
                    case "check":
                        bool alreadyTaken = false;
                        for (int c = 0; c < returnValue.Length - 1; c++)
                        {
                            if (returnValue[a] == returnValue[c])
                            {
                                // Already Taken!
                                alreadyTaken = true;
                            }
                        }
                        if (!alreadyTaken)
                        {
                            break;
                        }
                        else
                        {
                            goto case "create";
                        }
                    }
                }
            Debug.Log(returnValue);
            return returnValue;
        }
        public static int GetRandomInt(int intCount)
        {
            int[] storage = new int[intCount];
            int returnValue = 0;
            for (int i = 0; i < intCount; i++)
            {
                storage[i] = (Mathf.FloorToInt(Random.Range(0, 9)) * (int)Mathf.Pow(10,i));
                returnValue += storage[i];
            }
            return returnValue;
        }
    }
}
 
     
    