Caratteristiche personali aumentabili
Caratteristiche personali aumentabili postato il 24/04/2014 14:58:51 nel forum programmazione, open source e hosting
Buon pomeriggio a tutti.
Andrò subito al sodo, sto cercando di permettere come per l'abilità personaggio di rendere anche le caratteristiche aumentabili con la spesa di punti esperienza.
Purtroppo non riesco a identificare bene la parte del codice che devo utilizzare o meglio modificare con i vari richiami e collegamenti che sono nella pagina scheda.inc.php
sono riuscito a far comparire il + però quando ci clicco non mi aumenta la caratteristica.
posto il pezzo di codice:
<!-- caratteristiche -->
<div class="profilo_voce">
<div class="profilo_voce_label">
<?php echo gdrcd_filter('out',$PARAMETERS['names']['stats']['car0']); ?>:
</div>
<div class="profilo_voce_valore">
<?php echo gdrcd_filter('out',$record['car0']+$record['bonus_car0']+$bonus_oggetti['BO0']); ?>
<?php /*Stampo il form di incremento se il pg ha abbastanza px*/
if((((($ranks[$record['car0']]+1)*$PARAMETERS['settings']['px_x_rank'])<=($px_totali_pg-$px_spesi))&&
(gdrcd_filter('get',$_REQUEST['pg'])==$_SESSION['login'])&&
($ranks[$record['car0']]<$PARAMETERS['settings']['skills_cap']))||
($_SESSION['permessi']>=MODERATOR)){ ?>
[<a href="main.php?page=scheda&pg=<?php echo gdrcd_filter('get',$_REQUEST['pg']) ?>&op=addcar&what=<?php echo $record['car0'] ?>">+</a>]
<?php if(($_SESSION['permessi']>=MODERATOR)&&
($ranks[$record['car0']]>0)){ ?>
[<a href="main.php?page=scheda&pg=<?php echo gdrcd_filter('get',$_REQUEST['pg']) ?>&op=subcar&what=<?php echo $record['car0'] ?>">-</a>]
<?php } ?>
<?php } else { echo ' ';} ?>
</div>
</div>
dove sbaglio?
sopra quasi all'inizio della pagina ho modificato così:
<?php }
} else {
$px_totali_pg=$record['esperienza'];
//carico le sole abilità del pg
$result=gdrcd_query("SELECT id_abilita, grado FROM clgpersonaggioabilita WHERE nome='".gdrcd_filter('in',$_REQUEST['pg'])."'", 'result');
$px_spesi=0;
while ($row=gdrcd_query($result, 'fetch')){
/*Costo in px della singola abilità*/
$px_abi=$PARAMETERS['settings']['px_x_rank']*(($row['grado']*($row['grado']+1))/2);
/*Costo totale*/
$px_spesi+=$px_abi;
$ranks[$row['id_abilita']]=$row['grado'];
}
gdrcd_query($result, 'free');
/*Incremento skill*/
if((gdrcd_filter('get',$_REQUEST['op'])=='addskill') && (($_SESSION['login']==gdrcd_filter('out',$_REQUEST['pg']))||($_SESSION['permessi']>=MODERATOR))){
$px_necessari=$PARAMETERS['settings']['px_x_rank']*($ranks[$_REQUEST['what']]+1);
if(($px_totali_pg-$px_spesi)>=$px_necessari){
$px_spesi+=$px_necessari;
if ($px_necessari==$PARAMETERS['settings']['px_x_rank']){
$query="INSERT INTO clgpersonaggioabilita (id_abilita, nome, grado) VALUES (".gdrcd_filter('num',$_REQUEST['what']).", '".gdrcd_filter('in',$_REQUEST['pg'])."', 1)";
$ranks[$_REQUEST['what']]=1;
#echo $query;
} else {
$ranks[$_REQUEST['what']]++;
$query="UPDATE clgpersonaggioabilita SET grado = ".$ranks[$_REQUEST['what']]." WHERE id_abilita = ".gdrcd_filter('num',$_REQUEST['what'])." AND nome = '".gdrcd_filter('in',$_REQUEST['pg'])."'";
}//else
gdrcd_query($query);
echo '<div class="warning">'.gdrcd_filter('out',$MESSAGE['warning']['modified']).'</div>';
}//if
}//if
/*Decremento skill*/
if((gdrcd_filter('get',$_REQUEST['op'])=='subskill') && ($_SESSION['permessi']>=MODERATOR)){
if ($ranks[$_REQUEST['what']]==1){
$query="DELETE FROM clgpersonaggioabilita WHERE id_abilita = ".$_REQUEST['what']." AND nome = '".gdrcd_filter('in',$_REQUEST['pg'])."' LIMIT 1";
$ranks[$_REQUEST['what']]=0;
} else {
$ranks[$_REQUEST['what']]--;
$query="UPDATE clgpersonaggioabilita SET grado = ".$ranks[$_REQUEST['what']]." WHERE id_abilita = ".$_REQUEST['what']." AND nome = '".gdrcd_filter('in',$_REQUEST['pg'])."'";
}//else
gdrcd_query($query);
echo '<div class="warning">'.gdrcd_filter('out',$MESSAGE['warning']['modified']).'</div>';
}//if
/*Incremento caratteristica*/
if((gdrcd_filter('get',$_REQUEST['op'])=='addcar') && (($_SESSION['login']==gdrcd_filter('out',$_REQUEST['pg']))||($_SESSION['permessi']>=MODERATOR))){
$px_necessari=$PARAMETERS['settings']['px_x_rank']*($ranks[$_REQUEST['what']]+1);
if(($px_totali_pg-$px_spesi)>=$px_necessari){
$px_spesi+=$px_necessari;
if ($px_necessari==$PARAMETERS['settings']['px_x_rank']){
$query="INSERT INTO personaggio (car0, car1, car2, car3, car4, car5) VALUES (".gdrcd_filter('num',$_REQUEST['what']).", '".gdrcd_filter('in',$_REQUEST['pg'])."', 1)";
$ranks[$_REQUEST['what']]=1;
#echo $query;
}
echo '<div class="warning">'.gdrcd_filter('out',$MESSAGE['warning']['modified']).'</div>';
}//if
}//if
/*Decremento caratteristica*/
if((gdrcd_filter('get',$_REQUEST['op'])=='subskill') && ($_SESSION['permessi']>=MODERATOR)){
if ($ranks[$_REQUEST['what']]==1){
$query="DELETE FROM clgpersonaggioabilita WHERE id_abilita = ".$_REQUEST['what']." AND nome = '".gdrcd_filter('in',$_REQUEST['pg'])."' LIMIT 1";
$ranks[$_REQUEST['what']]=0;
} else {
$ranks[$_REQUEST['what']]--;
$query="UPDATE clgpersonaggioabilita SET grado = ".$ranks[$_REQUEST['what']]." WHERE id_abilita = ".$_REQUEST['what']." AND nome = '".gdrcd_filter('in',$_REQUEST['pg'])."'";
}//else
gdrcd_query($query);
echo '<div class="warning">'.gdrcd_filter('out',$MESSAGE['warning']['modified']).'</div>';
}//if
if (isset($_REQUEST['op'])===FALSE){
?>
grazie mille dell'aiuto!
Pagine → 1 2
27/04/2014 13:26:10
nessuno può aiutarmi?
27/04/2014 14:31:36
Interesserebbe davvero molto anche a me ^^
28/04/2014 11:13:57
Ti ringrazio...io pensavo che quel pezzo di codice mi autoincrementasse di 1 il valore delle caratteristiche già presenti in db.
allora sono messo proprio a 0 ç__ç
29/11/2014 00:11:53
Mi permetto di riesumare questa discussione per chiedere se qualcuno è riuscito a risolvere questo problema e se si come.
Io come già scritto sopra ho provato a modificare la funzione e di adattarla in maniera simile sostituendo il comando INSERT con UPDATE , tuttavia ancora adesso una volta cliccato sul tastino + la caratteristica non aumenta.
Qualcuno sa come risolvere o come correggere il codice ?
29/11/2014 00:22:30 e modificato da rosstaff il 29/11/2014 00:23:59
Ecco qui
Questo qui mi permette di vedere la caratteristica con il + davanti
<div class="profilo_voce_label">
<?php echo gdrcd_filter('out',$PARAMETERS['names']['stats']['car0']); ?>:
</div>
<div class="profilo_voce_valore">
<?php echo gdrcd_filter('out',$record['car0']+$record['bonus_car0']+$bonus_oggetti['BO0']); ?>
<?php /*Stampo il form di incremento se il pg ha abbastanza px*/
if((((($ranks[$record['car0']]+1)*$PARAMETERS['settings']['px_x_rank'])<=($px_totali_pg-$px_spesi))&&
(gdrcd_filter('get',$_REQUEST['pg'])==$_SESSION['login'])&&
($ranks[$record['car0']]<$PARAMETERS['settings']['skills_cap']))||
($_SESSION['permessi']>=MODERATOR)){ ?>
[<a href="main.php?page=scheda&pg=<?php echo gdrcd_filter('get',$_REQUEST['pg']) ?>&op=addcar&what=<?php echo $record['car0'] ?>">+</a>]
<?php if(($_SESSION['permessi']>=MODERATOR)&&
($ranks[$record['car0']]>0)){ ?>
[<a href="main.php?page=scheda&pg=<?php echo gdrcd_filter('get',$_REQUEST['pg']) ?>&op=subcar&what=<?php echo $record['car0'] ?>">-</a>]
<?php } ?>
<?php } else { echo ' ';} ?>
</div>
Mentre quest'altro è quello per l'aumento
/*Incremento caratteristica*/
if((gdrcd_filter('get',$_REQUEST['op'])=='addcar') && (($_SESSION['login']==gdrcd_filter('out',$_REQUEST['pg']))||($_SESSION['permessi']>=MODERATOR))){
$px_necessari=$PARAMETERS['settings']['px_x_rank']*($ranks[$_REQUEST['what']]+1);
if(($px_totali_pg-$px_spesi)>=$px_necessari){
$px_spesi+=$px_necessari;
if ($px_necessari==$PARAMETERS['settings']['px_x_rank']){
$query="UPDATE personaggio SET Car0 ";
#echo $query;
}
echo '<div class="warning">'.gdrcd_filter('out',$MESSAGE['warning']['modified']).'</div>';
}//if
}//if
29/11/2014 00:46:47
Ho modificato il codice in
/*Incremento caratteristica*/
if((gdrcd_filter('get',$_REQUEST['op'])=='addcar') && (($_SESSION['login']==gdrcd_filter('out',$_REQUEST['pg']))||($_SESSION['permessi']>=MODERATOR))){
$px_necessari=$PARAMETERS['settings']['px_x_rank']*($ranks[$_REQUEST['what']]+1);
if(($px_totali_pg-$px_spesi)>=$px_necessari){
$px_spesi+=$px_necessari;
if ($px_necessari==$PARAMETERS['settings']['px_x_rank']){
$query="UPDATE personaggio SET car0 = car0+1 WHERE personaggio=".gdrcd_filter('get',$_REQUEST['pg'])." LIMIT 1";
$ranks[$_REQUEST['what']]++;
#echo $query;
}
echo '<div class="warning">'.gdrcd_filter('out',$MESSAGE['warning']['modified']).'</div>';
}//if
}//if
ma nonostante mi confermi la modifica il parametro Car0 non cambia
:(
29/11/2014 01:27:41
la caratteristica che voglio aumentare io è proprio la forza(che corrisponde a car0)
ma nonostante continui a provare non funziona :(
29/11/2014 13:24:32
piccolo aggiornamento :
Adesso dopo varie modifiche sono riuscito a far si che una volta cliccato sul + ed eseguita la funzione di UPDATE scritta sopra, appaia accanto il simbolo del - , nonostante ciò il valore di Car0 non cambia ancora.
Il problema potrebbe essere qui percaso?
div class="profilo_voce_label">
<?php echo gdrcd_filter('out',$PARAMETERS['names']['stats']['car0']); ?>:
</div>
<div class="profilo_voce_valore">
<?php echo gdrcd_filter('out',$record['car0']); ?>
<?php /*Stampo il form di incremento se il pg ha abbastanza px*/
if((((($ranks[$record['car0']]+1)*$PARAMETERS['settings']['px_x_rank'])<=($px_totali_pg-$px_spesi))&&
(gdrcd_filter('get',$_REQUEST['pg'])==$_SESSION['login'])&&
($ranks[$record['car0']]<$PARAMETERS['settings']['skills_cap']))||
($_SESSION['permessi']>=MODERATOR)){ ?>
[<a href="main.php?page=scheda&pg=<?php echo gdrcd_filter('get',$_REQUEST['pg']) ?>&op=addcar&what=<?php echo $record['car0'] ?>">+</a>]
<?php if(($_SESSION['permessi']>=MODERATOR)&&
($ranks[$record['car0']]>0)){ ?>
[<a href="main.php?page=scheda&pg=<?php echo gdrcd_filter('get',$_REQUEST['pg']) ?>&op=subcar&what=<?php echo $record['car0'] ?>">-</a>]
<?php } ?>
<?php } else { echo ' ';} ?>
</div>
02/12/2014 19:05:08
nessuno sa come posso risolvere?
Discussione seguita da
Pagine → 1 2
Rispondi alla Discussione Segui Discussione Inoltra Discussione Forum Programmazione, Open Source e Hosting Elenco Forum
Articoli, Interviste e altre Risorse!
CRSED: F.O.A.D. ↗
AlterEgo ↗
The Coven ↗
Imperion ↗
World of Tanks ↗
Neverness to Everness ↗
Hero Wars ↗
State of Survival ↗
Tibia ↗
Project Entropy ↗