コード例 #1
0
ファイル: CodeGen.cs プロジェクト: YgorCastor/aegis2cronus
        private void GenHWarp(AegisHiddenWarp ai)
        {
            curNpc = ai;

            if (ai.spanx != "0" || ai.spany != "0")
            {
                WriteNewLine("{0},{1},{2},{3}\tscript\t{4}\t{5},{6},{7},{8}", ai.MapName, ai.x, ai.y, 0, ai.name, "-1",
                             ai.spanx, ai.spany, "{");
            }
            else
            {
                WriteNewLine("{0},{1},{2},{3}\tscript\t{4}\t{5},{6}", ai.MapName, ai.x, ai.y, 0, ai.name, "-1", "{");
            }

            foreach (AegisLabel al in ai.Items)
            {
                if (al.Name == "OnClick")
                {
                    GenLabel(al);
                    break;
                }
            }

            foreach (AegisLabel al in ai.Items)
            {
                if (al.Name == "OnClick")
                {
                    continue;
                }

                GenLabel(al);
            }

            WriteNewLine("{0}\n", "}");
        }
コード例 #2
0
ファイル: Parser.cs プロジェクト: YgorCastor/aegis2cronus
        private AegisItem MatchHiddenWarp()
        {
            var an = new AegisHiddenWarp();

            Match(TokenType.hiddenwarp);

            an.MapName = MatchString();
            an.name    = MatchString();
            an.x       = MatchNumber();
            an.y       = MatchNumber();
            an.spanx   = MatchNumber();
            an.spany   = MatchNumber();
            if (tk.Type == TokenType.DecLiteral)
            {
                an.unknow = MatchNumber();
            }
            PushNode(an);

            MatchNewline();

            while (tk.Type == TokenType.Label)
            {
                MatchNewline();
                curNode.Items.Add(MatchLabel());
                MatchNewline();
            }

            an = (AegisHiddenWarp)PopNode();
            return(an);
        }