anpera.net

anpera.net

experimental server @home
Aktuelle Zeit: So 15 Jun, 2025 20:08

Alle Zeiten sind UTC + 1 Stunde




Ein neues Thema erstellen Auf das Thema antworten  [ 7 Beiträge ] 
Autor Nachricht
BeitragVerfasst: Mo 01 Jan, 2007 17:00 
Offline
Lehrling
Lehrling

Registriert: Fr 01 Dez, 2006 17:53
Beiträge: 38
LoGD: www.rhun-logd.de/source.php
Also.. ich bin gerade dabei, einen Voodooladen zu proggen, Problem dabei ist nur, dass es Voodoopuppen geben soll, die aber nur einmalig vorhanden sind, also ähnlich wie die Items im Wald etc., das ist weiter nicht das problem nun soll aber aus einer Liste die Puppen auswählbar sein, und zwar -aller- Dorfbewohner, gibts die nicht, kommt ne Nachricht, ist die kaufbar, gehts dann zum Kauf weiter.

Problem dabei eben erstmal, dass die Namen verwendet werden müssten und zu gucken, ob das Item schon in Besitz eines anderen Users ist.

Habs bisher mal mit der Liste aus dem Shop im Garten versucht, wollte aber nicht recht funktionieren


http://circle-of-prophets.com/logd/source.php?url=/logd/voodooshop.php
ist dann der Link zur kompletten Source


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo 01 Jan, 2007 19:03 
Offline
Freak
Freak

Registriert: Mo 06 Sep, 2004 15:17
Beiträge: 3236
Geschlecht: Männlich
Schonmal versucht eine Item Klasse zu erstellen, worin die Käufer mit der Voodoo-Pupe enthalten sind?
Zwar nicht besonders Sauber, aber es sollte fürs erste ausreichen denke ich. Bearbeiten musst es ja dennoch ;)
Hier mal ein bsp:

[php]<?php
// Accounts auslesen
// Voodoo-Puppen auslesen -
// diese befinden sich in der Item Tabelle
$sql = 'SELECT
`a`.`acctid`,
`a`.`name`,
`i`.`owner`
FROM
`accounts` `a`
LEFT JOIN
`items` `i`
ON
`i`.`class` = "Voodoo"';
$result = db_query($sql) or die(db_error($sql));


// Variablen
// über Voodoo-Puppen/Bewohner
$User = '';
$Voodoo = '';


// Bewohner auflisten
while ($row = db_fetch_assoc($result)) {
// Voodoo-Puppen vorhanden?
if ($row['owner'] == $row['acctid']) {
$Voodoo .= sprintf('%s, ', addslashes(stripslashes($row['name'])));
}
else {
$User .= sprintf('%s, ', addslashes(stripslashes($row['name'])));
}
}


// Bewohner ausgeben
output("Voodoo-Puppen:`n{$Voodoo}`n`nBewohner:`n{$User}");
?>[/php]


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo 01 Jan, 2007 20:00 
Offline
Lehrling
Lehrling

Registriert: Fr 01 Dez, 2006 17:53
Beiträge: 38
LoGD: www.rhun-logd.de/source.php
Dankeschön, ich probiers morgen einmal.


EDIT: Itemklasse hab ich schon erstellt, nennt sich vorläufig (ganz kreativ) Voodoo, auch alle Spieler sind inzwischen (wenn auch manuell) eingefügt, ich schau mal, ob ichs hinbekomme, dass bei der Charaktererstellung gleich eine Puppe erstellt wird.
Itemklasse, wo jedoch die Käufer enthalten sind, hab ich nicht erstellt, hab gedacht, dass es mit einer variablen gehen müsste, da man ja ohnehin nur 1x pro DK eine kaufen kann.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo 01 Jan, 2007 20:25 
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
Warum machst du es nicht so, dass die Puppe mit der entsprechenden acctid im Feld hvalue (und dem Namen in der Beschreibung ... z.B.) erst dann erstellt wird, wenn ein Käufer danach fragt UND noch keine Puppe mit diesem hvalue in der items-Tabelle vorhanden ist? Ist schon eine Puppe vorhanden, kann diese halt nicht mehr gekauft werden, weil vorhanden = im Besitz ist.

Bei Gebrauch oder Verlust wird die Puppe einfach wieder aus der items-Tabelle gelöscht und es kann von vorne beginnen.

Oder hab ich da jetzt nen Denkfehler und versteh nicht ganz, was du brauchst?

_________________
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: Mo 01 Jan, 2007 20:30 
Offline
Freak
Freak

Registriert: Mo 06 Sep, 2004 15:17
Beiträge: 3236
Geschlecht: Männlich
Nein Anpera,
du liegst schon richtig. Habe jetzt gerade auch den Denkfehler bemerkt wo du es auf das Datenbankfeld "hvalue" angesprochen hast. Denn dieses ist ja sozusagen "ein extra Feld" um extra Werte anzugeben. Wäre in deinem fall durchaus von vorteil/nöten.

Btw.:
Anpera, eine Frage am rande bzw Abseits des Thread Themas.
Wie sieht es denn nun vorraussichtlich mit der neuen LotGD Version von dir aus der ext 4?


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di 02 Jan, 2007 14:13 
Offline
Lehrling
Lehrling

Registriert: Fr 01 Dez, 2006 17:53
Beiträge: 38
LoGD: www.rhun-logd.de/source.php
Aber, um mal ganz dreist und unwissend zu fragen, wie wäre dann der Code für das Erstellen eines Items und das anschließende wieder Löschen, wenns denn gewünscht ist. Genau das ist es eigentlich, was ich brauch.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di 02 Jan, 2007 14:41 
Offline
Freak
Freak

Registriert: Mo 06 Sep, 2004 15:17
Beiträge: 3236
Geschlecht: Männlich
Die übergabe der ID, erfolgt via URL übergabe id! Kann man natürlich auch anderswertig übergeben. Dient nur als bsp...
Zb.:

[php]<?php
// Item Löschen nach
// dem Wert hvalue!
// hvalue, stellt die acctid
// des Users da.
$sql = 'DELETE FROM
`items`
WHERE
`hvalue` = "'.(int)$_GET['id'].'" AND
`class` = Voodoo""';
$result = db_query($sql) or die (db_error($sql));

// Prüfen ob Item
// gelöscht wurde oder nicht.
if (db_num_rows($result)) {
rawoutput('Das Item wurde erfolgreich gelöscht!');
}
else {
rawoutput('Das Item konnte nicht gelöscht werden!');
}
?>[/php]


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

Alle Zeiten sind UTC + 1 Stunde


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 9 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:  
POWERED_BY
Deutsche Übersetzung durch phpBB.de
anpera.net - Impressum