コード例 #1
0
 public VerseSelectionInteraction(LandmarkVerses verses, PoemState.GenderEnum gender, TombComponent tombComponent)
 {
     _verses        = verses;
     _tombComponent = tombComponent;
     _poemState     = ((PoemState)Player.GetInstance().CurrentState);         // TODO: send in constructor
     DisplayVerses(gender);
 }
コード例 #2
0
        private void DisplayVerses(PoemState.GenderEnum gender)
        {
            VerseInfo[] versesText = new VerseInfo[6];

            switch (gender)
            {
            case PoemState.GenderEnum.Undefined:
                versesText[0].Verse            = _verses.Masculine[0];
                versesText[0].Gender           = PoemState.GenderEnum.Masculine;
                versesText[0].FirstPersonVerse = _verses.FirstPerson[0];
                versesText[1].Verse            = _verses.Masculine[1];
                versesText[1].Gender           = PoemState.GenderEnum.Masculine;
                versesText[1].FirstPersonVerse = _verses.FirstPerson[1];

                versesText[2].Verse            = _verses.Feminine[2];
                versesText[2].Gender           = PoemState.GenderEnum.Feminine;
                versesText[2].FirstPersonVerse = _verses.FirstPerson[2];
                versesText[3].Verse            = _verses.Feminine[3];
                versesText[3].Gender           = PoemState.GenderEnum.Feminine;
                versesText[3].FirstPersonVerse = _verses.FirstPerson[3];

                versesText[4].Verse            = _verses.Plural[4];
                versesText[4].Gender           = PoemState.GenderEnum.Plural;
                versesText[4].FirstPersonVerse = _verses.FirstPerson[4];
                versesText[5].Verse            = _verses.Plural[5];
                versesText[5].Gender           = PoemState.GenderEnum.Plural;
                versesText[5].FirstPersonVerse = _verses.FirstPerson[5];
                break;

            case PoemState.GenderEnum.Masculine:
                for (int i = 0; i < versesText.Length; ++i)
                {
                    versesText[i].Verse            = _verses.Masculine[i];
                    versesText[i].Gender           = PoemState.GenderEnum.Masculine;
                    versesText[i].FirstPersonVerse = _verses.FirstPerson[i];
                }
                break;

            case PoemState.GenderEnum.Feminine:
                for (int i = 0; i < versesText.Length; ++i)
                {
                    versesText[i].Verse            = _verses.Feminine[i];
                    versesText[i].Gender           = PoemState.GenderEnum.Feminine;
                    versesText[i].FirstPersonVerse = _verses.FirstPerson[i];
                }
                break;

            case PoemState.GenderEnum.Plural:
                for (int i = 0; i < versesText.Length; ++i)
                {
                    versesText[i].Verse            = _verses.Plural[i];
                    versesText[i].Gender           = PoemState.GenderEnum.Plural;
                    versesText[i].FirstPersonVerse = _verses.FirstPerson[i];
                }
                break;
            }


            Player player = Player.GetInstance();

            _displayMeshText.Display(player.MainCamera.transform.position + player.MainCamera.transform.forward * _distanceFromPlayer,
                                     player.MainCamera.transform.rotation, versesText); // TODO parametrice distance
        }