Willkommen Gast. Bitte einloggen oder registrieren.
Übersicht Hilfe Suche Einloggen Registrieren

+  BrettspielWelt
|-+  Technische Fragen
| |-+  Puppet-Stuff (Moderator: SLC)
| | |-+  seltsames Verhalten von INLIST und Parametern
0 Mitglieder und 1 Gast betrachten dieses Thema. « vorheriges nächstes »
Seiten: [1] Nach unten Drucken
Autor Thema: seltsames Verhalten von INLIST und Parametern  (Gelesen 137 mal)
Sequoia
Zauberlehrling
**
Geschlecht: Weiblich
Beiträge: 68


Smile . . . tomorrow will be worse. (The Murphy Philosophy)


Profil anzeigen WWW
« 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? Huh

seq



War das jetzt halbwegs verständlich? Interessiert das überhaupt wen?
« Letzte Änderung: 17.02.2006, 02:28:45 von Sequoia » Gespeichert
Stechmuck
BSW-Admin
*****
Geschlecht: Männlich
Beiträge: 5900


Erfahrung ist eine nützliche Sache, leider macht man sie immer erst kurz nachdem man sie bräuchte.


Profil anzeigen WWW
« Antworten #1 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

Gespeichert


Sequoia
Zauberlehrling
**
Geschlecht: Weiblich
Beiträge: 68


Smile . . . tomorrow will be worse. (The Murphy Philosophy)


Profil anzeigen WWW
« Antworten #2 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
Gespeichert
SLC
Magier
*****
Geschlecht: Männlich
Beiträge: 14510


Ich heiße SLC, komme aus Hamburg und spiele gern (wer denn nicht?)

SLC_BSW
Profil anzeigen WWW
« Antworten #3 am: 17.02.2006, 19:14:22 »

Moin!

Erstmal danke an Stechmuck! Grin

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... Grin

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

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!
Gespeichert
Sequoia
Zauberlehrling
**
Geschlecht: Weiblich
Beiträge: 68


Smile . . . tomorrow will be worse. (The Murphy Philosophy)


Profil anzeigen WWW
« Antworten #4 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  fragend

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  Grin
Gespeichert
SLC
Magier
*****
Geschlecht: Männlich
Beiträge: 14510


Ich heiße SLC, komme aus Hamburg und spiele gern (wer denn nicht?)

SLC_BSW
Profil anzeigen WWW
« Antworten #5 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... Grin

Seite 1, ganz oben, gepinnt:

CHANGELOG: NEW PUPPET FEATURES

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

Grüße, SLC
Gespeichert
SLC
Magier
*****
Geschlecht: Männlich
Beiträge: 14510


Ich heiße SLC, komme aus Hamburg und spiele gern (wer denn nicht?)

SLC_BSW
Profil anzeigen WWW
« Antworten #6 am: 18.02.2006, 06:35:27 »

P.S.: Manchmal ist das Leben sooooo einfach! Grin
Gespeichert
Seiten: [1] Nach oben Drucken 
« vorheriges nächstes »
Gehe zu:  


Einloggen mit Benutzername, Passwort und Sitzungslänge

Powered by MySQL Powered by PHP Powered by SMF 1.1.15 | SMF © 2006-2009, Simple Machines
SMFAds for Free Forums
Prüfe XHTML 1.0 Prüfe CSS