Example #1
0
 public static void OnInstantiate(Object obj)
 {
     Console.WriteLine($"Instantiated: {obj} ({obj.GetType().FullName})");
     if (obj is GameObject)
     {
         ModContentPatcher.PatchContentRecursive(((GameObject)obj).transform);
     }
     else if (obj is Component)
     {
         ModContentPatcher.PatchContentRecursive(((Component)obj).transform);
     }
 }
Example #2
0
        public static void Init()
        {
            if (IsInitialized)
            {
                return;
            }
            IsInitialized = true;

            Directory.CreateDirectory(ContentDirectory = Path.Combine(ModAPI.GameDirectory, "Content"));

            Directory.CreateDirectory(PatchesDirectory = Path.Combine(ContentDirectory, PatchesPrefix = "Patches"));
            PatchesPrefix += "/";

            Directory.CreateDirectory(TextsDirectory = Path.Combine(ContentDirectory, TextsPrefix = "Texts"));
            TextsPrefix += "/";

            Crawl(null, Assembly.GetExecutingAssembly());
            Crawl(null, ContentDirectory);

            OBJParser.StreamProvider = (s, type, path) => new StreamReader(GetMapped(path)?.Stream);

            ModContentHooks.Init();
            ModContentPatcher.Init();
        }