示例#1
0
        private static void OnTexLoaded(ref TextureResource __result,
                                        AFileSystemBase f_fileSystem,
                                        string f_strFileName,
                                        bool usePoolBuffer)
        {
            if (!Configuration.TextureReplacement.DumpTextures.Value ||
                Configuration.TextureReplacement.SkipDumpingCMTextures.Value)
            {
                return;
            }
            var tex = __result.CreateTexture2D();

            Core.TextureReplace.DumpTexture(Path.GetFileNameWithoutExtension(f_strFileName), tex);
        }
 public static void CrossFade(string filename, AFileSystemBase fileSystem, bool additive = false, bool loop = false, bool boAddQue = false, float fade = 0.5f, float weight = 1f)
 {
     if (config["CrossFade", false])
     {
         MyLog.LogMessage("TBody.CrossFade1"
                          , filename
                          , additive
                          , loop
                          , boAddQue
                          , fade
                          , weight
                          );
     }
 }
示例#3
0
 public static bool ImportCM_LoadTexture(out TextureResource result, AFileSystemBase fileSystem, string name)
 {
     try
     {
         name = name.Replace(".tex", "");
         var args = new TextureTranslationEventArgs(name, TextureType.Arc);
         ArcTextureTranslation?.Invoke(null, args);
         result = args.Translation;
         return(args.Translation != null);
     }
     catch (Exception ex)
     {
         Logger.Log(LogLevel.Error, ex);
         throw;
     }
 }
示例#4
0
        private static bool LoadTexture(ref TextureResource __result,
                                        AFileSystemBase f_fileSystem,
                                        string f_strFileName,
                                        bool usePoolBuffer)
        {
            var fileName = Path.GetFileNameWithoutExtension(f_strFileName);

            if (string.IsNullOrEmpty(fileName))
            {
                return(true);
            }

            var skipLogging = true;

            if (Configuration.TextureReplacement.VerboseLogging.Value && previousTexName != f_strFileName)
            {
                Core.Logger.LogInfo($"[COM3D2_TEX] {f_strFileName}");
                previousTexName = f_strFileName;
                skipLogging     = false;
            }

            var newTex = Core.TextureReplace.GetReplacementTextureBytes(fileName, "tex", skipLogging);

            if (newTex == null)
            {
                return(true);
            }

            if (Configuration.TextureReplacement.VerboseLogging.Value)
            {
                Core.Logger.LogInfo($"Replacing {f_strFileName}");
            }

            __result = new TextureResource(1, 1, TextureFormat.ARGB32, __result?.uvRects, newTex);

            return(false);
        }
示例#5
0
 public static bool OnArcTextureLoadEx(out TextureResource result, AFileSystemBase fileSystem, string name) =>
 OnArcTextureLoad(out result, name);