Научился: Научился отделять абстрактность от реализации Для решения домашнего задания можно взять предыдущие реализации функций, а для функции SetNewVirus еще дописать условия появления нового вируса.
Научился: Работать со звуком. Трудности: Понять основные элементы класса Sound Немного быстро для начинающего, зачастую просто не успеваешь вникнуть в код. Я бы посоветовал делать 2-3 минутные паузы с повторным объяснением ранее написанного кода.