public override async Task Execute() { string weaponName = Player.CurrentWeapon.BaseName(Data); await TextArea.PrintLine("\n"); if (EncounterState == EncounterState.MonsterReady) { int dam = attack(); await TextArea.Print("Attack ", XleColor.White); await TextArea.Print(MonstName, XleColor.Cyan); await TextArea.PrintLine(); await TextArea.Print("with ", XleColor.White); await TextArea.Print(weaponName, XleColor.Cyan); await TextArea.PrintLine(); if (dam <= 0) { SoundMan.PlaySound(LotaSound.PlayerMiss); await TextArea.PrintLine("Your Attack missed.", XleColor.Yellow); return; } SoundMan.PlaySound(LotaSound.PlayerHit); await Encounters.HitMonster(dam); } else if (EncounterState > 0) { await TextArea.PrintLine("The unknown creature is not "); await TextArea.PrintLine("within range."); await GameControl.WaitAsync(300 + 100 *Player.Gamespeed); } else { return; } return; }