Делаю игру Ping pong

95
11 июня 2021, 09:10

Создал ракетку для игры:

raketka.FillRectangle(brush, new Rectangle(0, MoveRoketka,5,30));

Не могу понять, как теперь поставить условие: если мячик попал в ракетку, отбить мячик.
Вот код мячика:

graphics.FillRectangle(brush, new Rectangle(Xcurrent*Cellsize,Ycurrent*Cellsize,Cellsize,Cellsize));

Вот полный код всей програмы:

public partial class Form1 : Form
{
    public int Xcurrent;//Движение мячика по X
    public int Xprevious;
    public int Ycurrent;//Движение мячика по Y
    public int Yprevious;
    public const int Cellsize = 10;//Размер
    public int Speed = 1;
    public int MoveRoketka = 0;
    public int MoveRoketka2 = 0;
    public Form1()
    {
        InitializeComponent();
    }
    private void Form1_Load(object sender, EventArgs e)
    {
    }
    private void Form1_Paint(object sender, PaintEventArgs e)
    {
        Graphics graphics = e.Graphics;
        Brush brush = Brushes.Black;
        graphics.FillRectangle(brush, new Rectangle(Xcurrent*Cellsize,Ycurrent*Cellsize,Cellsize,Cellsize));
        Graphics raketka = e.Graphics;
        raketka.FillRectangle(brush, new Rectangle(0, MoveRoketka,5,30));
    }
    private void Timer1_Tick(object sender, EventArgs e)
    {
        Xcurrent = Xprevious + Speed;
        Ycurrent = Yprevious + Speed;
        Xprevious = Xcurrent;
        Yprevious = Ycurrent;
        if(Xcurrent>20)
        {
            Xcurrent = Xprevious;
            Speed = -Speed;
        }
        if (Xprevious < 0)
        {
            Xcurrent = Xprevious;
            Speed = +1;
        }
        Refresh();
    }
    private void Form1_KeyDown(object sender, KeyEventArgs e)
    {
        switch(e.KeyCode)
        {
            case Keys.S:
                MoveRoketka = MoveRoketka2 +10;
                MoveRoketka2 = MoveRoketka;
                break;
            case Keys.W:
                MoveRoketka = MoveRoketka2 -10;
                MoveRoketka2 = MoveRoketka;
                break;
        }
    }
}
READ ALSO
Преобразовать массив на шарпе в json

Преобразовать массив на шарпе в json

У меня есть код на php:

101
C# GUI приложение под Linux

C# GUI приложение под Linux

Похожий вопрос вроде был 3 года назад, но может что-то уже изменилось

122
Передача данных с DataGrid в TextBox

Передача данных с DataGrid в TextBox

Есть TextBox на одной форме

115
Существует ли комбинация операторов LIKE и IN в условии запроса?

Существует ли комбинация операторов LIKE и IN в условии запроса?

В SQL (к сожалению) часто приходится пользоваться LIKE из-за того, что в используемых БД нарушены почти все правила нормализацииНе могу пока это...

109