Oggetti e statistiche [gdrcd 5.4] postato il 26/05/2020 11:00:10 nel forum programmazione, gdrcd e open source
Salve a tutti! Ancora una volta noi. In questi giorni stiamo cercando di implementare qualche piccola "chicca", per così dire, dopo mesi di lavoro per rendere il tutto funzionante e anche esteticamente gradevole. Grazie a questo portale siamo riusciti a fare molto senza chiedere nulla direttamente ma ora le cose iniziano a farsi più complesse, per noi, che siamo quasi al termine. Ovviamente in quanto amatori nel campo abbiam fatto quello che potevamo, sperando che possa bastare. E se non basterà, dopo l'alfa, chiuderemo e riproveremo.
Venendo al dunque, quello che vorremmo fare è far si che gli oggetti indossati dal pg, che posseggono una modifica alle caratteristiche, andassero a modificare proprio le caratteristiche, sommandosi ai valori presenti nella scheda del pg, e non nel tiro del dado sotto "oggetti". So che è possibile, ovviamente, ma se potreste, gentilmente, indicare i fogli su cui dovremmo lavorare (lasciandoci poi a sbattere il muso da soli come abbiam fatto per quasitutto, va bene anche così senza chiedervi più del dovuto) sarebbe un enorme aiuto.
Come sempre un umile grazie a chiunque ci darà risposta.
Pagine → 1
26/05/2020 11:21:33 e modificato da kasa il 26/05/2020 11:21:48
Buongiorno,
quello che ti conviene fare è creare una funzione ad hoc ( in functions.inc.php ) che, passato l'identificativo dell'utente e l'identificativo di una caratteristica ( da 0 a N, dove N è il numero di caratteristiche presenti ) ti restituisca la somma numerica della caratteristica del Personaggio e di tutti gli oggetti che devono fornire l'incremento ( nel db ´oggetto´.´bonus_carX´ dover X è l'identificativo numerico della caratteristica, appunto ). Puoi fare tutto con una sola chiamata a DB in teoria, ma se non ti trovi puoi chiamare prima la caratteristica indicata e poi tutti gli oggetti con il bonus da tener presente assegnati al PG e quindi sommare il tutto.
In questo modo avrai una funzione che potrai richiamare ovunque ti serva conoscere e far sapere quale è il valore "finale" della caratteristica del Personaggio.
Pertanto, dovrai inserire questa funzione in scheda.inc.php e in tutte le varie sezioni dove effettivamente è importante tenere conto del valore. Conta che ci sono anche le sezioni per la gestione del Personaggio ( come incrementi caratteristica, ad esempio ) che devi necessariamente passare in rassegna, in base a come vuoi predisporre questo incremento.
Inoltre devi chiaramente eliminare o modificare qualsiasi genere di trasformazione alle caratteristiche derivate dagli oggetti in ref_header.inc.php poichè, immagino, non ti servono più. Puoi anche semplicemente commentare le righe che non ti servono e modificare affinch´1e le variabili contenenti il bonus non vengano conteggiate.
Sia chiaro che questo avviene nel momento in cui TUTTI gli oggetti forniscono l'incremento... Qualora questo dovesse essere peculiarità di soli alcuni oggetti, devi aggiungere una colonna in ´oggetto´ che ti possa determinare quale elemento deve essere conteggiato e quale no nella funzione.
Spero di esserti stato utile.
Nel caso ci dovessero essere dubbi, non farti problemi.
26/05/2020 11:27:50
26/05/2020 11:43:24
La cosa meno complessa sarebbe quella di inserire nella tabella ´oggetto´ una nuova colonna ( ad esempio ´bonus_permante´ o qualcosa di simile ) di tipo numerico TINYINT(1), in questo modo puoi segnare con 0 gli oggetti che non danno bonus permanente e con 1 quelli che lo forniscono (NdA: io solitamente uso valori numerici come "flag", ma puoi anche andare di ENUM('Si', 'No') che, alla fine, è la stessa cosa ).
Qui un esempio di aggiunta campo:
26/05/2020 11:47:11
03/06/2020 20:44:36
03/06/2020 20:51:26
Non vi preoccupate, è comprensibile.
Nel caso volesse continuare a sbatterci la testa contro, potete postare qui gli errori e i tentativi... Tanto, con una bella dose di impegno e bernoccoli, si può risolvere.
Discussione seguita da
Pagine → 1
Rispondi alla Discussione Aggiungi ai Preferiti Inoltra Discussione Forum Programmazione, GDRCD e Open Source Elenco Forum
I dati del generatore di rank sono stati aggiornati!