protected override void OnKeyDown(KeyEventArgs e) { base.OnKeyDown(e); if (hkManager.ProcessKeyArgs(e) || e.Control || Paused) { return; } MorseCode code = MorseCodeManager.GetMoreCode(e.KeyCode); bool isAnswer = false; foreach (CodeSprite sprite in codeSprites) { if (!sprite.AnsweredCorrectly && sprite.MorseCode.Equals(code)) { sprite.AnsweredCorrectly = true; sprite.ForeColor = Color.GreenYellow; isAnswer = true; scoreSprite.Score++; soundPlayer.PlayCorrect(); } } if (!isAnswer) { scoreSprite.Score--; soundPlayer.PlayFail(); } }
private static MorseCode ToPeriodMorseCode(MorseCode code) { return(new MorseCode(code.Character, code.Key, code.Code.Replace('•', '.'))); }