/***************************************************************
* Coffeehouse by Salator, inspired by Tweety's und Angel's Bäckerei
* EMail: salator@gmx.de
* lotgd-Version dragonslayer V2.5
*
* Background-music with Mozartwürfel:
* Author: Axel Berndt
* EMail: AxelBerndt@gmx.net
* Pianist: Prof. Niels Knolle
* originally at http://www.zib.de/vgp/unheard/materialien/externeApplets/mozart/mozartwuerfel.html
***************************************************************/
//Einstellungsteil
define(OPENTIME,'00:00'); //Startzeit des Bäckers
define(CLOSETIME,'23:59'); //Schliesszeit des Bäckers
//Preise: Name, Preis, Beschreibung, beim Bäcker erhältlich?(1)
$products=array(
milk => array('Milch',50,'Es gibt nichts gesünderes als Milch.',1),
coffee => array('Kaffee',300,'Ein Aufguß aus türkischen Kaffeebohnen, welche vom Flammenstoß des grünen Drachen geröstet wurden.',0),
longcoffee => array('Verlängerter',300,'Dieser Kaffee wird mit der doppelten Menge Wasser zubereitet und ist nicht so stark.',0),
milkcoffee => array('Kaffee verkehrt',300,'Ein Pott Milch mit etwas Kaffee.',0),
pretzel => array('Brezel',100,'Eine Spezialität des Hauses, mit Käse überbacken.',1),
buchtel => array('Buchteln',100,'Eine böhmische Spezialität, Hefeteig gefüllt mit Pflaumenmus.',1),
bap => array('Semmel',150,'Ein kleines Weizengebäck, frisch und lecker.',1),
bread => array('Brot',600,'Ein ganzes Dreipfundbrot. Das ist nahrhaft!',1),
candies => array('Süßigkeiten',200,'Verlockende Mischung aus allem was dick macht.',1),
cake => array('Kuchen',1500,'Früchte zwischen Teig und Schlag, was kann es schöneres geben?',1),
bigcake => array('Riesentorte',4000,'Eine dreistöckige Torte mit einer kleinen Figur drauf. Ideal für Feierlichkeiten. Verschiedene Figuren für verschiedene Anlässe.',1),
gemcake => array('Gâteau de émeraude',20000,'Diesen Kuchen können sich wirklich nur edle Leute leisten! Mit erlesenen Zutaten aus dem Orient und verziert mit echten Smaragden.',0)
);
$xmas=array(
gingerbread => array('Lebkuchen',300,'Ein Lebkuchen mit gebrannten Mandeln drauf.',1),
stollen => array('Weihnachtsstollen',1200,'Ein Rosinenstollen mit Staubzucker bestreut.',1)
);
$lib_category=3; //Kategorie-Nummer der Datenbanktabelle library, aus welcher Bücher im Geschichtenteil des Dorfboten angezeigt werden sollen
//Code-Teil
require_once "common.php";
require_once(LIB_PATH.'board.lib.php');
function getcomment($acctid=1)
{
$sql='SELECT postdate FROM commentary WHERE section=\'salon\' AND author='.$acctid.' ORDER BY commentid DESC LIMIT 1';
$result = db_query($sql);
if(db_num_rows($result))
{
$row = db_fetch_assoc(db_query($sql));
if (strtotime($row['postdate'])>=strtotime('-1 hours'))
{
return true;
}
}
return false;
}
checkday();
page_header("Patisserie");
$indate = getsetting('gamedate','0005-01-01');
$date = explode('-',$indate);
$monat = $date[1];
$tag = $date[2];
if ($monat==12)
{
$products=array_merge($products,$xmas);
}
$time = date('H:i',convertgametime(strtotime(date('r'))));
$bakeroptions = unserialize($session['user']['specialmisc']);
if (!is_array($bakeroptions)||$bakeroptions['bakerinit'] != 1)
{
$bakeroptions = array();
$bakeroptions['bakerinit'] = 1;
$bakeroptions['mint'] = 0;
}
if (($time >= OPENTIME && $time <= CLOSETIME) || $_GET['op'])
{
// geöffnet
if ($_GET['op']=='') //eintreten
{
output('`c`b`2Patisserie "Zum süßen Ei"`0`b`c`n`@Du betrittst die Patisserie und erkennst auf der Theke eine reiche Auswahl an Gaumenfreuden. Neben Brot, Semmeln und Brezeln kannst du hier auch süße Sachen wie Kuchen und Torten erwerben.`nIm angrenzenden Salon sitzen die Mitglieder der feinen Gesellschaft und lassen sich mit besonders erlesenen Köstlichkeiten verwöhnen.`n`n');
if($session['user']['exchangequest']==14 && $monat==9 && $tag>24)
{
output('`%Hinten in der Backstube hörst du ein lautes Fluchen.`@`n`n');
addnav('`%In die Backstube gehen`0','exchangequest.php');
}
board_view('inn" OR b.section="immo" OR b.section="sell',($access_control->su_check(access_control::SU_RIGHT_COMMENT))?2:1,
'Am schwarzen Brett neben der Tür hängen einige Nachrichten, die bei Cedrik in der Schenke aufgegeben wurden:',
'Am schwarzen Brett neben der Tür ist nicht eine einzige Nachricht zu sehen.',
true,false,false,true,10);
addnav('Backwaren','coffeehouse.php?op=baker');
addnav('S?In den Salon','coffeehouse.php?op=salon');
}
elseif ($_GET['op']=='baker' || $_GET['op']=='waiter') //Backwaren kaufen
{
if ($session['user']['gold']<$products[$_GET['what']][1])
{
output('So gern du auch '.$products[$_GET['what']][0].' hättest, `4du hast nicht genug Gold!`n`n');
}
else
{
$bakeroptions[$_GET['what']]+=1;
switch ($_GET['what'])
{
case 'pretzel':
{
if($_GET['op']=='waiter' || $bakeroptions['pretzel']<2)
{
output('`2So eine Brezel gehört zum Kaffee einfach dazu. Und sie schmeckt wirklich vorzüglich. Zu gern würdest du gleich noch eine bestellen, aber du möchtest den anderen Anwesenden keinen Stoff für Klatsch bieten und reißt dich zusammen.');
}
else
{
output('`2Du kostest eine Brezel und bist begeistert so gut wie die war!`nDu stützt dich auf den ganzen Haufen und isst alle weg. Die Leute hinter dir fangen an zu murren, Worte wie "`6Vielfraß`2" sind zu hören. Da hast du dich wohl gerade unbeliebt gemacht.');
$session['user']['charm']=max(0,$session['user']['charm']-1);
}
$session['user']['gold']-=$products[$_GET['what']][1];
$bakeroptions['mint']++;
break;
}
case 'buchtel':
{
if($_GET['op']=='waiter')
{
output('`2Du bestellst eine ganze Schüssel Buchteln, weißt du doch, wie gut die schmecken. Genüßlich isst du eine nach der anderen auf. Mmmh!');
}
else
{
output('`2Du kaufst eine Tüte Buchteln, kostest eine davon und bist begeistert wie gut die schmeckt!`nDu kannst nicht anders und isst sie auf dem Heimweg alle auf. Und was wirst du jetzt zu Hause erzählen?');
}
$session['user']['gold']-=$products[$_GET['what']][1];
$bakeroptions['mint']++;
break;
}
case 'bap':
{
if($bakeroptions['bap']>7)
{
output('`2Du bestellst deine '.$bakeroptions['bap'].'. Semmel. Das bemerkt auch der Bäcker in seiner Backstube und er freut sich dass es dir schmeckt.');
}
else
{
output('`2So eine frische Semmel ist was feines! Du isst sie gleich an Ort und Stelle und fühlst dich etwas gestärkt.');
$session['user']['hitpoints'] = min($session['user']['hitpoints']*1.02,$session['user']['maxhitpoints']*1.15);
}
$session['user']['gold']-=$products[$_GET['what']][1];
$bakeroptions['mint']++;
break;
}
case 'bread':
{
output('Dein Magen knurrt unüberhörbar, also bestellst du dir ein Brot. Als du es bis auf den letzten Krümel aufgegessen hast fühlst du dich gleich viel besser. So ein Brot ist wirklich nahrhaft...');
if($bakeroptions['bread']>3)
{
output('`nEinige der Anwesenden beginnen Wetten abzuschließen ob du auch noch ein '.($bakeroptions['bread']+1).'. Brot in dich reinstopfen kannst.');
}
$healing=array(0,4000,1731,1092,865,745,670,617,577,546,521,500,482,467,455,443);
$session['user']['hitpoints'] = min($session['user']['hitpoints']+$healing[$session['user']['level']],$session['user']['maxhitpoints']*1.05);
$session['user']['gold']-=$products[$_GET['what']][1];
$bakeroptions['mint']+=2;
break;
}
case 'cake':
{
output('`2Du bestellst dir ein Stück Zwetschgenkuchen. Hmm, schmeckt der gut!`n');
$session['user']['hitpoints'] = min($session['user']['hitpoints']*1.01,$session['user']['maxhitpoints']);
$session['user']['gold']-=$products[$_GET['what']][1];
$bakeroptions['mint']++;
if(e_rand(1,20)==10)
{
output('Du beißt in den Kuchen und verspürst einen Schmerz weil du auf was hartes gebissen hast. Ein Smaragd?! Du lässt dir nichts anmerken und steckst den Edelstein ein.');
$session['user']['gems']++;
}
break;
}
case 'bigcake':
{
output('`2Du bestellst dir eine Festtagstorte! Die anderen Anwesenden beginnen zu spekulieren was es bei dir zu feiern gibt. ');
$session['user']['gold']-=$products[$_GET['what']][1];
$bakeroptions['mint']+=3;
if($_GET['op']=='waiter')
{
insertcommentary(1,'/msg Eine riesige Torte wird hereingefahren und an den Tisch von '.$session['user']['login'].' gebracht.','salon');
output('Du bemerkst, daß du die Torte niemals alleine aufessen kannst und lädst alle ein mit dir zu feiern.`n');
if($session['user']['reputation']<50)
{
$session['user']['reputation']++;
}
else
{
$session['user']['charm']++;
}
}
else
{
output('Du gibst jedoch nicht viel auf das Geschwätz der Leute und nimmst die Torte mit nach hause.`n');
}
break;
}
case 'gemcake':
{
output('`2Der Kellner bringt dir eine prachtvolle Torte, welche mit Saphiren verziert ist.`nDu überlegst ob du es doch lassen solltest da reinzubeissen, jedoch kannst du deiner Schwäche nicht wiederstehen!`nDie Edelsteine steckst du natürlich ein.`n');
$session['user']['gems']+=3;
$session['user']['gold']-=$products[$_GET['what']][1];
break;
}
case 'candies':
{
output('`2Du bestellst dir eine Schale mit Süßigkeiten.`n');
if(e_rand(1,5)==3)
{
output('Da bemerkst du ein verführerisches Lächeln '.($session['user']['sex']?'eines jungen Mannes':'einer jungen Frau').' und beschließt spontan, deine Leckereien zu teilen.');
$session['user']['charm']++;
$session['user']['turns']=max(0,$session['user']['turns']-1);
}
else
{
output('Eigentlich weißt du ja daß süße Sachen nicht gesund sind, gibst aber deiner Schwäche nach.');
$session['user']['hitpoints']=max(1,$session['user']['hitpoints']-1);
}
$session['user']['gold']-=$products[$_GET['what']][1];
break;
}
case 'milk':
{
output('`2Du trinkst einen Schluck `&Milch`2 und fühlst dich gleich viel besser`n');
$session['user']['drunkenness'] *=0.7;
$session['user']['gold']-=$products[$_GET['what']][1];
break;
}
case 'coffee':
case 'longcoffee':
{
output('`2Du bestellst dir einen '.($_GET['what']=='longcoffee'?'"verlängerten"':'').' Kaffee. Wenig später bringt ihn der Kellner an deinen Tisch, `Tschwarz`2 und heiß, dazu ein Kännchen Sahne, Zucker und das obligatorische Glas Wasser.`n');
$session['user']['gold']-=$products[$_GET['what']][1];
if(($bakeroptions['coffee']+$bakeroptions['longcoffee']+$bakeroptions['milkcoffee'])>2) user_set_aei(array('usedouthouse'=>0));
break;
}
case 'milkcoffee':
{
output('`2Weil du Kaffee schlecht verträgst, aber dennoch nicht auf den Genuss verzichten möchtest, bestellst du dir einen Milchkaffee. Wenig später bringt ihn der Kellner an deinen Tisch, `8hellgelb`2 und heiß, dazu Zucker und das obligatorische Glas Wasser.`n');
$session['user']['gold']-=$products[$_GET['what']][1];
if(($bakeroptions['coffee']+$bakeroptions['longcoffee']+$bakeroptions['milkcoffee'])>2) user_set_aei(array('usedouthouse'=>0));
break;
}
case 'stollen':
$bakeroptions['mint']++;
case 'gingerbread':
{
output('`2Du bestellst dir einen '.$products[$_GET['what']][0].'. Als du hineinbeißt du denkst du daran daß sich schonwieder ein Jahr dem Ende neigt. Wie schnell das doch ging...`n`n`c
`c');
$session['user']['gold']-=$products[$_GET['what']][1];
$bakeroptions['mint']++;
break;
}
default:
{
$out.='`^Preisliste`0`n`n`c
| Artikel | Preis | '; $count=1; while (list($key, $val) = each($products)) if(($_GET['op']=='baker' && $val[3]==1) || ($_GET['op']=='waiter')) { $out.='
|---|---|
| `9'.$val[0].'`0 | `9'.$val[1].'`0 |
| `7'.$val[2].'`0 | |
von '.$row['author'].' `n`0'.nl2br($row['book']).' |