LoGD Standardrelease steht hier zum Download zur Verfügung!
<?php
/*
// modifications by anpera:
// stealing enabled with 1:15 success (thieves have 2:12 chance) and 'pay from bank'
2023-05-27 aragon php8, clean code
*/
require_once "common.php";
checkday();
$op = $_GET['op'] ?? "";
page_header("MightyE's Waffenladen");
output("`c`b`&MightyE's Waffen`0`b`c");
$tradeinvalue = round(($session['user']['weaponvalue'] * .75), 0);
if ($op == "") {
output("`7Du stolperst hinein, getrieben von der Gier nach den glänzenden Dingen in seinem Waffenladen. ");
output("`!MightyE`7 sieht kurz zu dir auf und beschäftigt sich weiterhin mit seinem Claymore Schwert, welches");
output(" er mit liebevoller Hingabe auf Hochglanz zu polieren versucht. Du beobachtest ihn einen Moment");
output(" fasziniert dabei und stellst fest, dass es schon beinahe so sehr glänzt wie seine Glatze. Vor dir,");
output(" sorgfältig in Glaskästen aufgereiht, steht eine Waffe neben der anderen und schimmert in ihrer ganzen");
output(" Pracht im flackernden Fackelschein.`n`!MightyE`7 murmelt dir einen Gruß zu");
output(($session['user']['thefttoday'] ? " und scheint besonders auf deine Finger acht zu geben" : "") . ".");
addnav("Waffen anschauen", "weapons.php?op=peruse");
if (@file_exists('shops.php')) {
addnav('Hanseviertel', 'shops.php');
}
addnav("Zurück ins Dorf", "village.php");
addnav("H?Zurück zum Hanseviertel", "shop.php?op=leave");
} elseif ($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("`7Du gehst gemütlich an den Glaskästen vorbei und betrachtest die Objekte hinter den Scheiben. ");
output("Nur mühsam kannst du deine Begeisterung hinter einer teilnahmslosen Miene verbergen. ");
output("`!MightyEs`7 geübtes Auge jedoch durchschaut dich und er sagt mit seiner volltönenden Bassstimme: ");
output("\"`#Ich gebe dir für `5" . $session['user']['weapon'] . "`# genau `^$tradeinvalue Goldstücke`#. ");
output("Du musst nur auf eine Waffe deiner Wahl klicken... immer diese ausländischen Worte..., ");
output("die du kaufen magst!`7\" Er blinzelt einen Moment misstrauisch und nickt dann bestätigend. ");
output("\"`#Ja... genauso machen wir es!`7\"`n`n ");
output("<table border='0' cellpadding='0'>", true);
output("<thead>", true);
output("<tr class='trhead'><td>`bName`b</td><td align='center'>`bSchaden`b</td><td align='right'>`bPreis`b</td></tr>", true);
output("</thead><tbody>", true);
for ($i = 0; $i < db_num_rows($result); $i++) {
$row = db_fetch_assoc($result);
$bgcolor = ($i % 2 == 1 ? "trlight" : "trdark");
printTr($row, $bgcolor, $row['value'] <= ($session['user']['gold'] + $tradeinvalue));
addnav("", "weapons.php?op=buy&id={$row['weaponid']}");
}
output("</tbody></table>", true);
if (@file_exists('shops.php')) {
addnav('Hanseviertel', 'shops.php');
}
addnav("Zurück ins Dorf", "village.php");
addnav("H?Zurück zum Hanseviertel", "shop.php?op=leave");
} elseif ($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("`!MightyE`7 schaut dich eine Sekunde lang verwirrt an und kommt zu dem Schluss, dass du ein paar Schläge");
output(" zuviel auf den Kopf bekommen hast. Schließlich nickt er und grinst.");
addnav("Nochmal versuchen?", "weapons.php");
if (@file_exists('shops.php')) {
addnav('Hanseviertel', 'shops.php');
}
addnav("Zurück zum Dorf", "village.php");
addnav("H?Zurück zum Hanseviertel", "shop.php?op=leave");
} 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);
}
if ($session['user']['thefttoday'] > 0) {
if ($session['user']['thefttoday'] == 2) {
$klau = 10;
}
if ($klau == 1) { // Fall nur für Diebe
output("`5Mit den Fertigkeiten eines erfahrenen Diebes tauschst du `%" . $row['weaponname'] . "`5 gegen `%");
output($session['user']['weapon'] . "`5 aus und verlässt fröhlich pfeifend den Laden. ");
output(" `bGlück gehabt!`b `!MightyE`5 war gerade durch irgendwas am Fenster abgelenkt. Aber nochmal");
output(" passiert ihm das nicht! Stolz auf deine fette Beute stolzierst du über den Dorfplatz - bis dir");
output(" 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;
}
if (@file_exists('shops.php')) {
addnav('Hanseviertel', 'shops.php');
}
addnav("Zurück zum Dorf", "village.php");
addnav("H?Zurück zum Hanseviertel", "shop.php?op=leave");
} elseif ($klau == 2 || $klau == 3) { // Diebstahl gelingt perfekt
output("`5Da dir das nötige Kleingold fehlt, grapschst du dir `%{$row['weaponname']}`5 und tauschst `%" . $session['user']['weapon'] . "`5 unauffällig dagegen aus. ");
output(" `bGlück gehabt!`b `!MightyE`5 war gerade durch irgendwas am Fenster abgelenkt. Aber nochmal wird ihm das nicht passieren! Stolz auf deine ");
output("fette Beute stolzierst du über den Dorfplatz - 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;
if (@file_exists('shops.php')) addnav('Hanseviertel', 'shops.php');
addnav("Zurück zum Dorf", "village.php");
addnav("H?Zurück zum Hanseviertel", "shop.php?op=leave");
} elseif ($klau == 4 || $klau == 5) { // Diebstahl gelingt, aber nachher erwischt
output("`5Du grapschst dir `%{$row['weaponname']}`5 und tauschst `%" . $session['user']['weapon'] . "`5 unauffällig dagegen aus. ");
output(" So schnell und unauffällig wie du kannst verlässt du den Laden. Geschafft! Als du mit deiner Beute über den Dorfplatz stolzierst, siehst du aus dem ");
output("Augenwinkel `#MightyE`5 auf dich zurauschen. Er packt dich mit einer Hand an " . $session['user']['armor'] . " und zerrt dich mit zur Stadtbank...`n`n");
output("`#MightyE`5 zwingt dich mit seinen Händen eng um deinen Hals geschlungen dazu, die `^" . ($row['value'] - $tradeinvalue) . "`5 Gold, 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");
output("Er entreißt dir {$row['weaponname']} gewaltsam, ");
output(" 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");
output(" 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!!");
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'];
}
if (@file_exists('shops.php')) addnav('Hanseviertel', 'shops.php');
addnav("Zurück zum Dorf", "village.php");
addnav("H?Zurück zum Hanseviertel", "shop.php?op=leave");
} else { // Diebstahl gelingt nicht
output("Während du wartest, bis `!MightyE`7 in eine andere Richtung schaut, näherst du dich vorsichtig dem `5{$row['weaponname']}`7 und nimmst es leise vom Regal. ");
output("Deiner fetten Beute gewiss drehst du dich leise, vorsichtig, wie ein Ninja, zur Tür, nur um zu entdecken, ");
output("dass `!MightyE`7 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, ");
output("das seine Scheide verlässt.... dein Fuß ist weg. Du landest auf dem Beinstumpf und `!MightyE`7 steht immer noch im Torbogen, das Schwert ohne Gebrauchsspuren wieder im Halfter und mit ");
output("vor der stämmigen Brust bedrohlich verschränkten Armen. \"`#Vielleicht willst du dafür bezahlen?`7\" ist alles, was er sagt, ");
output("während du vor seinen Füßen zusammen brichst und deinen Lebenssaft 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 von `!MightyE`& umgebracht!!!`n");
output("`4Das Gold, das 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'] . "`5 wurde beim Versuch, in `!MightyE`5's Waffenladen zu stehlen, niedergemetzelt.");
}
if ($session['user']['thefttoday'] == 1) $session['user']['thefttoday'] = 2;
} else {
$session['user']['thefttoday'] = 1;
if ($klau == 1) { // Fall nur für Diebe
output("`5Mit den Fertigkeiten eines erfahrenen Diebes tauschst du `%{$row['weaponname']}`5 gegen `%" . $session['user']['weapon'] . "`5 aus und verlässt fröhlich pfeifend den Laden. ");
output(" `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 ");
output("fette Beute stolzierst du über den Dorfplatz - 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;
if (@file_exists('shops.php')) addnav('Hanseviertel', 'shops.php');
addnav("Zurück zum Dorf", "village.php");
addnav("H?Zurück zum Hanseviertel", "shop.php?op=leave");
} elseif ($klau == 2 || $klau == 3) { // Diebstahl gelingt perfekt
output("`5Da dir das nötige Kleingold fehlt, grapschst du dir `%{$row['weaponname']}`5 und tauschst `%" . $session['user']['weapon'] . "`5 unauffällig dagegen aus. ");
output(" `bGlück gehabt!`b `!MightyE`5 war gerade durch irgendwas am Fenster abgelenkt. Aber irgendwann wird er den Diebstahl bemerken und in Zukunft besser aufpassen. Stolz auf deine ");
output("fette Beute stolzierst du über den Dorfplatz - 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;
if (@file_exists('shops.php')) addnav('Hanseviertel', 'shops.php');
addnav("Zurück zum Dorf", "village.php");
addnav("H?Zurück zum Hanseviertel", "shop.php?op=leave");
} elseif ($klau == 4 || $klau == 5) { // Diebstahl gelingt, aber nachher erwischt
output("`5Du grapschst dir `%{$row['weaponname']}`5 und tauschst `%" . $session['user']['weapon'] . "`5 unauffällig dagegen aus. ");
output(" So schnell und unauffällig wie du kannst verlässt du den Laden. Geschafft! Als du mit deiner Beute über den Dorfplatz stolzierst, siehst du aus dem ");
output("Augenwinkel `#MightyE`5 auf dich zurauschen. Er packt dich mit einer Hand an " . $session['user']['armor'] . " und zerrt dich mit zur Stadtbank...`n`n");
output("`#MightyE`5 zwingt dich mit seinen Händen eng um deinen Hals geschlungen dazu, die `^" . ($row['value'] - $tradeinvalue) . "`5 Gold, 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");
output("Er entreißt dir {$row['weaponname']} gewaltsam, ");
output(" 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");
output(" 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'];
}
if (@file_exists('shops.php')) addnav('Hanseviertel', 'shops.php');
addnav("Zurück zum Dorf", "village.php");
addnav("H?Zurück zum Hanseviertel", "shop.php?op=leave");
} else { // Diebstahl gelingt nicht
output("`5Du grapschst dir `%{$row['weaponname']}`5 und tauschst `%" . $session['user']['weapon'] . "`5 unauffällig dagegen aus. ");
output(" So schnell und unauffällig wie du kannst verlässt du den Laden. Geschafft! Als du mit deiner Beute über den Dorfplatz stolzierst, siehst du aus dem ");
output("Augenwinkel `#MightyE`5 auf dich zurauschen. Er packt dich mit einer Hand an " . $session['user']['armor'] . ".`n`n");
output("Er entreißt dir {$row['weaponname']} gewaltsam, ");
output(" 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");
output(" 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("`n`4MightyE 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;
}
if (@file_exists('shops.php')) addnav('Hanseviertel', 'shops.php');
addnav("Zurück zum Dorf", "village.php");
addnav("H?Zurück zum Hanseviertel", "shop.php?op=leave");
}
}
} else {
output("`7Du gibst `!MightyE`7 das Gold für die Waffe." . ($tradeinvalue == 0 ? "" : " Er nimmt dein `5" . $session['user']['weapon'] . "`7, 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']}`7 aus, das du probeweise im Raum schwingst. Dabei schlägst du `!MightyE`7 fast den Kopf ab. ");
output("Er duckt sich so, als ob du nicht der erste bist, der seine neue Waffe sofort ausprobieren will...");
if (@file_exists('shops.php')) addnav('Hanseviertel', 'shops.php');
addnav("Zurück zum Dorf", "village.php");
addnav("H?Zurück zum Hanseviertel", "shop.php?op=leave");
}
}
}
function printTr($row, $bgcolor, $value)
{
output("<tr class='$bgcolor'><td>", true);
output(($value ? "Kaufe " : "- - - - "));
output("<a href='weapons.php?op=buy&id={$row['weaponid']}'>", true);
output("{$row['weaponname']}</a></td><td align='center'>{$row['damage']}</td><td align='right'>", true);
output("{$row['value']}</td></tr>", true);
}
page_footer();