Sunteți pe pagina 1din 6

Universitatea din Bucureti Facultatea de Matematic i Informatic

Realizatori:
Badea Adrian
Blbe Florin-Daniel
Bobin Marius
Cepan Liviu

Universitatea din Bucureti Facultatea de Matematic i Informatic
Cuprins


1. Descriere .............................................................................. 3
2. Cerinte in limbaj natural ....................................................... 8
3. Specificatii JML .................................................................... 9
4. Diagrame UML ..................................................................... 19
4.1 Diagrama de clase ................................................... 19
4.2 Diagrama de secvente ............................................. 25
4.3 Diagrama de stari + Use case diagram ....................... 27
5. jUnit Testing. 28











Universitatea din Bucureti Facultatea de Matematic i Informatic
Descrierea
FMI Minions este un joc single player n care juctorul trebuie s i ajute
pe minioni galbeni s i nfrng pe cei mov. n urma unui experiment nereuit n
laboratorul doctorului Gru o parte din minioni galbeni a fost infectat cu un virus
care le transform culoarea pielii, n mov din galben, i comportamentul, din fiine
ambile care lucreaz n laborator n animale ce distrug totul n cale. Singura cale
de a salva laboratorul este ca minioni buni, ajutai de juctor, s i nfrang pe cei
ri.
Din cauz c nu au arme la dispoziie sau vreun ser antidot care s-i
transforme pe minioni mov la normal, minioni galbeni ncearca folosind banane,
deoarece banenele sunt hrana principal i preferat a minionilor, deci ei spernd
c instinctele de baz ale minionilor mov se vor trezi n prezena mncrii lor
preferate.
Vznd c sunt depii numeric minioni mov au construit baricade dupa
care se ascund, astfel ferindu-se de atacuri. Baricadele sunt facute din cutii
gasite n laborator, care pot fi distruse dac sunt lovite de o banan sau de un
minion galben.
Inventivi ca de obicei minioni galbeni au adus o catapult cu care se vor
lansa peste sau prin obstacolele i vor ncerca sa i loveasc pe inamici din aer
pentru ai putea nvinge. Fiecare minion galben poate lua asupra sa un anumit
numar de banane cu cere se va lansa. Folosind i rezultatul unui experiment
trecut reuit, o poiune ce permite celui care o bea sa zboare pentru un numar
limitat de timp, unii minioni se pot opri n aer si de acolo s arunce cu banane.
Jocul este structurat pe cinci nivele. Fiecare nivel are un anumit numr de
minioni galbeni i mov, dar i obstacole/baricade diferite de celelalte. La nceput
este deblocat doar nivelul unu, ca mai apoi pentru a debloca un nou nivel trebuie
s termini ultimul nivel deblocat anterior. Un nivel este terminat atunci cnd toi
minioni mov sunt nvini.
Pentru fiecare nivel avem patru tipuri de dificultate(enumerate de la cel mai
uor la cel mai greu): easy,medium, hard i extreme. Cu ct dificulatea e mai
Universitatea din Bucureti Facultatea de Matematic i Informatic
mare cu att minioni mov se vor mica mai rapid, deci vor fi mai greu de lovit i
eliminat.
La completarea unui nivel jucatorul primete un scor egal cu numarul de
minioni galbeni rmai nefolosii. Scorul este cumulativ pe sesiune, adic dac
sunt completate nivele n aceai sesiune, scorul pentru nivelul completat este
suma scorurilor nivelulilor completate anterior n aceeai sesiune plus scorul
nivelul actual .
Jocul salveaz automat progresul jucatorului dupa fiecare nivel completat
i permite crearea de profile independente, fiecare cu progresul i scorul
acumulat.

Tehnologii folosite:

Jocul este devoltat n limbajul de programare Java folosind mediul de
dezvoltare NetBeans IDE. Toate componentele jocului au fost realizate cu
facilitaile standard ale limbajului. Dintre acestea amintim:
1. Java AWT
Pachetul AWT(Abstract Window Toolkit) este platforma originala oferita de
limbajul Java n ceea ce privete crearea de aplicaii cu interfa grafic dar i
managementul evenimentelor( mouse click sau apasare tast);
2. Java Swing
Dezvoltat pe baza pachetului AWT, pachetul Swing a fost creat pentru a
oferi un plus de mijloace si faciliti pentru dezvoltare aplicaiilor grafice (GUI),
oferind un aspect mai placut i foarte apropiat de cele oferite de aproape toate
platfor- mele. Spre deosebire de AWT, Swing este independend de platform
(Windows, Linux sau Macintosh) , codul folosit fiind scris integral in Java,
dependenele legate de caracteristicile codului n funcie de platform ale
pachetului AWT fiind eliminate.


Universitatea din Bucureti Facultatea de Matematic i Informatic
Cerine n limbaj natural
1) La deschiderea aplicaiei va aparea un meniu cu patru butoane:
i) New Game permite jucatorului s i creaze un nou profil, deci implicit
un nou joc cu toate componentele n stare iniial.
ii) Load Game permite jucatorului s ncarce un profil creat anterior i s
restaureze starea jocului de la ultima accesarea a profilului respectiv.
iii) Controls i va arata jucatorului ce butoane sunt folosite n controlarea
jocului.
iv) Exit Game jucatorul va putea iei din aplicaie dupa ce va confirma ca
actionarea butonului nu a fost facut din greeal.
2) La click pe butonul New Game jucatorul va putea s creeze un nou profil. La
apsarea butonului OK :
i) va trece mai departe n alegerea dificutii jocului.
ii) dac jucatorul nu furnizeaz un nume va fi atenionat de acest lucru i
nu va fi lasat s avanseze.
3) La click pe butonul Load Game jucatorul va alege dintr-o list de profile
salvate unul pentru restaurare(acionarea butonului OK) sau tegere din list
(actionarea butonului Delete).
4) Dup avansarea rezulatat din apsarea butonului OK n situaiile descrise la
punctele 2) i 3) jucatorul va alege dintr-o list de dificulti dificulatea la care
va juca.
5) Fiecare dificultate va avea cinci nivele. La nceput va fi deblocat nivelul unu,
ca mai apoi deblocarea nivelului x va fi condiionat de completarea nivelului
x-1.
6) Nivele unei dificulti vor fi independende de nivelele celorlate dificulti
(deblocarea nivelului x la o anumit dificultate nu va fi facut la toate
dificultaile).
7) Un nivel va fi completat dupa ce au fost eliminai toi inamici.
8) Completarea unui nivel va realiza deblocarea urmatorului dac exist i
acordarea punctajului pentru nivel.
9) Punctajul este cumulativ pe sesiune.
10) Dac un nivel nu este completat se va afia un mesaj corespunztor i va fi
repornit.
11) La completarea unui nivel :
i) starea jocului va fi salvat automat.
Universitatea din Bucureti Facultatea de Matematic i Informatic
ii) Se va afia un mesaj corespunztor.
iii) Va fi deblocat nivelul urmator, dac exist.
iv) Va fi ncrcat nivelul urmtor, dac exist, sau rencrcat cel curent
dac nu exist nivel urmtor.
12) n fiecare meniu, mai putin cel principal, va exista un buton Back care
permite ntoarcerea la meniul anterior.
13) Un minion va fi lansat dupa ce este acionat catapulta, distana parcurs
i naltimea atins fiind determinate de unghiul si gradul de ntindere al
catapultei.
14) Unii minion vor putea fii oprii n aer pentru un timp limitat (timpul petrecut
n aer de un minion s nu depeasc 10 secunde).
15) Se va trece la minionul urmator dac:
i) Minionul curent a ieit din fereastr
ii) Minionul curent atinge unul din obstacole sau terenul de jos.

S-ar putea să vă placă și