Zadatak: Napraviti igricu u kojoj se loptica odbija od reket na dnu, a ako loptica "ispadne" mimo reket, onda je igrica gotova.

Dole je dat primer u kojem bi moglo i da radi. Pokušajte da napravite sami tu igricu kod kuće, koristeći verziju Visual Studija koju god da imate. Treba vam Forma (Form1), panel (racket) u nekoj boji koji će izigravati reket, boks sa slikom loptice (ball), tajmer za to da se za svaki tik menja nešto u igrici. Dodajte način da prikažete broj bodova. Pitanje za razmišljanje: Kako se izlazi iz igrice?

Pogledajte sledeći kod:

namespace  ping_pong_game  
{
public partial class Form1 : Form
{
public int speed_left = 4; //speed of ball
public int speed_top = 4;
public int point = 0; //score point

public Form1()
{
InitializeComponent();
timer1.Enabled = true;
Cursor.Hide(); //hide the cursor
this.FormBorderStyle = FormBorderStyle.None; //remove any boder
this.TopMost = true; //bring the form to the front
this.Bounds = Screen.PrimaryScreen.Bounds; //make it fullscreen
racket.Top = playground.Bottom - (playground.Bottom / 10); //set the position of racket
}

private void timer1_Tick(object sender, EventArgs e)
{
racket.Left = Cursor.Position.X - (racket.Width / 2); //set the center of the racket to the position of the cursor
ball.Left += speed_left; //move the ball
ball.Top += speed_top;
//racket collision:
if(ball.Bottom >= racket.Top && ball.Bottom <= racket.Bottom && ball.Left >= racket.Left && ball.Right <= racket.Right)
{
speed_top += 2;
speed_left += 2;
speed_top = -speed_top;// change the direction
point += 1;
}

 if(ball.Left<=playground.Left) { speed_left = -speed_left; }

if(ball.Right>=playground.Right) { speed_left = -speed_left;}

if(ball.Top<=playground.Top) { speed_top = -speed_top; }

if(ball.Bottom>=playground.Bottom)
{ timer1.Enabled = false; //ball is out ->stop the game }
}

private void Form1_KeyDown(object sender, KeyEventArgs e)
{
if(e.KeyCode == Keys.Escape)
{
this.Close(); //press escape to quit
}
}
}
}

Domaći zadatak:

Pokušajte da napravite svoju verziju igrice. Rešenje (programski kod i izvršni fajl) spakujte i zip arhivu i pošaljite nastavniku na email: vpfilko@yahoo.com

Pitanja i odgovori: 

Pitanje (T.A.) : Uradio sam domaći iz programiranja, ali mi nije jasno šta tačno treba da spakujem u zip arhivu?

Odgovor:  Ako nisi siguran, spakuj sve fajlove koji završavaju na .cs (sve C# fajlove), plus izvršni fajl koji se najčešće nalazi na delu bin -> Debug .  Na Youtube ima dosta video objašnjenja kako pronaći izvršni fajl, a za jedan primer dajem

.

Last modified: Saturday, 21 March 2020, 12:06 AM