| Дата активности | Видеокурс | Прогресс | ||
|---|---|---|---|---|
| 2018-05-13 | game1 | Нано-игры | 20 % | |
| Итого: | 23 % | |||
Сколько радости было, когда делал этот видеоурок, в момент, когда шарик забегал! ))) Если бы не ютуб с его паузами и возможностью перемотать и пересмотреть ещё раз, и не забороть бы новичку. Удивляюсь успевающим за вебинарами в прямом эфире. Это или вундеркинды или люди, проходящие подобное не в первый раз. Как-то так.
В записи догонять не сложно, можно паузу поставить, а можно на скорости х0.5 смотреть. =)
Поздравляю с успешным результатом. Двигайся вперёд - там много интересного :)
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace ARKANOID
{
    public partial class FormGame : Form
    {
        int racket_x, racket_y;
        int racket_shift_x = 10;
        int ball_y, ball_x;
        int side_lx, // left x
            side_rx, // right x
            side_uy; // up y 
        public FormGame()
        {
            InitializeComponent();
        }
        private void init_game()
        {
            racket_x = racet.Location.X;
            racket_y = racet.Location.Y;
            side_lx = label_left.Location.X + label_left.Width;
            side_rx = label_right.Location.X;
            side_uy = label_top.Location.X + label_top.Height;
 
        }
        private void FormGame_KeyDown(object sender, KeyEventArgs e)
        {
            Keys key = e.KeyCode;
            switch (key)
            {
                case Keys.Left: shift_racket(-racket_shift_x); break;
                case Keys.Right: shift_racket(racket_shift_x); break;
            }
        }
        private void shift_racket(int sx)
        {
            int ax1 = racket_x + sx;
            int ax2 = ax1 + racet.Width;
            if (side_lx > ax1) ax1=side_lx;
            if (side_rx < ax2) ax1 = side_rx - racet.Width; ;  
            racket_x = ax1;
            racet.Location = new Point(racket_x, racket_y);
        }
        private void FormGame_Shown(object sender, EventArgs e)
        {
            init_game();
        }
        private void FormGame_Load(object sender, EventArgs e)
        {
        }
    }
}
Приветствую на Проекте. 
Рекомендую  пройти для начала бесплатные демо-игры и демо-софт. Затем полностью пройти консольные задачи, они также бесплатны.  Очень рекомендую не просто копипастить код, но и добавлять буквально на каждой строчке собственные комментарии, а также писать псевдокод по завершении каждого курса, куда выписывать все использованные функции и взаимосвязь между ними.