Esempio n. 1
0
    public static CharacterListControler LoadCharacters()
    {
        CharacterListControler characters = new CharacterListControler();

        characters.SetEnemyDictionaryAsList(LoadEnemy());
        characters.SetNpcDictionaryAsList(LoadNPC());
        characters.SetPlayerDictionaryAsList(LoadPlayer());
        return(characters);
    }
Esempio n. 2
0
File: Data.cs Progetto: vpdh98/PEO
    public Scenario()              //지금은 choice생성할때 SelectText,OnlyShowText중 하나라도 없으면 실행 불가
    {
        CharacterListControler characterList = new CharacterListControler();

        clikX = 15;
        clikY = 7;
        choices.Add(new Choice()
        {
            Name       = "c1",
            SelectText = new List <TextAndPosition>()                            //프로퍼티를 통한 초기화 생성자가 먼저 호출된다, 이게되네
            {
                new TextAndPosition(200, "Start", 13 + clikX, 5 + clikY, true)
                {
                    PriorityLayer = 3
                },
                new TextAndPosition(200, "Exit", 13 + clikX, 6 + clikY, true)
                {
                    PriorityLayer = 4
                },
                new TextAndPosition(200, "옵션", 13 + clikX, 7 + clikY, true)
                {
                    PriorityLayer = 5
                }
            },
            OnlyShowText = new List <TextAndPosition>()
            {
                new TextAndPosition("The Colorless", 10 + clikX, 3 + clikY, 10, ConsoleColor.Green)
                {
                    PriorityLayer = 1
                },
                new TextAndPosition("개발:Peo", 1, 1, 100)
                {
                    PriorityLayer = 2
                }
            },
            IndicateChoice = new Dictionary <int, Object>()
            {
                { 0, "c2" }, { 1, "test" }, { 2, "option" }
            },
            BackgroundTextName = "base",
            IsSavePoint        = true,
            IsShowStateWindow  = false
        });

        clikX = 20;
        clikY = 7;
        choices.Add(new Choice()
        {
            Name       = "testStream",
            SelectText = new List <TextAndPosition>()                            //프로퍼티를 통한 초기화 생성자가 먼저 호출된다, 이게되네
            {
                new TextAndPosition(200, "Start", 10 + clikX, 5 + clikY, true)
                {
                    PriorityLayer = 4
                },
                new TextAndPosition(200, "Exit", 10 + clikX, 6 + clikY, true)
                {
                    PriorityLayer = 5
                },
                new TextAndPosition(200, "옵션", 10 + clikX, 7 + clikY, true)
                {
                    PriorityLayer = 6
                }
            },
            OnlyShowText = new List <TextAndPosition>()
            {
                new TextAndPosition(1000, "개발:Peo", 1, 1)
                {
                    PriorityLayer = 3
                }
            },
            StreamText = new List <TextAndPosition>()
            {
                new TextAndPosition("한 용사가 있었다.", 5 + clikX, 3 + clikY, 30)
                {
                    PriorityLayer = 1
                },
                new TextAndPosition(1000, "하지만 그는 죽었다.", 5 + clikX, 3 + clikY, 30, ConsoleColor.Red)
                {
                    PriorityLayer = 2
                }
            },
            IndicateChoice = new Dictionary <int, Object>()
            {
                { 0, "c2" }, { 1, "test" }, { 2, "option" }
            },
            BackgroundTextName = "base"
        });

        choices.Add(new Choice()
        {
            Name       = "option",
            SelectText = new List <TextAndPosition>()                            //프로퍼티를 통한 초기화 생성자가 먼저 호출된다, 이게되네
            {
                new TextAndPosition(200, "Start", 10, 5, true)
                {
                    PriorityLayer = 2
                },
                new TextAndPosition(200, "Exit", 10, 6, true)
                {
                    PriorityLayer = 3
                }
            },
            OnlyShowText = new List <TextAndPosition>()
            {
                new TextAndPosition("옵션은 없다.", 5, 3, 30)
                {
                    PriorityLayer = 1
                }
            },
            IndicateChoice = new Dictionary <int, Object>()
            {
                { 0, "c2" }, { 1, "exit" }
            },
            BackgroundTextName = "base"
        });

        choices.Add(new Choice()
        {
            Name          = "exit",
            ChoiceType    = ChoiceType.QUICK,
            QuickDelegate = "Exit"
        });

        choices.Add(new Choice()
        {
            Name         = "test",
            ChoiceType   = ChoiceType.QUICKNEXT,
            OnlyShowText = new List <TextAndPosition>()
            {
                new TextAndPosition("나 갈 수 없 다", 24, 10, 100, ConsoleColor.Red)
                {
                    PriorityLayer = 1
                }
            },
            IndicateChoice = new Dictionary <int, Object>()
            {
                { 0, "c2" }
            },
            BackgroundTextName = "base"
        });

        clikX = 15;
        clikY = 5;
        choices.Add(new Choice()
        {
            Name       = "c2",
            SelectText = new List <TextAndPosition>()                            //프로퍼티를 통한 초기화 생성자가 먼저 호출된다, 이게되네
            {
                new TextAndPosition("오른쪽", 1, 19, true),
                new TextAndPosition("가만히 있는다", 7 + clikX, 8 + clikY, true),
                new TextAndPosition("아앗.", 7 + clikX, 9 + clikY, true),
                new TextAndPosition("문이 하나 보인다.", 7 + clikX, 10 + clikY, true),
                new TextAndPosition("왼쪽", 56, 19, true)
            },
            OnlyShowText = new List <TextAndPosition>()
            {
                new TextAndPosition("용사는 길을 나섰다.", 7 + clikX, 3 + clikY, 1),
                new TextAndPosition("울창한 숲.", 7 + clikX, 2 + clikY, 1)
            },
            ReturnText = new List <TextAndPosition>()
            {
                new TextAndPosition("여전히 울창한 숲.", 7 + clikX, 2 + clikY, 1)
            },
            IndicateChoice = new Dictionary <int, Object>()
            {
                { 0, "c2-right" }, { 1, "testStream" }, { 2, "c2" }, { 3, "gyeongminsHouse" }, { 4, "village" }
            },
            EnemyList = new List <Enemy>()
            {
                characterList.GetEnemy("슬라임"),
                characterList.GetEnemy("뒤틀린 망자"),
                characterList.GetEnemy("헐크")
            },
            BackgroundTextName = "forest2"
        });

        clikX = 15;
        clikY = 5;
        choices.Add(new Choice()
        {
            Name       = "village",
            SelectText = new List <TextAndPosition>()                            //프로퍼티를 통한 초기화 생성자가 먼저 호출된다, 이게되네
            {
                new TextAndPosition("누가 서있다", 7 + clikX, 8 + clikY, true),
                new TextAndPosition("돌아간다.", 1, 19, true)
            },
            OnlyShowText = new List <TextAndPosition>()
            {
                new TextAndPosition("작은 마을이다.", 7 + clikX, 3 + clikY, 1),
                new TextAndPosition("인기척이 거의 느껴지지 않는다.", 7 + clikX, 2 + clikY, 1)
            },
            ReturnText = new List <TextAndPosition>()
            {
                new TextAndPosition("서늘한 공기에 햇살이 따스한 마을.", 7 + clikX, 2 + clikY, 1)
            },
            IndicateChoice = new Dictionary <int, Object>()
            {
                { 0, "촌장" }, { 1, "c2" }
            },
            BackgroundTextName = "base"
        });



        clikX = 15;
        clikY = 5;
        choices.Add(new Choice()
        {
            Name       = "gyeongminsHouse",
            SelectText = new List <TextAndPosition>()                            //프로퍼티를 통한 초기화 생성자가 먼저 호출된다, 이게되네
            {
                new TextAndPosition("방으로 들어간다.", 7 + clikX, 8 + clikY, true)
            },
            OnlyShowText = new List <TextAndPosition>()
            {
                new TextAndPosition("문을 지나가니 쾅! 소리와 함께 문이 닫혔다.", 7 + clikX, 3 + clikY, 1)
                {
                    AlignH = true
                },
                new TextAndPosition("여긴 어디지..?", 7 + clikX, 4 + clikY, 1)
                {
                    AlignH = true
                },
                new TextAndPosition("주변에 온통 음식물이 흩어져 있다.", 7 + clikX, 5 + clikY, 1)
                {
                    AlignH = true
                }
            },
            ReturnText = new List <TextAndPosition>()
            {
                new TextAndPosition("무엇인가 근처를 흟고 다닌 흔적이 있다.", 7 + clikX, 3 + clikY, 1)
                {
                    AlignH = true
                }
            },
            IndicateChoice = new Dictionary <int, Object>()
            {
                { 0, "gyeongminsHouse_Room" }
            },
            BackgroundTextName = "background9"
        });

        clikX = 23;
        clikY = 7;
        choices.Add(new Choice()
        {
            Name       = "gyeongminsHouse_Room",
            SelectText = new List <TextAndPosition>()
            {
                new TextAndPosition("방을 나간다.", 26 + clikX, 12 + clikY, true)
                {
                    PriorityLayer = 2
                }
            },
            StreamText = new List <TextAndPosition>()
            {
                new TextAndPosition("평범한 방.", 5 + clikX, 3 + clikY, 10)
                {
                    PriorityLayer = 1
                },
                new TextAndPosition(1000, "방 밖에서 인기척이 느껴진다.", 5 + clikX, 3 + clikY, 10, ConsoleColor.Red)
                {
                    PriorityLayer = 1, AlignH = true
                }
            },
            ReturnText = new List <TextAndPosition>()
            {
                new TextAndPosition("방안에는 차가운 냉기만이 흐른다.", 5 + clikX, 3 + clikY, 10)
                {
                    PriorityLayer = 1, AlignH = true
                }
            },
            IndicateChoice = new Dictionary <int, Object>()
            {
                { 0, "spawnGyeonmin" }
            },
            BackgroundTextName = "base"
        });

        choices.Add(new Choice()
        {
            Name           = "spawnGyeonmin",
            ChoiceType     = ChoiceType.QUICK,
            QuickDelegate  = "spawnGyeonmin",
            IndicateChoice = new Dictionary <int, Object>()
            {
                { 0, "gyeongminsHouse" }
            }
        });

        clikX = 23;
        clikY = 7;
        choices.Add(new Choice()
        {
            Name       = "c2-right",
            SelectText = new List <TextAndPosition>()
            {
                new TextAndPosition("다시시작", 30 + clikX, 12 + clikY, true)
                {
                    PriorityLayer = 2
                }
            },
            StreamText = new List <TextAndPosition>()
            {
                new TextAndPosition("함정이였다.", 5 + clikX, 3 + clikY, 10)
                {
                    PriorityLayer = 1
                },
                new TextAndPosition(1000, "You Died", 5 + clikX, 3 + clikY, 10, ConsoleColor.Red)
                {
                    PriorityLayer = 1
                }
            },
            IndicateChoice = new Dictionary <int, Object>()
            {
                { 0, "testStream" }
            },
            BackgroundTextName = "base"
        });

        /*
         * choices.Add(new Choice(){
         *      Name = "QuickNext-test",
         *      ChoiceType = ChoiceType.QUICKNEXT,
         *      SelectText = new List<TextAndPosition>()
         *                              {new TextAndPosition("다시시작",12+clikX,7+clikY,true){PriorityLayer = 2}},
         *      StreamText = new List<TextAndPosition>()
         *                              {new TextAndPosition("함정이였다.",5+clikX,3+clikY,10){PriorityLayer = 1},
         *                              new TextAndPosition(1000,"You Died",5+clikX,3+clikY,10,ConsoleColor.Red){PriorityLayer = 1}},
         *      IndicateChoice = new Dictionary<int,String>(){{0,"c2"}},
         *      BackgroundText = backgrounds.GetBackground(0)
         * });
         */

        clikX = 15;
        clikY = 5;
        choices.Add(new Choice()
        {
            Name       = "t0827-1",
            SelectText = new List <TextAndPosition>()                            //프로퍼티를 통한 초기화 생성자가 먼저 호출된다, 이게되네
            {
                new TextAndPosition("오른쪽", 1, 19, true),
                new TextAndPosition("왼쪽", 56, 19, true)
            },
            OnlyShowText = new List <TextAndPosition>()
            {
                new TextAndPosition("Test 1", 7 + clikX, 3 + clikY, 1),
                new TextAndPosition("이것은 테스트 화면입니다.", 7 + clikX, 4 + clikY, 50),
                new TextAndPosition("울창한 숲.", 7 + clikX, 2 + clikY, 1)
            },
            ReturnText = new List <TextAndPosition>()
            {
                new TextAndPosition("여전히 울창한 숲.", 7 + clikX, 2 + clikY, 1)
            },
            IndicateChoice = new Dictionary <int, Object>()
            {
                { 0, "t0827-1" }, { 1, "t0827-2" }
            },

            EnemyList = new List <Enemy>()
            {
                characterList.GetEnemy("슬라임"),
                characterList.GetEnemy("뒤틀린 망자")
            },
            BackgroundTextName = "base"
        });

        clikX = 15;
        clikY = 5;
        choices.Add(new Choice()
        {
            Name       = "t0827-2",
            SelectText = new List <TextAndPosition>()                            //프로퍼티를 통한 초기화 생성자가 먼저 호출된다, 이게되네
            {
                new TextAndPosition("오른쪽", 1, 19, true),
                new TextAndPosition("왼쪽", 56, 19, true)
            },
            OnlyShowText = new List <TextAndPosition>()
            {
                new TextAndPosition("Test 2", 7 + clikX, 3 + clikY, 1),
                new TextAndPosition("이것은 테스트 화면입니다.", 7 + clikX, 4 + clikY, 50),
                new TextAndPosition("울창한 숲.", 7 + clikX, 2 + clikY, 1)
            },
            ReturnText = new List <TextAndPosition>()
            {
                new TextAndPosition("여전히 울창한 숲.", 7 + clikX, 2 + clikY, 1)
            },
            IndicateChoice = new Dictionary <int, Object>()
            {
                { 0, "t0827-1" }, { 1, "t0827-2" }
            },

            EnemyList = new List <Enemy>()
            {
                characterList.GetEnemy("슬라임"),
                characterList.GetEnemy("뒤틀린 망자")
            },
            BackgroundTextName = "base"
        });

        clikX = 15;
        clikY = 5;
        choices.Add(new Choice()
        {
            Name       = "t0828-1",
            SelectText = new List <TextAndPosition>()                            //프로퍼티를 통한 초기화 생성자가 먼저 호출된다, 이게되네
            {
                new TextAndPosition("오른쪽", 1, 19, true),
                new TextAndPosition("왼쪽", 56, 19, true)
            },
            OnlyShowText = new List <TextAndPosition>()
            {
                new TextAndPosition("Test 2", 7 + clikX, 3 + clikY, 1),
                new TextAndPosition("이것은 테스트 화면입니다.", 7 + clikX, 4 + clikY, 50),
                new TextAndPosition("울창한 숲.", 7 + clikX, 2 + clikY, 1)
            },
            ReturnText = new List <TextAndPosition>()
            {
                new TextAndPosition("여전히 울창한 숲.", 7 + clikX, 2 + clikY, 1)
            },
            IndicateChoice = new Dictionary <int, Object>()
            {
                { 0, "t0828-1" }, { 1, "t0828-1" }
            },

            EnemyList = new List <Enemy>()
            {
                characterList.GetEnemy("슬라임"),
                characterList.GetEnemy("뒤틀린 망자")
            },
            BackgroundTextName = "base"
        });

        choices.Add(new Choice()
        {
            Name       = "firstPhase",
            SelectText = new List <TextAndPosition>()
            {
                new TextAndPosition("공격한다.", 16, 13, true),
                new TextAndPosition("도망친다.", 40, 13, true)
            },
            OnlyShowText = new List <TextAndPosition>()
            {
                new TextAndPosition("globerEnemy.GetRandomSpawnMessage().text", 15, 3 + 5, 1)
                {
                    AlignH = true
                }
            },
            IndicateChoice = new Dictionary <int, Object>()
            {
                { 0, "movePhase" }, { 1, "end" }
            },
            BackgroundTextName = "battle"
        });
        choices.Add(new Choice()
        {
            Name       = "movePhase",
            SelectText = new List <TextAndPosition>()
            {
                new TextAndPosition("공격", 16, 13, true),
                new TextAndPosition("방어", 28, 13, true),
                new TextAndPosition("회피", 40, 13, true)
            },
            OnlyShowText = new List <TextAndPosition>()
            {
                new TextAndPosition("globerEnemy.CurrentState()", 15, 3 + 5, 1)
                {
                    AlignH = true
                }
            },
            IndicateChoice = new Dictionary <int, Object>()
            {
                { 0, "attackPhase" }, { 1, "block" }, { 2, "dodge" }
            },
            BackgroundTextName = "battle"
        });
        choices.Add(new Choice()
        {
            Name         = "attackPhase",
            ChoiceType   = ChoiceType.QUICKNEXT,
            OnlyShowText = new List <TextAndPosition>()
            {
                new TextAndPosition("globerEnemy.Name" + "베기!", 5, 10, 10, ConsoleColor.Red)
                {
                    AlignH = true, PriorityLayer = 1
                }
            },
            IndicateChoice = new Dictionary <int, Object>()
            {
                { 0, "reactionPhase" }
            },
            BackgroundTextName = "battle"
        });
        choices.Add(new Choice()
        {
            Name         = "reactionPhase",
            ChoiceType   = ChoiceType.QUICKNEXT,
            OnlyShowText = new List <TextAndPosition>()
            {
                new TextAndPosition("(몬스터 피해 메세지)", 5, 10, 10)
                {
                    AlignH = true, PriorityLayer = 1
                }
            },
            IndicateChoice = new Dictionary <int, Object>()
            {
                { 0, "movePhase" }
            },
            BackgroundTextName = "battle"
        });
        choices.Add(new Choice()
        {
            Name       = "andPhase",
            SelectText = new List <TextAndPosition>()
            {
                new TextAndPosition("확인", 16, 13, true)
            },
            OnlyShowText = new List <TextAndPosition>()
            {
                new TextAndPosition("globerEnemy.CurrentState()", 15, 3 + 5, 1)
                {
                    AlignH = true
                }
            },
            IndicateChoice = new Dictionary <int, Object>()
            {
                { 0, "backField" }
            },
            BackgroundTextName = "battle"
        });
        choices.Add(new Choice()
        {
            Name         = "failBlock",
            ChoiceType   = ChoiceType.QUICKNEXT,
            OnlyShowText = new List <TextAndPosition>()
            {
                new TextAndPosition("막기 실패", 15, 3 + 5, 1)
                {
                    AlignH = true
                }
            },
            IndicateChoice = new Dictionary <int, Object>()
            {
                { 0, "monsterReactionPhase" }
            },
            BackgroundTextName = "battle"
        });
        choices.Add(new Choice()
        {
            Name         = "successBlock",
            ChoiceType   = ChoiceType.QUICKNEXT,
            OnlyShowText = new List <TextAndPosition>()
            {
                new TextAndPosition("막기 성공", 15, 3 + 5, 1)
                {
                    AlignH = true
                }
            },
            IndicateChoice = new Dictionary <int, Object>()
            {
                { 0, "movePhase" }
            },
            BackgroundTextName = "battle"
        });
        choices.Add(new Choice()
        {
            Name         = "failDodge",
            ChoiceType   = ChoiceType.QUICKNEXT,
            OnlyShowText = new List <TextAndPosition>()
            {
                new TextAndPosition("회피 실패", 15, 3 + 5, 1)
                {
                    AlignH = true
                }
            },
            IndicateChoice = new Dictionary <int, Object>()
            {
                { 0, "monsterReactionPhase" }
            },
            BackgroundTextName = "battle"
        });
        choices.Add(new Choice()
        {
            Name         = "successDodge",
            ChoiceType   = ChoiceType.QUICKNEXT,
            OnlyShowText = new List <TextAndPosition>()
            {
                new TextAndPosition("회피 성공", 15, 3 + 5, 1)
                {
                    AlignH = true
                }
            },
            IndicateChoice = new Dictionary <int, Object>()
            {
                { 0, "movePhase" }
            },
            BackgroundTextName = "battle"
        });
        choices.Add(new Choice()
        {
            Name         = "monsterPreAttack",
            ChoiceType   = ChoiceType.QUICKNEXT,
            OnlyShowText = new List <TextAndPosition>()
            {
                new TextAndPosition("globerEnemy.PreAttackCry()", 15, 3 + 5, 1)
                {
                    AlignH = true
                }
            },
            IndicateChoice = new Dictionary <int, Object>()
            {
                { 0, "monsterAttack" }
            },
            BackgroundTextName = "battle"
        });

        choices.Add(new Choice()
        {
            Name         = "monsterAttack",
            ChoiceType   = ChoiceType.QUICKNEXT,
            OnlyShowText = new List <TextAndPosition>()
            {
                new TextAndPosition("globerEnemy.AttackCry()", 15, 3 + 5, 1)
                {
                    AlignH = true
                }
            },
            IndicateChoice = new Dictionary <int, Object>()
            {
                { 0, "monsterReactionPhase" }
            },
            BackgroundTextName = "battle"
        });
        choices.Add(new Choice()
        {
            Name         = "monsterReactionPhase",
            ChoiceType   = ChoiceType.QUICKNEXT,
            OnlyShowText = new List <TextAndPosition>()
            {
                new TextAndPosition("globerPlayer.Reaction()", 5, 10, 10)
                {
                    AlignH = true, PriorityLayer = 1
                }
            },
            IndicateChoice = new Dictionary <int, Object>()
            {
                { 0, "movePhase" }
            },
            BackgroundTextName = "battle"
        });

        choices.Add(new Choice()
        {
            Name = "background",
            BackgroundTextName = "getItem"
        });

        choices.Add(new Choice()
        {
            Name       = "GreetPhase",
            SelectText = new List <TextAndPosition>()
            {
                new TextAndPosition("대화.", 16, 13, true),
                new TextAndPosition("PreQuestMessage", 40, 13, true),
                new TextAndPosition("돌아간다.", 52, 19, true)
            },
            OnlyShowText = new List <TextAndPosition>()
            {
                new TextAndPosition("GreetMessage", 15, 3 + 5, 1)
                {
                    AlignH = true
                }
            },
            IndicateChoice = new Dictionary <int, Object>()
            {
                { 0, "ConversationPhase" }, { 1, "QuestIntroduction" }, { 2, "end" }
            },
            BackgroundTextName = "battle"
        });

        choices.Add(new Choice()
        {
            Name       = "QuestIntroduction",
            SelectText = new List <TextAndPosition>()
            {
                new TextAndPosition("아뇨 괜찮습니다.", 44, 19, true)
            },
            OnlyShowText = new List <TextAndPosition>()
            {
                new TextAndPosition("QuestIntroduction", 15, 3 + 5, 1)
                {
                    AlignH = true
                }
            },
            IndicateChoice = new Dictionary <int, Object>()
            {
                { 0, "GreetPhase" }
            },
            BackgroundTextName = "battle"
        });

        choices.Add(new Choice()                  //Choice 전체가 다른 Choice로 대체 됨
        {
            Name       = "QuestExplan",
            SelectText = new List <TextAndPosition>()
            {
                new TextAndPosition("아뇨 괜찮습니다.", 44, 19, true)
            },
            OnlyShowText = new List <TextAndPosition>()
            {
                new TextAndPosition("QuestExplan", 15, 3 + 5, 1)
                {
                    AlignH = true
                }
            },
            IndicateChoice = new Dictionary <int, Object>()
            {
                { 0, "GreetPhase" }
            },
            BackgroundTextName = "battle"
        });


        clikX = 23;
        clikY = 7;
        choices.Add(new Choice()
        {
            Name       = "ConversationPhase",
            ChoiceType = ChoiceType.QUICKNEXT,
            StreamText = new List <TextAndPosition>()
            {
                new TextAndPosition("Conversation1", 5 + clikX, 3 + clikY, 10)
                {
                    PriorityLayer = 1
                },
                new TextAndPosition(1000, "Conversation2", 5 + clikX, 3 + clikY, 10, ConsoleColor.Red)
                {
                    PriorityLayer = 1, AlignH = true
                }
            },
            IndicateChoice = new Dictionary <int, Object>()
            {
                { 0, "GreetPhase" }
            },
            BackgroundTextName = "base"
        });



        choices.Add(new Choice()
        {
            Name         = "QuestAccept",
            ChoiceType   = ChoiceType.QUICKNEXT,
            OnlyShowText = new List <TextAndPosition>()
            {
                new TextAndPosition("QuestAcceptMessage", 5, 10, 10)
                {
                    AlignH = true
                }
            },
            IndicateChoice = new Dictionary <int, Object>()
            {
                { 0, "GreetPhase" }
            },
            BackgroundTextName = "battle"
        });

        choices.Add(new Choice()
        {
            Name         = "QuestReject",
            ChoiceType   = ChoiceType.QUICKNEXT,
            OnlyShowText = new List <TextAndPosition>()
            {
                new TextAndPosition("QuestRejectMessage", 5, 10, 10)
                {
                    AlignH = true
                }
            },
            IndicateChoice = new Dictionary <int, Object>()
            {
                { 0, "GreetPhase" }
            },
            BackgroundTextName = "battle"
        });

        choices.Add(new Choice()
        {
            Name         = "CompleteQuestList",
            OnlyShowText = new List <TextAndPosition>()
            {
                new TextAndPosition("CompleteQuestListMessage", 15, 3 + 5, 1)
                {
                    AlignH = true
                }
            },
            BackgroundTextName = "battle"
        });

        choices.Add(new Choice()
        {
            Name       = "QuestComplete",
            SelectText = new List <TextAndPosition>()
            {
                new TextAndPosition("보상을 받는다.", 16, 13, true)
            },
            OnlyShowText = new List <TextAndPosition>()
            {
                new TextAndPosition("QuestComplete", 15, 3 + 5, 1)
                {
                    AlignH = true
                }
            },
            IndicateChoice = new Dictionary <int, Object>()
            {
                { 0, "QuestReward" }
            },
            BackgroundTextName = "battle"
        });

        choices.Add(new Choice()
        {
            Name           = "QuestReward",
            ChoiceType     = ChoiceType.QUICK,
            IndicateChoice = new Dictionary <int, Object>()
            {
                { 0, "GreetPhase" }
            }
        });

        choices.Add(new Choice()
        {
            Name       = "SlimeHuntQuest",
            SelectText = new List <TextAndPosition>()
            {
                new TextAndPosition("수락한다.", 16, 13, true),
                new TextAndPosition("거절한다.", 40, 13, true)
            },
            OnlyShowText = new List <TextAndPosition>()
            {
                new TextAndPosition("우리 마을에 요즘 슬라임이 많아져\n 골치를 앓고 있네..\n자네가 좀 도와줄 수 있나?\n 슬라임 10마리만 잡아주면 되네.", 15, 3, 10)
                {
                    AlignH = true
                }
            },
            IndicateChoice = new Dictionary <int, Object>()
            {
                { 0, "QuestAccept" }, { 1, "QuestReject" }
            },
            BackgroundTextName = "battle"
        });
        choices.Add(new Choice()
        {
            Name       = "DeadManHuntQuest",
            SelectText = new List <TextAndPosition>()
            {
                new TextAndPosition("수락한다.", 16, 13, true),
                new TextAndPosition("거절한다.", 40, 13, true)
            },
            OnlyShowText = new List <TextAndPosition>()
            {
                new TextAndPosition("망자들이 마을 주변에 몰려들고 있다네.\n이유는 모르겠지만..\n 망자의 수를 조금 줄여줄 수 있겠나?", 15, 3, 10)
                {
                    AlignH = true
                }
            },
            IndicateChoice = new Dictionary <int, Object>()
            {
                { 0, "QuestAccept" }, { 1, "QuestReject" }
            },
            BackgroundTextName = "battle"
        });
        choices.Add(new Choice()
        {
            Name       = "VisitAbandonedHouse",
            SelectText = new List <TextAndPosition>()
            {
                new TextAndPosition("수락한다.", 16, 13, true),
                new TextAndPosition("거절한다.", 40, 13, true)
            },
            OnlyShowText = new List <TextAndPosition>()
            {
                new TextAndPosition("숲속 깊은 곳에 가보면\n버려져있는 집이 있다네\n그런데 요즘 거기서 누군가를\n봤다는 제보가 있어..\n 한번 조사해주지 않겠나?", 15, 3, 10)
                {
                    AlignH = true
                }
            },
            IndicateChoice = new Dictionary <int, Object>()
            {
                { 0, "QuestAccept" }, { 1, "QuestReject" }
            },
            BackgroundTextName = "battle"
        });
        choices.Add(new Choice()
        {
            Name       = "GetSlimeJell",
            SelectText = new List <TextAndPosition>()
            {
                new TextAndPosition("수락한다.", 16, 13, true),
                new TextAndPosition("거절한다.", 40, 13, true)
            },
            OnlyShowText = new List <TextAndPosition>()
            {
                new TextAndPosition("슬라임 젤을 좀 구해다줄 수 있는가?\n곧 아내의 생일인데\n슬라임 젤에는 보습 효과가 있어\n아내에게 선물로 주려고 하네.\n부탁해도 되겠나?", 15, 3, 10)
                {
                    AlignH = true
                }
            },
            IndicateChoice = new Dictionary <int, Object>()
            {
                { 0, "QuestAccept" }, { 1, "QuestReject" }
            },
            BackgroundTextName = "battle"
        });
        choices.Add(new Choice()
        {
            Name       = "testMeeting",
            SelectText = new List <TextAndPosition>()
            {
                new TextAndPosition("수락한다.", 16, 13, true),
                new TextAndPosition("거절한다.", 40, 13, true)
            },
            OnlyShowText = new List <TextAndPosition>()
            {
                new TextAndPosition("촌장을 만나고 오게", 15, 3, 10)
                {
                    AlignH = true
                }
            },
            IndicateChoice = new Dictionary <int, Object>()
            {
                { 0, "QuestAccept" }, { 1, "QuestReject" }
            },
            BackgroundTextName = "battle"
        });



        Count = choices.Count;
    }