public static GameObject Create(string name, int level)
        {
            UnitRecipe recipe = Resources.Load <UnitRecipe>("Unit Recipes/" + name);

            if (recipe == null)
            {
                Debug.LogError("No Unit Recipe for name: " + name);
                return(null);
            }
            return(Create(recipe, level));
        }
        public static GameObject Create(UnitRecipe recipe, int level)
        {
            GameObject obj = InstantiatePrefab("Units/" + recipe.model);

            obj.name = recipe.name;
            obj.AddComponent <Unit>();
            AddStats(obj);
            AddMovementType(obj, recipe.movementType);
            obj.AddComponent <Status>();
            obj.AddComponent <Equipment>();
            AddJob(obj, recipe.job);
            AddRank(obj, level);
            obj.AddComponent <Health>();
            obj.AddComponent <Mana>();
            AddAttack(obj, recipe.attack);
            AddAbilityCatalog(obj, recipe.abilityCatalog);
            AddAlliance(obj, recipe.alliance);
            AddAttackPattern(obj, recipe.strategy);
            return(obj);
        }