anpera.net

anpera.net

experimental server @home
Aktuelle Zeit: Do 28 Mär, 2024 19:24

Alle Zeiten sind UTC + 1 Stunde




Ein neues Thema erstellen Auf das Thema antworten  [ 8 Beiträge ] 
Autor Nachricht
BeitragVerfasst: Do 07 Jul, 2005 21:56 
Offline
Newbie

Registriert: Mi 06 Jul, 2005 20:07
Beiträge: 2
Folgende Anleitung ist die Anleitung zum einfügen eines Hausaufwertsystems, welches dem User die möglichkeit gibt, ein Haus zu bauen (Normal wie immer) und es danach gegen einen bestimmten Preis Aufzuwerten, sowohl Namentlich, als auch von der Kapazität für den Schatz.

Ich möchte darauf hinweisen, das diese Funktion auf die Original houses.php gecoded wurde, somit nur für diese 100% funktioniert.


Es wird empfohlen ein Backup zu erstelen!!!!
(sollte igentlich standard sein...)

$this->bbcode_second_pass_code('', '
//--------------------------------------------------\\
// Hack von Zeroground \\
//Bei Fragen, E-Mail an : P_P_V_A@msn.com \\
//--------------------------------------------------\\


//-->INSTALLATION
//-->Öffne houses.php
//-->finde
$goldcost=30000;
$gemcost=50;

//-->danach enfügen


$sql="SELECT houses.*,accounts.name AS besitzer FROM houses LEFT JOIN accounts ON accounts.acctid=houses.owner";
$result = db_query($sql) or die(db_error(LINK));
$row = db_fetch_assoc($result);
//Haus-schatz-maximum

if ($row[status]==0)
{
$Hausgoldmax='0';
$Hausedelmax='0';
$Hausupgradegold='0';
$Hausupgradeedel='0';
}
if ($row[status]==1)
{
$Hausgoldmax='15000';
$Hausedelmax='25';
$Hausupgradegold='10000';
$Hausupgradeedel='15';
}

if ($row[status]==2)
{
$Hausgoldmax='0';
$Hausedelmax='0';
$Hausupgradegold='0';
$Hausupgradeedel='0';
}
if ($row[status]==3)
{
$Hausgoldmax='0';
$Hausedelmax='0';
$Hausupgradegold='0';
$Hausupgradeedel='0';
}
if ($row[status]==4)
{
$Hausgoldmax='10000';
$Hausedelmax='15';
$Hausupgradegold='0';
$Hausupgradeedel='0';
}

if ($row[status]==5)
{
$Hausgoldmax='25000';
$Hausedelmax='35';
$Hausupgradegold='20000';
$Hausupgradeedel='25';
}

if ($row[status]==6)
{
$Hausgoldmax='40000';
$Hausedelmax='50';
$Hausupgradegold='25000';
$Hausupgradeedel='30';
}

if ($row[status]==7)
{
$Hausgoldmax='55000';
$Hausedelmax='65';
$Hausupgradegold='35000';
$Hausupgradeedel='35';
}

if ($row[status]==8)
{
$Hausgoldmax='70000';
$Hausedelmax='75';
$Hausupgradegold='40000';
$Hausupgradeedel='40';
}

if ($row[status]==9)
{
$Hausgoldmax='80000';
$Hausedelmax='85';
$Hausupgradegold='50000';
$Hausupgradeedel='50';
}

if ($row[status]==10)
{
$Hausgoldmax='95000';
$Hausedelmax='95';
$Hausupgradegold='60000';
$Hausupgradeedel='60';
}

if ($row[status]==11)
{
$Hausgoldmax='110000';
$Hausedelmax='110';
$Hausupgradegold='70000';
$Hausupgradeedel='65';
}

if ($row[status]==12)
{
$Hausgoldmax='135000';
$Hausedelmax='135';
$Hausupgradegold='80000';
$Hausupgradeedel='85';
}

if ($row[status]==13)
{
$Hausgoldmax='300000';
$Hausedelmax='300';
}

// Hausschatzdepot Ende
//News Variablen
if ($row[status]==1) $Hausaufgewertet ='!Kellerloch';
if ($row[status]==4) $Hausaufgewertet ='!Kerkerloch`0';
if ($row[status]==5) $Hausaufgewertet ='!Bruchbude`0';
if ($row[status]==6) $Hausaufgewertet ='!Haus`0';
if ($row[status]==7) $Hausaufgewertet ='!Wohnhaus`0';
if ($row[status]==8) $Hausaufgewertet ='!Nobelhauss`0';
if ($row[status]==9) $Hausaufgewertet ='!Villa`0';
if ($row[status]==10) $Hausaufgewertet ='!Festung`0';
if ($row[status]==11) $Hausaufgewertet ='!Schloss`0';
if ($row[status]==12) $Hausaufgewertet ='!Göttergleicher Tempel`0';
//News Variablen Ende

//--> Finde
if ($row[status]==0) output("`6im Bau`0");
if ($row[status]==1) output("`!Rattenloch`0");
if ($row[status]==2) output("`^zum Verkauf`0");
if ($row[status]==3) output("`4Verlassen`0");

//--> Ersetze mit (achtung 2 Mal im original enthalten... Beidemale ersetzen!!)
if ($row[status]==0) output("`6im Bau`0");
if ($row[status]==1) output("`!Rattenloch`0");
if ($row[status]==2) output("`^zum Verkauf`0");
if ($row[status]==3) output("`4Verlassen`0");
if ($row[status]==4) output("`!Kellerloch");
if ($row[status]==5) output("`!Kerkerloch`0");
if ($row[status]==6) output("`!Bruchbude`0");
if ($row[status]==7) output("`!Haus`0");
if ($row[status]==8) output("`!Wohnhaus`0");
if ($row[status]==9) output("`!Nobelhauss`0");
if ($row[status]==10) output("`!Villa`0");
if ($row[status]==11) output("`!Festung`0");
if ($row[status]==12) output("`!Schloss`0");
if ($row[status]==13) output("`!Göttergleicher Tempel`0");

//--> Finde

$amt=abs((int)$_POST[gold]);
if ($amt>$session[user][gold]){
output("`2So viel Gold hast du nicht dabei.");
}else if($row[gold]>round($goldcost/2)){
output("`2Der Schatz ist voll.");
}else if($amt>(round($goldcost/2)-$row[gold])){
output("`2Du gibst alles, aber du bekommst beim besten Willen nicht so viel in den Schatz.");
}else if ($amt<0){
output("`2Wenn du etwas aus dem Schatz nehmen willst, versuche nicht, etwas negatives hineinzutun.");
}else if ($session[user][amountouttoday]+$amt > $maxout) {
output("`2Du darfst nicht mehr als `^$maxout`2 Gold pro Tag deponieren.");
}else{


//--> Ersetze mit
$amt=abs((int)$_POST[gold]);
if ($amt>$session[user][gold]){
output("`2So viel Gold hast du nicht dabei.");
}else if($row[gold]>$Hausgoldmax){
output("`2Der Schatz ist voll.");
}else if($amt>($Hausgoldmax-$row[gold])){
output("`2Du gibst alles, aber du bekommst beim besten Willen nicht so viel in den Schatz.");
}else if ($amt<0){
output("`2Wenn du etwas aus dem Schatz nehmen willst, versuche nicht, etwas negatives hineinzutun.");
}else if ($session[user][amountouttoday]+$amt > $maxout) {
output("`2Du darfst nicht mehr als `^$maxout`2 Gold pro Tag deponieren.");
}else{

//--> Finde
}else{
$amt=abs((int)$_POST[gems]);
if ($amt>$session[user][gems]){
output("`2So viele Edelsteine hast du nicht.");
}else if($row[gems]>=round($gemcost/2)){
output("`2Der Schatz ist voll.");
}else if($amt>(round($gemcost/2)-$row[gems])){
output("`2Du gibst alles, aber du bekommst beim besten Willen nicht so viel in den Schatz.");
}else if ($amt<0){
output("`2Wenn du etwas aus dem Schatz nehmen willst, versuche nicht, etwas negatives hineinzutun.");
}else{

//--> Ersetze mit

}else{
$amt=abs((int)$_POST[gems]);
if ($amt>$session[user][gems]){
output("`2So viele Edelsteine hast du nicht.");
}else if($row[gems]>=$Hausedelmax){
output("`2Der Schatz ist voll.");
}else if($amt>($Hausedelmax-$row[gems])){
output("`2Du gibst alles, aber du bekommst beim besten Willen nicht so viel in den Schatz.");
}else if ($amt<0){
output("`2Wenn du etwas aus dem Schatz nehmen willst, versuche nicht, etwas negatives hineinzutun.");
}else{

//--> Finde
if (getsetting('activategamedate','0')==1) output("Wir schreiben den `^".getgamedate()."`2.`n");
output ("Es ist jetzt `^".getgametime()."`2 Uhr.`n`n");

//-->Danach einfügen

//Hausupgrade script
if ($_GET[op]=="drin")
{
if ($_GET[act]=="upg")
{
if ($session['user']['gold']>= $Hausupgradegold)
{
if ($session['user']['gems']>= $Hausupgradeedel)
{
$session['user']['gold']-= $Hausupgradegold;
$session['user']['gems']-= $Hausupgradeedel;
if ($row[status]==1)
{$sql = "UPDATE houses SET status=5 WHERE owner=".$session[user][acctid]." ";
}
else{
$sql = "UPDATE houses SET status=(status+1) WHERE owner=".$session[user][acctid]." ";
}
db_query($sql);
output("------------------------------------------------`n");
output("Du hast dein Zuhause erfolgreich Aufgewertet!`n");
output("Herzlichen Glückwunsch!`n");
addnews($session['user']['name']." hat sein Haus Aufgewertet zu ".$Hausaufgewertet);
output("------------------------------------------------`n");
}
else
{
output("---------------------------------------------------------------------------------`n");
output("Es scheint als hast du nicht genug Gold oder Edelsteine bei dir`n");
output("Das Bauamt schickt dich zurück und sagt du sollst wiederkommen wenn du alles dabei hast.`n");
output("---------------------------------------------------------------------------------`n");
}
}
else
{
output("---------------------------------------------------------------------------------`n");
output("Es scheint als hast du nicht genug Gold oder Edelsteine bei dir`n");
output("Das Bauamt schickt dich zurück und sagt du sollst wiederkommen wenn du alles dabei hast.`n");
output("---------------------------------------------------------------------------------`n"); }
}
}
//Hausupgrade Ende
output("---------------------------------------------------------------------------------`n");
output("Momentan kann deine Schatzkammer ".$Hausgoldmax." Gold und ".$Hausedelmax." Edelsteine fassen.`n");
output("Der Nächste Ausbau deines Hauses kostet ".$Hausupgradegold." Gold und ".$Hausupgradeedel." Edelsteine`n");
output("---------------------------------------------------------------------------------`n");


//--> Finde
if ($session[user][house]==$session[housekey]){
addnav("Haus umbenennen","houses.php?op=drin&act=rename");
addnav("Beschreibung ändern","houses.php?op=drin&act=desc");

//--> Danach einfügen
addnav("Haus Aufwerten","houses.php?op=drin&act=upg");


// == FERTIG ==\\
')


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi 23 Nov, 2005 04:17 
Offline
Freak
Freak
Benutzeravatar

Registriert: Di 11 Okt, 2005 18:11
Beiträge: 680
Wohnort: Wohnzimmer
Geschlecht: Männlich
LoGD: www.omega-grotte.de
nett..gibt nur ein problem...habe alles so eingesetz wie es da steht..
nur kommt:wenn ich auf Aufwerten klinke..kein Preis fürs Aufwerten...nur ein glückwunsch..das ich es geschafft habe :?
ohne irgendwas dafür getan zuhaben...naja und das steht zwar da..das es ne villa ist..trotzdem kann man nicht mehr hinein tun :(

Mfg

_________________
Die Frage lautet: Herr? Bist du das Göttliche?
Daraufhin meint er nur: Ich bin es, aber warum fragst du?

Mein Game zur Zeit Offline...


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi 23 Nov, 2005 10:31 
Offline
Freak
Freak
Benutzeravatar

Registriert: Di 02 Mär, 2004 18:16
Beiträge: 1206
die

[php]
$Hausgoldmax='0';
$Hausedelmax='0';
[/php]

bestimmen, wie viel in den schatz passt... folglich also 0 Gold und 0 Gems...
kannst du nach belieben ändern (same mit
[php]
$Hausupgradegold='0';
$Hausupgradeedel='0';
[/php],welche den Preis bestimmen.)

_________________
R.I.P.
†26.7.2004 - 20.3.2006†
†MeteorA†


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi 23 Nov, 2005 10:46 
Offline
Freak
Freak

Registriert: So 30 Okt, 2005 17:48
Beiträge: 1408
Wohnort: PB
Geschlecht: Männlich
LoGD: http://dav.blood-reaver.de/lotgd/
Hübsch, vor allem recht umfangreich
was ich dir als Update noch empehlen könnte wären spezielle Räume, die erst ab einem gewissen Level zu erreichen sind, oder unterschiedliche Schlüssel-anzahlen

So hab ichs zumindest bei mir.
aber echt nicht schlecht

Auric

_________________
Mehr oder minder inaktiv


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Mi 23 Nov, 2005 17:19 
Offline
Marquis Pherae
Marquis Pherae

Registriert: Mi 09 Feb, 2005 16:01
Beiträge: 3925
Wohnort: Basel
Geschlecht: Männlich
Eine Bitte...

Mach bei sovielen Möglichkeiten wenigstens folgendes:

[php]
switch($row['status'])
{
case 0:
$Hausgoldmax='0';
$Hausedelmax='0';
$Hausupgradegold='0';
$Hausupgradeedel='0';
break;
// [...]
}
[/php]

anstatt von:

[php]if ($row[status]==0)
{
$Hausgoldmax='0';
$Hausedelmax='0';
$Hausupgradegold='0';
$Hausupgradeedel='0';
}
if ($row[status]==1)
{
$Hausgoldmax='15000';
$Hausedelmax='25';
$Hausupgradegold='10000';
$Hausupgradeedel='15';
}

if ($row[status]==2)
{
$Hausgoldmax='0';
$Hausedelmax='0';
$Hausupgradegold='0';
$Hausupgradeedel='0';
}
if ($row[status]==3)
{
$Hausgoldmax='0';
$Hausedelmax='0';
$Hausupgradegold='0';
$Hausupgradeedel='0';
}
if ($row[status]==4)
{
$Hausgoldmax='10000';
$Hausedelmax='15';
$Hausupgradegold='0';
$Hausupgradeedel='0';
}

if ($row[status]==5)
{
$Hausgoldmax='25000';
$Hausedelmax='35';
$Hausupgradegold='20000';
$Hausupgradeedel='25';
}

if ($row[status]==6)
{
$Hausgoldmax='40000';
$Hausedelmax='50';
$Hausupgradegold='25000';
$Hausupgradeedel='30';
}

if ($row[status]==7)
{
$Hausgoldmax='55000';
$Hausedelmax='65';
$Hausupgradegold='35000';
$Hausupgradeedel='35';
}

if ($row[status]==8)
{
$Hausgoldmax='70000';
$Hausedelmax='75';
$Hausupgradegold='40000';
$Hausupgradeedel='40';
}

if ($row[status]==9)
{
$Hausgoldmax='80000';
$Hausedelmax='85';
$Hausupgradegold='50000';
$Hausupgradeedel='50';
}

if ($row[status]==10)
{
$Hausgoldmax='95000';
$Hausedelmax='95';
$Hausupgradegold='60000';
$Hausupgradeedel='60';
}

if ($row[status]==11)
{
$Hausgoldmax='110000';
$Hausedelmax='110';
$Hausupgradegold='70000';
$Hausupgradeedel='65';
}

if ($row[status]==12)
{
$Hausgoldmax='135000';
$Hausedelmax='135';
$Hausupgradegold='80000';
$Hausupgradeedel='85';
}

if ($row[status]==13)
{
$Hausgoldmax='300000';
$Hausedelmax='300';
} [/php]


[Ja, es gäbe noch mind. eine weitere Möglichkeit, und zwra die Preise etc. in nem array zu speichern und dann per $Hausgoldmax[$row['status']] aufzurufen - Ist sicherlich auch schneller, aber da muss man einiges umdenken ;) ]


Aber Ansonsten: Nett und eine gute Umsetzung [, ich hätte jetzt noch das ganze Feld status umgekrempelt].


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do 24 Nov, 2005 06:35 
Offline
Freak
Freak
Benutzeravatar

Registriert: Di 11 Okt, 2005 18:11
Beiträge: 680
Wohnort: Wohnzimmer
Geschlecht: Männlich
LoGD: www.omega-grotte.de
:pein: öhm...weiß ja nicht ob das beabsichtigt ist aber nun zu meinem problem...ich hab zugang zu 4 häusern...ich als admin..habe mein haus 4 mal erweitert...aber die anderen,wenn ich in deren ihr haus bin..können genauso viel gold und gems wie ich reinlegen..obwohl sie noch keine verbesserung haben :?

Öhm...naja..mal den erfinder frag..ob das normal ist oder irgendwo ein fehler vorliegt?

Mfg Squall

_________________
Die Frage lautet: Herr? Bist du das Göttliche?
Daraufhin meint er nur: Ich bin es, aber warum fragst du?

Mein Game zur Zeit Offline...


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do 24 Nov, 2005 20:51 
Offline
Admin
Admin
Benutzeravatar

Registriert: Di 21 Jan, 2003 01:11
Beiträge: 1604
Wohnort: Haßfurt
Geschlecht: Männlich
LoGD: http://www.anpera.net/logd
Skype: anpera-net
Hmm, ja, in dem SQL-Befehl am Anfang fehlt irgendwie die Abfrage, für welches Haus die Daten abgerufen werden sollen. An dieser Stelle im Code ist teilweise auch noch gar nicht bekannt, in welches Haus der Spieler geht, von daher ist eine solche Abfrage gar nicht immer möglich.
Schätze mal, das System muss nochmal überarbeitet werden. ;)

[edit]
Beim Löschen und gelöscht werden von Usern und beim Verkauf könnten die neuen Statuswerte Probleme machen. Es wäre vielleicht besser, dafür ein weiteres Feld in die houses-Tabelle einzufügen. Ist schließlich irgendwie unlogisch, wenn man einen gottgleichen Tempel verkauft/verlässt und es kommt wieder ein Kellerloch dabei raus.

_________________
Praxis ist, wenn alles klappt aber keiner weiß warum. Theorie ist, wenn man weiß wie es geht, aber nichts klappt. Wir haben beides erfolgreich vereinigt: Bei uns klappt nichts und keiner weiß warum!

Neues Video: Marios freier Tag in Second Life


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr 25 Nov, 2005 00:54 
Offline
Freak
Freak
Benutzeravatar

Registriert: Di 11 Okt, 2005 18:11
Beiträge: 680
Wohnort: Wohnzimmer
Geschlecht: Männlich
LoGD: www.omega-grotte.de
:o ich verstehe...hmm..dann werd ich wohl lieber die standart housphp wieder hochladen und mal schaun..ob hier irgendwo ein ein verbessertes Wohnviertel gib.

Aber danke für die Antwort anpera :lol:

Mfg :wink:

_________________
Die Frage lautet: Herr? Bist du das Göttliche?
Daraufhin meint er nur: Ich bin es, aber warum fragst du?

Mein Game zur Zeit Offline...


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 8 Beiträge ] 

Alle Zeiten sind UTC + 1 Stunde


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 40 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen
Du darfst keine Antworten zu Themen in diesem Forum erstellen
Du darfst deine Beiträge in diesem Forum nicht ändern
Du darfst deine Beiträge in diesem Forum nicht löschen
Du darfst keine Dateianhänge in diesem Forum erstellen

Suche nach:
Gehe zu:  
cron
POWERED_BY
Deutsche Übersetzung durch phpBB.de
anpera.net - Impressum