Hallo! Habe mal wieder ein kleines Problem und seh den Wald vor lauter Bäumen nicht !
folgendes Problem, ich habe:
php:
function dwcostcopper_dohook($hookname,$args) {
global $session;
switch ($hookname) {
case "dwellings-buy-valuecheck":
$typeid= get_module_setting("typeid",$args['type']);
$paidcopper = abs((int)httppost('paidcopper'));
if ($paidcopper < 0) $paidcopper = 0;
$allprefs=unserialize(get_module_pref('allprefs','metalmine'));
$copperavailable = $allprefs['metal2'];
if($copperavailable<$paidcopper){
$args['allowpay']=0;
blocknav("runmodule.php?module=dwellings&op=build&type=".$args['type']."&dwid=".$args['dwid']."");
output("`nYou do not have that much copper.");
}elseif($paidcopper>(get_module_objpref("dwellingtypes",$typeid,"coppercost")-get_module_objpref("dwellings",$args['dwid'],"copperspent"))){
$args['allowpay']=0;
blocknav("runmodule.php?module=dwellings&op=build&type=".$args['type']."&dwid=".$args['dwid']."");
output("`nYou have tried to spend more copper than you need to.");
}
break;
case "dwellings-buy-setup":
$typeid= get_module_setting("typeid",$args['type']);
$paidcopper = abs((int)httppost('paidcopper'));
if ($paidcopper < 0) $paidcopper = 0;
$copperspent=get_module_objpref("dwellings",$args['dwid'],"copperspent")+$paidcopper;
set_module_objpref("dwellings",$args['dwid'],"copperspent",$copperspent);
$allprefs=unserialize(get_module_pref('allprefs','metalmine'));
$allprefs['metal2']=$allprefs['metal2']-$paidcopper;
set_module_pref('allprefs',serialize($allprefs),'metalmine');
if($copperspent<get_module_objpref("dwellingtypes",$typeid,"coppercost")){
$args['finished']=0;
}
break;
case "dwellings-pay-costs":
$typeid=get_module_setting("typeid",$args['type']);
$costcopper=get_module_objpref("dwellingtypes",$typeid,"coppercost") - get_module_objpref("dwellings",$args['dwid'],"copperspent");
if($costcopper) output("`Q%s Grams of Copper`n`0",$costcopper);
break;
case "dwellings-pay-input":
$typeid= get_module_setting("typeid",$args['type']);
$costcopper=get_module_objpref("dwellingtypes",$typeid,"coppercost") - get_module_objpref("dwellings",$args['dwid'],"copperspent");
$copper = translate_inline("Copper");
if($costcopper) rawoutput("$copper: <input id='input' name='paidcopper' width=5><br>");
break;
}
return $args;
}
php
und so soll das ganze aussehen (statt gems halt mit copper):
if ($gemspay > 0){
if ($gemspay <= $session['user']['gems']){
$paidgems = get_module_pref ("gemspaid");
if (($paidgems + $gemspay) > get_module_setting ("gemcosts")){
$gemspay = get_module_setting ("gemcosts") - $paidgems;
}
set_module_pref ("gemspaid", get_module_pref ("gemspaid") + $gemspay);
$session['user']['gems'] -= $gemspay;
output ("`3Du hast `%%s`3 Edelsteine eingezahlt!`n", $gemspay);
}else{
output ("`3Du hast doch gar nicht soviele Klunker!`n");
}
}
was muss ich jetzt wo übernehmen, damit das auch mit copper funktioniert???
denn gems werden aus einem extra feld in der Datenbank ausgelesen, das copper ist aber nur in den modul_prefs und ich habe schon stundenlang rumgebastelt, wie ich das ändern bzw. einbauen kann.
Danke schonmal für Eure Hilfe!!