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); }