Problema con il tempo postato il 10/09/2014 14:41:23 nel forum programmazione, gdrcd, open source, hosting
Salve a tutti, sto studiando tutto quel che c'è da sapere sulla programmazione.
Per fare pratica, sto usando gdrcd.
C'è un argomento che proprio non riesco a capire:
il tempo. xD
Vorrei far si che il viaggio non sia istantaneo (come lo è in gdrcd con le mappe mobili).
Vorrei anche mettere una certa distanza tra una mappa e l'altra ( ho pensato di inserire certe coordinate nel database per ogni mappa (x e y) per calcolare la distanza).
Inoltre vorrei stampare il timeout del viaggio nella colonna in basso del mio layout.
Il problema però è che le funzioni per manipolare il tempo in php,js e mysql non le riesco proprio a capire.
Non è che qualcuno potrebbe spiegarmelo o semplicemente linkarmi guide semplici che mi permettano di fare ciò?
Grazie in anticipo :p
Pagine → 1
10/09/2014 15:16:57
http://php.net/manual/en/refs.calendar.php
Questa è la documentazione ufficiale.
Magari comunque se ci spieghi più chiaramente il problema ti possiamo aiutare meglio :)
10/09/2014 15:38:37
Innanzitutto grazie di aver risposto.
vorrei far si che lo spostamento delle mappe mobili in gdrcd non fosse istantaneo ovvero:
partenza----> timeout -----> cambio posizione personaggio.
Inoltre vorrei che il tempo in cui viaggi sia stampato a video nella colonna bassa del layout...
Spero di essere stato chiaro xD
11/09/2014 09:10:05
Non so come funziona il sistema mappe di gdrcd, ma ad occhio non credo che ti serva lavorare con il tempo.
Io dividerei la mappa in una griglia immaginaria, assegnando ad ogni luogo una coordinata X,Y in base alla posizione sulla mappa. A quel punto se devo muovermi dalla chat A (1,3) alla chat B (4,2) mi basta calcolare la distanza minore fra i due punti e moltiplicare il numero di caselle occorrenti per una costante fissa. Ecco il tempo di spostamento.
Esempio pratico:
Prendo una griglia 5x5, con i due punti alle coordinate descritte prima. Per muovermi dal punto A al punto B la strada più veloce prevede spostarmi di 3 caselle sull'asse X (1,3 ---> 4,3) e poi salire di una sull'asse Y ( 4,3 ---> 4,2).
In totale sono 4 spostamenti. Se per ogni spostamento calcoliamo 15 secondi -> Dal punto A al punto B bisogna attendere 60 secondi.
11/09/2014 11:09:16
Il gdrcd 5.x salva nel database le coordinate in pixel della locazione sulla mappa, per cui potrebbe anche eventualmente sfruttare quelle coordinate per calcolare la distanza tra la locaizone attuale e quella di arrivo quando f ail click su una nuova locazione, con delle smeplici funzioni matematiche, e da li calcolare il tempo di percorrenza da stampare
11/09/2014 16:14:38
Si, sulle coordinate avevo pensato anche io a qualcosa del genere.
Il problema però è un altro :
come avvio un countdown?
come lo stampo a video nella bottom column?
come faccio a far si che se un countdown è avviato il personaggio non può viaggiare finchè il countdown non termina?
Riguardo ai calcoli matematici riesco a sbrigarmela da solo, ma le funzioni per manovrare il tempo proprio non riesco a capirle.
11/09/2014 16:22:41
Una soluzione potrebbe essere 8te la spiego a livello di concetto, dopo per le eventuali funzioni dovresti fare nel dettaglio tu):
ti crei un nuovo campo nel database di tipo DATETIME nella tabella personaggio, che chiamerai come vuoi, dove salvare il dato della data e orario dia rrivo del pg nella nuova locaizone.
Quando un pg si sposta da un punto all'altro della mappa prime recuperi se il pg ha gia ocmpletato qualsiasi altro spostamento con una quesry di SELECT sul campo usato per salvare la data/ora di fine spostamento.
Se quel valore è minore dell'orario attuale, ti calcoli il tempo di spostamento rispetto alla data/ora e calcolando l'orario di arrivo aggiorni il campo del database.
Per stampare poi la data/ora di arrivo dove vuoi lo stesso usi una query di SELECT per farlo recuperandola dal database
11/09/2014 17:04:28
11/09/2014 17:22:43
calcolandoti la distanza con le formule matematiche otterrai un valore numerico della distanza in pixel ta partenza e arrivo, non ti resta che decidere a quanto tempo corrisponde ogni pixel (supponiamo 1 minuto, valore solo per fare l'esempio) ti calcoli il tempo in minuti in base al risultato, supponiamo 10 pixel, quindi 10 minuti e poi fa una query del tipo
11/09/2014 17:53:51 e modificato da alfonso cavallieri il 11/09/2014 17:56:30
(ora apparirò rompi scatole, lo so xD)
Potresti farmi un esempio di inserimento di una variabile per aggiungere minuti al tempo?
ps: è da precisare che il luogo che il giocatore selezionerà come destinazione io non la conosco, tantomeno l'origine. Insomma, vorei automatizzare la cosa, come potrei fare?
Discussione seguita da
Pagine → 1
Rispondi alla Discussione Aggiungi ai Preferiti Inoltra Discussione Forum Programmazione, GDRCD, Open Source, Hosting Elenco Forum
World of Warship: Battaglie Asimmetriche nel 14.5
nereya ha aperto una nuova discussione: Nuova Frontiera
The Coven → Negli scorci di luce delle paludi della Louisiana fioriscono nuove ombre. Estend e la Congrega ti aspettano per vivere emozionanti avventure!
New Wizarding World: Un nuovo Medimago
Sea of Conquest: Incontra Demona Rood! 🔥
anacronista ha recensito Storie di Agarthi
The Coven → Negli scorci di luce delle paludi della Louisiana fioriscono nuove ombre. Estend e la Congrega ti aspettano per vivere emozionanti avventure!
Nyx Insight - Project S.E.T.: Setting Refresh Time ✨
mhorras1988 ha recensito Fengard
prosperus ha recensito Exclusive Villa GdR
visanders ha aperto una nuova discussione: Aiuto ricerca Gioco
Dominion Gdr → In una NY con un tessuto sovrannaturale nascosto, la Reggenza Vampirica e il Queens dei Lupi ribollono sotto il Dominio dei Bokor. Quanto durerà la pace?
kooei ha recensito Il Paiolo Magico
emiko ha recensito La Tana del Ladro
Entropia Universe: 💥 Evento Summer Mayhem 2025
Exclusive Villa GdR → Las Vegas, azzardo, vizi, soldi, intrighi... Più le sue luci sono scintillanti, più le sue ombre sono oscure. La città che non dorme mai, vi aspetta.
Shydra - Shydra, gioco di ruolo in stile Dungeons and Dragons presentato da Silu
Histats - Scopri il sistema di statistiche web per il tuo gioco! Histats è gratuito!
Terry Brooks - La biografia di uno dei più grandi autori viventi di romanzi fantasy
Evoluzione Grafica - L'evoluzione grafica nei GDR-online. Abuso di Photoshop contro gioco. Chi vincerà la sfida?
Gemme - Le gemme nel fantasy: caratteristiche, caratura, tagli e tipologie!
Shenteon - Intervista ai gestori del gioco di ruolo fantasy classico Shenteon - L'Eredità delle Lune
Sondaggi - Partecipa ai sondaggi di GDR-online.com ed esprimi la tua opinione su tanti quesiti!
Dark Genesis - Ascendi al cielo in Dark Genesis! Raduna potenti semidei, costruisci il tuo impero volante e scontrati in battaglie divine!