Quantcast
Viewing all articles
Browse latest Browse all 12583

Help With Creating a Game

Hi,

I'm trying to create a game of battleships Visual Studios using C# code but i'm not doing to well. I want to be able to move the ships around the screen when the user must choose where to place their ships, which i have don but i also want them to be able to snap to a grid i have created when the ship is over it. For the grid i have a series of loops featuring x and y coordinates but and the x coordinate changes every time the loop runs. As for the y coordinate it changes with each loop. On top of this at each point created a dynamic button has been put there. I am wondering if it is possible to implement this into the code i already have and if not what do i have to change so i can accomplish this event. This is the code i have come up with so far:

namespace Battleships___A_New_Beginning
{
    public partial class Selection_Screen : Form
    {
        int tag1 = 0;

        
        Point[] grid = new Point[100];
        Point Move1;
        Point Move2;
        Point Move3;
        Point Move4;
        Point Move5;
        int x = 0, gridCount = 0;

        public Selection_Screen()
        {
            InitializeComponent();
            grid1();
            grid2();
            grid3();
            grid4();
            grid5();
            grid6();
            grid7();
            grid8();
            grid9();
        }

        private void Selection_Screen_Load(object sender, EventArgs e)
        {

        }

        private void grid1()
        {
            x = 30;// sets a loop that runs ten times( createing ten grid points along X axis) before stoping
            gridCount = 1;
            for (int count = 0; count < 10; count++)
            {
                grid[count] = new Point(x, 10);
                // Create a Button object 
                Button dynamicButton = new Button();

                // Set Button properties
                dynamicButton.Height = 40;
                dynamicButton.Width = 40;
                dynamicButton.BackColor = Color.Blue;
                dynamicButton.ForeColor = Color.Blue;
                dynamicButton.Location = grid[count];
                dynamicButton.Text = "";
                dynamicButton.Name = "btnGrid" + gridCount;
                dynamicButton.Font = new Font("Georgia", 16);
                dynamicButton.Tag = gridCount;


                // Add a Button Click Event handler
                dynamicButton.Click += new System.EventHandler(showName);

                // Add Button to the Form. Placement of the Button
                // will be based on the Location and Size of button
                Controls.Add(dynamicButton);
                gridCount += 1;
                x += 40;
            }
        }


        private void showName(object Sender, System.EventArgs e)
        {
            Button TagNumber = (Button)Sender;
            tag1 = Convert.ToInt32(TagNumber.Tag);
            MessageBox.Show("btnGrid" + tag1);
        }


        private void grid2()// sets a loop that runs ten times( createing ten grid points along X axis) before stoping
        {
            x = 30;
            gridCount = 11;
            for (int count2 = 0; count2 < 10; count2++)
            {
                grid[count2] = new Point(x, 50);
                // Create a Button object 
                Button dynamicButton2 = new Button();

                // Set Button properties
                dynamicButton2.Height = 40;
                dynamicButton2.Width = 40;
                dynamicButton2.BackColor = Color.Blue;
                dynamicButton2.ForeColor = Color.Blue;
                dynamicButton2.Location = grid[count2];
                dynamicButton2.Text = "";
                dynamicButton2.Name = "btnGrid" + gridCount;
                dynamicButton2.Font = new Font("Georgia", 16);
                dynamicButton2.Tag = gridCount;

                // Add a Button Click Event handler
                dynamicButton2.Click += new EventHandler(showName);

                // Add Button to the Form. Placement of the Button
                // will be based on the Location and Size of button
                Controls.Add(dynamicButton2);
                gridCount += 1;
                x += 40;
            }
        }

        private void grid3()// sets a loop that runs ten times( createing ten grid points along X axis) before stoping
        {
            x = 30;
            gridCount = 21;
            for (int count = 0; count < 10; count++)
            {
                grid[count] = new Point(x, 90);
                // Create a Button object 
                Button dynamicButton = new Button();

                // Set Button properties
                dynamicButton.Height = 40;
                dynamicButton.Width = 40;
                dynamicButton.BackColor = Color.Blue;
                dynamicButton.ForeColor = Color.Blue;
                dynamicButton.Location = grid[count];
                dynamicButton.Text = "";
                dynamicButton.Name = "btnGrid" + gridCount;
                dynamicButton.Font = new Font("Georgia", 16);
                dynamicButton.Tag = gridCount;

                // Add a Button Click Event handler
                dynamicButton.Click += new EventHandler(showName);

                // Add Button to the Form. Placement of the Button
                // will be based on the Location and Size of button
                Controls.Add(dynamicButton);
                gridCount += 1;
                x += 40;
            }
        }

        private void grid4()// sets a loop that runs ten times( createing ten grid points along X axis) before stoping
        {
            x = 30;
            gridCount = 31;
            for (int count = 0; count < 10; count++)
            {
                grid[count] = new Point(x, 130);
                // Create a Button object 
                Button dynamicButton = new Button();

                // Set Button properties
                dynamicButton.Height = 40;
                dynamicButton.Width = 40;
                dynamicButton.BackColor = Color.Blue;
                dynamicButton.ForeColor = Color.Blue;
                dynamicButton.Location = grid[count];
                dynamicButton.Text = "";
                dynamicButton.Name = "btnGrid" + gridCount;
                dynamicButton.Font = new Font("Georgia", 16);
                dynamicButton.Tag = gridCount;

                // Add a Button Click Event handler
                dynamicButton.Click += new System.EventHandler(showName);

                // Add Button to the Form. Placement of the Button
                // will be based on the Location and Size of button
                Controls.Add(dynamicButton);
                gridCount += 1;
                x += 40;
            }
        }

        private void grid5()// sets a loop that runs ten times( createing ten grid points along X axis) before stoping
        {
            x = 30;
            gridCount = 41;
            for (int count = 0; count < 10; count++)
            {
                grid[count] = new Point(x, 170);
                // Create a Button object 
                Button dynamicButton = new Button();

                // Set Button properties
                dynamicButton.Height = 40;
                dynamicButton.Width = 40;
                dynamicButton.BackColor = Color.Blue;
                dynamicButton.ForeColor = Color.Blue;
                dynamicButton.Location = grid[count];
                dynamicButton.Text = "";
                dynamicButton.Name = "btnGrid" + gridCount;
                dynamicButton.Font = new Font("Georgia", 16);
                dynamicButton.Tag = gridCount;

                // Add a Button Click Event handler
                dynamicButton.Click += new System.EventHandler(showName);

                // Add Button to the Form. Placement of the Button
                // will be based on the Location and Size of button
                Controls.Add(dynamicButton);
                gridCount += 1;
                x += 40;
            }
        }

        private void grid6()// sets a loop that runs ten times( createing ten grid points along X axis) before stoping
        {
            x = 30;
            gridCount = 51;
            for (int count = 0; count < 10; count++)
            {
                grid[count] = new Point(x, 210);
                // Create a Button object 
                Button dynamicButton = new Button();

                // Set Button properties
                dynamicButton.Height = 40;
                dynamicButton.Width = 40;
                dynamicButton.BackColor = Color.Blue;
                dynamicButton.ForeColor = Color.Blue;
                dynamicButton.Location = grid[count];
                dynamicButton.Text = "";
                dynamicButton.Name = "btnGrid" + gridCount;
                dynamicButton.Font = new Font("Georgia", 16);
                dynamicButton.Tag = gridCount;

                // Add a Button Click Event handler
                dynamicButton.Click += new System.EventHandler(showName);

                // Add Button to the Form. Placement of the Button
                // will be based on the Location and Size of button
                Controls.Add(dynamicButton);
                gridCount += 1;
                x += 40;
            }
        }

        private void grid7()// sets a loop that runs ten times( createing ten grid points along X axis) before stoping
        {
            x = 30;
            gridCount = 71;
            for (int count = 0; count < 10; count++)
            {
                grid[count] = new Point(x, 250);
                // Create a Button object 
                Button dynamicButton = new Button();

                // Set Button properties
                dynamicButton.Height = 40;
                dynamicButton.Width = 40;
                dynamicButton.BackColor = Color.Blue;
                dynamicButton.ForeColor = Color.Blue;
                dynamicButton.Location = grid[count];
                dynamicButton.Text = "";
                dynamicButton.Name = "btnGrid" + gridCount;
                dynamicButton.Font = new Font("Georgia", 16);
                dynamicButton.Tag = gridCount;

                // Add a Button Click Event handler
                dynamicButton.Click += new EventHandler(showName);

                // Add Button to the Form. Placement of the Button
                // will be based on the Location and Size of button
                Controls.Add(dynamicButton);
                gridCount += 1;
                x += 40;
            }
        }

        private void grid8()// sets a loop that runs ten times( createing ten grid points along X axis) before stoping
        {
            x = 30;
            gridCount = 81;
            for (int count = 0; count < 10; count++)
            {
                grid[count] = new Point(x, 290);
                // Create a Button object 
                Button dynamicButton = new Button();

                // Set Button properties
                dynamicButton.Height = 40;
                dynamicButton.Width = 40;
                dynamicButton.BackColor = Color.Blue;
                dynamicButton.ForeColor = Color.Blue;
                dynamicButton.Location = grid[count];
                dynamicButton.Text = "";
                dynamicButton.Name = "btnGrid" + gridCount;
                dynamicButton.Font = new Font("Georgia", 16);
                dynamicButton.Tag = gridCount;
                // Add a Button Click Event handler
                dynamicButton.Click += new EventHandler(showName);

                // Add Button to the Form. Placement of the Button
                // will be based on the Location and Size of button
                Controls.Add(dynamicButton);
                gridCount += 1;
                x += 40;
            }
        }

        private void grid9()// sets a loop that runs ten times( createing ten grid points along X axis) before stoping
        {
            x = 30;
            gridCount = 91;
            for (int count = 0; count < 10; count++)
            {
                grid[count] = new Point(x, 330);
                // Create a Button object 
                Button dynamicButton = new Button();

                // Set Button properties
                dynamicButton.Height = 40;
                dynamicButton.Width = 40;
                dynamicButton.BackColor = Color.Blue;
                dynamicButton.ForeColor = Color.Blue;
                dynamicButton.Location = grid[count];
                dynamicButton.Text = "";
                dynamicButton.Name = "btnGrid" + gridCount;
                dynamicButton.Font = new Font("Georgia", 16);
                dynamicButton.Tag = gridCount;

                // Add a Button Click Event handler
                dynamicButton.Click += new EventHandler(showName);

                // Add Button to the Form. Placement of the Button
                // will be based on the Location and Size of button
                Controls.Add(dynamicButton);
                gridCount += 1;
                x += 40;
            }
        }



        private void picBoat1_MouseMove(object sender, MouseEventArgs e)
        {
            if (e.Button == MouseButtons.Left)
            {
                int dx = e.X - Move1.X;
                int dy = e.Y - Move1.Y;
                picBoat1.Location = new Point(picBoat1.Left + dx, picBoat1.Top + dy);
            }
        }

        private void picBoat1_MouseDown(object sender, MouseEventArgs e)
        {
            Move1 = e.Location;
        }

        private void picBoat2_MouseMove(object sender, MouseEventArgs e)
        {
            if (e.Button == MouseButtons.Left)
            {
                int dx = e.X - Move2.X;
                int dy = e.Y - Move2.Y;
                picBoat2.Location = new Point(picBoat2.Left + dx, picBoat2.Top + dy);
            }
        }

        private void picBoat2_MouseDown(object sender, MouseEventArgs e)
        {
            Move2 = e.Location;
        }

        private void picBoat3_MouseMove(object sender, MouseEventArgs e)
        {
            if (e.Button == MouseButtons.Left)
            {
                int dx = e.X - Move3.X;
                int dy = e.Y - Move3.Y;
                picBoat3.Location = new Point(picBoat3.Left + dx, picBoat3.Top + dy);
            }
        }

        private void picBoat3_MouseDown(object sender, MouseEventArgs e)
        {
            Move3 = e.Location;
        }

        private void picBoat4_MouseMove(object sender, MouseEventArgs e)
        {
            if (e.Button == MouseButtons.Left)
            {
                int dx = e.X - Move4.X;
                int dy = e.Y - Move4.Y;
                picBoat4.Location = new Point(picBoat4.Left + dx, picBoat4.Top + dy);
            }
        }

        private void picBoat4_MouseDown(object sender, MouseEventArgs e)
        {
            Move4 = e.Location;
        }

        private void picBoat5_MouseMove(object sender, MouseEventArgs e)
        {
            if (e.Button == MouseButtons.Left)
            {
                int dx = e.X - Move5.X;
                int dy = e.Y - Move5.Y;
                picBoat5.Location = new Point(picBoat5.Left + dx, picBoat5.Top + dy);
            }
        }

        private void picBoat5_MouseDown(object sender, MouseEventArgs e)
        {
            Move5 = e.Location;
        }
    }       
        
}
        




Any help would be greatly appreciated.

Thanks


Viewing all articles
Browse latest Browse all 12583

Trending Articles