LoGD Standardrelease steht hier zum Download zur Verfügung!

Zeige Source: /vendor.php

Hier klicken für den Source, ODER
Weitere Dateien, von denen du den Quelltext sehen kannst:
(Das Lesen des Source, um sich spielerische Vorteile zu verschaffen, ist nicht erlaubt. Solltest du Schwachstellen oder Fehler entdecken, bist du als Spieler verpflichtet, diese zu melden.)

Source von: /vendor.php

<?php

// 24072004

// The vendor Aeki sells furniture for houses and buys items found at beaten monsters in the forest.
// items.class for furniture prototypes must be 'Möbel.Prot'.
// items.class for bought furniture is set to 'Möbel' automatically.
// Use itemeditor.php in admin grotto to generate furniture prototyps and items.
// More classes will be added soon!
//
// Requires 'items' table first introduced with my houses mod and a few other modifications for
// inventory management and drop items.
// No installation instructions available so far. Sorry!!
//
// Vendor only appears on a few (game) days in village
// This is controlled by weather mod by Talisman
//
// by anpera (2004) while listening to music by 'The Sweet' ;)

require_once "common.php";
page_header("Reisender Händler");

if (
$_GET[op]=="buy"){ // Wig-Wam Bam
    
if (!$_GET[id]){
        
$sorti=($_GET[sorti]?"$_GET[sorti]":"class DESC, name");
        
output("`i`&Du wirfst einen Blick auf seinen Karren und zu jedem der seltsamen Gegenstände, Artefakte und Zauber scheint der Händler eine kleine Geschichte zu kennen. Auffällig oft weist er dich darauf hin, dass viele
        Leute den wahren Wert dieser Dinge nicht zu kennen scheinen.`i`n "
);
        
$ppp=25// Player Per Page to display
        
if (!$_GET[limit]){
            
$page=0;
        }else{
            
$page=(int)$_GET[limit];
            
addnav("Vorherige Waren","vendor.php?op=buy&sorti=$sorti&limit=".($page-1));
        }
        
$limit="".($page*$ppp).",".($ppp+1);
        
$sql="SELECT * FROM items WHERE owner=0 AND (class='Schmuck' OR class='Möbel.Prot' OR class='Beute') ORDER BY $sorti ASC LIMIT $limit";
        
$result=db_query($sql);
        if (
db_num_rows($result)>$pppaddnav("Mehr Waren","vendor.php?op=buy&sorti=$sorti&limit=".($page+1));
        if (
db_num_rows($result)){
            
output("<table border='0' cellpadding='2' cellspacing='2'>",true);
            
output("<tr class='trhead'><td>`b<a href='vendor.php?op=buy&sorti=name&limit=$_GET[limit]'>`&Name</a>`b</td><td>`b<a href='vendor.php?op=buy&sorti=".urlencode("gems ASC,gold")."&limit=$_GET[limit]'>`&Preis</a>`b</td><td>`b<a href='vendor.php?op=buy&sorti=".urlencode("class DESC,name")."&limit=$_GET[limit]'>`&Klasse</a>`b</td></tr>",true);
            
addnav("","vendor.php?op=buy&sorti=name&limit=$_GET[limit]");
            
addnav("","vendor.php?op=buy&sorti=".urlencode("gems ASC,gold")."&limit=$_GET[limit]");
            
addnav("","vendor.php?op=buy&sorti=".urlencode("class DESC,name")."&limit=$_GET[limit]");
            for (
$i=0;$i<db_num_rows($result);$i++){
                  
$row db_fetch_assoc($result);
                
$bgcolor=($i%2==1?"trlight":"trdark");
                
output("<tr class='$bgcolor'><td><a href='vendor.php?op=buy&id=$row[id]'>$row[name]</a></td><td align='right'>`f$row[gold] Gold, `q$row[gems] Edelsteine</td><td>{$row['class']}</td></tr><tr class='$bgcolor'><td colspan='3'>$row[description]</td></tr>",true);
                
addnav("","vendor.php?op=buy&id=$row[id]");
            }
            
output("</table>",true);
        
        } else {
            
output("`&`iDer Händler will nichts von deinen Sachen haben.`i");
        }
    }else{ 
// Alexander Graham Bell (what? no, he's not the author of this part. It's the name of a song by The Sweet)
        
$sql="SELECT * FROM items WHERE id=$_GET[id]";
        
$result=db_query($sql);
          
$row db_fetch_assoc($result);
        if (
$session[user][gems]<$row[gems] || $session[user][gold]<$row[gold]){
            
output("`i`&Das kannst du dir nicht leisten.`i");
            
addnav("Etwas anderes kaufen","vendor.php?op=buy");
        }else if (
$row['class']=="Möbel.Prot" && $session[user][housekey]<=){
            
output("`i`&Du besitzt kein eigenes Haus, was willst du also mit $row[name]?`i");
            
addnav("Etwas anderes kaufen","vendor.php?op=buy");
        }else if (
db_num_rows(db_query("SELECT id FROM items WHERE name='$row[name]' AND owner=".$session[user][acctid]." AND class='Möbel'"))>0){
            
output("`i`&Du bist bereits im Besitz von $row[name].`i");
            
addnav("Etwas anderes kaufen","vendor.php?op=buy");
        }else{
            
output("`&`iDer Händler reibt sich die Hände und übergibt dir $row[name], während du ".($row[gold]?"`f$row[gold] Gold":"")." ".($row[gems]?"`q$row[gems] Edelsteine":"")." `&abzählst.`i ");
            if (
$row['class']=="Möbel.Prot"output("`i`&Einer seiner Gehilfen hilft dir beim Tragen`i.");
            
addnav("Mehr kaufen","vendor.php?op=buy");
            
$sql="UPDATE items SET owner=".$session[user][acctid]." WHERE id=$_GET[id]";
            
// insert SQL for special classes here to reset their values
            
if ($row['class']=="Möbel.Prot"$sql="INSERT INTO items(name,class,owner,value1,gold,gems,description) VALUES ('$row[name]','Möbel',".$session[user][acctid].",".$session[user][house].",1,".(round($row[gems]/2)).",'$row[description]')";
            
$session[user][gold]-=$row[gold];
            
$session[user][gems]-=$row[gems];
            
db_query($sql);
        }
    }
    
addnav("Zurück","vendor.php");
    
addnav("Zurück zum Hafen","hafen.php");
    
addnav("Zurück zur Stadt","village.php");
}else if (
$_GET[op]=="sell"){ // Ballroom Blitz
    
if (!$_GET[id]){
        
output("`i`&Der Händler begutachtet deinen Besitz. Mit dem geübten Auge eines Kenners sortiert er die Dinge aus, die ihn interessieren würden und nennt dir einen Preis dafür.`i`n`n");
        
$sql="SELECT * FROM items WHERE owner=".$session[user][acctid]." AND (gold>0 OR gems>0) AND class<>'Fluch' AND class<>'Zauber'";
        
$result=db_query($sql);
        if (
db_num_rows($result)){
            
output("<table border='0' cellpadding='0'>",true);
            
output("<tr class='trhead'><td>`b`&Name`b</td><td>`b`&Preis`b</td></tr>",true);
            for (
$i=0;$i<db_num_rows($result);$i++){
                  
$row db_fetch_assoc($result);
                
$bgcolor=($i%2==1?"trlight":"trdark");
                
output("<tr class='$bgcolor'><td><a href='vendor.php?op=sell&id=$row[id]'>$row[name]</a></td><td align='right'>`f$row[gold] Gold, `q$row[gems] Edelsteine</td></tr><tr class='$bgcolor'><td colspan='2'>$row[description]</td></tr>",true);
                
addnav("","vendor.php?op=sell&id=$row[id]");
            }
            
output("</table>",true);
        
        } else {
            
output("`&`iDu hast offenbar nichts, was der Händler dir abkaufen will.`i");
        }
    }else{ 
// Hell Raiser
        
$sql="SELECT * FROM items WHERE id=$_GET[id]";
        
$result=db_query($sql);
          
$row db_fetch_assoc($result);
        
output("`i`&Mit einem diebischen Grinsen überreicht dir der Händler ".($row[gold]?"`f$row[gold] Gold":"")." ".($row[gems]?"`q$row[gems] Edelsteine":"")." `&und verstaut $row[name] auf seinem Karren.");
        
addnav("Mehr verkaufen","vendor.php?op=sell");
        
$sql="UPDATE items SET owner=0 WHERE id=$_GET[id]";
        
// insert SQL für special classes here to reset their values
        
if ($row['class']=="Möbel"$sql="DELETE FROM items WHERE id=$_GET[id]";
        if (
$row['class']=="Beute"$sql="DELETE FROM items WHERE id=$_GET[id]";
        if (
$row['class']=="Waffe" || $row['class']=="Rüstung"$sql="DELETE FROM items WHERE id=$_GET[id]";
        if (
$row['class']=="Schmuck" AND $row['name']=="Elfenkunst"$sql="DELETE FROM items WHERE id=$_GET[id]";
        
$session[user][gold]+=$row[gold];
        
$session[user][gems]+=$row[gems];
        
db_query($sql);
    }
    
addnav("Zurück zum Hafen","hafen.php");
    
addnav("Zurück zur Stadt","village.php");
}else{ 
// Teenage Rampage
    
checkday();
    if (!
getsetting("vendor",0)) redirect("village.php");
    
output("`i`&Du begibst dich auf den Schwarzmarkt und suchst nach einem ganz bestimmten Händler von dem du gehört hast, dass er heute in der Stadt sein soll. Lange musst du nicht suchen, denn schon nach wenigen Metern
            hast du seinen Karren entdeckt. Du weißt, dass dieser Kerl allerhand Dinge verkauft und auch kauft, vielleicht hast du Glück und kannst ein paar deiner Sachen gewinnbringend an ihn loswerden.`i`n"
);
    
addnav("Optionen");
    
addnav("Waren durchstöbern","vendor.php?op=buy");
    
addnav("Etwas verkaufen","vendor.php?op=sell");
    
addnav("Doch nicht");
    
addnav("Zurück zum Hafen","hafen.php");
    
addnav("Zurück zur Stadt","village.php");
}
page_footer();
// reading source code can seriously damage your eyes! Well, at least it can take out the fun of a game...
?>