[GDRCD5]Richiesta codice monte ore postato il 27/11/2010 18:17:42 nel forum programmazione, gdrcd, open source, hosting
Semplicemente, c'è qualcuno che ha creato/ha ottenuto un codice funzionante per il calcolo di un monte ore e/o per la ricarica automatica della salute? Se si, è possibile averlo? grazie e scusate la schiettezza^^
Pagine → 1
27/11/2010 19:19:49
27/11/2010 19:52:29
Non c'è esattamente un codice, sto guardando come base uno vecchio che mi hanno passato da vedere, ma c'entra poco.. in pratica, per quello che serve a me, nello specifico dovrebbe controllare (automaticamente o su attivazione manuale, in base alle possibilità) un parametro che verifichi che nelle ultime 24 ore non c'è stato un "refresh". dopodichè controlla se la salute degli utenti è minore della salute massima, e se non sono morti la incrementa, e resetta il parametro di controllo.
L'altra sua funzione separata è quella di contare il tempo di gioco di un player, salvarlo nel db, dopodichè al refresh di cui sopra assegna exp extra in base al tempo (con un tetto massimo)e dia lo stipendio (quindi disabilitando la funzione dello stipendio della banca).
Sto provando a mangiarci sopra, ma finora ho solo risultati molto deludenti (infatti mastico ancora poco poco di php) e comunque mi sembra una funzione "comoda" anche per altre land, per cui se questo post diventasse anche una futura risorsa per GDRCD5 sarebbe fantastico.
Intanto grazie per la risposta...
27/11/2010 21:25:19
27/11/2010 21:48:12
grazie della dritta proverò a smanettarci sopra.
Per quanto riguarda la seconda parte si parla proprio di tempo giocato, per cui il parcheggiamento gratuito non conta in quanto non si azione.
intanto grazie mille, proverò a vedere se combino qualcosa di buono! in caso positivo posterò il codice!
28/11/2010 19:21:26 e modificato da ntg production il 28/11/2010 19:37:27
ok ,proverò a spiegarlo con il diagramma che sto seguendo per tentativi. Per chiarezza non è un codice, ma solo come ho scritto le cose per semplicità:
la parte di calcolo del tempo di gioco sarebbe così:
all'invio dell'azione del pg:
variabile del Personaggio $ultima_azione //orario azione precedente
variabile del Personaggio $monte_ore // la somma del tempo di gioco
variabile di funzione $azione_corrente //orario ultima azione
variabile di funzione $tempo_corrente //il tempo di stacco tra le ultime due azioni
parametro $tempo_min //il minimo di tempo tra azioni inviate
parametro $tempo_max //il max di tempo tra azioni inviate
parametro $max_monte_ore //il massimo di tempo accumulabile
$tempo corrente = $azione_corrente - $ultima azione
se ($monte_ore < $max_monte_ore){
se ($tempo corrente > $tempo_min){
se ($tempo_corrente < $tempo_max){
se ($monteore + tempo_azione > $max_monteore){
$monte_ore = $max_monte_ore;
}
altrimenti {
$monte_ore = $monte_ore + $tempo_corrente;
}
}
}
}
$ultima_azione = $azione_corrente;
questo succede invece allo scadere della giornata, ovviamente si può settare l'orario di calcolo delle 24 ore dall'ora preferita:
per ogni personaggio:
se ($salute < $salute_max){
se ($salute + $recupero > $salute_max){
$salute = $salute_max;}
altrimenti{
$salute = $salute + $recupero)
la variabile di recupero può essere fissa oppure dipendente dalel stat del personaggio, io preferirei la seconda, per dire.
questo invece succede allo scattare della settimana (io vorrei fare un conteggio settimanale di exp e soldi, però si potrebbe fare come si vuole):
per ogni personaggio:
parametro $min_monte_ore //il minimo di tempo che si richiede per ricevere i bonus;
variabile di funzione
$soldi_pg = $soldi_pg + $stipendio pg x 2; //come se il pg avesse lavorato poco, questo succede se un player non gioca il minimo;
se ($monte_ore >= $min_monte_ore) {
$soldi_pg = $soldi_pg + $stipendio_pg x 3 + floor(($monte_ore - $min_monte_ore)/$min_monte_ore) x $stipendio_pg; //se il player gioca il minimo prende lo stipendio di 5 giorni lavorativi, se gioca di più prende gli "straordinari", quindi da 1 a 2 stipendi extra;
$exp_pg = $exp_pg + $bonus_exp x 2 + floor(($monte_ore - $min_monte_ore)/$min_monte_ore) x $sbonus_exp; // il minimo sindacale di gioco aggiudica exp extra, giocando di più si ottengono incrementi equivalenti a quelli dello stipendio;
}
$monte_ore = 0; //questo accade a prescindere dallo stato del monte ore, allo scattare settimanale della funzione ogni monte ore viene riportato a 0.
Questo è quanto. spero di non aver omesso nulla... e per adesso torno a vedere se ottengo qualcosa di funzionale... grazie e ciau!
14/12/2010 16:21:03
ok, dopo un pò di tentativi, almeno la ricarica salute sono riuscito a terminarla (anche se è migliorabile, però almeno questa versione funziona)...
c'è da inserire il codice in una pagina apposta, io l'ho messa accessibile come opzione dal menù gestione per lasciare l'accesso ai solo addetti ai lavori^^
Il codice controlla se c'è stata una cura dall'ultima data registrata in Timeup, dopodichè aumenta la salute di tutti i pg.
Ovviamente, funziona una volta al dì^^
Enjoy!
25/02/2018 15:16:18
Porto in up il topic perchè nonostante non figurino errori, la salute non viene incrementata nè è presente alcun tasto per il controllo giornaliero sulla salute di tutti i personaggi. Qualcuno ha risolto?
Discussione seguita da
Pagine → 1
Rispondi alla Discussione Segui Discussione Inoltra Discussione Forum Programmazione, GDRCD, Open Source, Hosting Elenco Forum

lubeck ha risposto alla discussione: Far tornare di moda il PBC
leftbehindgdr ha risposto alla discussione: Left Behind
World of Tanks → Lanciati in epiche battaglie spalla a spalla con altri giocatori. Conquista la supremazia nel mondo dei Carri Armati!
Crystal Tokyo: Modifiche al mercato
Hero Wars: Evento Modelli di Tessitura 🧵
nightvale ha risposto alla discussione: Nightvale
Apocalypse Requiem: Detroit: I motori rombano: la McRace è arrivata!
AlterEgo → Scopri AlterEgo GdR: un incredibile universo narrativo in stile medievale fantasy che cresce, muta e vive giorno dopo giorno grazie ai suoi giocatori!
gdr-online.com ha aperto una nuova discussione: Changelog Ottobre 2025 ⚙️
Il gestore di Il Grande Blu ha risposto alla recensione di davemaster95
RAID Shadow Legends: Infoguida per niubbi!
FragPunk: Tuffati e unisciti al caos di Halloween! 👻
RAID Shadow Legends → Plasma i tuoi eroi fino a farli diventare vere e proprie armi viventi e assembla i più epici gruppi d'assalto mai visti finora!
I dati del generatore di rank sono stati aggiornati!
Cyberpunk NbG Re-Coded: Nuova Documentazione: Crew
Le Cronache di Raja Dunia: Personalizzazione Colore in Chat
Il gestore di Black Sails Chronicles ha risposto alla recensione di camiciaambrata
Storie di Agarthi → Un Varco si apre davanti a te, un mondo tra i mondi è a portata di mano. Lasciati alle spalle le certezze, inizia l'avventura!
Dallas Black Gold - Intervista alla gestione del play by chat moderno Dallas Black Gold... parti per il Texas!
Enlisted - Guida la tua squadra di soldati in combattimenti su larga scala, con fanteria, veicoli corazzati e aerei della IIa Guerra Mondiale!
Giocare ai GDR - Perché giocare ai GDR è utile? Scopriamolo in questo articolo!
Apocalypse Requiem - Intervista a tutto lo staff del gdr play by chat post apocalittico Apocalypse Requiem!
Lista Mud - Lista dei Multi user dungeon (Mud) presenti sul protale
Stili di Loghi - Stili di loghi: cosa sono e qual è la differenza!
Connessioni - L'insolita connessione tra casinò online e GDR: due mondi che si incontrano...
