LoGD Standardrelease steht hier zum Download zur Verfügung!

Zeige Source: /special/remains.php

Hier klicken für den Source, ODER
Weitere Dateien, von denen du den Quelltext sehen kannst:
(Das Lesen des Source, um sich spielerische Vorteile zu verschaffen, ist nicht erlaubt. Solltest du Schwachstellen oder Fehler entdecken, bist du als Spieler verpflichtet, diese zu melden.)

Source von: /special/remains.php

<?php

// 24062004

/* Skeletal Remains v1.1 by Timothy Drescher (Voratus)
Current version can be found at Domarr's Keep (lgd.tod-online.com)

Version History
1.0 original version
1.1 bug fix (would not award gold nor gem(s) upon defeating the warrior)

- german translation by anpera
- some changes for my version - may not work with other versions!
- taken as base code to introduce curses based on my item system ;)

2024-04-23    aragon    php8 fix, code style
*/

$op $_GET['op'] ?? '';

if (!isset(
$session)) exit();
if (
$op == "") {
    
output("`GDu stolperst über etwas. Es sind die skelettierten Überreste dessen, was einst ein Abenteurer wie du gewesen sein könnte. ");
    
output("Die sterblichen Überreste scheinen unberührt und was immer er für Schätze dabei gehabt haben mag, könnte immer noch dort sein. ");
    
output("`n`nWas wirst du tun?`n`n");
    
addnav("Nach Reichtümern suchen""forest.php?op=desecrate");
    
addnav("Die Leiche in Ruhe lassen""forest.php?op=leave");
    if (
$session['user']['turns'] > 2) {
        
addnav("Begraben (3 Waldkämpfe)""forest.php?op=bury");
    }
    
$session['user']['specialinc'] = "remains.php";
} elseif (
$op == "bury") {
    
$session['user']['turns'] -= 3;
    
// The following two lines are specific to lgd.tod-online.com
    // changed to fit the anpera.net code
    //$session['user']['reputation']+=2;
    //check_align();
    
output("`GDu verbringst einen großen Teil des Tages damit, diesem gefallenen Abenteuerer ein Grab zu Schaufeln und ihm ein ordentliches Begräbnis zukommen zu lassen. ");
    
output("Du verzichtest auf Reichtum, wenn du ihn stehlen müsstest - erst Recht von Toten.`n ");
    
output("`n`nAußerdem willst du nicht die Rache der Toten hinter dir wissen, zusätzlich zu den Kreaturen des Waldes.`n`n");
    
output("Als du endlich mit dem Grab fertig bist, erscheint eine kleine Fee vor dir. \"`#Das war sehr edel, was du getan hast. ");
    
output(" Ich werde dich dafür belohnen.`G\"`n`n");
    
$reward rand(112);
    switch (
$reward) {
        case 
1:
        case 
2:
        case 
3:
            
output("Die Fee gibt dir einen Edelstein!");
            
// debuglog("received one gem for burying a corpse");
            
$session['user']['gems']++;
            break;
        case 
4:
        case 
5:
        case 
6:
            
$cash rand(($session['user']['level'] * 20), ($session['user']['level'] * 40));
            
output("Die Fee gibt dir $cash Gold!");
            
// debuglog("received $cash gold for burying a corpse");
            
$session['user']['gold'] += $cash;
            break;
        case 
7:
        case 
8:
        case 
9:
            
$sql "SELECT id,name,value1 FROM items WHERE class='Fluch' AND owner=" $session['user']['acctid'] . " ORDER BY id LIMIT 1";
            
$result db_query($sql);
            if (
db_num_rows($result) > 0) {
                
$row db_fetch_assoc($result);
                
output("Die Fee befreit dich von `\$" $row['name'] . "`G.");
                if (
$row['name'] == "Der Ring") {
                    
$session['user']['maxhitpoints'] += $row['value1'];
                }
                
db_query("DELETE FROM items WHERE id=" $row['id'] . "");
            } else {
                
output("Die Fee segnet dich.");
                
$session['bufflist']['segen2'] = array("name" => "`GSegen""rounds" => 8"wearoff" => "`GDer Segen wirkt nicht mehr.""dmgmod" => 1.1"roundmsg" => "`9Der Segen der Grabfee gibt dir Kraft.""activate" => "offense");
            }
            break;
        default:
            
output("Du fühlst dich gut bei dem, was du getan hast.`n");
            
output("Du bekommst mehr Charme!");
            
// debuglog("gained two charm for burying a corpse");
            
$session['user']['charm'] += e_rand(12);
            break;
    }
    
$session['user']['specialinc'] = "";
} elseif (
$op == "leave") {
    
output("`GIrgendetwas hat diese Person getötet und dieses Etwas könnte immer noch hier sein. Es ist sicherer, schnell zu verschwinden.`n`n ");
    
$session['user']['specialinc'] = "";
} elseif (
$op == "desecrate") {
    
$session['user']['turns']--;
    
output("`GDu durchwühlst die Sachen der Leiche nach etwas Brauchbarem.`n");
    
// The following line is specific to lgd.tod-online.com
    // changed for anpera.net code
    //$session['user']['reputation']-=2;
    
switch (rand(18)) {
        case 
1:
        case 
2:
            
$gem_gain rand(13);
            
$gold_gain rand($session['user']['level'] * 10$session['user']['level'] * 20);
            
$gemword "Edelsteine";
            if (
$gem_gain == 1$gemword "Edelstein";
            
output("Die Leiche zu plündern hat sich bezahlt gemacht! Du hast $gem_gain $gemword ");
            
output("und $gold_gain Goldstücke gefunden.`n`n");
            
$session['user']['gems'] += $gem_gain;
            
$session['user']['gold'] += $gold_gain;
            
$session['user']['specialinc'] = "";
            
//debuglog("stole $gem_gain gems and $gold_gain gold from a corpse");
            
break;
        case 
3:
        case 
4:
            
output("Du durchsuchst die Leiche nach Reichtum, aber alles, was du finden kannst, sind vermoderte Lumpen und verrostete Waffen. ");
            
output("Vielleicht hast du bei der nächsten Leiche mehr Glück.`n`n");
            
$session['user']['specialinc'] = "";
            
//debuglog("looted a corpse and found nothing");
            
break;
        default:
            
output("Als du die Leiche nach Reichtümern durchwühlst, lenkt eine plötzliche Bewegung deine Aufmerksamkeit auf sich. Du machst einen Satz zurück und ");
            
output("siehst, wie sich dieses tote Skelett aufrappelt. Seine leeren Augenhöhlen staren dich mit einem roten Glühen an. ");
            
output("Wenn es reden könnte, würde es dich sicher verfluchen, aber schon das kranke Schleifgeräusch von Knochen auf Knochen lässt es dir eiskalt den Rücken runterlaufen. ");
            
output("`n`n");
            
$badguy = array(
                
"creaturename" => "`\$Skelettkrieger`0",
                
"creaturelevel" => $session['user']['level'] + 1,
                
"creatureweapon" => "Verrostetes Schwert",
                
"creatureattack" => $session['user']['attack'] + 1,
                
"creaturedefense" => $session['user']['defence'] + 1,
                
"creaturehealth" => round($session['user']['maxhitpoints'] * 1.050),
                
"diddamage" => 0
            
);
            
//$session['user']['badguy']=createstring($badguy);
            
updatetexts('badguy'createstring($badguy));
            
$session['user']['specialinc'] = "remains.php";
            
$op "fight";
            break;
    }
}
if (
$_GET['op'] == "run") {
    if (
e_rand(15) == 1) {
        
output("`c`b`&Deine Flucht vor der untoten Bedrohung war erfolgreich!`0`b`c`n");
        
//$session['user']['reputation']--;
        
$_GET['op'] = "";
        
$session['user']['specialinc'] = "";
    } else {
        
output("`c`b`\$Es gelingt dir nicht, vor der untoten Bedrohung davon zu laufen!`0`b`c");
        
$session['user']['specialinc'] = "remains.php";
    }
}
if (
$op == "fight" || $op == "run") {
    
$battle true;
}
if (
$battle) {
    include(
"battle.php");
    
$session['user']['specialinc'] = "remains.php";
    if (
$victory) {
        
$badguy = array();
        
//$session['user']['badguy']="";
        
updatetexts('badguy''');
        
output("`n`GNach einem heftigen Kampf hast du den Skelettkrieger besiegt. Du hoffst, dass er vielleicht jetzt ");
        
output("endlich seine ewige Ruhe finden wird.`n`n");
        
output("Oder wenigstens, bis der nächste Abenteurer auf der Suche nach dem schnellen Geld über seine Leiche stolpert.`n`n");
        
// debuglog("defeated a skeletal warrior after disturbing it");
        
if (rand(12) == 1) {
            
$gem_gain rand(13);
            
$gold_gain rand($session['user']['level'] * 10$session['user']['level'] * 20);
            
$gemword "Edelsteine";
            if (
$gem_gain == 1$gemword "Edelstein";
            
output("Nach deinem Sieg nimmst du dir, was die deiner Meinung nach zusteht. Du findest $gem_gain $gemword ");
            
output("und $gold_gain Goldstücke.`n`n");
            
$session['user']['gems'] += $gem_gain;
            
$session['user']['gold'] += $gold_gain;
        } else {
            
output("Trotz allem findest du nichts, was die Mühe wert gewesen wäre.`n`n");
        }
        
$exp_gain = ($session['user']['level'] + 1) * 20;
        
output("Du bekommst $exp_gain Erfahrungspunkte.`n`n");
        
$session['user']['experience'] += $exp_gain;
        
$session['user']['specialinc'] = "";
    } elseif (
$defeat) {
        
$badguy = array();
        
//$session['user']['badguy']="";
        
updatetexts('badguy''');
        
//debuglog("was killed by a Skeletal Warrior.");
        
output("`n`GDu wurdest vom Skelettkrieger besiegt! Doch anstatt im Totenreich aufzuwachen, bist du immer noch am Leben!`n`nDu verlierst 2% deiner Erfahrung" . ($session['user']['gems'] ? " und vermisst plötzlich einen deiner Edelsteine" "") . ". ");
        
output("`nAußerdem scheint ein schwerer Fluch vom Skelettkrieger auf dich übergesprungen zu sein. Ob das seine Todesursache war? ");
        if (
$session['user']['gems']) {
            
$session['user']['gems']--;
        }
        
// Don't take away live and wellnes ... just curse the player ;)
        // addnav("Daily news","news.php");
        // $session['user']['alive']=false;
        // $session['user']['gold']=0;
        
$session['user']['hitpoints'] = 1;
        
$session['user']['experience'] = round($session['user']['experience'] * .980);
        
$session['user']['specialinc'] = "";
        
$result db_query("SELECT * FROM items WHERE class='Fluch.Prot' ORDER BY rand(" e_rand() . ") LIMIT 1");
        
$row db_fetch_assoc($result);
        if (
strlen($row['buff']) > 8) {
            
$row2['buff'] = unserialize($row['buff']);
            
$session['bufflist'][$row2['buff']['name']] = $row2['buff'];
        }
        
db_query("INSERT INTO items " .
            
"(name,owner,class,value1,value2,gold,gems,description,hvalue,buff) " .
            
"VALUES ('" $row['name'] . "'," $session['user']['acctid'] . ",'Fluch'," $row['value1']
            . 
"," $row['value2'] . "," $row['gold'] . "," $row['gems'] . ",'" $row['description'] . "'," .
            
$row['hvalue'] . ",'" $row['buff'] . "')");
        
addnews("`G" $session['user']['name'] . "`G kam dem Tod näher, als " . ($session['user']['sex'] ? "ihr" "ihm") . " lieb war.");
    } else {
        
fightnav(truetrue);
    }
}