BrettspielWelt

Technische Fragen => Puppet-Stuff => Thema gestartet von: Sequoia am 17.02.2006, 01:31:31



Titel: seltsames Verhalten von INLIST und Parametern
Beitrag von: Sequoia am 17.02.2006, 01:31:31
Mal ein paar Codefragmente zur Parameterübergabe:
Code:
IF [PARAM] INLIST [spielliste]
PARAMausgeben und irgendwastun

Spielliste enthält "StreetSoccer Tichu Tongiaki"

Eingabe im Hauptchat, der obigen Code aufruft:
Code:
@spiel     Tichu         blablupp
(man beachte die Leerzeichen)

Variable wird gesetzt und ausgegeben, obwohl der übergebene String so nicht in der Liste enthalten ist:
Code:
Puppet: PARAM = #     Tichu          blablupp#
(hier benutze ich die ## um mir auch die Leerzeichen genau anzeigen zu lassen

-------------------------------


1. INLIST scheint die Liste nur auf ein beliebiges im String übergebenes Wort zu überprüfen (und das muss nicht das erste Wort sein, wie weitere Versuche gezeigt haben)

Falls das so gewollt ist, dann ist die Dokumentation hoffnungslos falsch:
Code:
<string> INLIST <liste>
Liefert TRUE, falls <string> ein Element von <liste> ist, ansonsten FALSE.

richtiger wäre vermutlich:
Code:
<liste1> INLIST <liste2>
Liefert TRUE, falls irgendein Element aus <liste1> Element von <liste2> ist, ansonsten FALSE.



2. Der bei @spiel übergebene Parameter enthält alle Leerzeichen zu Beginn und in der Mitte des Strings, aber nicht die am Ende des Strings - komischkomisch

Das führt dazu, dass FIRSTOF [PARAM] leer ist, falls der Parameter mit einigen Leerzeichen beginnt. Er ist sogar tatsächlich leer, enthält also kein Leerzeichen!
Allerdings ist LASTOF [PARAM] auch dann nicht leer (mit oder ohne Leerzeichen), wenn der Paramter (ursprünglich mal) mit Leerzeichen geendet hat.
Kann man das irgendwie verstehen, oder muss man die Magie der Puppetsprache immer erst in allen Einzelheiten ausprobieren? ???

seq



War das jetzt halbwegs verständlich? Interessiert das überhaupt wen?


Titel: Re: seltsames Verhalten von INLIST und Parametern
Beitrag von: Stechmuck am 17.02.2006, 17:34:52
Ahoi seq,

bin ich grad drüber gestolpert:

Zitat
INLIST (8.): Der erste Parameter wird jetzt als Liste aufgefaßt und die Funktion liefert TRUE zurück, wenn einer der Suchbegriffe enthalten ist.


Dürfte ne Erklärung sein.

Grüßle Stechi



Titel: Re: seltsames Verhalten von INLIST und Parametern
Beitrag von: Sequoia am 17.02.2006, 17:55:41
Boah, wer liest denn schon 3 Jahre alte "Neuerungen"?
Danke Muck.

Wenn das schon so alt ist, warum hat's in den letzten 3 Jahren niemand dokumentiert?

seq


Titel: Re: seltsames Verhalten von INLIST und Parametern
Beitrag von: SLC am 17.02.2006, 19:14:22
Moin!

Erstmal danke an Stechmuck! ;D

Dann lohnt es sich IMMER, den EINEN Thread einfach mal durchzulesen;
beim Übertragen der Infos in die netterweise durch helfende
User zusammengestellten Files (HTML, pdf, doc, etc.) treten
leider hier und da Übertragungsfehler auf, die man niemandem
übel nehmen kann... ;D

Ein anderes Dokumentationssystem ist ja seit längerem im Gespräch,
aber auch dafür braucht es eine gewisse (wo)manpower... ;D

Grüße, SLC

P.S.: "Tichu" war drin; und die Neuerung kommt Deiner Auswertung
eher zugegen, da Du z.B. nicht die Leerzeichen entfernen mußt!


Titel: Re: seltsames Verhalten von INLIST und Parametern
Beitrag von: Sequoia am 18.02.2006, 00:32:47
Zitat
Dann lohnt es sich IMMER, den EINEN Thread einfach mal durchzulesen;

Öhm, was ist denn jetzt DER EINE Thread? Meinst Du den von Muck angesprochenen "Neuerungen"-Thread aus dem Jahre 2003, der inzwischen auf Seite 13 zu finden ist? Ist nicht Dein Ernst, oder doch?

Sorry, so weit les ich nicht, dann muss ich ja damit rechnen, dass auf Seite 10 irgendwas steht, wo ich lesen kann, dass das alles nicht mehr aktuell ist, weil sich inzwischen so viel geändert hat....

Die Zeit, die ich brauche, um all die Seiten durchzuwälzen, kann ich genau so gut nutzen, um alle Puppetbugs, äh, -features vorwärts und rückwärts zu testen  :-/

seq


PS: Die Neuerung kommt mir leider gar nicht entgegen, weil ich auch noch sicherstellen muss, dass die Variable auch wirklich nur "Tichu" enthält und nicht "     Tichu   " mit vielen Leerzeichen oder sonst irgendwas abstruses. Ein einfacher Vergleich mit einer Spielliste funktioniert so nicht, da kann man ja gleich "IF TRUE" abfragen  ;D


Titel: Re: seltsames Verhalten von INLIST und Parametern
Beitrag von: SLC am 18.02.2006, 06:34:20
Zitat
Öhm, was ist denn jetzt DER EINE Thread? Meinst Du den von Muck angesprochenen "Neuerungen"-Thread aus dem Jahre 2003, der inzwischen auf Seite 13 zu finden ist? Ist nicht Dein Ernst, oder doch?

Ja und nein... ;D

Seite 1, ganz oben, gepinnt:

CHANGELOG: NEW PUPPET FEATURES (http://www.brettspielwelt.de/cgi-bin/yabb/YaBB.pl?board=pupps;action=display;num=1033565238;start=0#14)

Von dort aus wirst Du sogar ggfs. auf Seite 13 verwiesen... ;D

Grüße, SLC


Titel: Re: seltsames Verhalten von INLIST und Parametern
Beitrag von: SLC am 18.02.2006, 06:35:27
P.S.: Manchmal ist das Leben sooooo einfach! ;D