LoGD Standardrelease steht hier zum Download zur Verfügung!
<?php
/******************
Mai 2008
Idee und Ausarbeitung: Delan Ordo & die Chaoshüterin des Nebel
Skript: die Chaoshüterin des Nebels
für die Nebel von Mystara
http://www.mystara-logd.net/
SQL:
ALTER TABLE `accounts` ADD `delan` INT( 11 ) DEFAULT '0' NOT NULL
CREATE TABLE `delanboard` (
`id` int(11) unsigned NOT NULL auto_increment,
`name` varchar(255) NOT NULL default '',
`message` text NOT NULL,
PRIMARY KEY (`id`)
) TYPE=MyISAM
******************/
require_once("common.php");
addcommentary();
page_header("Quartier der Stadtwache");
{
if ($_GET['op']==""){
output("`c`b`mIm Hauptquartier der Stadtwache`b`c`n`n
`kDas Quartier der Stadtwache erscheint von außen wenig imposant. Graue, hohe Steinmauern, dunkle Schieferschindeln, hoch aufragende, trübe Bleiglasfenster, spärlicher Efeubewuchs an den Ecken
des unauffälligen Gebäudes. Würde es nicht so nah an anderen Gebäuden stehen, hätte man es leicht mit einer sakralen Stätte der Einkehr verwechseln können. Sogar die obligatorischen Gargylen fehlen
nicht im Gesamtbild, mit dem Unterschied, dass diese Exemplare hier einen Teil des Wachpersonals bilden.`n
Das Innere des Gebäudes hingegen steht im krassen Kontrast zur Fassade. Geschäftig wuseln die Bürokräfte der Wache zwischen den holzvertäfelten Schaltern zur Abwicklung des Tagesgeschäfts und
den massiven Schreibtischen der Aktenschreiber hin und her, hier und da Staus an den Engstellen der hohen, polierten Granitsäulen verursachend. Die jungen Männer an den Schaltern stehen für allgemeine
Fragen, Anträge und spontane Beleidigungen zur Verfügung. Nur bewegt sich irgendwie immer die andere Schlange schneller.`n
Bei schwierigen Fällen und Angelegenheiten wird der Bittsteller direkt an den Kommandeur der Wache weiter geleitet, `2G`ke`Kn`ge`Kr`ka`2l `jD`2e`kl`Ka`gn `KO`kr`2d`jo`k, dessen Büro hinter der schweren Obsidiantür auf der rechten
Seite der Halle liegt, genau gegenüber der Tür zu den Quartieren der Wachsoldaten. Im Bereich des Kommandeurbüros stehen große Mahagonischreibtische, eindeutig der Arbeitsbereich von `KO`kr`2d`jos`k Stab.`n`n`K");
addnav("Sonstiges");
addnav("zu den Schaltern","delan.php?op=schalter");
addnav("zum Büro","delan.php?op=buero");
if ($session['user']['delan']>0){addnav("Besprechungszimmer","delan.php?op=geheim");}
addnav("verlassen","village.php");
$session['user']['whereuser'] = 0;
}elseif ($_GET['op']=="geheim"){
output("`kDu öffnest eine schwere Eichentür und betrittst den geheimen Raum des Quartieres. Hier haben nur `KO`kr`2d`jos`k anvertrauten Wachen
und Berater Zutritt. Tage- und nächtelange Besprechungen können hier ungestört stattfinden, ebenso die neusten Pläne über ein weiteres Vorgehen geschmiedet werden.`K`n");
if ($session['user']['delan']>1){
addnav("Einladung vergeben","delan.php?op=einlad");
addnav("Einladung zurückziehen","delan.php?op=auslad");
addnav("Raum säubern","delan.php?op=sauber");
}
addnav("zurück","delan.php");
viewcommentary("delan_geheim","hinzufügen",25);
output("`n`n`fEine Mitglied der Stadtwache weist Dich darauf hin, dass dies ein Ort des Rollenspiels ist!");
}elseif ($_GET['op']=="buero"){
output("`kDas Büro des Kommandeurs ist die Manifestation seiner Autorität und Persönlichkeit. Wuchtige, verzierte Möbel, helle Fenster nach hinten raus; allein der Marktwert der für die Einrichtung gebrauchten und
verarbeiteten Materialien zeugt von purer Selbstüberzeugung. In diesem Büro sitzt und arbeitet `2G`ke`Kn`ge`Kr`ka`2l `jD`2e`kl`Ka`gn `KO`kr`2d`jo`k. Er hat ein offenes Ohr für jeden Bürger, der sich ehrlich an ihn wendet – wenn er nicht gerade selbst die
Durchsetzung und Erhaltung der Ordnung und Gerechtigkeit auf der Straße vorantreibt. Kein Adjutant steht bereit, um Eintretende zum Sprechen aufzufordern. Tritt man ein, so hat man einen Grund und darf ihn auch ohne
Umschweife vortragen, selbst wenn `2G`ke`Kn`ge`Kr`ka`2l `KO`kr`2d`jo`k tief in Arbeit steckt.`n`K");
addnav("zurück","delan.php");
viewcommentary("delan_buero","hinzufügen",25);
output("`n`n`fEine Mitglied der Stadtwache weist Dich darauf hin, dass dies ein Ort des Rollenspiels ist!");
}elseif ($_GET['op']=="schalter"){
output("`kHier zwischen den Schaltern in der großen Halle hängen die neuesten Ankündigungen oder Verlautbarungen. Zudem besteht die Möglichkeit, sich bei einfachen Sachverhalten direkt an einen Bürosacharbeiter zu wenden.
Auch bietet die Wache an dieser Stelle neuerdings an, ein Kopfgeld aufheben zu lassen - vorausgesetzt, die Bezahlung stimmt. Man munkelt, dem alten Sheriff sei die Arbeit
in Mystara zu öde geworden... `n`K");
/* $sql = "SELECT acctid,name,message FROM delanboard WHERE message>''";
$result = db_query($sql) or die(db_error(LINK));
if (db_num_rows($result)<=0){
output("`i`KDerzeit sind keine Aushänge vorhanden!`i");
}else{
output("`KFolgende Aushänge kannst Du folgende Aushänge erkennen:");
for ($i=0;$i<db_num_rows($result);$i++){
$row = db_fetch_assoc($result);
output("`n`n<a href=\"mail.php?op=write&to=".rawurlencode($row['login'])."\" target=\"_blank\" onClick=\"".popup("mail.php?op=write&to=".rawurlencode($row['login'])."").";return false;\"><img src='images/newscroll.GIF' width='16' height='16' alt='Mail schreiben' border='0'></a>",true);
output("`& $row[name]`&:`n`f$row[message]`0");
if ($row[acctid]==$session[user][acctid]){
output("[<a href='delan.php?op=aushang1&was=$row[id]&act=del'>entfernen</a>]",true);
addnav("","delan.php?op=msgboard&act=del");
}
}
}
addnav("Aushang machen","delan.php?op=aushang1");*/
addnav("Dein Anliegen");
addnav("Kopfgeld ansprechen","delan.php?op=kopf");
addnav("zurück");
addnav("zurück","delan.php");
viewcommentary("delan_schalter","hinzufügen",25);
output("`n`n`fEine Mitglied der Stadtwache weist Dich darauf hin, dass dies ein Ort des Rollenspiels ist!");
/*}elseif ($_GET['op']=="aushang1"){ // Aushang verfassen
if ($_GET[act]=="del"){
output("Du entfernst diesen Aushang. Der Fall hat sich für dich erledigt.");
addnav("Neuer Aushang","delan.php?op=aushang1");
}else if ($_GET[act]=="add1"){
output("Cedrik kramt einen Zettel und einen Stift unter der Theke hervor und schaut dich fragend an, was er für dich schreiben soll. Offenbar ");
output("sind viele seiner Kunden der Kunst des Schreibens nicht mächtig. \"`%Das macht dann `^$msgprice`% Gold. Wie soll die Nachricht lauten?`0\"`n`n");
output("<form action=\"delan.php?op=msgboard&act=add2&amt=$_GET[amt]\" method='POST'>",true);
output("`nGib deine Nachricht ein:`n<input name='msg' maxlength='999' size='50'>`n",true);
output("<input type='submit' class='button' value='Ans schwarze Brett'>",true);
addnav("","delan.php?op=msgboard&act=add2&amt=$_GET[amt]");
}else if ($_GET[act]=="add2"){
output("Mürrisch nimmt Cedrik dein Gold, schreibt deinen Text auf den Zettel und ohne ihn nochmal durchzulesen, heftet er ihn zu den anderen an das schwarze Brett neben der Eingangstür.");
$session[user][message]=stripslashes($_POST[msg]);
$session[user][msgdate]=$msgdate;
$session[user][gold]-=$msgprice;
}else{
$msgprice=$session[user][level]*6;
$msgdays=(int)getsetting("daysperday",4);
output("\"`%Du möchtest eine Nachricht am schwarzen Brett hinterlassen, ja? Wie lang soll die Nachricht denn dort zu sehen sein?`0\" fragt dich Cedrik fordernd und nennt die Preise.");
addnav("$msgdays Tage (`^$msgprice`0 Gold)","delan.php?op=msgboard&act=add1&amt=1");
addnav("".($msgdays*3)." Tage (`^".($msgprice*3)."`0 Gold)","delan.php?op=msgboard&act=add1&amt=3");
addnav("".($msgdays*10)." Tage (`^".($msgprice*10)."`0 Gold)","delan.php?op=msgboard&act=add1&amt=10");
if ($session[user][message]>"") output("`nEr macht dich noch darauf aufmerksam, dass er deine alte Nachricht entfernen wird, wenn du jetzt eine neue anbringen willst.");
}
*/
}elseif ($_GET['op']=="kopf"){
if ($session['user']['drunkenness']>19){
output("`n`2Du trittst näher an den Schalter heran um Dein Anliegen vorzutragen, doch es wird sofort bemerkt, dass Du bereits einiges getrunken hast.
`n`n`3\"Glaubst Du nicht auch, Du hast heute etwas zuviel getrunken?
Du lässt mir keine Wahl, als Dich einzusperren, damit Du Deinen Rausch ausschlafen kannst,\" `2meint man achselzuckend.
`n`n`2Du wirst in eine Zelle gesperrt, in der Du einige Zeit schläfst. Als Du erwachst, fühlst Du Dich erholt und nüchtern.");
$session['user']['hitpoints'] = $session['user']['maxhitpoints'];
$session['user']['drunkenness']=0;
if ($session['user']['turns']<1){
$session['user']['turns']=0;
}else{
$session['user']['turns']--;
}
addnav("zu den Schaltern","delan.php?op=schalter");
}else{
output("`n`2Du wirst an einem der Schalter in Empfang genommen, und als Du Dein Kopfgeld ansprichst, mustert Dich Dein gegenüber missbilligend.
Gewiss, die Wache freut sich über jede Einnahme, und seien es nur 3 lausige Edelsteine. Doch dass Du überhaupt erst ein Kopfgeld erhaltenhast,
lässt sie Dich nicht gerade mit offenen Armen empfangen.`nMan fragt Dich, ob Du ein Kopfgeld, das auf Dich ausgesetzt wurde, wieder los werden möchtest,
denn wenn nicht, solltest Du schleunigst wieder gehen.`n");
addnav("verschiedenes");
addnav('Diebstähle','delan.php?op=dieb');
if ($session['user']['bounty']>0){
addnav("Aufheben - 3 Edelsteine","delan.php?op=bounty");
output("`n`2Dein Gegenüber wirft einen Blick auf die Kopfgeldliste und meint spöttisch: `3\"Hmmm, es ist also ein Kopfgeld von `^".$session['user'][bounty]." Gold`3 auf Dich ausgesetzt, Du solltest wirklich besser auf Dich aufpassen!\"`n`n
`2Er überlegt einen Augenblick und fügt mit fragendem Blick hinzu: `3\"Nun, ich könnte Dich von der Liste streichen, wenn du willst. Doch meine Dienste sind nicht umsonst, es kostet dich `#drei Edelsteine.\"");
}else{
output("`n`2Dein Gegenüber blickt auf die Kopfgeldliste, schüttelt verärgert den Kopf und sagt mit schroffer Stimme: `3\"Auf Dich ist im Moment kein Kopfgeld ausgesetzt, also mach bitte Platz und geh wieder.\"");
}
addnav("zurück");
addnav("zu den Schaltern","delan.php?op=schalter");
}
}elseif ($_GET['op']=='dieb'){
$dieb=round(getsetting("dieb",0));
output("`2Auf dem Aushang steht die Summe,des bisher gemeldeten Diebesgutes.
`n`nEs sind sage und schreibe `4".$dieb."`2 Gold.");
addnav("zu den Schaltern","delan.php?op=schalter");
}elseif ($_GET['op']=="bounty"){
if ($session['user']['gems']>=3){
//$session['user'][turns]--;
$session['user']['gems']-=3;
output("`n`2Man gibt Dir ein Formular, das Du ausfüllst und anschließend wieder zurück gibst.
`2Man nimmt `33 Deiner Edelsteine `2und versichert Dir, dass das Kopfgeld somit aufgehoben ist.");
addnews($session['user']['name']." `2hat das Kopfgeld im `3Quartier der Stadtwache `2aufheben lassen!!");
$session['user']['bounty']=0;
debuglog("gab der Stadtwache 3 Edelsteine, um ein Kopfgeld aufheben zu lassen.");
}else{
output("`n`2Dein Gegenüber lacht laut auf, als er Deine leeren Taschen sieht.`3\"Mach Dich auf in den Forst und finde erst mal Edelsteine, bevor du meine Dienste in Anspruch nimmst,\" `2brummt er kopfschüttelnd!");
}
addnav("zu den Schaltern","delan.php?op=schalter");
}elseif ($_GET['op']=="einlad"){
output("<form action='delan.php?op=einlad2' method='POST'>
`k`nWem willst du eine Einladung zukommen lassen?`n <input name='name' id='name'> <input type='submit' class='button' value='Suchen'>
</form>
<script language='JavaScript'>document.getElementById('name').focus()</script>",true);
addnav("","delan.php?op=einlad2");
}elseif ($_GET['op']=="einlad2"){
$session['user']['specialinc']=$r;
$string="%";
for ($x=0;$x<strlen($_POST['name']);$x++){
$string .= substr($_POST['name'],$x,1)."%";
}
$sql = "SELECT * FROM accounts WHERE name LIKE '".addslashes($string)."' AND locked=0 ORDER BY level,login";
$result = db_query($sql);
if (db_num_rows($result)<=0){
output("Du kannst niemanden mit einem solchen Namen finden...`@");
}elseif(db_num_rows($result)>100){
output("Du solltest die Zahl derer, die du einladen willst, etwas einschränken.
<form action='delan.php?op=verschick2' method='POST'>
Wem willst du die Einladung schicken? `n<input name='name' id='name'> <input type='submit' class='button' value='Suchen'>
</form>
<script language='JavaScript'>document.getElementById('name').focus()</script>",true);
addnav("","delan.php?op=einlad2");
}else{
output("Du kannst folgenden Leuten eine Einladung schicken:`n
<table cellpadding='3' cellspacing='0' border='0'>
<tr class='trhead'><td>Name</td></tr>",true);
for ($i=0;$i<db_num_rows($result);$i++){
$row = db_fetch_assoc($result);
output("<tr class='".($i%2?"trlight":"trdark")."'><td><a href='delan.php?op=einlad3&acctid=".HTMLEntities($row['acctid'])."'>",true);
output($row['name']);
output("</a></td>",true);
output("</tr>",true);
addnav("","delan.php?op=einlad3&acctid=".HTMLEntities($row['acctid']));
}
output("</table>",true);
}
}elseif ($_GET['op']=="einlad3"){
$sql = "SELECT * FROM accounts WHERE acctid=".$_GET['acctid'];
$result = db_query($sql) or die(db_error(LINK));
$row = db_fetch_assoc($result);
$sql="UPDATE accounts SET delan = 1 WHERE acctid=".$_GET['acctid'];
$result = db_query($sql) or die(db_error(LINK));
systemmail($row['acctid'],'Einladung erhalten','`@'.$session[user][name].'`k hat dir eine Einladung für den geheimen Raum im Hauptquartier der Stadtwache zukommen lassen!');
output("`kDie Einladung wurd verschickt!");
addnav("zurück","delan.php?op=geheim");
}elseif ($_GET['op']=="auslad"){
output("<table cellpadding=2 cellspacing=1 bgcolor='#999999' align='center'><tr class='trhead'><td>Nr.</td><td>Name</td></tr>",true);
$sql = "SELECT * FROM accounts WHERE delan = 1 ORDER BY level";
$sql1 = "SELECT count(acctid) AS c FROM accounts WHERE delan = 1 ORDER BY level";
$result1 = db_query($sql1) or die(db_error(LINK));
$row1 = db_fetch_assoc($result1);
$result = db_query($sql) or die(db_error(LINK));
$i==1;
if (!db_num_rows($result)){
output("<tr class='trdark'><td colspan='3' align='center'>`n`c`k`bDerzeit hat niemand eine Einladung!`b`c</td></tr>",true);
}else {
while ($row = db_fetch_assoc($result)) {
$bgclass = ($bgclass=='trdark'?'trlight':'trdark');
$i++;
output("<tr class='$bgclass'><td>",true);
output($i);
output("</td><td>",true);
output("<a href='delan.php?op=auslad2&id=".$row[acctid]."'>".$row[name]."</a>",true);
output("</td></tr>",true);
addnav("","delan.php?op=auslad2&id=".$row[acctid]);
}
}
output("</table>",true);
addnav("zurück","delan.php?op=geheim");
}elseif($_GET['op']=="auslad2"){
$sql = "SELECT * FROM accounts WHERE acctid=".$_GET[id];
$result = db_query($sql) or die(db_error(LINK));
$row = db_fetch_assoc($result);
output("`kDu möchtest also `@".$row[name]."`k die Einladung entziehen?`n`n");
addnav("Ja!","delan.php?op=auslad3&id=".$row[acctid]);
addnav("Nein!","delan.php?op=geheim");
}elseif($_GET['op']=="auslad3"){
$sql = "SELECT * FROM accounts WHERE acctid=".$_GET[id];
$result = db_query($sql) or die(db_error(LINK));
$row = db_fetch_assoc($result);
$sql="UPDATE accounts SET delan = 0 WHERE acctid=".$_GET[id];
$result = db_query($sql) or die(db_error(LINK));
systemmail($row['acctid'],'Einladung entzogen','`@'.$session[user][name].'`k hat die Einladung für das Hauptquartier der Stadtwache zurückgenommen!');
output("`@Die Einladung wurd zurückgezogen!");
addnav("zurück","delan.php?op=geheim");
}elseif($_GET['op']=="sauber"){
$sql="DELETE FROM commentary WHERE section='delan_geheim'";
db_query($sql);
output("`kDu räumst alle Überreste weg, putzt den Boden, entfernst Blutflecken
und machst überhaupt alles dafür, um den Raum in den ursprünglichen Zustand zurück bringen.`n");
addnav("Zurück","delan.php?op=geheim");
}
}
output('`n`n`c`7`b© by <a href="http://www.mystara-logd.net" target="_blank">Chaoshüterin des Nebels</a>`b`c`0',true);
page_footer();
?>