|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Jul 2005
Città: Silent Hill
Messaggi: 1471
|
[CICLO 5] Storia 2
Storia 2: Creazione di una nuova gemma quando la precedente tocca il fondo o una gemma sottostante (emissione del bip in entrambi i casi), con rilevamento delle collisioni tra le gemme presenti nell’area di gioco (non sarà possibile spostare la gemma in una casella già occupata da un'altra). Introduzione di un contatore per il punteggio del giocatore, inizializzato a zero, capace di assumere valori validi di 8 cifre e mostrato su schermo mediante una png contenente le cifre nelle 10 caselle che la compongono.
Ogni volta che un diamante collide con il fondo (o con una gemma al di sotto di esso) il contatore del punteggio viene incrementato di 1. Punti cardine da tenere a mente durante i lavori:
__________________
DIAMOND CRUSH - Aut viam inveniam, aut faciam. Ultima modifica di Jocchan : 14-11-2005 alle 21:22. |
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Oct 2001
Messaggi: 11471
|
Task:
5.2.1: Cionci: completato Quando la gemma collide con il bordo inferiore dell'area di gioco ne deve essere creata una nuova nella parte superiore che diventa quella gestita tramite input da tastiera. 5.2.2: Cover + TigerShark: completato Modificare Grid in modo che lo spostamento verticale della gemma sia fermato se la casella della riga sottostante è gia occupata. (solo pair programming) 5.2.3: DanieleC88: completato Impedire lo spostamento laterale della gemma se la casella nella colonna di destinazione è occupata. (solo pair programming) 5.2.4: 71104: completato Aggiungere la possibilità di disegnare un numero intero di massimo 8 cifre usando la clase Sprite e come base una texture. 5.2.5: Vifani: completato Visualizzare nella casella dello score presente alle coordinate 219x421 il numero di diamanti presenti all'interno della griglia. Ogni cifra deve essere distanziata dall'altra 11 pixel. ciao Ultima modifica di VICIUS : 23-11-2005 alle 13:49. |
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
|
5.2.2 va svolto in Pair Programming.
__________________
"We in the game industry are lucky enough to be able to create our visions" @ NVIDIA |
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: May 2002
Città: Milan
Messaggi: 572
|
Io sarei tentato per il 5.2.2 per provare pair programming...se c'è qualcuno disposto, e con tanta pazienza
chi si offre volontario ? fek ? ![]() Sperando di non aver scelto il task più difficile / con più complicazioni ^^
__________________
.:. NEONISI .:. a new island for online auctions. It's worldwide, safe, simple and free. Join Us! Ultima modifica di cover : 14-11-2005 alle 22:43. |
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
|
La mia prossima vittima programmata sara' cionci
Ora preferisco che proviata a fare Pair Programming fra di voi.
__________________
"We in the game industry are lucky enough to be able to create our visions" @ NVIDIA |
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
|
ci proviamo insieme cover???
x me andrebbe bene domani e dopodomani dopo le 19.00..... certo ke se magari ci seguono gli altri mentre scriviamo è pure meglio! ![]() EDIT: ma non dovremmo aspettare che il task 1 sia implementato prima???
__________________
Ultima modifica di ^TiGeRShArK^ : 15-11-2005 alle 00:59. |
|
|
|
|
#7 | |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Quote:
Avrei una domanda sul 5.2.3: supponendo che la gemma si trovi nella cella [Y, X]...e la cella [Y+1, X+1] contenga una gemma... La gemma in [Y,X] si trova all'inizio della cella (ricordiamoci che l'hot spot è in alto a destra)... Vengono svolti diversi update in cui al gemma si sposta verso il basso, ma rimane ancora in [Y, X]... Viene premuto il tasto sx, la gemma in questo caso non si deve spostare nella casella [Y, X+1] perchè andrebbe a collidere lateralmente, ma solo dal punto di vista grafico, non dal punto di vista della cella, con la gemma in [Y+1, X+1]... E' giusto questo comportamento ? Quindi non solo bisogna controllare che non ci siano collisioni con le gemme nelle caselle adiacenti lateralmente, ma che non ci siano anche nelle diagonali inferiori se la gemma non si trova all'inzio della cella... Direi che se si aggiunge anche questo punto di vista il task 5.2.3 diventa più complesso del 5.2.2...e quindi direi che sarebbe meglio fare questo in pair programming... Quindi per motivi di tempo io prenderei quello dei due che non si svolge in pair programming... Quali sono le priorità fra i task ? Ultima modifica di cionci : 15-11-2005 alle 09:46. |
|
|
|
|
|
#8 | |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Quote:
|
|
|
|
|
|
#9 | ||
|
Senior Member
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
|
Quote:
Quote:
__________________
"We in the game industry are lucky enough to be able to create our visions" @ NVIDIA |
||
|
|
|
|
#10 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Allora mi prenoto per il 5.2.3, potrei fare anche il 5.2.1, ma fino a mercoledì pomeriggio/giovedì non ho un briciolo di tempo
|
|
|
|
|
#11 | |
|
Senior Member
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
|
Quote:
__________________
"We in the game industry are lucky enough to be able to create our visions" @ NVIDIA |
|
|
|
|
|
#12 |
|
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
il 5.2.4 sembra carino, mi prenoto
dubbi: va disegnato uno sprite per ogni cifra o tutto il numero va in un unico sprite? (propongo la prima...) stima, be', bu, boh, facciamo 1 giorno a partire dal termine del task per cui mi sono prenotato alla Storia 1. PS: per non scrivere valori costanti nel codice direi di inserire il valore degli 11 pixel in config come "digitSpacing". |
|
|
|
|
#13 | |
|
Senior Member
Iscritto dal: Oct 2001
Messaggi: 11471
|
Quote:
ciao |
|
|
|
|
|
#14 | ||
|
Senior Member
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
|
Quote:
Tutto testato ovviamente. Mi raccomando la test list prima di iniziare. Quote:
__________________
"We in the game industry are lucky enough to be able to create our visions" @ NVIDIA |
||
|
|
|
|
#15 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Per il 5.2.1, caso mai lo facessi io: dal punto di vista della metodologia di sviluppo, è più coerente sviluppare una nuova classe che gestisce l'inseriemnto e l'arrivo in fondo della gemma controllata oppure ampliare Grid ?
|
|
|
|
|
#16 | |
|
Senior Member
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
|
Quote:
Ti posso dire quello che farei io. Io scriverei la cosa piu' semplice che mi viene in mente, quindi scriverei subito dentro Grid. Una volta finito il task guarderei Grid e e come il codice si e' evoluto e cercherei di capire come vuole essere strutturato meglio. Quindi cercherei possibilita' di refactoring ed un refactoring possibile e' quello di estrarre comportamenti comuni in una nuova classe. Grid sta crescendo e prima o poi dovremo prenderne atto e alzare il suo livello di astrazione, quindi estrarre delle classi e definire il comportamento di Grid in termini di composizione di queste classi. Da fare subito? Dopo? Non saprei dirtelo, anche qui sta alla vostra sensibilita'. Tutto sto discorso per dirti: decidi tu
__________________
"We in the game industry are lucky enough to be able to create our visions" @ NVIDIA |
|
|
|
|
|
#17 |
|
Senior Member
Iscritto dal: Jul 2005
Città: Silent Hill
Messaggi: 1471
|
In realtà noi dobbiamo considerare ogni gemma come un quadrato 32x32, indipendentemente dalla forma che poi avrà.
Questo significa che, se è nota la coordinata (x, y) dello spigolo in alto a sinistra, possiamo ricavare quelle degli altri tre semplicemente aggiungendo il valore 32 alle coordinate: - spigolo in alto a destra -> (x+32, y) - spigolo in basso a sinistra -> (x, y+32) - spigolo in basso a destra -> (x+32, y+32) Sia chiaro che mi riferisco ad uno schema con l'origine degli assi in alto a sinistra, che dovrebbe essere unico per tutto il nostro progetto (così come il posizionamento dell'hot spot che, per quanto ne so, si trova anch'esso in alto a sinistra di ogni oggetto). Il rilevamento delle collisioni implica che questi quadrati in movimento non vengano mai sovrapposti, nemmeno di un pixel. Avendo a disposizione le coordinate di tutti e quattro gli spigoli, comunque, non dovrebbe essere troppo complesso.
__________________
DIAMOND CRUSH - Aut viam inveniam, aut faciam. |
|
|
|
|
#18 | |
|
Senior Member
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
|
Quote:
__________________
"We in the game industry are lucky enough to be able to create our visions" @ NVIDIA |
|
|
|
|
|
#19 | |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Quote:
|
|
|
|
|
|
#20 | |
|
Senior Member
Iscritto dal: Jul 2005
Città: Silent Hill
Messaggi: 1471
|
Quote:
Ovviamente se abbiamo una gemma in (x, y) ed una casella (x+1, y+1) occupata, potremo liberamente muoverci in (x+1, y) nella sua interezza: la collisione verticale verrà valutata solo quando fisicamente le due gemme andranno a toccarsi (cioè sarò ancora in grado di spostare la gemma un istante prima del contatto, per incastrarla da qualche altra parte). Per le collisioni orizzontali, visto che si salta istantaneamente da una casella all'altra, e non bisogna considerare caselle riempite solo parzialmente dalla gemma in caduta, il concetto è ancora più semplice
__________________
DIAMOND CRUSH - Aut viam inveniam, aut faciam. |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 06:50.


















