예제 #1
0
파일: Priest.cs 프로젝트: eylvisaker/Xle
        private async Task AskForTribute()
        {
            if (Player.HP >= Player.MaxHP)
            {
                await TextArea.PrintLine("We're not asking for tribute now.");

                return;
            }

            await TextArea.PrintLine("Please offer tribute.");

            var choice = await NumberPicker.ChooseNumber(Player.Gold);

            var max = (int)((Player.MaxHP - Player.HP) * 0.75 + 1);

            if (choice > max)
            {
                choice = max;
                await TextArea.PrintLine("I only want " + choice + " gold.");
            }
            int hp = choice * 4 / 3;

            Player.HP += hp;

            await TextArea.PrintLine("   HP  +  " + hp);

            SoundMan.PlaySound(LotaSound.Good);
            await TextArea.FlashLinesWhile(() => SoundMan.IsAnyPlaying(), XleColor.White, XleColor.LightGreen, 50, 4);
        }