public FETextDecode()
 {
     this.ROM = Program.ROM;
     this.SystemTextEncoder = Program.SystemTextEncoder;
     this.PriorityCode      = PatchUtil.SearchPriorityCode();
     this.HasAutoNewLine    = PatchUtil.SearchAutoNewLinePatch();
 }
Exemple #2
0
        void LoadTextEscapeList()
        {
            this.EscapeList = new List <TextEscape>();
            string[] lines = File.ReadAllLines(U.ConfigDataFilename("text_escape_"));
            for (int i = 0; i < lines.Length; i++)
            {
                string line = lines[i];
                if (U.IsComment(line) || U.OtherLangLine(line))
                {
                    continue;
                }
                line = U.ClipComment(line);
                if (line == "")
                {
                    continue;
                }
                string[] sp = line.Split('\t');
                if (sp.Length < 3)
                {
                    continue;
                }
                TextEscape te = new TextEscape();
                te.Code     = sp[0];
                te.Info     = sp[1];
                te.Category = sp[2];

                if (!IsDetail)
                {//詳細テキストじゃないと、移動とロードを出さない.
                    if (IsDetailOnly(te.Category))
                    {
                        continue;
                    }
                }

                this.EscapeList.Add(te);
            }

            //自動改行
            if (PatchUtil.SearchAutoNewLinePatch() == PatchUtil.AutoNewLine_enum.AutoNewLine)
            {
                {
                    TextEscape te = new TextEscape();
                    te.Code     = "@0080@0090";
                    te.Info     = R._("AutoNewLine Conversation Text[ConversationText]");
                    te.Category = "";
                    this.EscapeList.Add(te);
                }
                {
                    TextEscape te = new TextEscape();
                    te.Code     = "@0080@0091";
                    te.Info     = R._("AutoNewLine Battle Text[BattleText]");
                    te.Category = "";
                    this.EscapeList.Add(te);
                }
            }
        }
Exemple #3
0
        static bool isEscapeCode(uint code, uint beforecode)
        {
            if (beforecode == 0x0010 ||
                beforecode == 0x0011 ||
                beforecode == 0x0080 ||
                code <= 0x001F ||
                (code >= 0x0080 && code <= 0x0F00)
                )
            {
                return(true);
            }

            if (PatchUtil.SearchAutoNewLinePatch() == PatchUtil.AutoNewLine_enum.AutoNewLine)
            {
                if (code == 0x90 || code == 0x91)
                {//AutoNewLine Code
                    return(true);
                }
            }
            return(false);
        }