back lässt sich die Navigation vereinfachen
define('KINDER',(bool) getsetting("kindermod",false)); // Wenn Kindermod installiert ist bitte in der nhmaster auf aktiv stellen!
define('COMMENTARY',(bool) getsetting("commentarymio",false));
class zimmer {
// MASTER-KLASSE - NUR VERÄNDERN WENN IHR EUCH WIRKLICH SICHER SEID!!!
var $id, $name, $level, $label, $linker, $aktiv;
var $gold = 0;
var $gems = 0;
function einlesen($daten) {
$this->id = $daten['zimmerid'];
$this->name = $daten['name'];
$this->linker = $daten['link'];
$this->label = $daten['label'];
$this->level = $daten['level'];
$this->aktiv = $daten['aktiv'];
$this->gold = $daten['gold'];
$this->gems = $daten['gems'];
if(empty($this->level)) $this->level = 0;
} // Ende Funktion
function finddata($id) {
$sql = "SELECT * FROM `zimmer` WHERE zimmerid = ".$id." LIMIT 1";
$result = db_query($sql) or die(db_error(LINK));
$this->einlesen(db_fetch_assoc($result));
} // Ende Funktion
function adminausgabe() {
$ausgabe = "
\n";
addnav("","nhmaster.php?op=zimmerweiter&zimmer=".$this->id);
return $ausgabe;
}
function speichern() {
$sql = "UPDATE `zimmer` SET `link` = '".$_POST['linker']."', `label` = '".$_POST['label']."', `level` = ".
((int) $_POST['level']).", `aktiv` = ".((int) $_POST['aktiv']).", `gold` = ".((int) $_POST['gold']).", `gems` = ".
((int) $_POST['gems']). " WHERE `zimmerid` = ".((int) $_GET['zimmer']);
db_query($sql) or die(db_error(LINK));
if($this->aktiv == false && $_POST['aktiv'] == true) $this->installieren();
elseif($this->aktiv == true && $_POST['aktiv'] == false) $this->deinstallieren();
}
function installieren($child=false) {
if($child == false) {
$name = "".$this->name."";
$modul = new $name();
$modul->installieren(true);
}
}
function deinstallieren($child=false) {
if($child == false) {
$name = "".$this->name."";
$modul = new $name();
$modul->deinstallieren(true);
}
}
} // Ende Klasse
class office extends zimmer {
// Büro zur Überwachung der Schlüssel etc.
// Basismodul!
var $back;
// Konstruktor
function office() {
$this->back ="nhouses.php?op=drin&go=".$_GET['go'];
switch($_GET['act']) {
case "upgrade": $this->upgrade(); break;
case "goupgrade": $this->goupgrade(); break;
case "takekey": $this->takekey(); break;
case "givekey": $this->givekey(); break;
case "rename": $this->benennen(); break;
case "desc": $this->desc(); break;
case "zimmerdrin":$this->zimmerdrin(); break;
case "zimmerbau": $this->zimmerbau(); break;
case "abbau": $this->abbau(); break;
case "verkauf": redirect("nhouses.php?op=verkaufen"); break;
default: $this->basis();
} // Ende Switch
} // Ende Konstruktor
// Methoden
function basis() {
global $session, $haus;
if ($session['user']['acctid']==$haus->besitzerid){
output("`2`b`c".$haus->name."`b, `&ein ".$haus->level->name."`&`n `bDein Arbeitszimmer`b `c`");
output("`@Du gehst in dein Arbeitszimmer. Ein großer Schreibtisch steht inmitten des Raumes. Dahinter ein großer bequemer Sessel.`n");
output("Sogleich setzt du dich hinein, siehst die Post durch und erledigst sonstige Verwaltungangelegenheiten des Hauses`n`n");
output("`b`&Schatzübersicht:`b `^Gold: ".$haus->gold." `2vorhanden, noch Platz für `^".schatz::goldleft()."`2;");
output("`#Edelsteine: ".$haus->gems." `2vorhanden, noch Platz für `#".schatz::gemsleft()."`2`n`n");
output("`2In deinem Haus befinden sich insgesammt `^".count($haus->ausbauten)."`2 zusätzliche Zimmer - auf der aktuellen Stufe kannst du also noch `^");
output($haus->level->zimmer - (count($haus->ausbauten))."`2 weitere Zimmer anbauen. `i`6(".count($haus->ausbauten)." von ".$haus->level->zimmer.")`i`0`n`n");
$chat="Mit deinen Mietern besprechen";
addnav("Das Haus");
addnav("Haus ausbauen",$this->back."&act=upgrade");
addnav("Haus umbenennen",$this->back."&act=rename");
addnav("Beschreibung ändern",$this->back."&act=desc");
addnav("Haus verkaufen",$this->back."&act=verkauf");
addnav("Die Zimmer");
if(count($haus->ausbauten) > 0) addnav("Angebaute Zimmer",$this->back."&act=zimmerdrin");
if(count($haus->ausbauten) < $haus->level->zimmer) addnav("Zimmer anbauen",$this->back."&act=zimmerbau");
addnav("Die Bewohner");
addnav("Einladen",$this->back."&act=givekey");
addnav("n?Herauswerfen",$this->back."&act=takekey");
}else{
output("`2`b`c".$haus->name."`b, `&ein ".$haus->level->name."`&`n `bDas Arbeitszimmer des Hausbesitzers.`b `c`");
output("`@Du gehst in dein Arbeitszimmer. Ein großer Schreibtisch steht inmitten des Raumes. Dahinter ein großer bequemer Sessel.`n");
output("Mit Neid siehst du dich um. Dein Vermieter sitzt auf dem Sessel hinter dem Schreibtisch und sieht von einem Pergament auf, das er gerade gelesen hat");
$chat="Mit dem Hausbesitzer besprechen";
}
viewcommentary("office-".$haus->id,"$chat:",30,"meint");
output("`n`n`n| `2`bDie Schlüssel:`b `0 |
| ",true);
$sql = "SELECT items.*,accounts.acctid AS aid,accounts.name AS besitzer FROM items LEFT JOIN accounts ON accounts.acctid=items.owner WHERE value1=".$haus->id." AND class='Schlüssel' ORDER BY id ASC";
$result = db_query($sql) or die(db_error(LINK));
for ($i=1;$i<=db_num_rows($result);$i++){
$item = db_fetch_assoc($result);
if ($item['besitzer']==""){
output("`n`2".$i.": `4`iVerloren`i`0");
}else{
output("`n`2$i: `&".$item['besitzer']."`0");
}
if ($item['aid']==$haus->besitzerid) output(" (der Eigentümer) ");
if ($item['hvalue']>0 && $item['owner']>0) output(" `ischläft hier`i");
}
output(" |
|
",true);
addnav("Im Haus");
addnav("Zurück zum Flur","nhouses.php?op=drin");
} // Ende Funktion
function zimmerdrin() {
global $haus;
output("`2In deinem Haus befinden sich `^".count($haus->ausbauten)."`2 zusätzliche Zimmer - auf der aktuellen Stufe kannst du also noch `^");
output($haus->level->zimmer - (count($haus->ausbauten))."`2 weitere Zimmer anbauen. `i`6(".count($haus->ausbauten)." von ".$haus->level->zimmer.")`i`0`n");
output("`^Folgende Zimmer sind bereits in diesem Haus gebaut:`0`n`n");
output("
| Nr | Name | Ab Level | Gold | Gems | ops |
",true);
foreach($haus->ausbauten as $key=>$val) {
$zimmer = new zimmer;
$zimmer->finddata($val);
$b = ($key%2==0?"trlight":"trdark");
$c = ($key%2==0?"`9":"`^");
output("| $c".$val." | $c".$zimmer->label." | $c".$zimmer->level." | $c".$zimmer->gold." | $c"
.$zimmer->gems." | entfernen |
",true);
addnav("",$this->back."&act=abbau&zid=".$zimmer->id);
}
output("
",true);
if(count($haus->ausbauten) < $haus->level->zimmer) addnav("Zimmer anbauen",$this->back."&act=zimmerbau");
addnav("Zurück ins Arbeitszimmer",$this->back);
} // Ende Funktion
function zimmerbau() {
global $haus, $session;
if(empty($_GET['bau'])) {
$sql = "SELECT * FROM `zimmer` WHERE aktiv = 1 ";
for($i=0;$i< count($haus->ausbauten);$i++) {
$sql .= "AND `zimmerid` <> ".$haus->ausbauten[$i]." ";
} // Ende FOR
$result = db_query($sql) or die(db_error(LINK));
if(db_num_rows($result) > 0) {
output("`^Folgende Zimmer können noch angebaut werden:`n`n`0");
output("| Nr | Name | Gold | Gems | Ops |
",true);
//output("| Nr | Name | Ops |
",true);
for($i=0;$i < db_num_rows($result);$i++) {
$row = db_fetch_assoc($result);
$zimmer = new zimmer;
$zimmer->einlesen($row);
$b = ($i%2==0?"trlight":"trdark");
$c = ($i%2==0?"`9":"`^");
output("| $c".$zimmer->id." | $c".$zimmer->label." | $c".$zimmer->gold." | $c".$zimmer->gems." | Bau |
",true);
//output("| $c".$zimmer->id." | $c".$zimmer->label." | Bau |
",true);
addnav("",$this->back."&act=zimmerbau&bau=true&zid=".$zimmer->id);
} // Ende FOR
output("
",true);
} else {
output("Es stehen keine weiteren Ausbauten zur Verfügung.");
} // Ende ELSE
} else {
$zimmer = new zimmer;
$zimmer->finddata($_GET['zid']);
if($session['user']['gold'] >= $zimmer->gold && $session['user']['gems'] >= $zimmer->gems) {
output("`@Du baust das Zimmer ".$zimmer->label." in dein Haus ein!`n");
if($zimmer->gold == 0 && $zimmer->gems == 0) {
output("Da dieses Zimmer kostenlos ist, musst du nichts bezahlen!");
} else {
output("Dafür bezahlst du `^".$zimmer->gold." Goldstücke`@ und `#".$zimmer->gems." Edelsteine`0`n");
$session['user']['gold'] -= $zimmer->gold;
$session['user']['gems'] -= $zimmer->gems;
}
$haus->ausbauten[(count($haus->ausbauten)+1)] = $zimmer->id;
} else {
output("`4Du hast leider nicht genügend Gold und/oder Edelsteine, um dieses Zimmer zu bauen!`0");
} // Ende ELSE
} // Ende ELSE
addnav("Zurück ins Arbeitszimmer",$this->back);
} // Ende Funktion
function abbau() {
global $haus;
if(empty($_GET['zid'])) redirect($this->back);
if($_GET['validate'] == 'ja') {
$zimmer = new zimmer;
$zimmer->finddata($_GET['zid']);
output("Das Zimmer `#\"".$zimmer->label."\" `6wird nun entfernt.");
$key = array_search($_GET['zid'],$haus->ausbauten);
unset($haus->ausbauten[$key]);
} else {
$zimmer = new zimmer;
$zimmer->finddata($_GET['zid']);
output("`6Möchtest du das Zimmmer `#\"".$zimmer->label."\" `6wirklich aus deinem Haus entfernen? Alle investierten Mittel gehen dann verloren!");
addnav("Aktionen");
addnav("Ja, entfernen!",$this->back."&act=abbau&zid=".$_GET['zid']."&validate=ja");
}
addnav("Zurück");
addnav("Arbeitszimmer",$this->back);
} // Ende Funktion
function desc() {
global $haus;
if (!$_POST['desc']){
output("`2Hier kannst du die Beschreibung für dein Haus ändern.`n`nDie aktuelle Beschreibung lautet:`0".$haus->text."`0`n");
output("`0",true);
addnav("",$this->back."&act=takekey");
}else{
$sql = "SELECT acctid,name,login,gold,gems FROM accounts WHERE login='".$_POST['ziel']."' AND locked=0";
$result = db_query($sql);
$row = db_fetch_assoc($result);
output("`2Du verlangst den Schlüssel von `&".$row['name']."`2 zurück.`n");
//$sql = "SELECT owner FROM items WHERE value1=".$haus->id." AND class='Schlüssel' AND owner<>.".$haus->besitzer." ORDER BY id ASC";
//$result = db_query($sql) or die(db_error(LINK));
$goldgive=round($haus->gold/(db_num_rows($result)+1));
$gemsgive=round($haus->gems/(db_num_rows($result)+1));
systemmail($row['acctid'],"`@Schlüssel zurückverlangt!`0","`&".$session['user']['name']."`2 hat den Schlüssel zu Haus Nummer `b".$haus->id."`b (".$haus->name."`2) zurückverlangt. Du bekommst `^".$goldgive."`2 Gold auf die Bank und `#".$gemsgive."`2 Edelsteine aus dem gemeinsamen Schatz ausbezahlt!");
output($row['name']."`2 bekommt `^".$goldgive."`2 Gold und `#".$gemsgive."`2 Edelsteine aus dem gemeinsamen Schatz.");
$sql = "UPDATE items SET owner=".$haus->besitzerid.",hvalue=0 WHERE owner=".$row['acctid']." AND class='Schlüssel' AND value1=".$haus->id;
db_query($sql);
$sql = "UPDATE accounts SET goldinbank=goldinbank+$goldgive,gems=gems+$gemsgive WHERE acctid=".$row['acctid'];
db_query($sql);
$haus->gold -= $goldgive;
$haus->gems -= $gemsgive;
$sql = "INSERT INTO commentary (postdate,section,author,comment) VALUES (now(),'office-".$haus->id."',".$session['user']['acctid'].",'/me `^nimmt ".$row['name']."`^ einen Schlüssel ab. ".$row['name']."`^ bekommt einen Teil aus dem Schatz.')";
db_query($sql) or die(db_error(LINK));
}
addnav("Zurück zum Arbeitszimmer",$this->back);
} // Ende Funktion
function givekey() {
global $session, $haus;
if (!$_POST['ziel']) {
output("`2Einen Schlüssel für dieses Haus hat:`n`n");
$sql = "SELECT items.*,accounts.name AS besitzer FROM items LEFT JOIN accounts ON accounts.acctid=items.owner WHERE value1=".$haus->id." AND class='Schlüssel' AND owner<>".$session['user']['acctid']." ORDER BY value2 ASC";
$result = db_query($sql) or die(db_error(LINK));
for ($i=0;$i < db_num_rows($result);$i++){
$item = db_fetch_assoc($result);
output("`c`& ".$item['besitzer']."`0`c");
}
$sql = "SELECT value2 FROM items WHERE value1=".$haus->id." AND class='Schlüssel' AND owner=".$haus->besitzerid." ORDER BY id ASC";
$result = db_query($sql) or die(db_error(LINK));
if (db_num_rows($result)>0) {
output("`n`2Du kannst noch `b".db_num_rows($result)."`b Schlüssel vergeben.");
output("",true);
output("`n`nWenn du einen Schlüssel vergibst, wird der Schatz des Hauses gemeinsam genutzt. Du kannst einem Mitbewohner zwar jederzeit den Schlüssel wieder wegnehmen, ");
output("aber er wird dann einen gerechten Anteil aus dem gemeinsamen Schatz bekommen.");
addnav("",$this->back."&act=givekey");
}else{
output("`n`2Du hast keine Schlüssel mehr übrig. Vielleicht kannst du in der Jägerhütte noch einen nachmachen lassen?");
}
} else {
if ($_GET['subfinal']==1){
$sql = "SELECT acctid,name,login,lastip,emailaddress,dragonkills,level,sex FROM accounts WHERE name='".addslashes(rawurldecode(stripslashes($_POST['ziel'])))."' AND locked=0";
} else {
$ziel = stripslashes(rawurldecode($_POST['ziel']));
$name="%";
for ($x=0;$x < strlen($ziel);$x++){
$name.=substr($ziel,$x,1)."%";
}
$sql = "SELECT acctid,name,login,lastip,emailaddress,dragonkills,level,sex FROM accounts WHERE name LIKE '".addslashes($name)."' AND locked=0";
}
$result = db_query($sql);
if (db_num_rows($result) == 0) {
output("`2Es gibt niemanden mit einem solchen Namen. Versuchs nochmal.");
} elseif(db_num_rows($result) > 100) {
output("`2Es gibt über 100 Krieger mit einem ähnlichen Namen. Bitte sei etwas genauer.");
} elseif(db_num_rows($result) > 1) {
output("`2Es gibt mehrere mögliche Krieger, denen du einen Schlüssel übergeben kannst.`n");
output("",true);
addnav("",$this->back."&act=givekey&subfinal=1");
} else {
$row = db_fetch_assoc($result);
$sql = "SELECT owner FROM items WHERE owner=".$row['acctid']." AND value1=".$haus->id." AND class='Schlüssel' ORDER BY id ASC";
$result = db_query($sql) or die(db_error(LINK));
$item = db_fetch_assoc($result);
if ($row['login'] == $session['user']['login']) {
output("`2Du kannst dir nicht selbst einen Schlüssel geben.");
} elseif ($item['owner']==$haus->besitzerid) {
output("`2".$row['name']."`2 hat bereits einen Schlüssel!");
} elseif ($row['level']<5 && $row['dragonkills']<1){
output("`2".$row['name']."`2 ist noch nicht lange genug um Dorf, als dass du ".($row['sex']?"ihr":"ihm")." vertrauen könntest. Also beschließt du, noch eine Weile zu beobachten.");
} else {
$sql = "SELECT value2 FROM items WHERE value1=".$haus->id." AND class='Schlüssel' AND owner=".$haus->besitzerid." ORDER BY id ASC LIMIT 1";
$result = db_query($sql) or die(db_error(LINK));
$knr = db_fetch_assoc($result);
$knr=$knr['value2'];
output("`2Du übergibst `&".$row['name']."`2 einen Schlüssel für dein Haus. Du kannst den Schlüssel zum Haus jederzeit wieder wegnehmen, aber ".$row['name']."`2 wird dann ");
output("einen gerechten Anteil aus dem gemeinsamen Schatz des Hauses bekommen.`n");
systemmail($row['acctid'],"`@Schlüssel erhalten!`0","`&".$session['user']['name']."`2 hat dir einen Schlüssel zu Haus Nummer `b".$haus->id."`b (".$haus->name."`2) gegeben!");
$sql = "UPDATE items SET owner=".$row['acctid'].",hvalue=0 WHERE owner=".$haus->besitzerid." AND class='Schlüssel' AND value1=".$haus->id." AND value2=$knr";
db_query($sql);
$sql = "INSERT INTO commentary (postdate,section,author,comment) VALUES (now(),'office-".$haus->id."',".$session['user']['acctid'].",'/me `^gibt ".$row['name']."`^ einen Schlüssel.')";
db_query($sql) or die(db_error(LINK));
}
}
}
addnav("Zurück zum Arbeitszimmer",$this->back);
} // Ende Funktion
} // Ende Klasse
class schlafzimmer extends zimmer {
// Das Schlafzimmer - verbinge Zeit mit einem Partner oder logge dich einfach sicher aus.
// Basisklasse!
var $back;
// Konstruktor
function schlafzimmer() {
$this->back ="nhouses.php?op=drin&go=".$_GET['go'];
switch($_GET['act']) {
case 'logout': $this->logout(); break;
default: $this->basis(); break;
} // Ende Switch
} // Ende Funktion
function logout() {
global $session;
if ($session['user']['housekey']!=$session['housekey']){
$sql = "UPDATE items SET hvalue=".$session['housekey']." WHERE value1=".(int)$session['housekey']." AND owner=".$session['user']['acctid']." AND class='Schlüssel'";
db_query($sql) or die(sql_error($sql));
}
debuglog("logged out in a house");
$session['user']['location']=2;
$session['user']['loggedin']=0;
$sql = "UPDATE accounts SET loggedin=0,location=2 WHERE acctid = ".$session['user']['acctid'];
db_query($sql) or die(sql_error($sql));
$session=array();
redirect("index.php");
} // Ende Funktion
function basis() {
global $haus, $session;
output("`2`b`c".$haus->name."`b, `&ein ".$haus->level->name."`&`n `bDein Schlafzimmer`b`c`n");
if($session['user']['marriedto']>0){
$lover = lover('name`, `acctid`, `login');
output("`2Du betrittst das Schlafzimmer von `^".$lover['name']."`2 und dir.`n Ein großes Bett steht im Raum, sowie einige Schränke und andere Alltagsgegenstände.");
output("Aber im allgemeinen ist diese Zimmer gemütlicher eingerichtet, als der Rest des Hauses, um ein paar schöne Stunden zu zweit verbringen zu können");
if($session['user']['sex']==0) {
$male=$session['user']['acctid'];
$female=$lover['acctid'];
} else {
$male=$lover['acctid'];
$female=$session['user']['acctid'];
}
$gesammt="haus-".$haus->id."privat-".$male."_".$female;
//############################## Kindermod-Bereich ##############################//
if(KINDER===true) { // Entsprechende Konstante wird ganz oben definiert!
switch($_GET['act']) {
case 'geschuetzt':
$lover = lover('name`, `sex');
output("`nAls ".$lover['name']. "`q, eigentlich nur für kurz, in euren Schlafgemächern vorbei schaut ziehst Du ".($lover['sex']?'sie':'ihn')." ins Bett und ihr liebt euch den ganzen restlichen Tag heiss und innig.");
output("`nIhr bleibt schmussend noch ein wenig liegen...`n`n");
break;
case 'kind':
$lover = lover('*');
if($session['user']['sex'] != $lover['sex']) $kindokay = true;
else $kindokay = false;
if($session['user']['superuser'] >= 2) $session['user']['sexheute'] = 0; // Superuser-Sonderregelung
if($session['user']['sexheute'] + $lover['sexheute'] < 6) { // Wenn noch nicht zu oft geliebt...
debuglog("hatte mit " . $lover['acctid'] . "-" . $lover['name'] . " sex.");
if($lover['acctid'] < $session['user']['acctid']) { // IDs Sortieren
$spielera = $lover['acctid'];
$spielerb = $session['user']['acctid'];
} else {
$spielera = $session['user']['acctid'];
$spielerb = $lover['acctid'];
}
# Liste hochzählen
$sqlsex = "SELECT * FROM sexwermitwem WHERE spielera = $spielera AND spielerb = $spielerb";
$resultsex = db_query($sqlsex) or die(db_error(LINK));
if($rowsex = db_fetch_assoc($resultsex))
$sqlsex = "UPDATE sexwermitwem SET sexzahl = sexzahl + 1 WHERE spielera = ".$spielera." AND spielerb = ".$spielerb;
else
$sqlsex = "INSERT INTO sexwermitwem VALUES($spielera, $spielerb, 1)";
db_query($sqlsex) or die(db_error(LINK));
if($kindokay) { // Wenn Kind möglich...
if($session['user']['sex']) //je nach geschlecht empf wählen
$empf = $session['user']['ssempf'];
else
$empf = $lover['ssempf'];
$sql = "INSERT INTO commentary (postdate,section,author,comment) VALUES (now(),'$gesammt', ".$session['user']['acctid'].",'/me `&hat mit ".$lover[name]." `&geschlafen.')";
$result = db_query($sql) or die(db_error(LINK)); // Chattext eingeben
if($session['user'][ssstatus] == 0 && $lover[ssstatus] == 0) {
$zahl1 = e_rand();
$zahl2 = e_rand();
$text = "versuchte ".$lover['login']." zu schwängern: Zahl1:".$zahl1."(".($zahl1%9)."); Zahl2:".$zahl2."(".($zahl2%9).");";
debuglog($text);
if($zahl1%9 == $empf)
$schwanger = true;
else
if($zahl2%9 == $empf)
$schwanger = true;
else
$schwanger = false;
}
} else {
$sql = "INSERT INTO commentary values(0, 'inn-" . $_GET[sop] . "', " . $session['user']['acctid'] . ", '/me `&hat mit " . $lover[name] . " `&geschlafen',now())";
$result = db_query($sql) or die(db_error(LINK));
}
$session['user']['sexheute']++;
$session['user']['charm'] += 1;
$sql2 = "UPDATE accounts set charm = charm + 1, sexheute = sexheute + 1 WHERE acctid ='".$lover['acctid']."'";
db_query($sql2) or die(db_error(LINK));
if($schwanger) {
if($session['user']['sex']) {
// frau
debuglog("ist von " . $lover['acctid'] . "-" . $lover['name'] . " schawanger");
$session['user']['ssstatus'] = 1;
$session['user']['sstritte'] = 0;
$session['user']['ssmonat'] = 19;
$session['user']['sserzeug'] = $lover['acctid'];
$sql2 = "UPDATE accounts set charm = charm + 10 WHERE acctid=".$lover['acctid'];
db_query($sql2) or die(db_error(LINK));
$session['user']['charm'] += 10;
} else {
debuglog("hat " . $lover['acctid'] . "-" . $lover['name'] . " geschwängert");
$sql2 = "UPDATE accounts set charm = charm + 10, ssstatus = 1, ssmonat = 19, sstritte = 0, sserzeug = " . $session['user']['acctid'] . " WHERE acctid='".$lover['acctid']."'";
db_query($sql2) or die(db_error(LINK));
$session['user']['charm'] += 10;
}
}
if($session['user']['superuser'] > 2) {
$bufflist = unserialize(stripslashes($lover['bufflist']));
$bufflist['goettlichersex'] = array("name"=>"`%Göttliches Andenken","rounds"=>100,"wearoff"=>"Die Errinerung verfliegt für heute!","atkmod"=>1.75,"roundmsg"=>"Du denkst immer noch an den göttlich intimen Stunden...","activate"=>"offense");
$sql2 = "update accounts set sexgoettlich = 100, bufflist = '" . addslashes(serialize($bufflist)) . "' WHERE acctid='".$lover['acctid']."'";
db_query($sql2) or die(db_error(LINK));
}
if($lover['superuser'] > 2) {
$session['user']['sexgoettlich'] = 100;
$session['bufflist']['goettlichersex'] = array("name"=>"`%Göttliches Andenken","rounds"=>100,"wearoff"=>"Die Errinerung verfliegt für heute!","atkmod"=>1.75,"roundmsg"=>"Du denkst immer noch an den göttlich intimen Stunden...","activate"=>"offense");
}
} else {
output("`n`nIrgendwie seit ihr nicht in der Stimmung dazu...`n");
}
if($session['user']['superuser'] >= 2) {
output("`n`nDebug`n");
output("Sex heute: " . $session['user']['sexheute'] . "`n");
output("Sex gesamt: " . $session['user'][sexgesamt] . "`n");
output("Empfängnis: " . $empf . "`n");
}
break;
default:
addnav("Sich Lieben");
addnav("Geschützt",$this->back."&act=geschuetzt");
addnav("Ungeschützt",$this->back."&act=kind");
break;
} // Ende Switch
output("`n");
} // Ende IF
//############################# /Kindermod-Bereich ##############################//
viewcommentary($gesammt,"Hinzufügen",25);
} else {
output("`@Du betrittst dein Schlafzimmer. Ein gemütlicher Raum mit einem Bett nur für dich!");
}
addnav("Schlafzimmer");
addnav("Log Out",$this->back."&act=logout");
addnav("Im Haus");
addnav("Zurück zum Flur","nhouses.php?op=drin");
} // Ende Funktion
} // Ende Klasse
class schatz extends zimmer {
// Die Schatzkammer, hie rlagern Gold und Edelsteine!
// Basisklasse!
var $back, $goldleft, $gemsleft, $maxtotake;
// Konstruktor
function schatz() {
global $haus, $session;
$this->back ="nhouses.php?op=drin&go=".$_GET['go'];
$this->goldleft = $this->goldleft();
$this->gemsleft = $this->gemsleft();
$this->maxtotake = (getsetting("transferreceive",3) - $session['user']['transferredtoday']) * ($session['user']['level']*getsetting("transferperlevel",25));
switch($_GET['act']) {
case 'gebegold': $this->gebegold(); break;
case 'nehmegold': $this->nehmegold(); break;
case 'gebegems': $this->gebegems(); break;
case 'nehmegems': $this->nehmegems(); break;
case 'allesnehmen': $this->allesnehmen(); break;
default: $this->basis(); break;
} // Ende Switch
} // Ende Funktion
function gemsleft() {
global $haus;
return $haus->level->gemschest - $haus->gems;
} // Ende Funktion
function goldleft() {
global $haus;
return $haus->level->goldchest - $haus->gold;
} // Ende Funktion
function basis() {
global $haus, $session;
output("`2`b`c".$haus->name."`b, `&ein ".$haus->level->name."`&`n `bDie Schatzkammer`b `c`");
if ($haus->text) output("`0`c".$haus->text."`c`n");
output("`2Du und deine Mitbewohner haben `^".$haus->gold."`2 Goldstücke und `#".$haus->gems."`2 Edelsteine im Haus gelagert.`n");
output("`2Damit ist in der Schatztuhe noch platz für `^".$this->goldleft." `2Goldstücke und `#".$this->gemsleft."`2 Edelsteine.`n");
viewcommentary("schatz-".$haus->id,"Ins Hausbuch eintragen:",30,"merkt an");
addnav("Gold");
addnav("Deponieren",$this->back."&act=gebegold");
addnav("Mitnehmen",$this->back."&act=nehmegold");
addnav("Edelsteine");
addnav("Deponieren",$this->back."&act=gebegems");
addnav("Mitnehmen",$this->back."&act=nehmegems");
addnav("Im Haus");
addnav("Zurück in den Flur","nhouses.php?op=drin");
} // Ende Funktion
function gebegold() {
global $haus, $session;
$maxout = $session['user']['level']*getsetting("maxtransferout",25);
if (!$_POST['gold']){
$transleft = $maxout - $session['user']['amountouttoday'];
output("`2Du darfst heute noch `^$transleft`2 Gold deponieren und in der Schatztruhe ist noch Platz für weitere `^".($haus->level->goldchest - $haus->gold)."`2 Gold.`n");
output("`2