ER-Sourceviewer 2007 v2.0

Alle Dateien, die hier eingesehen werden können, sind unter der GNU GPL lizenziert. Wenn du etwas darin findest, das du gerne hättest, so schreibe mir doch bitte eine Anfrage damit ich, wenn ich es rausgeben will, alle Änderungen raussuchen könnte. Denn ich übernehme keine Verantwortung, solltest du was rausnehmen und es geht nicht. Und Support deswegen geb ich schon gar nicht.

Solltest du eine Schwachstelle im Code finden, sei es eine kritische Lücke oder eine Möglichkeit zu cheaten, dann bitte ich dich, mir das mitzuteilen. Solltest du beim cheaten erwischt werden, werde ich deinen Account eigenhändig löschen & bannen; Solltest du meinen Server angreifen, so werde ich meine Rechtsschutzversicherung kontaktieren.

Zur Source springen

Verzeichnisse:


Source anzeigen

Nach Oben


<?php
/*
#############################################################################
#   ToDo:                                                                   #
#       - Formel für die Preisberechnung                                    #
#                                                                           #
#############################################################################
*/
/*
-------los gehts-------
copyright by Tsukasa
http://dragon.osomyr.com
addon Edelstein Börse für
#############################################################################
# Edelstein Addon 1 by phonix                                               #
# http://www.game.bitpage.de                                                #
#############################################################################
-------Installer----------
CREATE TABLE `gems` (
  `gemid` int(10) unsigned NOT NULL auto_increment,
  `name` varchar(50) default NULL,
  `gemzahl` varchar(20) NOT NULL default '',
  `gemcost` int(10) unsigned default '0',
  `id` int(8) NOT NULL default '0',
  PRIMARY KEY  (`gemid`)
) TYPE=MyISAM AUTO_INCREMENT=3181 ;

#############################################################################

*/

require_once "common.php";
page_header("Edelstein-Börse");


output("`c`bEdelstein-Börse`c`b");

if (
$_GET['op']==""){
    
addnav("Wege");
    
addnav("Zurück zum Marktplatz","marktplatz1.php");
    
addnav("Aktualisieren","gem2.php");
rawoutput("<p style='text-align: center;'><IMG SRC=\"images/gem1.jpg\" /> </p>") ;
rawoutput("<p>".$fliesstext."</p>");
    
output("`nDu fragst die hinter dem Tresen stehende Gestalt, ob sie auch Edelsteine verkauft. Der Edelsteinhändler blickt dich an und hält einen kurzen Moment inne. Du kannst nicht erkennen, ob das nun ein gutes oder ein schlechtes Zeichen ist - auf jeden Fall wärst du im Moment froh, du hättest ihn nie danach gefragt`n`n");
    
output("Die Gestalt fängt lauthals an zu lachen, da sie die Angst in deinem Gesicht sehen kann: \"Natürlich verkaufe ich auch Edelsteine, aber die sind nicht grade billig! Ich weiß nicht, ob sich das einer wie du überhaupt leisten kann!\"`n`n");
    
output("Ein wenig verdutzt zeigst du trotzig deinen prall gefüllten Goldbeutel.`n`n");
    
output("Die Gestalt grinst dich an und holt eine Kiste mit den schönsten Edelsteinen hervor, die du jemals gesehen hast:`n`n`n`n");

//    output("<table width='50%' align='center' border='0'><tr align='center'><td align='center'><img src='images/schatztruhe.gif' width='250' height='250' align='center'/></td></tr></table>",true);
    
output("<center><img src='images/schatztruhe.jpg' width='250' height='250' align='center'/></center>",true);

    
/*    $sql = "
            SELECT
                gemid,
                gemcost,
                gemzahl,
                gemcost/gemzahl as gemprice
            FROM
                gems
            WHERE
                1
            ORDER BY
                gemid ASC";
        $result = db_query($sql) or die(db_error(LINK));
    */ //==> wird benötigt für die Gem-Charts

    
$gemsinstore=(getsetting ("gemstoregems",0));
    
$mingems=(getsetting ("mingempricegems",5));
    
$maxgems=(getsetting ("maxgempricegems",100));

    if ((
$session[user][guildID] || $session[user][clanID]) && (int)getsetting("guilds",0)) {
        
populate_guilds();
        
$ThisGuild=&$session[guilds][$session[user][guildID]+$session[user][clanID]];
    }

    
$price=getgemprice(1,"buy");
    
$price5=getgemprice(5,"buy");
    
$price10=getgemprice(10,"buy");

    if (
$gemsinstore>=10) {
        
output("`n`n`n`n`7Derzeit sind `!".$gemsinstore."`7 Edelsteine im Handel. `n`nIch verkaufe dir gern einen für `^".$price."`7 Gold, 5 für `^".$price5."`7 Gold oder 10 für `^".$price10."`7 Gold.`nWillst du welche an mich abgeben bekommst du `^".(round(getgemprice(1,"sell")*0.9))."`7 Gold für einen, `^".(round(getgemprice(5,"sell")*0.9))."`7 Gold für 5 oder `^".(round(getgemprice(10,"sell")*0.9))."`7 Gold für 10 Edelsteine.`n");

        if ((int)
$ThisGuild[GemPurchaseDiscount]>0)
            
output("`7Durch deine ".($ThisGuild[IsGuild]?"Gilden":"Clan")."zugehörigkeit bekommst du einen Rabatt von `!".$ThisGuild[GemPurchaseDiscount]." %`7.`n");
    } elseif (
$gemsinstore>=5) {
        
output("`n`n`n`n`7Derzeit sind `!".$gemsinstore."`7 Edelsteine im Handel. `n`nIch verkaufe dir gern einen für `^".$price."`7 Gold oder 5 für `^".$price5."`7 Gold.`nWillst du welche an mich abgeben bekommst du `^".(round(getgemprice(1,"sell")*0.9))."`7 Gold für einen, `^".(round(getgemprice(5,"sell")*0.9))."`7 Gold für 5 oder `^".(round(getgemprice(10,"sell")*0.9))."`7 Gold für 10 Edelsteine.`n");

        if ((int)
$ThisGuild[GemPurchaseDiscount]>0)
            
output("`7Durch deine ".($ThisGuild[IsGuild]?"Gilden":"Clan")."zugehörigkeit bekommst du einen Rabatt von `!".$ThisGuild[GemPurchaseDiscount]." %`7.`n");
    } elseif (
$gemsinstore>=0){
        
output("`n`n`n`n`7Derzeit sind `!".$gemsinstore."`7 Edelsteine im Handel. `n`nIch verkaufe dir gern einen für `^".$price."`7 Gold.`nWillst du welche an mich abgeben bekommst du `^".(round(getgemprice(1,"sell")*0.9))."`7 Gold für einen, `^".(round(getgemprice(5,"sell")*0.9))."`7 Gold für 5 oder `^".(round(getgemprice(10,"sell")*0.9))."`7 Gold für 10 Edelsteine.`n");

        if ((int)
$ThisGuild[GemPurchaseDiscount]>0)
            
output("`7Durch deine ".($ThisGuild[IsGuild]?"Gilden":"Clan")."zugehörigkeit bekommst du einen Rabatt von `!".$ThisGuild[GemPurchaseDiscount]." %`7.`n");
    } else {
        
output("`n`n`n`n`7Derzeit sind leider keine Edelsteine zum Verkauf da.`n`nAber ich kaufe deine gern für `^".(round($price*0.9))."`7 Gold an.`n`n");

        if ((int)
$ThisGuild[GemPurchaseDiscount]>0)
            
output("`7Durch deine ".($ThisGuild[IsGuild]?"Gilden":"Clan")."zugehörigkeit bekommst du einen Rabatt von `!".$ThisGuild[GemPurchaseDiscount]." %`7.`n");
    }

    if (
$gemsinstore<=($mingems+5)){
        
output("`nIch hoffe nicht du bist so witzig und verkaufst zu dem Preis deine Steine?`n");
    } elseif (
$gemsinstore>=($maxgems-5)) {
        
output("`nDie Nachfrage ist riesig, wollt ihr nicht ein paar Steine verkaufen?`n");
    } else {
        
output("`nHeut ist ein gute Tag mit Edelsteinen zu handeln.`n");
    }

    if(
$session[user][gems]<10){ //==> weniger als 10 Edelsteine
        
if ($session[user][gems]<5){ //==> weniger als 5 Edelsteine
            
if ($session[user][gems]>0){ //==> 1-4 Edelsteine
                
if ($session[user][gold]>=$price10){ // ==> genug Gold für mindestens 10 Steine
                    
output("<form action='gem2.php?op=buy' method='POST'>",true);

                    if (
$gemsinstore>0){
                        
output("<input type='submit' class='button' name='buy' style='margin-top: 10px;' value='Edelstein kaufen'>",true);
                    }

                    
output("<input type='submit' class='button' name='sell' style='margin-top: 10px;' value='Edelstein verkaufen'><br>",true);

                    if (
$gemsinstore>=5){
                     
output("<input type='submit' class='button' name='buy5' style='margin-top: 10px;' value='5 Edelsteine kaufen'><br>",true);
                    }

                    if (
$gemsinstore>=10){
                        
output("<input type='submit' class='button' name='buy10' style='margin-top: 10px;' value='10 Edelsteine kaufen'>",true);
                    }
                    
output("</form>",true);
                    
addnav("","gem2.php?op=buy");

                } elseif (
$session[user][gold]>=$price5){ // ==> genug Gold für mindestens 5 Steine
                    
output("<form action='gem2.php?op=buy' method='POST'>",true);
                    if (
$gemsinstore>0){
                        
output("<input type='submit' class='button' name='buy' style='margin-top: 10px;' value='Edelstein kaufen'>",true);
                    }

                    
output("<input type='submit' class='button' name='sell' style='margin-top: 10px;' value='Edelstein verkaufen'><br>",true);


                    if (
$gemsinstore>=5){
                        
output("<input type='submit' class='button' name='buy5' style='margin-top: 10px;' value='5 Edelsteine kaufen'>",true);
                    }

                    
output("</form>",true);
                    
addnav("","gem2.php?op=buy");

                } elseif (
$session[user][gold]>=$price){  // ==> genug Gold für mindestens einen Stein
                    
output("<form action='gem2.php?op=buy' method='POST'>",true);

                    if (
$gemsinstore>0){
                        
output("<input type='submit' class='button' name='buy' style='margin-top: 10px;' value='Edelstein kaufen'>",true);
                    }

                    
output("<input type='submit' class='button' name='sell' style='margin-top: 10px;' value='Edelstein verkaufen'>",true);

                    
output("</form>",true);
                    
addnav("","gem2.php?op=buy");

                } else { 
// zu wenig Gold
                    
output("`nDu kannst dir leider keine Edelsteine leisten.`n`n");

                    
output("<form action='gem2.php?op=buy' method='POST'>",true);
                    
output("<input type='submit' class='button' name='sell' style='margin-top: 10px;' value='Edelstein verkaufen'>",true);
                    
output("</form>",true);
                    
addnav("","gem2.php?op=buy");

                }

            } else {    
//==> Keine Edelsteine
                
if ($session[user][gold]>=$price10){ // ==> genug Gold für mindestens 10 Steine
                    
output("<form action='gem2.php?op=buy' method='POST'>",true);

                    if (
$gemsinstore>0){
                        
output("<input type='submit' class='button' name='buy' style='margin-top: 10px;' value='Edelstein kaufen'><br>",true);
                    }

                    if (
$gemsinstore>=5){
                        
output("<input type='submit' class='button' name='buy5' style='margin-top: 10px;' value='5 Edelsteine kaufen'><br>",true);
                    }

                    if (
$gemsinstore>=10){
                        
output("<input type='submit' class='button' name='buy10' style='margin-top: 10px;' value='10 Edelsteine kaufen'>",true);
                    }

                    
output("</form>",true);
                    
addnav("","gem2.php?op=buy");

                } elseif (
$session[user][gold]>=$price5){ // ==> genug Gold für mindestens 5 Steine
                    
output("<form action='gem2.php?op=buy' method='POST'>",true);

                    if (
$gemsinstore>0){
                        
output("<input type='submit' class='button' name='buy' style='margin-top: 10px;' value='Edelstein kaufen'><br>",true);
                    }

                    if (
$gemsinstore>=5){
                        
output("<input type='submit' class='button' name='buy5' style='margin-top: 10px;' value='5 Edelsteine kaufen'>",true);
                    }

                    
output("</form>",true);
                    
addnav("","gem2.php?op=buy");

                } elseif (
$session[user][gold]>=$price){  // ==> genug Gold für mindestens einen Stein
                    
output("<form action='gem2.php?op=buy' method='POST'>",true);
                    if (
$gemsinstore>0){
                        
output("<input type='submit' class='button' name='buy' style='margin-top: 10px;' value='Edelstein kaufen'>",true);
                    }
                    
output("</form>",true);
                    
addnav("","gem2.php?op=buy");

                } else { 
// zu wenig Gold
                    
output("`nDu hast leider keine Edelsteine zum Verkaufen und kannst dir auch keine leisten.`n`n");

                }

            }

        } else { 
//==> 5 oder mehr Edelsteine
            
if ($session[user][gold]>=$price10){ // ==> genug Gold für mindestens 10 Steine
                
output("<form action='gem2.php?op=buy' method='POST'>",true);

                if (
$gemsinstore>0){
                    
output("<input type='submit' class='button' name='buy' style='margin-top: 10px;' value='Edelstein kaufen'>",true);
                }

                
output("<input type='submit' class='button' name='sell' style='margin-top: 10px;' value='Edelstein verkaufen'><br>",true);

                if (
$gemsinstore>=5){
                    
output("<input type='submit' class='button' name='buy5' style='margin-top: 10px;' value='5 Edelsteine kaufen'>",true);
                }

                
output("<input type='submit' class='button' name='sell5' style='margin-top: 10px;' value='5 Edelsteine verkaufen'><br>",true);

                if (
$gemsinstore>=10){
                    
output("<input type='submit' class='button' name='buy10' style='margin-top: 10px;' value='10 Edelsteine kaufen'>",true);
                }

                
output("</form>",true);
                
addnav("","gem2.php?op=buy");

            } elseif (
$session[user][gold]>=$price5){ // ==> genug Gold für mindestens 5 Steine
                
output("<form action='gem2.php?op=buy' method='POST'>",true);
                if (
$gemsinstore>0){
                    
output("<input type='submit' class='button' name='buy' style='margin-top: 10px;' value='Edelstein kaufen'>",true);
                }

                
output("<input type='submit' class='button' name='sell' style='margin-top: 10px;' value='Edelstein verkaufen'><br>",true);

                if (
$gemsinstore>=5){
                    
output("<input type='submit' class='button' name='buy5' style='margin-top: 10px;' value='5 Edelsteine kaufen'>",true);
                }

                
output("<input type='submit' class='button' name='sell5' style='margin-top: 10px;' value='5 Edelsteine verkaufen'>",true);
                
output("</form>",true);
                
addnav("","gem2.php?op=buy");

            } elseif (
$session[user][gold]>=$price){  // ==> genug Gold für mindestens einen Stein
                
output("<form action='gem2.php?op=buy' method='POST'>",true);
                if (
$gemsinstore>0){
                    
output("<input type='submit' class='button' name='buy' style='margin-top: 10px;' value='Edelstein kaufen'>",true);
                }
                
output("<input type='submit' class='button' name='sell' style='margin-top: 10px;' value='Edelstein verkaufen'><br>",true);
                
output("<input type='submit' class='button' name='sell5' style='margin-top: 10px;' value='5 Edelsteine verkaufen'>",true);
                
output("</form>",true);
                
addnav("","gem2.php?op=buy");

            } else { 
// zu wenig Gold
                
output("`nDu kannst dir leider keine Edelsteine leisten.`n`n");

                
output("<form action='gem2.php?op=buy' method='POST'>",true);
                
output("<input type='submit' class='button' name='sell' style='margin-top: 10px;' value='Edelstein verkaufen'><br>",true);
                
output("<input type='submit' class='button' name='sell5' style='margin-top: 10px;' value='5 Edelsteine verkaufen'>",true);
                
output("</form>",true);
                
addnav("","gem2.php?op=buy");

            }

        }

    } else {    
//==> 10 oder mehr Edelsteine
        
if ($session[user][gold]>=$price10){ // ==> genug Gold für mindestens 10 Steine
            
output("<form action='gem2.php?op=buy' method='POST'>",true);
            if (
$gemsinstore>0){
                
output("<input type='submit' class='button' name='buy' style='margin-top: 10px;' value='Edelstein kaufen'>",true);
            }
            
output("<input type='submit' class='button' name='sell' style='margin-top: 10px;' value='Edelstein verkaufen'><br>",true);

            if (
$gemsinstore>=5){
            
output("<input type='submit' class='button' name='buy5' style='margin-top: 10px;' value='5 Edelsteine kaufen'>",true);
            }

            
output("<input type='submit' class='button' name='sell5' style='margin-top: 10px;' value='5 Edelsteine verkaufen'><br>",true);

            if (
$gemsinstore>=10){
                
output("<input type='submit' class='button' name='buy10' style='margin-top: 10px;' value='10 Edelsteine kaufen'>",true);
            }

            
output("<input type='submit' class='button' name='sell10' style='margin-top: 10px;' value='10 Edelsteine verkaufen'>",true);
            
output("</form>",true);
            
addnav("","gem2.php?op=buy");

        } elseif (
$session[user][gold]>=$price5){ // ==> genug Gold für mindestens 5 Steine
            
output("<form action='gem2.php?op=buy' method='POST'>",true);
            if (
$gemsinstore>0){
                
output("<input type='submit' class='button' name='buy' style='margin-top: 10px;' value='Edelstein kaufen'>",true);
            }

            
output("<input type='submit' class='button' name='sell' style='margin-top: 10px;' value='Edelstein verkaufen'><br>",true);

            if (
$gemsinstore>=5){
                
output("<input type='submit' class='button' name='buy5' style='margin-top: 10px;' value='5 Edelsteine kaufen'>",true);
            }

            
output("<input type='submit' class='button' name='sell5' style='margin-top: 10px;' value='5 Edelsteine verkaufen'><br>",true);
            
output("<input type='submit' class='button' name='sell10' style='margin-top: 10px;' value='10 Edelsteine verkaufen'>",true);

            
output("</form>",true);
            
addnav("","gem2.php?op=buy");

        } elseif (
$session[user][gold]>=$price){ // ==> genug Gold für mindestens einen Stein
            
output("<form action='gem2.php?op=buy' method='POST'>",true);
            if (
$gemsinstore>0){
                
output("<input type='submit' class='button' name='buy' style='margin-top: 10px;' value='Edelstein kaufen'>",true);
            }

            
output("<input type='submit' class='button' name='sell' style='margin-top: 10px;' value='Edelstein verkaufen'><br>",true);
            
output("<input type='submit' class='button' name='sell5' style='margin-top: 10px;' value='5 Edelsteine verkaufen'><br>",true);
            
output("<input type='submit' class='button' name='sell10' style='margin-top: 10px;' value='10 Edelsteine verkaufen'>",true);

            
output("</form>",true);
            
addnav("","gem2.php?op=buy");

        } else { 
//==> zu wenig Gold
            
output("`nDu kannst dir leider keine Edelsteine leisten.`n`n");

            
output("<form action='gem2.php?op=buy' method='POST'>",true);
            
output("<input type='submit' class='button' name='sell' style='margin-top: 10px;' value='Edelstein verkaufen'><br>",true);
            
output("<input type='submit' class='button' name='sell5' style='margin-top: 10px;' value='5 Edelsteine verkaufen'><br>",true);
            
output("<input type='submit' class='button' name='sell10' style='margin-top: 10px;' value='10 Edelsteine verkaufen'>",true);

            
output("</form>",true);
            
addnav("","gem2.php?op=buy");

        }

    }

} else if (
$HTTP_GET_VARS[op]=="buy"){
    if (
$_POST[buy]!=""){

        
$price=getgemprice(1,"buy");

        if (
$session[user][gold]>=$price) {
            
$session[user][gems]++;
            
$session[user][gold]-=$price;

            if ((
getsetting ("gemstoregems",0))!=1){

                
savesetting ("gemstoregems",(getsetting ("gemstoregems",0)-1));

            } else {

                
savesetting ("gemstoregems","0");

            }

        }

    } elseif (
$_POST[buy5]!=""){

        
$price=getgemprice(5,"buy");

        if (
$session[user][gold]>=$price) {
            
$session[user][gems]+=5;
            
$session[user][gold]-=$price;

            if ((
getsetting ("gemstoregems",0))!=5){

                
savesetting ("gemstoregems",(getsetting ("gemstoregems",0)-5));

            } else {

                
savesetting ("gemstoregems","0");

            }

        }


    } elseif (
$_POST[buy10]!=""){

        
$price=getgemprice(10,"buy");

        if (
$session[user][gold]>=$price) {

            
$session[user][gems]+=10;
            
$session[user][gold]-=$price;

            if ((
getsetting ("gemstoregems",0))!=10){

                
savesetting ("gemstoregems",(getsetting ("gemstoregems",0)-10));

            } else {

                
savesetting ("gemstoregems","0");

            }

        }

    } elseif (
$_POST[sell]!=""){

        
$price=getgemprice(1,"sell");

        
$session[user][gems]--;
        
$session[user][gold]+=(round($price*0.9));

        
savesetting ("gemstoregems",(getsetting ("gemstoregems",0))+1);

    } elseif (
$_POST[sell5]!=""){

        
$price=getgemprice(5,"sell");

        
$session[user][gems]-=5;
        
$session[user][gold]+=(round($price*0.9));

        
savesetting ("gemstoregems",(getsetting ("gemstoregems",0))+5);

    } elseif (
$_POST[sell10]!=""){

        
$price=getgemprice(10,"sell");

        
$session[user][gems]-=10;
        
$session[user][gold]+=(round($price*0.9));

        
savesetting ("gemstoregems",(getsetting ("gemstoregems",0))+10);

    }

    
redirect("gem2.php");

}

page_footer();

function 
getgemprice($gems,$trade)
{          
//berechnet den Preis für $value Steine
    
global $session;

    
$gemsinstore=(getsetting ("gemstoregems",0));
    
$minprice=(getsetting ("mingemprice",7000));
    
$maxprice=(getsetting ("maxgemprice",700));
    
$mingems=(getsetting ("mingempricegems",100));
    
$maxgems=(getsetting ("maxgempricegems",15));
    
$guilddiscount=0;


    if ((
$session[user][guildID]>|| $session[user][clanID]>0) && (int)getsetting("guilds",0)==1) {
        
$ThisGuild=&$session[guilds][$session[user][guildID]+$session[user][clanID]];

        
$guilddiscount=(int)$ThisGuild[GemPurchaseDiscount]/(float)100;
    }

    
$price=0;

    for (
$i=0;$i<$gems;$i++){

        if (
$trade=="buy"){

            
$gemsinstore--;

            if(
$gemsinstore<=$maxgems){
                
$price+=round($maxprice*(1-$guilddiscount));
            } elseif (
$gemsinstore>=$mingems) {
                
$price+=round($minprice*(1-$guilddiscount));
            } else {
                
$wachstum=($minprice-$maxprice)/($mingems-$maxgems);
                
$price+=round(($wachstum*$gemsinstore-$wachstum*$maxgems+$maxprice)*(1-$guilddiscount));
            }

        } elseif (
$trade=="sell"){

            
$gemsinstore++;

            if(
$gemsinstore<=$maxgems){
                
$price+=round($maxprice*(1+$guilddiscount));
            } elseif (
$gemsinstore>=$mingems) {
                
$price+=round($minprice*(1+$guilddiscount));
            } else {
                
$wachstum=($minprice-$maxprice)/($mingems-$maxgems);
                
$price+=round(($wachstum*$gemsinstore-$wachstum*$maxgems+$maxprice)*(1+$guilddiscount));
            }

        } else {
            
$price=0;
        }

    }



    return 
$price;

}


?>