No non è affatto teribile...anzi è un buon punto di partenzaOriginariamente inviato da narghat Ci ho messo quasi 6 ore per partorire sta cosa, è terribile?![]()
![]()
non ho capito solo un paio di cose:
1)ma un giocatore può partecipare contemporaneamente a più missioni di più tipi (per esempio a una storyline, una normale e una condivisisa)?
2)inoltre non ho capito se i progressi delle missioni condivise sono er singolo giocatore o per la missione in generale suppongo la seconda ipotesi)
in ogni caso vediamo un po' come potremmo risistemare il tutto...
prima cosa considererei la missione Normale come un sottotipo di Storyline formata da un'unica missione, in modo da avere una gestione unficata delle mssioni...in pratica tu devi preoccupare di gestire solo missioni Storyline
di conseguenza consideriamo anche la missione Normale come una missione Condivisa con numero di posti totali = 1
a questo punto
[CODE]
+giocatori
id_giocatore
nome_giocatore
ecc...
--da missioni togliamo gli obiettivi e li mettiamo a parte così possono essere 1 o n
--e togliamo posti_liberi (metteremo poi posti_totali nella storyline)
+Missioni
id_missione
nome_missione
descrizione_missione
posti_totali
durata
ecc...
--in obiettivi missione la pk sarà (id_missione + id_obiettivo)
+Obiettivi_missione
id_missione
id_obiettivo
descrizione
progresso_obiettivo
ecc ...
+storyline_missioni
id_storyline
id_missione
id_prog
id_stato (1=attiva 0=già chiusa o ancora da sbloccare)
+missioni_giocatore (pk id_storyline+id_giocatore)
id_storyline
id_giocatore
+id_storyline
id_storyline
posti_totali
ecc
[CODE]
facciamo degli esempi:
+missioni_giocatore
id_storyline id_giocatore
1 ------- 444
2 ------- 666
3 ------- 888
3 ------- 999
Da qui vediamo che attualmente nel gioco ci sono 4 giocatori (con id 444,666...)
e 3 missioni (abbiamo detto che tutte le missioni sono storyline)
+id_storyline
id_storyline posti_totali
1 ------ 1
2 ----- 1
3 ------ 5
Da qui scopriamo che la soryline 3 èuna condivisa con cinque posti totali (quindi ce ne sono ancora 3 disponibili)
+storyline
id_storyline|id_missione|id_prog|id_stato
1 ------- 1 ------- 1 ------- 1
2 ------- 14 ------- 1 ------- 0
2 ------- 32 ------- 2 ------- 0
2 ------- 12 ------- 3 ------- 1
2 ------- 44 ------- 4 ------- 0
3 ------- 16 ------- 1 ------- 1
da qui vediamo che
-la storyline 1 e 3 sono composte ciascuna da un'unica missione (con id 1, e con id 16) che è attiva
-la storyline 2 è composta da 4 missioni (con id 14,32, ecc) delle quali è attiva la terza (id_prog=3) con id_missione 12 e che la prossima da sbloccare la missione con id 44
ecc. ecc.
vedi un poi se ti torna![]()