Quellcodeviewer der Dragonslayer-Edition
Quellcodeviewer der Dragonslayer-Edition : 0.9.7+jt ext (GER)


Anmerkung: Dies ist nur ein Auszug aus dem Source. Um das jeweils aktuelle, vollständige Release zu erhalten, ist eine Anfrage mit gültiger Email-Adresse erforderlich. Ebenso sollte darin die Serveradresse bzw. sonstiger Verwendungszweck aufgeführt sein. 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!


./vendor.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:
169:
170:
171:
172:
173:
174:
175:
176:
177:
178:
179:
180:
181:
182:
183:
184:
185:
186:
187:
188:
189:
190:
191:
192:
193:
194:
195:
196:
197:
198:
199:
200:
201:
202:
203:
204:
205:
206:
207:
208:
209:
210:
211:
212:
213:
214:
215:
216:
217:
218:
219:
220:
221:
222:
223:
224:
225:
226:
227:
228:
229:
230:
231:
232:
233:
234:
235:
236:
237:
238:
239:
240:
241:
242:
243:
244:
245:
246:
247:
248:
249:
<?php

// The vendor Aeki sells furniture for houses and buys items found at beaten monsters in the forest.
// items.class for furniture prototypes must be 'Möbel.Prot'.
// items.class for bought furniture is set to 'Möbel' automatically.
// Use itemeditor.php in admin grotto to generate furniture prototyps and items.
// More classes will be added soon!
//
// Requires 'items' table first introduced with my houses mod and a few other modifications for
// inventory management and drop items.
// No installation instructions available so far. Sorry!!
//
// Vendor only appears on a few (game) days in village
// This is controlled by weather mod by Talisman
//
// by anpera (2004) while listening to music by 'The Sweet' ;)

/*********************************************************************
 * MODIFIZIERT DURCH
 * Admin @ Dreythal
 * Dezember 2015
*********************************************************************/

/*********************************************************************
 * FC:
 * OOXOOOOO     
 * OOOOOOOO
 * OOOOOOOO     
 * OOOOOOOO
 * OOOOOOOO     
 * OOOOOXOO
*********************************************************************/

require_once 'common.php';
page_header('Wanderhändler');

if (
$_GET['op']=='buy')

    if (!
$_GET['id'])
    {
        
$sorti=($_GET['sorti']?''.$_GET['sorti'].'':'class DESC, name');

        
output('<span style="color: #80FF80;">S</span><span style="color: #82FC82;">t</span><span style="color: #85F985;">o</span><span style="color: #88F688;">l</span><span style="color: #8BF38B;">z</span><span style="color: #8EF08E;"> </span><span style="color: #91ED91;">p</span><span style="color: #94EA94;">r</span><span style="color: #97E897;">ä</span><span style="color: #9AE59A;">s</span><span style="color: #9DE29D;">e</span><span style="color: #A0DFA0;">n</span><span style="color: #A2DCA2;">t</span><span style="color: #A5D9A5;">i</span><span style="color: #A8D6A8;">e</span><span style="color: #ABD4AB;">r</span><span style="color: #AED1AE;">t</span><span style="color: #B1CEB1;"> </span><span style="color: #B4CBB4;">d</span><span style="color: #B7C8B7;">i</span><span style="color: #BAC5BA;">r</span><span style="color: #BDC2BD;"> </span><span style="color: #C0BFC0;">der Händler Aeki seinen Wagen. Zu jedem der Gegenstände kennt er eine kleine Geschichte. Dabei weist er auffällig oft darauf hin, dass viele Leute, von denen er etwas gekauft hat, den wahren Wert dieser Dinge nicht zu kennen scheinen.</span>`n`n',true);

        
$ppp=20// Player Per Page to display

        
if (!$_GET['limit'])
        {
$page=0;}
        
        else
        {
            
$page=(int)$_GET['limit'];
            
addnav('Zeige...');
            
addnav('v?... vorherige Waren','vendor.php?op=buy&sorti='.$sorti.'&limit='.($page-1));
        }

        
$limit=''.($page*$ppp).','.($ppp+1);
        
$sql='SELECT * FROM items WHERE owner=0 AND (class="Schmuck" OR class="Möbel.Prot" OR class="Beute") ORDER BY '.$sorti.' ASC LIMIT '.$limit.'';
        
$result=db_query($sql);
                              
        if (
db_num_rows($result)>$ppp)
        
addnav('m?... mehr Waren','vendor.php?op=buy&sorti='.$sorti.'&limit='.($page+1));       

        if (
db_num_rows($result))
        {
            
output('<table align="center" cellpadding="3" cellspacing="3" bgcolor="transparent" width="75%"><tr class="trhead">
                    <td>`b`c<a href="vendor.php?op=buy&sorti=name&limit='
.$_GET['limit'].'">`lGegenstand`0</a>`c`b</td>
                    <td>`b`c<a href="vendor.php?op=buy&sorti='
.urlencode('gems ASC,gold').'&limit='.$_GET['limit'].'">`lPreis`0</a>`b`c</td>
                    <td>`b`c<a href="vendor.php?op=buy&sorti='
.urlencode('class DESC,name').'&limit='.$_GET['limit'].'">`lKlasse`0</a>`c`b
                    </td></tr>'
,true);

            
addnav('','vendor.php?op=buy&sorti=name&limit='.$_GET['limit'].'');
            
addnav('','vendor.php?op=buy&sorti='.urlencode('gems ASC,gold').'&limit='.$_GET['limit'].'');
            
addnav('','vendor.php?op=buy&sorti='.urlencode('class DESC,name').'&limit='.$_GET['limit'].'');

            for (
$i=0;$i<db_num_rows($result);$i++)
            {
                  
$row db_fetch_assoc($result);

                
output('<tr><td>
                        <a href="vendor.php?op=buy&id='
.$row['id'].'"><span style="color: #80FF80;">`b'.$row['name'].'`b`0</a></td>
                        <td align="right">`c`%'
.$row['gold'].' Gold`0, `1'.$row['gems'].' Edelsteine`0`c</td>
                        <td>`c'
.$row['class'].'`c</td></tr>
                        <tr><td colspan="3"><span style="color: #BFC0BF;">`i'
.$row['description'].'`i</td></tr><tr>
                        <td colspan="6"><hr /></td></tr></span>'
,true);

                
addnav('','vendor.php?op=buy&id='.$row['id'].'');
            }

            
output('</table>',true);
        
        } 
        
        else 
        {
            
output('`qDa `tAeki `qheute schon ein gutes Geschäft gemacht hat, will er sich leider nicht von seinen verbliebenen Sachen trennen. Enttäuscht schlenderst du zurück zum Dorfplatz.');
        }
    }
    
    else
    {
        
$sql='SELECT * FROM items WHERE id="'.$_GET['id'].'"';
        
$result=db_query($sql);
          
$row db_fetch_assoc($result);

        if (
$session['user']['gems']<$row['gems'] || $session['user']['gold']<$row['gold'])
        {
            
output('`qHoppla! Das kannst du dir nicht leisten. Der Händler schüttelt nur traurig den Kopf und verstaut '.$row['name'].' wieder in seinem Wagen.');

            
addnav('Etwas anderes kaufen','vendor.php?op=buy');
        }

        else if (
$row['class']=='Möbel.Prot' && $session['user']['housekey']<=)
        {
            
output('`q'.$row['name'].'`q gefällt dir wirklich gut, aber da du kein eigenes Haus besitzt, kannst du mit Möbeln auch nichts anfangen.');

            
addnav('Etwas anderes kaufen','vendor.php?op=buy');
        }
        
        else if (
db_num_rows(db_query('SELECT id FROM items WHERE name="'.$row['name'].'" AND owner="'.$session['user']['acctid'].'" AND class="Möbel"'))>0)
        {
            
output('`qDu hast '.$row['name'].'`q schon. Du überlegst, ob sich eine Neuanschaffung wirklich lohnt. Allerdings müsstest du dazu auch erst den alten Krempel verkaufen.');

            
addnav('Etwas anderes kaufen','vendor.php?op=buy');
        }
        
        else
        {
            
output('`qDer Händler reibt sich die Hände und übergibt dir '.$row['name'].', während du '.($row['gold']?'`^'.$row['gold'].' `qGold':'').' '.($row['gems']?'`#'.$row['gems'].'`q Edelsteine':'').' abzählst. ');

            if (
$row['class']=='Möbel.Prot')
            
output(' Er ist dir noch kurz beim Transport behilflich, bevor er sich seinem nächsten Kunden zuwendet.');

            
addnav('Mehr kaufen','vendor.php?op=buy');

            
$sql='UPDATE items SET owner="'.$session['user']['acctid'].'" WHERE id="'.$_GET['id'].'"';

            
// insert SQL for special classes here to reset their values
            
if ($row['class']=='Möbel.Prot')
            
$sql='INSERT INTO items(name,class,owner,value1,gold,gems,description) VALUES ("'.$row['name'].'","Möbel","'.$session['user']['acctid'].'","'.$session['user']['house'].'","1","'.(round($row['gems']/2)).'","'.$row['description'].'")';

            
$session['user']['gold']-=$row['gold'];
            
$session['user']['gems']-=$row['gems'];
            
db_query($sql);
        }
    }
    
    
addnav('Zurück...');
    
addnav('H?... zum Händler','vendor.php');
    
addnav('S?... in die Stadt','village.php');
}

else if (
$_GET['op']=='sell')
{
    if (!
$_GET['id'])
    {
        
output('<span style="color: #80FF80;">D</span><span style="color: #83FC83;">e</span><span style="color: #86F986;">r</span><span style="color: #89F689;"> </span><span style="color: #8CF38C;">H</span><span style="color: #8FF08F;">ä</span><span style="color: #92ED92;">n</span><span style="color: #95EA95;">d</span><span style="color: #98E798;">l</span><span style="color: #9BE49B;">e</span><span style="color: #9EE19E;">r</span><span style="color: #A1DEA1;"> </span><span style="color: #A4DBA4;">b</span><span style="color: #A7D8A7;">e</span><span style="color: #AAD5AA;">g</span><span style="color: #ADD2AD;">u</span><span style="color: #B0CFB0;">t</span><span style="color: #B3CCB3;">a</span><span style="color: #B6C9B6;">c</span><span style="color: #B9C6B9;">h</span><span style="color: #BCC3BC;">t</span><span style="color: #BFC0BF;">et deinen Besitz. Mit dem geübten Auge eines Kenners sortiert und bewertet er, was du ihm anbietest.`n`n</span>',true);
        
        
$sql='SELECT * FROM items WHERE owner="'.$session['user']['acctid'].'" AND (gold>0 OR gems>0) AND class<>"Fluch" AND class<>"Zauber" AND class<>"Haustiere"';
        
$result=db_query($sql);

        if (
db_num_rows($result))
        {
            
output('<table align="center" cellpadding="3" cellspacing="3" bgcolor="transparent" width="75%"><tr class="trhead">
                    <td>`b`c`lGegenstand`b`c`0</td>
                    <td>`b`c`lPreis`b`c`0</td></tr>'
,true);

            for (
$i=0;$i<db_num_rows($result);$i++)
            {
                  
$row db_fetch_assoc($result);
                
                
output('<tr><td>
                        <a href="vendor.php?op=sell&id='
.$row['id'].'"><span style="color: #80FF80;">`b'.$row['name'].'`b`0</a></td>
                        <td align="right">`c`%'
.$row['gold'].' Gold`0, `1'.$row['gems'].' Edelsteine`0`c</td></tr>
                        <tr><td colspan="2"><span style="color: #BFC0BF;">`i'
.$row['description'].'`i</td></tr>
                        <td colspan="2"><hr /></td></tr></span>'
,true);
                
                
addnav('','vendor.php?op=sell&id='.$row['id'].'');
            }

            
output('</table>',true);

        }

        else
        {
            
output('<span style="color: #80FF80;">A</span><span style="color: #82FC82;">l</span><span style="color: #85F985;">l</span><span style="color: #88F688;">e</span><span style="color: #8BF38B;">r</span><span style="color: #8EF08E;">d</span><span style="color: #91ED91;">i</span><span style="color: #94EA94;">n</span><span style="color: #97E897;">g</span><span style="color: #9AE59A;">s</span><span style="color: #9DE29D;"> </span><span style="color: #A0DFA0;">i</span><span style="color: #A2DCA2;">s</span><span style="color: #A5D9A5;">t</span><span style="color: #A8D6A8;"> </span><span style="color: #ABD4AB;">i</span><span style="color: #AED1AE;">m</span><span style="color: #B1CEB1;"> </span><span style="color: #B4CBB4;">M</span><span style="color: #B7C8B7;">o</span><span style="color: #BAC5BA;">m</span><span style="color: #BDC2BD;">e</span><span style="color: #C0BFC0;">nt nichts für ihn von Interesse. Vielleicht kannst du ihm ja das nächste Mal etwas verkaufen.</span>',true);}
    }
    
    else
    {
        
$sql='SELECT * FROM items WHERE id="'.$_GET['id'].'"';
        
$result=db_query($sql);
          
$row db_fetch_assoc($result);

        
output('<span style="color: #80FF80;">A</span><span style="color: #82FC82;">e</span><span style="color: #85F985;">k</span><span style="color: #88F688;">i</span><span style="color: #8BF38B;"> </span><span style="color: #8EF08E;">n</span><span style="color: #91ED91;">i</span><span style="color: #94EA94;">c</span><span style="color: #97E897;">k</span><span style="color: #9AE59A;">t</span><span style="color: #9DE29D;"> </span><span style="color: #A0DFA0;">z</span><span style="color: #A2DCA2;">u</span><span style="color: #A5D9A5;">f</span><span style="color: #A8D6A8;">r</span><span style="color: #ABD4AB;">i</span><span style="color: #AED1AE;">e</span><span style="color: #B1CEB1;">d</span><span style="color: #B4CBB4;">e</span><span style="color: #B7C8B7;">n</span><span style="color: #BAC5BA;">,</span><span style="color: #BDC2BD;"> </span><span style="color: #C0BFC0;">überreicht dir den vereinbarten Preis in Höhe von '.($row['gold']?'`%'.$row['gold'].' <span style="color: #C0BFC0;">Gold':'').' '.($row['gems']?'`1'.$row['gems'].' <span style="color: #C0BFC0;">Edelsteine':'').' und nimmt sich <span style="color: #80FF80;">'.$row['name'].'<span style="color: #C0BFC0;">.</span>',true);

        if (
$row['class']=='Beute')
        
output('`n`n<span style="color: #80FF80;">N</span><span style="color: #82FC82;">o</span><span style="color: #85F985;">c</span><span style="color: #88F688;">h</span><span style="color: #8BF48B;"> </span><span style="color: #8DF18D;">b</span><span style="color: #90EE90;">e</span><span style="color: #93EB93;">v</span><span style="color: #96E996;">o</span><span style="color: #99E699;">r</span><span style="color: #9BE39B;"> </span><span style="color: #9EE09E;">d</span><span style="color: #A1DEA1;">u</span><span style="color: #A4DBA4;"> </span><span style="color: #A6D8A6;">f</span><span style="color: #A9D5A9;">r</span><span style="color: #ACD3AC;">a</span><span style="color: #AFD0AF;">g</span><span style="color: #B2CDB2;">e</span><span style="color: #B4CAB4;">n</span><span style="color: #B7C8B7;"> </span><span style="color: #BAC5BA;">k</span><span style="color: #BDC2BD;">a</span><span style="color: #BFBFBF;">nnst, wofür <span style="color: #80FF80;">'.$row['name'].' <span style="color: #BFBFBF;">eigentlich zu gebrauchen ist, lässt Aeki das Teil verstohlen grinsend in seinem Wagen verschwinden und fragt dich, ob du sonst noch etwas für ihn hast.</span>',true);

        
addnav('Mehr verkaufen','vendor.php?op=sell');

        
$sql='UPDATE items SET owner=0 WHERE id="'.$_GET['id'].'"';

        
// insert SQL für special classes here to reset their values
        
if ($row['class']=='Möbel')
        
$sql='DELETE FROM items WHERE id="'.$_GET['id'].'"';

        if (
$row['class']=='Beute')
        
$sql='DELETE FROM items WHERE id="'.$_GET['id'].'"';

        if (
$row['class']=='Waffe' || $row['class']=='Rüstung')
        
$sql='DELETE FROM items WHERE id="'.$_GET['id'].'"';

        if (
$row['class']=='Schmuck' AND $row['name']=='Elfenkunst')
        
$sql='DELETE FROM items WHERE id="'.$_GET['id'].'"';

        
$session['user']['gold']+=$row['gold'];
        
$session['user']['gems']+=$row['gems'];
        
db_query($sql);
    }
    
    
addnav('Zurück...');
    
addnav('H?... zum Händler','vendor.php');
    
addnav('S?... in die Stadt','village.php');
}

else

    
checkday();

    if (!
getsetting('vendor',0))
    
redirect('village.php');

    
output('<span style="color: #80FF80;">A</span><span style="color: #83FC83;">e</span><span style="color: #86F986;">k</span><span style="color: #89F689;">i</span><span style="color: #8CF38C;">,</span><span style="color: #8FF08F;"> </span><span style="color: #92ED92;">d</span><span style="color: #95EA95;">e</span><span style="color: #98E798;">r</span><span style="color: #9BE49B;"> </span><span style="color: #9EE19E;">W</span><span style="color: #A1DEA1;">a</span><span style="color: #A4DBA4;">n</span><span style="color: #A7D8A7;">d</span><span style="color: #AAD5AA;">e</span><span style="color: #ADD2AD;">r</span><span style="color: #B0CFB0;">h</span><span style="color: #B3CCB3;">ä</span><span style="color: #B6C9B6;">n</span><span style="color: #B9C6B9;">d</span><span style="color: #BCC3BC;">l</span><span style="color: #BFC0BF;">er, ist heute wieder im Stadtzentrum. An ihn kannst du, wenn es ihn interessiert, manch Teilchen verkaufen, dass du auf deinen Wegen findest. Du kannst aber auch erstmal sehen, was er anzubieten hat. Vielleicht gefällt dir ja etwas, das einem anderen nicht gefallen hat?</span>',true);
    
    
addnav('Waren...');
    
addnav('k?... kaufen','vendor.php?op=buy');
    
addnav('v?... verkaufen','vendor.php?op=sell');
    
    
addnav('Zeige...');
    
addnav('I?... eigenes Inventar','prefs.php?op=inventory&back=vendor.php');
    
    
addnav('Zurück...');
    
addnav('S?... in die Stadt','village.php');
}

page_footer();
?>
0.9.7+jt ext (GER)