コード例 #1
0
    public void displayNextSentence()       //continue button
    {
        if (talking && keyActivated)
        {
            keyActivated = false;
            Name.text    = "";
            text.text    = "";
            //       theAudio.Play(enterSound);

            StopAllCoroutines();

            if (xdia.current.answers.Count != 0)     //선택지
            {
                enddia = enum1.choice;
                ExitDialogue();
            }

            else
            {
                if (xdia.current.hasOutput())       //대화 진행
                {
                    xdia.AnswerQuestion(0);
                    StartCoroutine(StartDialogueCoroutine());
                }
                else    //대화 끝
                {
                    ExitDialogue();
                }
            }
        }
    }
コード例 #2
0
    public void ExitDialogue()
    {
        Name.text = "";
        text.text = "";

        animDialogueWindow.SetBool("appear", false);
        talking = false;

        switch (enddia)
        {
        case enum1.roul:        //룰렛
            if (gm.roul != null)
            {
                roul = gm.roul;
                roul.SetActive(true);
                StartCoroutine(gm.roul.GetComponent <Roulette>().Roll());
            }
            break;

        case enum1.choice:      //선택지
            theChoice.triggerChoice(xdia.current);
            break;

        case enum1.ending:      //엔딩
            break;

        default:
            gm.changedia();        //대화 끝
            break;
        }

        enddia = 0;
    }
コード例 #3
0
        static void Main(string[] args)
        {
            Label.Checkpoint("init", "values_test", () => {
                Context.Prepare();
                Context.WasEntryPointHit();
                Context.EnableBreakpoint("bp");
                Context.Continue();
            });

            // Note, we test for same behaviour as MS vsdbg have.

            enum1 enum1_test0 = (enum1)0;                 // check for wrong code logic, result = 0 - out of enumeration
            enum1 enum1_test1 = enum1.read;
            enum1 enum1_test2 = enum1.write;
            enum1 enum1_test3 = enum1.append;
            enum1 enum1_test4 = enum1.read & enum1.write; // check for wrong code logic, result = 0
            enum1 enum1_test5 = enum1.read | enum1.write; // check for wrong code logic, result = append - not flags enumeration can't be OR-ed
            enum1 enum1_test6 = (enum1)101;               // check for wrong code logic, result = 101 - out of enumeration

            enum2 enum2_test0 = (enum2)0;                 // result = None
            enum2 enum2_test1 = enum2.read;
            enum2 enum2_test2 = enum2.write;
            enum2 enum2_test3 = enum2.append;
            enum2 enum2_test4 = enum2.read & enum2.write; // check for wrong code logic, result = None
            enum2 enum2_test5 = enum2.read | enum2.write; // check for wrong code logic, result = append - not flags enumeration can't be OR-ed
            enum2 enum2_test6 = (enum2)101;               // check for wrong code logic, result = 101 - out of enumeration

            enum3 enum3_test0 = (enum3)0;                 // check for wrong code logic, result = 0 - out of enumeration
            enum3 enum3_test1 = enum3.read;
            enum3 enum3_test2 = enum3.write;
            enum3 enum3_test3 = enum3.append;
            enum3 enum3_test4 = enum3.read & enum3.write;                // check for wrong code logic, result = 0 - out of enumeration
            enum3 enum3_test5 = enum3.read | enum3.write | enum3.append; // check that debugger care about enum sequence in case of flags attribute, result = read | write | append
            enum3 enum3_test6 = (enum3)101;                              // check for wrong code logic, result = 101 - out of enumeration

            enum4 enum4_test0 = (enum4)0;                                // result = None
            enum4 enum4_test1 = enum4.read;
            enum4 enum4_test2 = enum4.write;
            enum4 enum4_test3 = enum4.append;
            enum4 enum4_test4 = enum4.read & enum4.write;                // check for wrong code logic, result = None
            enum4 enum4_test5 = enum4.read | enum4.write | enum4.append; // check that debugger care about enum sequence in case of flags attribute, result = read | write | append
            enum4 enum4_test6 = (enum4)101;                              // check for wrong code logic, result = 101 - out of enumeration

            enum5 enum5_test1 = enum5.append;                            // check that debugger care about enum sequence in case of flags attribute, result = append
            enum5 enum5_test2 = enum5.read | enum5.write;                // check that debugger care about enum sequence in case of flags attribute, result = append
            enum5 enum5_test3 = enum5.write | enum5.read;                // check that debugger care about enum sequence in case of flags attribute, result = append

            enum6 enum6_test1 = enum6.append;                            // check that debugger care about enum sequence in case of flags attribute, result = append
            enum6 enum6_test2 = enum6.read | enum6.write;                // check that debugger care about enum sequence in case of flags attribute, result = append
            enum6 enum6_test3 = enum6.write | enum6.read;                // check that debugger care about enum sequence in case of flags attribute, result = append

            enum7 enum7_test1 = enum7.read;
            enum7 enum7_test2 = enum7.write;

            enum8 enum8_test1 = enum8.read;
            enum8 enum8_test2 = enum8.write;

            enum9 enum9_test1 = enum9.read;
            enum9 enum9_test2 = enum9.write;

            enum10 enum10_test1 = enum10.read;
            enum10 enum10_test2 = enum10.write;

            Console.WriteLine("A breakpoint \"bp\" is set on this line"); Label.Breakpoint("bp");

            Label.Checkpoint("values_test", "finish", () => {
                Context.WasBreakpointHit(DebuggeeInfo.Breakpoints["bp"]);

                Context.CheckEnum("enum1_test0", "0");
                Context.CheckEnum("enum1_test1", "read");
                Context.CheckEnum("enum1_test2", "write");
                Context.CheckEnum("enum1_test3", "append");
                Context.CheckEnum("enum1_test4", "0");
                Context.CheckEnum("enum1_test5", "append");
                Context.CheckEnum("enum1_test6", "101");

                Context.CheckEnum("enum2_test0", "None");
                Context.CheckEnum("enum2_test1", "read");
                Context.CheckEnum("enum2_test2", "write");
                Context.CheckEnum("enum2_test3", "append");
                Context.CheckEnum("enum2_test4", "None");
                Context.CheckEnum("enum2_test5", "append");
                Context.CheckEnum("enum2_test6", "101");

                Context.CheckEnum("enum3_test0", "0");
                Context.CheckEnum("enum3_test1", "read");
                Context.CheckEnum("enum3_test2", "write");
                Context.CheckEnum("enum3_test3", "append");
                Context.CheckEnum("enum3_test4", "0");
                Context.CheckEnum("enum3_test5", "read | write | append");
                Context.CheckEnum("enum3_test6", "101");

                Context.CheckEnum("enum4_test0", "None");
                Context.CheckEnum("enum4_test1", "read");
                Context.CheckEnum("enum4_test2", "write");
                Context.CheckEnum("enum4_test3", "append");
                Context.CheckEnum("enum4_test4", "None");
                Context.CheckEnum("enum4_test5", "read | write | append");
                Context.CheckEnum("enum4_test6", "101");

                Context.CheckEnum("enum5_test1", "append");
                Context.CheckEnum("enum5_test2", "append");
                Context.CheckEnum("enum5_test3", "append");

                Context.CheckEnum("enum6_test1", "append");
                Context.CheckEnum("enum6_test2", "append");
                Context.CheckEnum("enum6_test3", "append");

                Context.CheckEnum("enum7_test1", "read");
                Context.CheckEnum("enum7_test2", "write");

                Context.CheckEnum("enum8_test1", "read");
                Context.CheckEnum("enum8_test2", "write");

                Context.CheckEnum("enum9_test1", "read");
                Context.CheckEnum("enum9_test2", "write");

                Context.CheckEnum("enum10_test1", "read");
                Context.CheckEnum("enum10_test2", "write");

                Context.Continue();
            });

            Label.Checkpoint("finish", "", () => {
                Context.WasExit();
                Context.DebuggerExit();
            });
        }
コード例 #4
0
        static void Main(string[] args)
        {
            Label.Checkpoint("init", "values_test", (Object context) => {
                Context Context = (Context)context;
                Context.PrepareStart(@"__FILE__:__LINE__");
                Context.AddBreakpoint(@"__FILE__:__LINE__", "bp");
                Context.SetBreakpoints(@"__FILE__:__LINE__");
                Context.PrepareEnd(@"__FILE__:__LINE__");
                Context.WasEntryPointHit(@"__FILE__:__LINE__");
                Context.Continue(@"__FILE__:__LINE__");
            });

            // Note, we test for same behaviour as MS vsdbg have.

            enum1 enum1_test0 = (enum1)0;                 // check for wrong code logic, result = 0 - out of enumeration
            enum1 enum1_test1 = enum1.read;
            enum1 enum1_test2 = enum1.write;
            enum1 enum1_test3 = enum1.append;
            enum1 enum1_test4 = enum1.read & enum1.write; // check for wrong code logic, result = 0
            enum1 enum1_test5 = enum1.read | enum1.write; // check for wrong code logic, result = append - not flags enumeration can't be OR-ed
            enum1 enum1_test6 = (enum1)101;               // check for wrong code logic, result = 101 - out of enumeration

            enum2 enum2_test0 = (enum2)0;                 // result = None
            enum2 enum2_test1 = enum2.read;
            enum2 enum2_test2 = enum2.write;
            enum2 enum2_test3 = enum2.append;
            enum2 enum2_test4 = enum2.read & enum2.write; // check for wrong code logic, result = None
            enum2 enum2_test5 = enum2.read | enum2.write; // check for wrong code logic, result = append - not flags enumeration can't be OR-ed
            enum2 enum2_test6 = (enum2)101;               // check for wrong code logic, result = 101 - out of enumeration

            enum3 enum3_test0 = (enum3)0;                 // check for wrong code logic, result = 0 - out of enumeration
            enum3 enum3_test1 = enum3.read;
            enum3 enum3_test2 = enum3.write;
            enum3 enum3_test3 = enum3.append;
            enum3 enum3_test4 = enum3.read & enum3.write;                // check for wrong code logic, result = 0 - out of enumeration
            enum3 enum3_test5 = enum3.read | enum3.write | enum3.append; // check that debugger care about enum sequence in case of flags attribute, result = read | write | append
            enum3 enum3_test6 = (enum3)101;                              // check for wrong code logic, result = 101 - out of enumeration

            enum4 enum4_test0 = (enum4)0;                                // result = None
            enum4 enum4_test1 = enum4.read;
            enum4 enum4_test2 = enum4.write;
            enum4 enum4_test3 = enum4.append;
            enum4 enum4_test4 = enum4.read & enum4.write;                // check for wrong code logic, result = None
            enum4 enum4_test5 = enum4.read | enum4.write | enum4.append; // check that debugger care about enum sequence in case of flags attribute, result = read | write | append
            enum4 enum4_test6 = (enum4)101;                              // check for wrong code logic, result = 101 - out of enumeration

            enum5 enum5_test1 = enum5.append;                            // check that debugger care about enum sequence in case of flags attribute, result = append
            enum5 enum5_test2 = enum5.read | enum5.write;                // check that debugger care about enum sequence in case of flags attribute, result = append
            enum5 enum5_test3 = enum5.write | enum5.read;                // check that debugger care about enum sequence in case of flags attribute, result = append

            enum6 enum6_test1 = enum6.append;                            // check that debugger care about enum sequence in case of flags attribute, result = append
            enum6 enum6_test2 = enum6.read | enum6.write;                // check that debugger care about enum sequence in case of flags attribute, result = append
            enum6 enum6_test3 = enum6.write | enum6.read;                // check that debugger care about enum sequence in case of flags attribute, result = append

            enum7 enum7_test1 = enum7.read;
            enum7 enum7_test2 = enum7.write;

            enum8 enum8_test1 = enum8.read;
            enum8 enum8_test2 = enum8.write;

            enum9 enum9_test1 = enum9.read;
            enum9 enum9_test2 = enum9.write;

            enum10 enum10_test1 = enum10.read;
            enum10 enum10_test2 = enum10.write;

            Console.WriteLine("A breakpoint \"bp\" is set on this line"); Label.Breakpoint("bp");

            Label.Checkpoint("values_test", "finish", (Object context) => {
                Context Context = (Context)context;
                Context.WasBreakpointHit(@"__FILE__:__LINE__", "bp");

                Int64 frameId = Context.DetectFrameId(@"__FILE__:__LINE__", "bp");
                VariablesResponse variablesResponse = Context.GetLocalVariables(@"__FILE__:__LINE__", frameId);

                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum1_test0", "0");
                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum1_test1", "read");
                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum1_test2", "write");
                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum1_test3", "append");
                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum1_test4", "0");
                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum1_test5", "append");
                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum1_test6", "101");

                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum2_test0", "None");
                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum2_test1", "read");
                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum2_test2", "write");
                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum2_test3", "append");
                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum2_test4", "None");
                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum2_test5", "append");
                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum2_test6", "101");

                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum3_test0", "0");
                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum3_test1", "read");
                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum3_test2", "write");
                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum3_test3", "append");
                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum3_test4", "0");
                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum3_test5", "read | write | append");
                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum3_test6", "101");

                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum4_test0", "None");
                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum4_test1", "read");
                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum4_test2", "write");
                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum4_test3", "append");
                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum4_test4", "None");
                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum4_test5", "read | write | append");
                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum4_test6", "101");

                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum5_test1", "append");
                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum5_test2", "append");
                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum5_test3", "append");

                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum6_test1", "append");
                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum6_test2", "append");
                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum6_test3", "append");

                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum7_test1", "read");
                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum7_test2", "write");

                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum8_test1", "read");
                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum8_test2", "write");

                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum9_test1", "read");
                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum9_test2", "write");

                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum10_test1", "read");
                Context.CheckEnum(@"__FILE__:__LINE__", variablesResponse, "enum10_test2", "write");

                Context.Continue(@"__FILE__:__LINE__");
            });

            Label.Checkpoint("finish", "", (Object context) => {
                Context Context = (Context)context;
                Context.WasExit(@"__FILE__:__LINE__");
                Context.DebuggerExit(@"__FILE__:__LINE__");
            });
        }
コード例 #5
0
    IEnumerator StartDialogueCoroutine()
    {
        if (xdia.current.changeUI)  //스탯이 바뀌었을 경우
        {
            for (int i = 0; i < 5; i++)
            {
                p.changeShowtext();         //스탯창 스탯 변경
            }
        }

        if (xdia.current.changeimage)   //배경 이미지 바꾸기
        {
            talking = false;
            animDialogueWindow.SetBool("appear", false);

            ScreenManager.isfinished2 = false;
            StartCoroutine(thescreen.SpritechangeCoroutine(xdia.current.spritename));
            yield return(new WaitUntil(() => ScreenManager.isfinished2));

            yield return(new WaitForSeconds(1f));

            animDialogueWindow.SetBool("appear", true);
            talking = true;
        }

        if (xdia.current.perce)
        {
            xdia.current.Randomnode();
        }

        if (xdia.current.stop)
        {
            yield return(new WaitUntil(() => Time.timeScale == 1));
        }

        if (xdia.current.text == ".")
        {
            enddia = enum1.enddialog;
        }
        else if (xdia.current.roulette)
        {
            enddia = enum1.roul;
        }
        else if (xdia.current.text == "end")
        {
            enddia = enum1.ending;
        }
        else
        {
            enddia = enum1.d;
        }

        if (enddia > 0)
        {
            ExitDialogue();
        }

        else
        {
            if (xdia.current.character.name == "blank")
            {
                Name.text = "";
            }
            else
            {
                Name.text += xdia.current.character.name;
            }

            for (int i = 0; i < xdia.current.text.Length; i++)
            {
                text.text += xdia.current.text[i]; // 1글자씩 출력.
                if (i % 7 == 1)
                {
                    //                theAudio.Play(typeSound);
                }
                yield return(new WaitForSeconds(0.01f));
            }
            keyActivated = true;
        }
    }