anpera.net
https://anpera.homeip.net/phpbb3/

Haustiere by the great Chaosmaker :)
https://anpera.homeip.net/phpbb3/viewtopic.php?f=44&t=1151
Seite 1 von 1

Autor:  Weasel [ Mi 16 Mär, 2005 21:12 ]
Betreff des Beitrags:  Haustiere by the great Chaosmaker :)

Beschreibung:
Haustiere schützen das Haus, auch wenn kein Bewohner da ist.
Gekauft werden sie bei Merick, Administration über Itemeditor.

Dateianhänge:
Dateikommentar: 16.3.2005
petmod.zip [51.39 KIB]
1301-mal heruntergeladen

Autor:  Thora [ Sa 19 Nov, 2005 21:07 ]
Betreff des Beitrags: 

Hallo!

Ich hab alles gemacht (und nochmals durchgeschaut ob ich wirklich alles habe) was in der Anleitung (petmod.txt) steht.
Die drei Haustiere hab ich - wie es im petmod.txt steht - mit dem Itemeditor (und der DB ;) ) in der Admin-Grotte erstellt.
Aber, wie krieg ich diese Biester dazu, dass man sie bei Merick kaufen kann?
Ich kriegs einfach nicht raus.. :pein:

Autor:  Devilzimti [ Sa 19 Nov, 2005 21:12 ]
Betreff des Beitrags: 

Auch das steht im txt file ...

Autor:  Thora [ Sa 19 Nov, 2005 21:17 ]
Betreff des Beitrags: 

Oh mann, ich hab geschrieben dass ich es nicht rauskriege..
Ich befasse mich heute das erste mal mit meinem Server.. nur schon ein Wunder dass ich rausfand, wie man die Addons ins Game kriegt..... Aber ich nahm mir Zeit und fand es raus..
Also, kannst du es mir, oder jemand anderes, bitte sagen? Für das ist ein Forum doch da, oder?..

Autor:  Devilzimti [ Sa 19 Nov, 2005 21:26 ]
Betreff des Beitrags: 

Bin heut net sonderlich gut gelaunt..
Und eigentlich ist das Forum net für sowas gedacht...
Hier mal ein Auszug aus der petmod.txt:

$this->bbcode_second_pass_code('', '--- öffne stables.php
--- suche
page_header("Mericks Ställe");
--- füge danach ein:
// Haustier-Mod by Chaosmaker <webmaster@chaosonline.de>
// http://logd.chaosonline.de
function getpet($petid=0) {
$sql = "SELECT * FROM items WHERE id='$petid'";
$result = db_query($sql);
if (db_num_rows($result)>0) {
$row = db_fetch_assoc($result);
$row['buff'] = unserialize($row['buff']);
return $row;
}
else {
return array();
}
}
$playerpet = getpet($session['user']['petid']);
$petrepaygems = round($playerpet['gems']*2/3);
--- suche
if ($session['user']['hashorse']>0 && $session[user][fedmount]==0) addnav("f?{$playermount['mountname']} füttern (`^$futtercost`0 Gold)","stables.php?op=futter");
--- füge danach ein:
if ($session['user']['petid']>0) addnav("t?{$playerpet['name']} füttern","stables.php?op=futterpet");
--- suche
}elseif($_GET['op']=="examine"){
--- füge davor ein:
} elseif ($_GET['op']=="examinepet") {
$pet = getpet($_GET['id']);
if (count($pet)==0) {
output("`7\"`&Ach, ich heb keen solches Tier da!`7\" ruft der Zwerg!");
}
else {
output("`7\"`&Ai, ich heb wirklich n paar feine Viecher hier!`7\" kommentiert der Zwerg.`n`n");
output("`7Kreatur: `&{$pet['name']}`n");
output("`7Beschreibung: `&{$pet['description']}`n");
output("`7Preis: `^{$pet['gold']}`& Gold, `%{$pet['gems']}`& Edelstein".($pet['gems']==1?"":"e")."`n");
output("`n");
addnav("Dieses Tier kaufen","stables.php?op=buypet&id={$pet['id']}");
}
--- suche
}elseif($_GET['op']=='buymount'){
--- füge davor ein:
} elseif ($_GET['op']=='buypet') {
$pet = getpet($_GET['id']);
if (count($pet)==0) {
output("`7\"`&Ach, ich heb keen solches Tier da!`7\" ruft der Zwerg!");
}
else {
if (
$session['user']['gold'] < $pet['gold']
||
($session['user']['gems']+$petrepaygems) < $pet['gems']
){
output("`7Merick schaut dich schief von der Seite an. \"`&Ähm, was gläubst du was du hier machst? Kanns u nich sehen, dass {$pet['name']} `^{$pet['gold']}`& Gold und `%{$pet['gems']}`& Edelsteine kostet?`7\"");
}
else {
$feeddays = getsetting("daysperday",4);
if ($session['user']['petid']>0) {
output("`7Du übergibst dein(e/n) {$playerpet['name']} und bezahlst den Preis für dein neues Tier. Merick führt ein(e/n) schöne(n/s) neue(n/s) `&{$pet['name']}`7 für dich heraus und gibt dir Futter für $feeddays Tage dazu!`n`n");
}
else {
output("`7Du bezahlst den Preis für dein neues Tier und Merick führt ein(e/n) schöne(n/s) neue(n/s) `&{$pet['name']}`7 für dich heraus und gibt dir Futter für $feeddays Tage dazu!`n`n");
}
// delete old pet
$sql = 'DELETE FROM items WHERE id='.$session['user']['petid'];
db_query($sql);
// insert new pet
$sql = "INSERT INTO items (name,class,owner,value1,value2,gold,gems,description,hvalue,buff)
VALUES ('{$pet['name']}','Haustiere',{$session['user']['acctid']},{$pet['value1']},{$pet['value2']},{$pet['gold']},{$pet['gems']},'".addslashes($pet['description'])."',{$session['user']['house']},'".addslashes(serialize($pet['buff']))."')";
db_query($sql);
$session['user']['petid'] = db_insert_id(LINK);
$session['user']['petfeed'] = date('Y-m-d H:i:s',time() + $feeddays * (3600*24 / getsetting("daysperday",4)));
$goldcost = -$pet['gold'];
$session['user']['gold'] += $goldcost;
$gemcost = $petrepaygems - $pet['gems'];
$session['user']['gems'] += $gemcost;
debuglog(($goldcost <= 0?"spent ":"gained ") . abs($goldcost) . " gold and " . ($gemcost <= 0?"spent ":"gained ") . abs($gemcost) . " gems trading for a new pet");
// Recalculate so the selling stuff works right
$playerpet = $pet;
$petrepaygems = round($playerpet['gems']*2/3,0);
}
}
--- suche
}elseif($_GET['op']=='sellmount'){
--- füge davor ein:
} elseif ($_GET['op']=='sellpet') {
$sql = 'DELETE FROM items WHERE id='.$session['user']['petid'];
db_query($sql);
$session['user']['gems'] += $petrepaygems;
debuglog("gained $petrepaygems gems selling their pet");
$session['user']['petid'] = 0;
$session['user']['petfeed'] = '0000-00-00 00:00:00';
output("`7So schwer es dir auch fällt, dich von dein(er/em) {$playerpet['name']} zu trennen, tust du es doch und eine einsame Träne entkommt deinen Augen.`n`n");
output("Aber in dem Moment, in dem du die `%$petrepaygems`7 Edelsteine erblickst, fühlst du dich gleich ein wenig besser.");
--- suche
}elseif($_GET['op']=='futter'){
--- füge davor ein:
} elseif ($_GET['op']=='futterpet') {
if (empty($_POST['days'])) {
output('Das Futter kostet `^'.$playerpet['value1'].' Gold`0 und
`%'.$playerpet['value2'].' Edelsteine`0 pro Tag.`n');
output('<form action="stables.php?op=futterpet" method="post">',true);
output('Für wie viele Tage möchtest du Futter kaufen?');
output('<input type="text" name="days" value="0"> <input type="submit" value="Kaufen!">',true);
output('</form>',true);
addnav('','stables.php?op=futterpet');
}
else {
$days = (int)$_POST['days'];
if ($session['user']['gold']>=$playerpet['value1']*$days && $session['user']['gems']>=$playerpet['value2']*$days) {
$session['user']['gold'] -= $playerpet['value1']*$days;
$session['user']['gems'] -= $playerpet['value2']*$days;
if ($playerpet['value1']>0) {
if ($playerpet['value2']>0) {
$coststr = '`^'.($playerpet['value1']*$days).' Gold`0 und `%'.($playerpet['value2']*$days).' Edelsteine`0';
}
else $coststr = '`^'.($playerpet['value1']*$days).' Gold`0';
}
else {
$coststr = '`%'.($playerpet['value2']*$days).' Edelsteine`0';
}
output('Merick nimmt die '.$coststr.' und gibt dir genug Futter, um dein(e/n) '.$playerpet['name'].' die nächsten '.$days.' Tage zu versorgen.`n');
$oldtime = strtotime($session['user']['petfeed']);
if ($oldtime < time()) $oldtime = time();
$newtime = $oldtime + $days * (3600*24 / getsetting("daysperday",4));
$session['user']['petfeed'] = date('Y-m-d H:i:s',$newtime);
}
else {
output('`7Du kannst das Futter nicht bezahlen. Merick weigert sich, dein Tier für dich durchzufüttern.');
}
}
--- suche
addnav("Betrachte {$row['mountname']}`0","stables.php?op=examine&id={$row['mountid']}");
}
--- füge danach ein:
if ($session['user']['housekey']>0) {
$sql = 'SELECT name, id FROM items WHERE class="Haust.Prot" ORDER BY gold ASC, gems ASC';
$result = db_query($sql);
if (db_num_rows($result)>0) {
addnav('Haustiere');
while ($row = db_fetch_assoc($result)) {
addnav("Betrachte {$row['name']}`0",'stables.php?op=examinepet&id='.$row['id']);
}
}
}
--- suche
addnav("Verkaufe {$playermount['mountname']}","stables.php?op=sellmount");
}
--- füge danach ein:
if ($session['user']['petid']>0) {
if ($session['user']['hashorse']==0) addnav("Sonstiges");
output("`n`nMerick bietet dir `%$petrepaygems`7 Edelsteine für dein(e/n) {$playerpet['name']}.");
addnav("Verkaufe {$playerpet['name']}","stables.php?op=sellpet");
}')

Autor:  Thora [ Sa 19 Nov, 2005 21:36 ]
Betreff des Beitrags: 

Für was ist dieses Forum denn gedacht? :? Ein Forum ist da um Fragen zu stellen und Meinungen mit anderen Usern auszutauschen..
Aber egal, das ist nicht das Thema hier..

Zum Auszug, ich hab das alles so eingebaut.. Hab extra nochmals nachgeschaut, ob wirklich alles drin ist!

Aber was mir aufgefallen ist, mein Haus bzw. mein Char hat keine Schlüssel mehr und wenn ich dem wieder 9 gebe, werden sie nicht angezeigt.. Aber ich glaub, an was das Problem liegt.
Ich wollte zuerst houses.rar draufladen, hab dann in der datenbank schon
$this->bbcode_second_pass_code('', 'UPDATE accounts SET house=0, housekey=0;
DELETE FROM items WHERE class="Schlüssel";')
gemacht. Dann wechselte ich aber zum petmod..
Wie krieg ich meine Schlüssel zurück und wie die Viecher in die Ställe?

Edit:
Prob mit den Schlüsseln ist gelöst.. würde trotzdem noch gerne erfahren, wie man diese Viecher bei Merick einpflantzt..

Autor:  teruk [ Mo 21 Nov, 2005 08:29 ]
Betreff des Beitrags: 

wenn du es nach der anleitung gemacht hast, dann müsste durch diesen abschnitt

[php]
// stables.php
//--- suche
addnav("Betrachte {$row['mountname']}`0","stables.php?op=examine&id={$row['mountid']}");
}
//--- füge danach ein:
if ($session['user']['housekey']>0) {
$sql = 'SELECT name, id FROM items WHERE class="Haust.Prot" ORDER BY gold ASC, gems ASC';
$result = db_query($sql);
if (db_num_rows($result)>0) {
addnav('Haustiere');
while ($row = db_fetch_assoc($result)) {
addnav("Betrachte {$row['name']}`0",'stables.php?op=examinepet&id='.$row['id']);
}
}
}
[/php]

die haustiere angezeigt werden, wenn das nicht der fall ist muss du irgendein fehler beim einbau gemacht haben...
alle sql-Inserts korrekt eingefügt?

Autor:  Thora [ Mo 21 Nov, 2005 16:33 ]
Betreff des Beitrags: 

SQL sollte alles eingefügt sein.. eigentlich..

Ich habe alles in den Skripts eingebaut und nochmals durchgeschaut, ob wirklich alles richtig/drin ist. aber vielleicht hab ich trotzdem was übersehen.
Wenn es bei euch läuft, sollte es bei mir eigentlich auch laufen.. Aber was solls, ich werde zuerst ein Backup machen und dann das ganze nochmals versuchen einzubauen..
Danke..

Autor:  Magier12 [ Mo 21 Nov, 2005 19:11 ]
Betreff des Beitrags: 

hmm ein link zum source wäre sicher nicht schlecht

Autor:  -DoM [ Do 01 Dez, 2005 01:48 ]
Betreff des Beitrags: 

[.............]

Autor:  Devilzimti [ Do 01 Dez, 2005 18:02 ]
Betreff des Beitrags: 

Ist schon in der Anleitung drin.

$this->bbcode_second_pass_code('', '--- öffne vendor.php
--- suche
$sql="SELECT * FROM items WHERE owner=".$session[user][acctid]." AND (gold>0 OR gems>0) AND class<>'Fluch' AND class<>'Zauber'";
--- ersetze durch:
$sql="SELECT * FROM items WHERE owner=".$session[user][acctid]." AND (gold>0 OR gems>0) AND class<>'Fluch' AND class<>'Zauber' AND class<>'Haustiere'";')

Autor:  Arelcar [ Mi 19 Apr, 2006 19:55 ]
Betreff des Beitrags: 

Also :D

**Hat sich erledigt**

Autor:  HunterSX [ Di 27 Feb, 2007 23:19 ]
Betreff des Beitrags:  sry...

So hier wurde zwar schon ne längere zeit nichts mehr reingeschrieben trotzdem frag ich mal nach vielleicht kommt ja noch hilfe.

Ich habe vom Prinzip her das gleiche problem wie Thora. ich habe die Tiere eingefügt und alle SQL Befehle ausgeführt.

Doch trotzallem finde ich die Tiere nur in der Grotte. also im Item-editor.
Bei Merick sind sie nicht zu kaufen bzw nicht mal zu sehen.
Sowohl Die SQL Befehle, als auch die Änderungen in der Stables.php habe ich mehrere male überprüft und ich seh immer noch leider keine veränderung.
Ich weis leider nicht wie aktiv dieses Forum noch benutzt wird trotzdem hoffe ich das ich vieleicht noch eine antwort bekomme^^

ThX im Vorraus

Autor:  Morpheus [ Di 27 Feb, 2007 23:30 ]
Betreff des Beitrags: 

Mir fällt spontan nichts ein, aber bestimmt den Experten, nur solltest Du dann mal einen Link zu Deiner Source setzen... ;) :wink:

Autor:  HunterSX [ Do 01 Mär, 2007 21:17 ]
Betreff des Beitrags: 

jo hier is der Link. hoffe es is das was du meint :P

http://huntersx.hu.ohost.de/source.php

edit: bemerke aber grad das der unten den Sourcecode nicht anzeigt weil der deaktiviert wurde.


Warning: show_source() has been disabled for security reasons in /usr/export/www/hosting/huntersx/source.php on line 91

in line 91 finde ich aber nur
show_source($page_name);

ich kenn mich nur ansatz weise mit PhP bzw SQL aus. allerdings weis ich nicht wie ich das so hinkriege das es angezeigt wird

Autor:  Harthas [ Do 01 Mär, 2007 23:05 ]
Betreff des Beitrags: 

Ohost?

DAS oder DAS lesen und die logd-Daten löschen -.-

Autor:  HunterSX [ Mo 05 Mär, 2007 23:23 ]
Betreff des Beitrags: 

das dies verboten war wusste ich nicht :P
aber keine Sorge ich hatte eh nie vor das ganze unter Ohost bzw Funpic laufen zu lassen. ich lies es nur drauf laufen um mit 1-2 personen das ganze zu testen bzw zu bearbeiten. ich werde die daten so bald die Logd version komplett funktioniert von Ohost löschen und eine anderweitige lösung finden.
mir geht es trotzallem um das problem und damit tu ich mich trotzallem immer noch schwer

Autor:  Kampfsachse [ Mi 19 Sep, 2007 01:20 ]
Betreff des Beitrags:  Problem mit Tieren

Hallöchen ich habe das Haustiermod eingebaut ,
nun habe ich aber ein kleines Problem und zwar wenn ich mir ein tier kaufe zbs schwarzer drache dann steht bei den Aktionen nur folgendes :
( Runden übrig) aber nicht dir anzahl wie viel noch über sind.
kann mir vielleicht jemand sagen was ich machen kann.

das ganze läuft noch auf xampp

Seite 1 von 1 Alle Zeiten sind UTC + 1 Stunde
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/