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.
Verzeichnisse:
<?php
// 21072004
// modifications by anpera:
// stealing enabled with 1:15 success (thieves have 2:12 chance) and 'pay from bank'
require_once "common.php";
addcommentary();
checkday();
place();
page_header("Waffenladen");
$tradeinvalue = round(($session[user][weaponvalue]*.75),0);
if ($_GET[op]==""){
viewcommentary("waffen","`]`nUmsehen `&",15,"sagt");
addnav("Waffen anschauen","weapons.php?op=peruse");
addnav("Inventar anzeigen","prefs.php?op=inventory&back=weapons.php");
addnav("Zurück","einkaufszentrum.php");
}else if ($_GET[op]=="peruse"){
$sql = "SELECT max(level) AS level FROM weapons WHERE level<=".(int)$session[user][dragonkills];
$result = db_query($sql) or die(db_error(LINK));
$row = db_fetch_assoc($result);
$sql = "SELECT * FROM weapons WHERE level = ".(int)$row[level]." ORDER BY damage ASC";
$result = db_query($sql) or die(db_error(LINK));
output('`&Du schlenderst durch den Laden und tust so, als wüsstest du, was das alles ist.
Klicke einfach auf die Waffe, die du kaufen willst... was auch immer -klick- bedeuten mag`&.~
Dabei schaut er völlig verwirrt. Er steht ein paar Sekunden nur da, schnippt mit den Fingern und fragt sich, ob das
mit -klicken- gemeint sein könnte, bevor er sich wieder seiner Arbeit zuwendet: Herumstehen und gut aussehen.');
if($session[user][reputation]<=-10) output("`nEr sieht dich misstrauisch an, als ob er wüsste, dass du hier hin und wieder versuchst, ihm seine schönen Waffen zu klauen.");
output("<table border='0' cellpadding='0'>",true);
output("<tr class='trhead'><td>`bName`b</td><td align='center'>`bSchaden`b</td><td align='right'>`bPreis`b</td></tr>",true);
for ($i=0;$i<db_num_rows($result);$i++){
$row = db_fetch_assoc($result);
$bgcolor=($i%2==1?"trlight":"trdark");
if ($row[value]<=($session[user][gold]+$tradeinvalue)){
output("<tr class='$bgcolor'><td>Kaufe <a href='weapons.php?op=buy&id=$row[weaponid]'>$row[weaponname]</a></td><td align='center'>$row[damage]</td><td align='right'>$row[value]</td></tr>",true);
addnav("","weapons.php?op=buy&id=$row[weaponid]");
}else{
// output("<tr class='$bgcolor'><td>$row[weaponname]</td><td align='center'>$row[damage]</td><td align='right'>$row[value]</td></tr>",true);
// addnav("","weapons.php?op=buy&id=$row[weaponid]");
output("<tr class='$bgcolor'><td>- - - - <a href='weapons.php?op=buy&id=$row[weaponid]'>$row[weaponname]</a></td><td align='center'>$row[damage]</td><td align='right'>$row[value]</td></tr>",true);
addnav("","weapons.php?op=buy&id=$row[weaponid]");
}
}
output("</table>",true);
addnav("Zurück","einkaufszentrum.php");
}else if ($_GET[op]=="buy"){
$sql = "SELECT * FROM weapons WHERE weaponid='$_GET[id]'";
$result = db_query($sql) or die(db_error(LINK));
if (db_num_rows($result)==0){
output("`&Der Verkäufer schaut dich eine Sekunde lang verwirrt an und kommt zu dem Schluss, dass du ein paar Schläge zuviel auf den Kopf bekommen hast. Schließlich nickt er und grinst.");
addnav("Nochmal versuchen?","weapons.php");
addnav("Zurück","einkaufszentrum.php");
}else{
$row = db_fetch_assoc($result);
if ($row[value]>($session[user][gold]+$tradeinvalue)){
if ($session[user][thievery]>=2) {
$klau=e_rand(1,15);
} else {
$klau=e_rand(2,18);
}
$session[user][reputation]-=10;
if ($session[user][reputation]<=-10){
if ($session[user][reputation]<=-20) $klau=10;
if ($klau==1){ // Fall nur für Diebe
output("`&Mit den Fertigkeiten eines erfahrenen Diebes tauschst du `%$row[weaponname]`& gegen `%".$session[user][weapon]."`& aus und verlässt fröhlich pfeifend den Laden.
`bGlück gehabt!`b Der Verkäufer war gerade durch irgendwas am Fenster abgelenkt. Aber nochmal passiert ihm das nicht! Stolz auf deine
fette Beute stolzierst du über den Stadtplatz - bis dir jemand mitteilt, dass dir da noch ein Preisschild herumbaumelt...`nDu verlierst einen Charmepunkt!");
$session[user][weapon] = $row[weaponname];
$session[user][attack]-=$session[user][weapondmg];
$session[user][weapondmg] = $row[damage];
$session[user][attack]+=$session[user][weapondmg];
$session[user][weaponvalue] = $row[value];
if ($session[user][charm]) $session[user][charm]-=1;
addnav("Zurück","einkaufszentrum.php");
} else if ($klau==2 || $klau==3) { // Diebstahl gelingt perfekt
output("`&Da dir das nötige Kleingeld fehlt, grapschst du dir `%$row[weaponname]`& und tauschst `%".$session[user][weapon]."`& unauffällig dagegen aus.
`bGlück gehabt!`b Der Verkäufer war gerade durch irgendwas am Fenster abgelenkt. Aber nochmal wird ihm das nicht passieren! Stolz auf deine
fette Beute stolzierst du über den Stadtplatz - bis dir jemand mitteilt, dass dir da noch ein Preisschild herumbaumelt...`nDu verlierst einen Charmepunkt!");
$session[user][weapon] = $row[weaponname];
$session[user][attack]-=$session[user][weapondmg];
$session[user][weapondmg] = $row[damage];
$session[user][attack]+=$session[user][weapondmg];
$session[user][weaponvalue] = $row[value];
if ($session[user][charm]) $session[user][charm]-=1;
addnav("Zurück","einkaufszentrum.php");
} else if ($klau==4 || $klau==5) { // Diebstahl gelingt, aber nachher erwischt
output("`&Du grapschst dir `%$row[weaponname]`& und tauschst `%".$session[user][weapon]."`& unauffällig dagegen aus.
So schnell und unauffällig wie du kannst verlässt du den Laden. Geschafft! Als du mit deiner Beute über den Stadtplatz stolzierst, siehst du aus dem
Augenwinkel den Verkäufer auf dich zurauschen. Er packt dich mit einer Hand an ".$session[user][armor]." und zerrt dich mit zur Stadtbank...`n`n
Der Verkäufer zwingt dich mit seinen Händen eng um deinen Hals geschlungen dazu, die `^".($row['value']-$tradeinvalue)."`& Credits, die du ihm schuldest, von der Bank zu zahlen!");
if ($session[user][goldinbank]<0){
output("`&Da du jedoch schon Schulden bei der Bank hast, bekommt er von dort nicht was er verlangt.`n
Er entreißt dir $row[weaponname] gewaltsam,
drückt dir dein(e/n) alte(n/s) ".$session[user][weapon]." in die Hand und schlägt dich nieder. Er raunzt noch etwas, dass du Glück hast, so arm zu sein, sonst hätte er dich umgebracht und dass er dich beim nächsten Diebstahl
ganz sicher umbringen wird, bevor er in seinen Laden zurück geht, wo bereits ein Kunde wartet.`n");
$session[user][hitpoints]=round($session[user][hitpoints]/2);
}else{
$session[user][goldinbank]-=($row[value]-$tradeinvalue);
if ($session[user][goldinbank]<0) output("`nDu hast dadurch jetzt `^".abs($session[user][goldinbank])." Credits`& Schulden bei der Bank!!");
output("`nDas nächste Mal bringt er dich um. Da bist du ganz sicher.");
//debuglog("lost " . ($row['value']-$tradeinvalue) . " gold in bank for stealing the " . $row['weaponname'] . " weapon");
$session[user][weapon] = $row[weaponname];
$session[user][attack]-=$session[user][weapondmg];
$session[user][weapondmg] = $row[damage];
$session[user][attack]+=$session[user][weapondmg];
$session[user][weaponvalue] = $row[value];
}
addnav("Zurück","einkaufszentrum.php");
} else { // Diebstahl gelingt nicht
output("`&Während du wartest, bis der Verkäufer in eine andere Richtung schaut, näherst du dich vorsichtig dem `5$row[weaponname]`& und nimmst es leise vom Regal.
Deiner fetten Beute gewiss drehst du dich leise, vorsichtig, wie ein Ninja, zur Tür, nur um zu entdecken,
dass der Verkäufer drohend in der Tür steht und dir den Weg abschneidet. Du versuchst einen Flugtritt. Mitten im Flug hörst du das \"SCHING\" eines Schwerts,
das seine Scheide verlässt.... dein Fuß ist weg. Du landest auf dem Beinstumpf und der Verkäufer steht immer noch in der Tür, das Schwert ohne Gebrauchsspuren wieder im Halfter und mit
vor der stämmigen Brust bedrohlich verschränkten Armen. \"`#Vielleicht willst du dafür bezahlen?`&\" ist alles, was er sagt,
während du vor seinen Füßen zusammen brichst und deinen Blut unter deinem dir verbliebenen Fuß über den Boden ausschüttest.`n");
$session[user][alive]=false;
//debuglog("lost " . $session['user']['gold'] . " gold on hand due to stealing from Pegasus");
$session[user][gold]=0;
$session[user][hitpoints]=0;
$session[user][experience]=round($session[user][experience]*.9,0);
$session[user][gravefights]=round($session[user][gravefights]*0.75);
output("`b`&Du wurdest vom Verkäufer umgebracht!!!`n");
output("`4Die Credits, die du dabei hattest, hast du verloren!`n");
output("`4Du hast 10% deiner Erfahrung verloren!`n");
output("Du kannst morgen wieder kämpfen.`n");
output("`nWegen der Unehrenhaftigkeit deines Todes landest du im Fegefeuer und wirst das Reich der Schatten aus eigener Kraft heute nicht mehr verlassen können!");
addnav("Tägliche News","news.php");
addnews("`%".$session[user][name]."`& wurde beim Versuch, im Waffenladen zu stehlen, niedergemetzelt.");
}
if ($session[user][reputation]<=-10) $session[user][reputation]-=10;
}else{
$session[user][reputation]-=10;
if ($klau==1){ // Fall nur für Diebe
output("`&Mit den Fertigkeiten eines erfahrenen Diebes tauschst du `%$row[weaponname]`& gegen `%".$session[user][weapon]."`&
aus und verlässt fröhlich pfeifend den Laden.
`bGlück gehabt!`b `!MightyE`5 war gerade durch irgendwas am Fenster abgelenkt. Aber irgendwann wird er den
Diebstahl bemerken und in Zukunft wesentlich besser aufpassen! Stolz auf deine
fette Beute stolzierst du über den Stadtplatz - bis dir jemand mitteilt, dass dir da noch ein Preisschild
herumbaumelt...`nDu verlierst einen Charmepunkt!");
$session[user][weapon] = $row[weaponname];
$session[user][attack]-=$session[user][weapondmg];
$session[user][weapondmg] = $row[damage];
$session[user][attack]+=$session[user][weapondmg];
$session[user][weaponvalue] = $row[value];
if ($session[user][charm]) $session[user][charm]-=1;
addnav("Zurück","einkaufszentrum.php");
} else if ($klau==2 || $klau==3) { // Diebstahl gelingt perfekt
output("`&Da dir das nötige Kleingeld fehlt, grapschst du dir `%$row[weaponname]`& und tauschst `%".$session[user][weapon]."
`& unauffällig dagegen aus.
`bGlück gehabt!`b Der Verkäufer war gerade durch irgendwas am Fenster abgelenkt. Aber irgendwann wird
er den Diebstahl bemerken und in Zukunft besser aufpassen. Stolz auf deine
fette Beute stolzierst du über den Stadtplatz - bis dir jemand mitteilt, dass dir da noch ein Preisschild
herumbaumelt...`nDu verlierst einen Charmepunkt!");
$session[user][weapon] = $row[weaponname];
$session[user][attack]-=$session[user][weapondmg];
$session[user][weapondmg] = $row[damage];
$session[user][attack]+=$session[user][weapondmg];
$session[user][weaponvalue] = $row[value];
if ($session[user][charm]) $session[user][charm]-=1;
addnav("Zurück","einkaufszentrum.php");
} else if ($klau==4 || $klau==5) { // Diebstahl gelingt, aber nachher erwischt
output("`&Du grapschst dir `%$row[weaponname]`& und tauschst `%".$session[user][weapon]."`% unauffällig dagegen aus.
So schnell und unauffällig wie du kannst verlässt du den Laden. Geschafft! Als du mit deiner Beute über
den Stadtplatz stolzierst, siehst du aus dem
Augenwinkel den Verkäufer auf dich zurauschen. Er packt dich mit einer Hand an ".$session[user][armor]." und
zerrt dich mit zur Stadtbank...`n`n
Der Verkäufer zwingt dich mit seinen Händen eng um deinen Hals geschlungen dazu, die `^".($row['value']-$tradeinvalue)."
`& Credits, die du ihm schuldest, von der Bank zu zahlen!");
if ($session[user][goldinbank]<0){
output("Da du jedoch schon Schulden bei der Bank hast, bekommt er von dort nicht was er verlangt.`n
Er entreißt dir $row[weaponname] gewaltsam,
drückt dir dein(e/n) alte(n/s) ".$session[user][weapon]." in die Hand und schlägt dich nieder.
Er raunzt noch etwas, dass du Glück hast, so arm zu sein, sonst hätte er dich umgebracht und dass
er dich beim nächsten Diebstahl
ganz sicher umbringen wird, bevor er in seinen Laden zurück geht, wo bereits ein Kunde wartet.`n");
$session[user][hitpoints]=round($session[user][hitpoints]/2);
}else{
$session[user][goldinbank]-=($row[value]-$tradeinvalue);
if ($session[user][goldinbank]<0) output("`nDu hast dadurch jetzt `^".abs($session[user][goldinbank])." Gold`5 Schulden bei der Bank!!");
//debuglog("lost " . ($row['value']-$tradeinvalue) . " gold in bank for stealing the " . $row['weaponname'] . " weapon");
output("`nDas nächste Mal bringt er dich wahrscheinlich um.");
$session[user][weapon] = $row[weaponname];
$session[user][attack]-=$session[user][weapondmg];
$session[user][weapondmg] = $row[damage];
$session[user][attack]+=$session[user][weapondmg];
$session[user][weaponvalue] = $row[value];
}
addnav("Zurück","einkaufszentrum.php");
} else { // Diebstahl gelingt nicht
output("`&Du grapschst dir `%$row[weaponname]`& und tauschst `%".$session[user][weapon]."`& unauffällig dagegen aus.
So schnell und unauffällig wie du kannst verlässt du den Laden. Geschafft! Als du mit deiner Beute über
den Stadtplatz stolzierst, siehst du aus dem
Augenwinkel den Verkäufer auf dich zurauschen. Er packt dich mit einer Hand an ".$session[user][armor].".`n`n
Er entreißt dir $row[weaponname] gewaltsam,
drückt dir dein(e/n) alte(n/s) ".$session[user][weapon]." in die Hand und schlägt dich nieder.
Er raunzt noch etwas, dass er dich beim nächsten Diebstahl
ganz sicher umbringen wird, bevor er in seinen Laden zurück geht, wo bereits ein Kunde wartet.`n");
$session[user][hitpoints]=1;
if ($session[user][turns]>0){
output("`n`4Du verlierst einen Waldkampf und fast alle Lebenspunkte.");
$session[user][turns]-=1;
}else{
output("`nDer Verkäufer hat dich so schlimm erwischt, dass eine Narbe bleiben wird.`nDu verlierst 3 Charmepunkte und fast alle Lebenspunkte.");
$session[user][charm]-=3;
if ($session[user][charm]<0) $session[user][charm]=0;
}
addnav("Zurück","einkaufszentrum.php");
}
}
}else{
output("`&Der Verkäufer nimmt dein `5".$session[user][weapon]."`& stellt es aus und hängt sofort ein neues Preisschild dran. ");
//debuglog("spent " . ($row['value']-$tradeinvalue) . " gold on the " . $row['weaponname'] . " weapon");
$session[user][gold]-=$row[value];
$session[user][weapon] = $row[weaponname];
$session[user][gold]+=$tradeinvalue;
$session[user][attack]-=$session[user][weapondmg];
$session[user][weapondmg] = $row[damage];
$session[user][attack]+=$session[user][weapondmg];
$session[user][weaponvalue] = $row[value];
output("`n`nIm Gegenzug händigt er dir ein glänzendes, neues `5$row[weaponname]`& aus, das du probeweise im Raum schwingst. Dabei schlägst du dem Verkäufer fast den Kopf ab. ");
output("Er duckt sich so, als ob du nicht der erste bist, der seine neue Waffe sofort ausprobieren will...");
addnav("Zurück","einkaufszentrum.php");
}
}
}
page_footer();
?>