2. Utilizarea aplicației „Snake”
Snake
Program realizat pentru distractie!
CUPRINS
1. Introducere
2. Utilizarea aplicației „Snake”
3. Proiectarea interfeței
4. Conceptele programării în Visual Basic
5. Explicarea programului
6. Bibliografie
1.Introducere
Aplicatia Snake este un joc relativ simplu care poate fi jucat
de oricine incepand de la o varsta intelegatoare!
Jocul a fost creat in VB 5.0 . In acest moment ar trebui ca oricare PC sa poate rula acest program pentru al puteam juca sau pentru as-i face orice doreste in el.
Daca nu stiti regulile jocului, vi le voi spune eu:
Sarpele trebuie sa manance mancarea (punctul rosu la mine in joc).
Sarpele va creste odata ce ai mancat mancarea si vei primi puncte in tabelul „Score”
Daca te vei lovi de ziduri vei muri!
Iar majoritatea jocurilor „snake” cand te vei lovi de propriul corp vei muri. Dar eu nu am vrut sa fac asa deoarece mi se pare mai palpitant asa cum e.
2.Utilizarea Aplicatiei „Snake”
Aplicatia „Snake” se poate juca prin instalarea programului VB. Dupa ce ati terminat si intrati in VB aceasta imagine va va aparea.
Da-ti Click „Play” si incepe-ti jocul!
Iar daca nu va convine 1 lucru il puteti schimba dupa cum doriti!
3. Proiectarea interfeței
Aplicatia a fost realizata in VB 5.0, folosind elementele de interfata grafica utilizzator ca:
Un timer: folosit pentru miscare si atunci cand mananca mancarea sa creasca.
Un lable: folosit pentru a vedea scorul pe care l-ai facut.
Doua shape-uri: corpul si mancarea
Un buton : pentru Pauza (in caz ca trebie sa te opresti).
4. Conceptele programării în Visual Basic
PROGRAMAREA VIZUALA este un exemplu de programare orientata pe obiecte si dirijata de evenimente. Programele sunt structurate ca sisteme reactive. Evenimente ce apar in mediu determina executia unui fragment de program.
În PROGRAMAREA VIZUALA un numar de dispozitive grafice (controale) sunt afisate pe ecran pentru a mediatiza dialogul om-calculator. Prin operarea asupra acestor controale, utilizatorul genereaza evenimente. Evenimentele determina executia unor anumite fragmente de program
PROGRAMAREA VIZUALA este o modalitate de structurare a proiectarii de nivel inalt, care poate fi apoi detaliata in implementari conventionale. Se foloseste pentru aplicatii GUI (interfete grafice utilizator), de tip Windows, și permite realizarea rapida a unor aplicatii comerciale si performante
În PROGRAMAREA VIZUALA programatorul are deja construite elementele interfetei. Interfata cu utilizatorul se proiecteaza cu foarte mare usurinta, iar programatorul isi poate concentra atentia asupra algoritmului de baza, evitand operatiile de rutina.
NOTIUNILE DE BAZA ale programării vizuale sunt:
FORMA
o aplicatie Windows este formata din una sau mai multe ferestre, care apar in diferite momente ale programului, in functie de comenzile date de utilizator
asemenea ferestre, ca si altele, neafisabile, se numesc forme
o forma contine unul sau mai multe obiecte asupra carora se poate actiona pentru a controla executia programului
CONTROALELE
obiectele vizibile dintr-o forma, prin intermediul carora se realizeaza interactiunea om-calculator
obiectele invizibile asupra carora pot avea loc evenimente ce pot determina executia unor fragmente de program
CONTROALE VIZIBILE: butoane, casete de introducere a unui text, casete de selectie, butoane radio, liste derulante de selectie, liste combinate, meniuri
CONTROALE INVIZIBILE: cronometre, controale multimedia, control pentru o fereastra de dialog, controale pentru comunicatie prin porturi paralele sau seriale
EVENIMENTE: orice actiune asupra unui echipament periferic sau componenta interna (mouse, tastatura, imprimanta, ceas etc.), aparitia unui eveniment asupra unei forme sau a unui control poate fi exploatata pentru executia unui anumit bloc de program
EXEMPLE DE EVENIMENTE: click de mouse pe un buton, dublu-click pe un element dintr-o lista derulanta. agatare si deplasare asupra unei zone de desenare. aparitia unei erori la imprimanta
scurgerea unui interval de timp pentru un cronometru
PROCEDURA este un fragment de program care corespunde asocierii realizate intre un control si un eveniment. Ea limiteaza sau extinde comportamentul unui control la aparitia unui eveniment asupra sa. PROCEDURA se comporta ca orice subprogram de tip procedura din programarea procedurala clasica. Ordinea de apel a procedurilor este stabilita de utilizatorul programului si nu de programator. Procedurile pot functiona in paralel, iar programatorul poate controla desfasurarea lucrurilor prin intermediul unor variabile globale, proprietati ale obiectelor etc.
APLICATIA VIZUALA
O aplicatie vizuala trebuie vazuta ca un ciclu infinit, in care procedurile sunt executate in functie de ordinea in care sunt apelate de utilizator.
Controalele sunt in asteptarea aparitiei unui eveniment asupra lor, care va determina executia unei anumite proceduri.
Aplicatia este oprita tot de catre utilizator.
PROPRIETATI SI METODE
formele si controalele sunt obiecte avand anumite atribute care le caracterizeaza structura sau comportamentul, numite proprietati
metodele exprima ceea ce face un obiect (control sau forma)
metodele sunt proceduri incorporate intr-un obiect
EXEMPLE DE PROPRIETATI
Left, Top – pozitia unui obiect pe ecran
Width, Height – dimensiunile obiectului
Sorted – este sau nu o lista sortata
MultiSelect – se permite sau nu selectarea mai multor elemente dintr-o lista
Name – numele obiectului
EXEMPLE DE METODE
Move – deplasarea unui obiect pe ecran
Show – afisarea unui obiect
Hide – ascunderea unui obiect
PROPRIETATI SI NOTATIA CU PUNCT
referirea la o anumita proprietate P a unui obiect O se realizeaza prin notatia: O.P
unele proprietati pot primi valori atat in timpul proiectarii aplicatiei, cat si in timpul executiei sale, prin instructiuni de atribuire din program
atat proprietatile unui tip de obiect, cat si valorile pe care le poate lua ea pot fi determinate in timpul programarii, direct din mediul de programare
METODE SI NOTATIA CU PUNCT
apelarea unei metode M a unui obiect O cu argumentele A1, A2, … An se face prin: O.M(A1, A2, … An) (eventual fara paranteze)
pe cand proprietatile descriu un obiect (sunt date), metodele permit unui obiect sa faca ceva (sunt cod)
obiectele sunt substantive, proprietatile sunt adjective, iar metodele sunt verbe
5. Explicarea programului
Programul este constituit dintr-o serie de subrutine care implementează modul de comportare al calculatorului ca răspuns la diferitele evenimente ce pot apărea asupra diferitelor elemente de interfață (controale).
Mai intai declaram variabilele locale:KeyCod este folosit pentru ca tu sa fii capabil sa controlezi sarpele de pe sagetile de pe tastatura, ad este capul sarpelui si il folosesti pentru a stii directia si atunci cand se loveste de zid, num este largimea sarpelui, oy si ox sunt parametrii pentru ai decide spatiul in care sarpele se poate misca, eat este mancarea:
Dim keycod As Integer
Dim ad As String
Dim num As Integer
Dim oy, ox
Dim eat As Integer
Dim lost As Boolean
Private Sub cmdPause_Click()
Timer1.Enabled = False
MsgBox "Game Paused"
Timer1.Enabled = True
End Sub
Private Sub Form_Load()
f = 0
num = 1
eat = 4
Call dir
End Sub
Private Sub Picture1_KeyDown(KeyCode As Integer, Shift As Integer)
keycod = KeyCode
End Sub
Private Sub Timer1_Timer()
Call dir
End Sub
Am folosit niste variabile globale pentru a nu le mai scrie de 10x .
Aceasta parte de cod iti arata unde se afla sarpele.
Sub news()
Load body(num)
body(num).Visible = True
body(num).Top = body(num – 1).Top + oy
body(num).Left = body(num – 1).Left + ox
num = num + 1
Call unloads
End Sub
Aceasta parte de cod este pentru atunci cand se loveste de zid sa iti apara un MsgBox „YouLose” (ai pierdut) si cand gaseste mancarea sa creasca si pentru ca mancarea sa apara in locuri random(oriunde):
Sub unloads()
a = 1
While a < num
If lost = False Then
If body(a).Visible = True Then
If body(a).Left = 3320 Then
MsgBox "You Loose"
lost = True
End If
If body(a).Top = 3200 Then
MsgBox "You Loose"
lost = True
End If
If body(a).Top < 0 Then
MsgBox "You Loose"
lost = True
End If
If body(a).Left < -260 Then
MsgBox "You Loose"
lost = True
End If
End If
End If
a = a + 1
Wend
a = 1
While a < (num – eat)
body(a).Visible = False
a = a + 1
Wend
End Sub
Call news
If body(0).Left > (food(f).Left – 190) Then
If body(0).Left < ((food(f).Left + food(f).Width) + 190) Then
If body(0).Top > (food(f).Top – 190) Then
If body(0).Top < ((food(f).Top + food(f).Height) + 190) Then
If food(f).Visible = True Then
eat = eat + 1
lblapple.Caption = eat – 4
If Timer1.Interval > 100 Then Timer1.Interval = Timer1.Interval – 25
Randomize
food(0).Top = Int(Rnd * 3000 + 1)
food(0).Left = Int(Rnd * 3000 + 1)
End If
End If
End If
End If
End If
End Sub
Aceasta parte de cod este pentru a misca sarpele:
Sub dir()
If lost = True Then Exit Sub
Select Case keycod
Case 38 ' up
body(0).Top = body(0).Top – 280
ad = "up"
oy = "-280"
ox = "0"
Case 40 ' down
body(0).Top = body(0).Top + 280
ad = "down"
oy = "280"
ox = "0"
Case 37 ' left
body(0).Left = body(0).Left – 280
ad = "left"
ox = "-280"
oy = "0"
Case 39 ' right
body(0).Left = body(0).Left + 280
ad = "right"
ox = "280"
oy = "0"
End Select
Iar acesta este butonul de pauza:
Private Sub cmdPause_Click()
Timer1.Enabled = False
MsgBox "Game Paused"
Timer1.Enabled = True
End Sub
Si cam acesta este jocul meu „Snake”!
6. Bibliografie
1. Pătruț, Bogdan – „Aplicații în Visual Basic”, Editura Teora, București, 1998-2004
2. Pătruț, Bogdan – „Programarea calculatoarelor electronice – Îndrumar pentru laborator. Aplicații în Visual Basic”, Editura Tehnopress, Iași, 2005.
3. Pătruț, Bogdan – Curs de programarea calculatoarelor electronice, Universitatea din Bacău, http://stiinte.ub.ro/bogdan/cursuri/pceasic”, Editura Tehnopress, Iași, 2005.
3. Pătruț, Bogdan – Curs de programarea calculatoarelor electronice, Universitatea din Bacău, http://stiinte.ub.ro/bogdan/cursuri/pce
6. Bibliografie
1. Pătruț, Bogdan – „Aplicații în Visual Basic”, Editura Teora, București, 1998-2004
2. Pătruț, Bogdan – „Programarea calculatoarelor electronice – Îndrumar pentru laborator. Aplicații în Visual Basic”, Editura Tehnopress, Iași, 2005.
3. Pătruț, Bogdan – Curs de programarea calculatoarelor electronice, Universitatea din Bacău, http://stiinte.ub.ro/bogdan/cursuri/pce
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: 2. Utilizarea aplicației „Snake” (ID: 163693)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
