Quellcode der Dragonslayer-Edition
Quellcode der Dragonslayer-Edition: 0.9.7(DS V3) Ithil-Edition


Anmerkung: Dies ist nur ein Auszug aus dem Source. Ein etwas älteres, abgespecktes Release der Dragonslayer-Edition ist für jeden Interessenten frei zum Download verfügbar. Was wir uns unbedingt verbitten, ist Diebstahl unserer Arbeit ohne Nennung des Copyrights.
Falls beim Lesen des Source ein Bug entdeckt werden sollte, bitten wir um sofortige Meldung per Anfrage!


./special/surprise.php

zurück
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
124:
125:
126:
127:
128:
129:
130:
131:
132:
133:
134:
135:
136:
137:
138:
139:
140:
141:
142:
143:
144:
145:
146:
147:
148:
149:
150:
151:
152:
153:
154:
155:
156:
157:
158:
159:
160:
161:
162:
163:
164:
165:
166:
167:
168:
<?php
/*
* Version:        10.09.2004
* Author:        bibir
* Email:       logd_bibir [-[at]-] email.de
* For:         http://logd.chaosonline.de
*
* Purpose:    special where you can send a surprising present to a person
*
*/

//how much gold per level to pay
$lvlcost 100;
$session['user']['specialinc']="surprise.php";


if (
$_GET['op']=="leave")
{
    
$session['user']['specialinc']="";
    
redirect("forest.php");
}
elseif (
$_GET['op']=='gift')
{
    if (
$session['user']['gold'] < $lvlcost*$session['user']['level'])
    {
        
output('`QDu hast nicht genügend Gold dabei - so sieht der Händler zu, dass er das Weite sucht.`n
        Du stehst noch einige Zeit verdutzt da und verlierst deshalb einen Waldkampf.'
);
        
$session['user']['turns']--;
        
$session['user']['specialinc']='';
    }
    else
    {
        
output('`9Der Händler schaut dich an und fragt:`n`t\'Wem wollt Ihr dieses Paket schicken?\'`0');
        if (isset(
$_POST['search']) || !empty($_GET['search']))
        {
            if (!empty(
$_GET['search'])) $_POST['search']=$_GET['search'];
            
$search str_create_search_string($_POST['search']);
            
$search="name LIKE '".$search."' AND ";
            if (
$_POST['search']=='weiblich'$search='sex=1 AND ';
            if (
$_POST['search']=='männlich'$search='sex=0 AND ';
        }
        else
        {
            
define('JSLIB_NO_FOCUS_NEEDED',1);
            
$link 'forest.php?op=gift';
            
addnav('',$link);
            
output('`n
                <form method="POST" action="'
.$link.'">
                Name des Empfängers:
                <input type="text" name="search" id="searchfield">
                <input type="submit" value="Suchen">
                </form>
                <script type="text/JavaScript">document.getElementById("searchfield").focus();</script>'
);
            
$search='';
        }
        if(
$search != '')
        {
            
$ppp=25// Player Per Page to display
            
if (!$_GET['limit']){
                
$page=0;
            }
            else
            {
                
$page=(int)$_GET['limit'];
                
addnav('Vorherige Seite','forest.php?op=gift&limit='.($page-1).'&search='.$_POST['search']);
            }
            
$limit=($page*$ppp).",".($ppp+1);
            
$sql "SELECT login,name,level,sex,acctid FROM accounts WHERE $search locked=0 AND acctid<>".$session['user']['acctid']." AND charm>1 ORDER BY (acctid='".$session['user']['marriedto']."') DESC,(login='".db_real_escape_string($_POST['search'])."') DESC,login,level LIMIT $limit";
            
$result db_query($sql);
            if (
db_num_rows($result)>$pppaddnav('Nächste Seite','forest.php?op=gift&limit='.($page+1).'&search='.$_POST['search']);
            
//output("<form action='forest.php?op=send' method='POST'>Nach Name suchen: <input name='search' value='$_POST[search]'><input type='submit' class='button' value='Suchen'></form>",true);
            
addnav('','forest.php?op=send');
            
$str_out='<table cellpadding="3" cellspacing="0" border="0"><tr class="trhead"><td>Name</td><td>Level</td><td>Geschlecht</td></tr>';
            for (
$i=0;$i<db_num_rows($result);$i++)
            {
                
$row db_fetch_assoc($result);
                
$str_out.='<tr class="'.($i%2?'trlight':'trdark').'"><td><a href="forest.php?op=send&name='.HTMLEntities($row['acctid']).'">';
                
$str_out.=$row['name'];
                
$str_out.='</a></td><td>';
                
$str_out.=$row['level'];
                
$str_out.='</td><td align="center"><img src="images/'.($row['sex']?'female':'male').'.gif"></td></tr>';
                
addnav("","forest.php?op=send&name=".HTMLEntities($row['acctid']));
            }
            
output($str_out.'</table>');

            
$link 'forest.php?op=gift';
            
addnav('',$link);
            
            
output('`n
                <form method="POST" action="'
.$link.'">
                Oder doch lieber jemand anderes?  
                <input type="text" name="search"">
                <input type="submit" value="neue Suche"> 
                </form>'
);
        }
        
addnav('Zurück in den Wald','forest.php?op=leave');
    }

}
elseif (
$_GET['op']=="send")
{
    
$name=$_GET['name'];
    
$session['user']['specialinc']="";
    
$session['user']['gold'] -= $lvlcost*$session['user']['level'];
    switch(
e_rand(1,4))
    {
        case 
1:
            
$gift 'Rubin.';
            
$effekt '';
            
user_update(
                array
                (
                    
'gems'=>array('sql'=>true,'value'=>'gems+1')
                ),
                
$name
            
);
            break;
        case 
2:
            
$gift 'Beutel mit Knochenstücken.';
            
$gefallen 15;
            
$effekt 'Du erhältst '.$gefallen.' Gefallen bei `AI`4l`$y`4a`As`0.';
            
            
user_update(
                array
                (
                    
'deathpower'=>array('sql'=>true,'value'=>'deathpower+'.$gefallen)
                ),
                
$name
            
);
            break;
        case 
3:
            
$gift 'Amulett.';
            
item_add($name,'gamulett');
            break;
        case 
4:
            
$gift "";
            break;
        default:
            
output("Es ist ein Fehler aufgetreten - wie hast du das geschafft?");
    }
    if(
$gift == '')
    {
        
output('`TDer Händler nimmt dein Gold und versucht, sich aus dem Staub zu machen. Du verfolgst ihn und schlägst ihn mit
        deiner Waffe `q'
.$session['user']['weapon'].' `Tnieder.`nIn deiner Wut bekommst du `22 Waldkämpfe. `TDoch dein Gold bleibt aus unerklärlichen Gründen spurlos verschwunden.');
        
$session['user']['turns']+=2;
    }
    else
    {
        
output("`TDein Paket wurde versandt. Es ist ein ".$gift);
        
$mailmessage=$session['user']['name'];
        
$mailmessage.='`7 hat dir ein Überraschungspaket geschickt.  Du öffnest es. Es ist ein `6';
        
$mailmessage.=$gift.'`n'.$effekt;
        
systemmail($name,'`2Geschenk erhalten!`0',$mailmessage);
        
debuglog('Überraschungspaket mit '.$gift.' an:',$name);
    }
}
else
{
    
$cost $lvlcost $session['user']['level'];
    
output('`9Du kommst auf eine Lichtung und dir kommt ein fahrender Händler entgegen. Er hält sofort sein Pferd an, als er dich erblickt und bietet dir seine Waren an.`n`t"'.($session['user']['sex']?'Gute Frau':'Guter Mann').', was haltet Ihr davon, einem lieben Menschen eine kleine Aufmerksamkeit zukommen zu lassen?"`n`9Er erzählt dir, dass er der Person ein Überraschungspaket bringen wird und auch du nicht wissen wirst, was diese Person bekommt. Doch soviel erzählt er dir:`n`t"Ich hab schon einigen einen wunderschön glitzernden Rubin zukommen lassen, aber auch Knochenstücke, die `AI`4l`$y`4a`As`9 faszinierten und demjenigen einige Gefallen bei ihm einbrachten. Andererseits ist da auch noch ein Amulett.`nDoch es ist natürlich nicht kostenlos.`nWenn dir `^'.$cost.' Goldstücke `tnicht zu viel sind, werd ich für dich das Päckchen wählen und ausliefern."`n`n`@Was machst du?`n`0');
    
output('<a href="forest.php?op=gift">Geschenk verschicken</a>`n');
    
output('<a href="forest.php?op=leave">weitergehen</a>`n');
    
addnav('Geschenk verschicken','forest.php?op=gift');
    
addnav('Weitergehen','forest.php?op=leave');
    
addnav('','forest.php?op=gift');
    
addnav('','forest.php?op=leave');
}
?>
0.9.7(DS V3) Ithil-Edition