|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Jul 2005
Città: Silent Hill
Messaggi: 1471
|
[CICLO 8] Storia 2
Storia 2: Quando una gemma è a contatto con altre dello stesso colore, e queste formano un quadrilatero nella griglia (quadrato o rettangolo di dimensioni qualsiasi), formeranno un agglomerato. Le gemme nell'agglomerato useranno delle png differenti a seconda che si trovino nei bordi dello stesso (4 angoli e 4 lati) o al suo interno. L'agglomerato è considerabile come un oggetto complesso, il cui valore di punteggio è pari alla somma dei singoli punteggi delle gemme componenti, moltiplicato per un bonus (il valore del bonus è unico per tutti gli agglomerati, ed è variabile da GameConfig). Le gemme presenti in un agglomerato non possono più tornare ad essere singole.
Terminata la storia, occorre eliminare l'illuminazione per le gemme uguali adiacenti. Punti cardine da tenere a mente durante i lavori:
__________________
DIAMOND CRUSH - Aut viam inveniam, aut faciam. Ultima modifica di Jocchan : 10-01-2006 alle 22:27. |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Jul 2005
Città: Silent Hill
Messaggi: 1471
|
Linee guida per le texture degli agglomerati
I file che ho appena committato in gfx/gems/tiles hanno una struttura diversa da quella delle texture precedenti. Possiamo assimilarli ad una griglia 6x6 strutturata come in questo file di esempio: ![]() Griglia e coordinate sono ovviamente presenti solo per chiarezza. Come potete vedere, le maxigemme usano una struttura a tile (unico metodo che ci consente di avere agglomerati di dimensioni qualsiasi), e nei file è già presente un sistema per ricavare delle animazioni (che inseriremo in un altro ciclo). Per ora, quindi, utilizzeremo soltanto la porzione di png che racchiude le caselle da A1 a C3, ignorando temporaneamente le altre. Le caselle A1, A3, C1 e C3 andranno a rivestire gli angoli degli agglomerati. Per i lati useremo A2, B1, B3 e C2, mentre per le caselle all'interno ripeteremo B2 finchè necessario. Buon divertimento ![]()
__________________
DIAMOND CRUSH - Aut viam inveniam, aut faciam. |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Oct 2001
Messaggi: 11471
|
Task:
8.2.1: Vifani: completato Modificare il codice che rileva le gemme addiacenti in modo che riconosca solo gruppi di gemme che formano un rettangolo o un quadrato. 8.2.2: thebol + ??: ?? Quando un gruppo rettangolare o quadrato di gemme viene riconosciuto al posto delle gemme dev'essere disegnata una gemma grande usando i tile dell'immagine di Jocchan. 8.2.3: jappilas + fek: completato Modificare bagofgem in modo che il punteggio delle gemme che fanno parte di un gruppo sia moltiplicato per un Bonus. Il valore del bonus deve essere modificabile da GameConfig.xml 8.2.4: Vifani: completato Eliminare il codice e i test che illuminano le gemme addiacenti. ciao ![]() Ultima modifica di VICIUS : 18-01-2006 alle 16:09. |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Apr 2001
Città: Bari
Messaggi: 2776
|
Il task 8.2.1 è mio, ma ho bisogno di al più 4 giorni, ma molto probabilmente finirò prima.
|
![]() |
![]() |
#5 |
Senior Member
Iscritto dal: Dec 2000
Città: bologna
Messaggi: 1309
|
mi prenoto per l' 8.2.2 in pair
![]() |
![]() |
![]() |
#6 |
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
aaaaaargh, il primo lo volevo io!!
![]() ![]() vabbè, vorrà dire che farò il secondo alla fine mi chiameranno the pair man ![]() thebol, quando? ![]() considera che io devo anche fare un task della storia precedente, ma non ho ben capito quand'è che va bene per Bonfo... io cmq ci sono praticamente tutte le sere, altrimenti vi avviso. PS: vicius, considera che questa è la storia che mi piace di più, quella che apettavo praticamente dall'inizio del gioco ![]() quindi se per voi sto facendo troppi task piuttosto che rinunciare a questo preferisco rinunciare a quello della Storia 1 ^^ Ultima modifica di 71104 : 11-01-2006 alle 11:17. |
![]() |
![]() |
#7 |
Senior Member
Iscritto dal: Dec 2000
Città: bologna
Messaggi: 1309
|
per me vanno bene tutte le sere tranne venerdi.
sabato e domenica pero sono in forse. cmq ho paura che sara dura farlo in una sera sola sto task |
![]() |
![]() |
#8 |
Senior Member
Iscritto dal: Apr 2003
Città: Genova
Messaggi: 4741
|
sto studiando l' 8.2.3
![]()
__________________
Jappilas is a character created by a friend for his own comic - I feel honored he allowed me to bear his name Saber's true name belongs to myth - a Heroic Soul out of legends, fighting in our time to fullfill her only wish Let her image remind of her story, and of the emotions that flew from my heart when i assisted to her Fate
|
![]() |
![]() |
#9 |
Senior Member
Iscritto dal: Apr 2001
Città: Bari
Messaggi: 2776
|
Ragazzi ho bisogno di un paio di giorni in più per realizzare il mio task. Purtroppo risulta essere più dura di quanto pensassi all'inizio. Comunque quasi tutti i test che mi ero prefisso sono passati. Manca solo qualcosina.
|
![]() |
![]() |
#10 |
Senior Member
Iscritto dal: Dec 2000
Città: bologna
Messaggi: 1309
|
np
![]() |
![]() |
![]() |
#11 |
Senior Member
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11782
|
8.2.3 completato
__________________
"We in the game industry are lucky enough to be able to create our visions" @ NVIDIA |
![]() |
![]() |
#12 |
Senior Member
Iscritto dal: Apr 2001
Città: Bari
Messaggi: 2776
|
8.2.4 lo farò io. E' incluso nel mio task perché con il nuovo rilevamento delle gemme addiacenti, i test vecchi falliscono sempre per ovvie ragioni.
|
![]() |
![]() |
#13 | |
Senior Member
Iscritto dal: Apr 2001
Città: Bari
Messaggi: 2776
|
I test che ho identificato relativi al task 8.2.1 sono i seguenti:
Quote:
|
|
![]() |
![]() |
#14 | |
Senior Member
Iscritto dal: Apr 2001
Città: Bari
Messaggi: 2776
|
I seguenti sono una rivisitazione dei vecchi test. Fanno parte del task 8.2.4.
Quote:
|
|
![]() |
![]() |
#15 |
Senior Member
Iscritto dal: Oct 2001
Messaggi: 11471
|
Ho dato una letta veloce hai test e mi sembrano buoni. Per rendere i test più semplici prova ad usare una funzione di appoggio simile a questa.
Codice:
private static void insertAndUpdate(Gem gem, int x, int y) { grid.insertGem(x, y, gem); grid.update(timer, gem); } ![]() |
![]() |
![]() |
#16 |
Senior Member
Iscritto dal: Apr 2001
Città: Bari
Messaggi: 2776
|
Ci avevo pensato, però avevo visto che nessuno lo aveva fatto e quindi pensavo non fosse necessario. In ogni caso ho un altro problema: la complessità ciclomatica dell'algoritmo messo a punto è troppo elevata. Se faccio la commit il checkstyle fallirà sicuramente.
|
![]() |
![]() |
#17 | |
Senior Member
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11782
|
Quote:
Per quanto rigarda la complessita' ciclomatica, qualche Extract Method e vedi che piombera' a valori accettabili e aprira' la strada per altri refactoring.
__________________
"We in the game industry are lucky enough to be able to create our visions" @ NVIDIA |
|
![]() |
![]() |
#18 | |
Senior Member
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11782
|
Quote:
__________________
"We in the game industry are lucky enough to be able to create our visions" @ NVIDIA |
|
![]() |
![]() |
#19 | |
Senior Member
Iscritto dal: Apr 2001
Città: Bari
Messaggi: 2776
|
Quote:
Comunque l'algoritmo è a posto e funziona perfettamente: i test passano. Il tempo di ridurre le complessità ciclomatica e metto tutto su SVN. Conto di finire il tutto questa sera. |
|
![]() |
![]() |
#20 | |
Senior Member
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11782
|
Quote:
![]() E nonostante questo stiamo per finire tre storie invece di due.
__________________
"We in the game industry are lucky enough to be able to create our visions" @ NVIDIA |
|
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 22:44.