| |
| replace_personal() |
| ****************** |
| |
| |
| FUNKTION |
| ======== |
| |
| varargs string replace_personal(string str, mixed *obs [, int caps]); |
| |
| |
| DEFINIERT IN |
| ============ |
| |
| /secure/simul_efun.c |
| |
| |
| ARGUMENTE |
| ========= |
| |
| str - zu bearbeitender String |
| obs - Liste von Objekt1, Objekt2, ..., Objekt9 |
| (Objekte oder Strings) |
| caps - 1 fuer Grossschreibung des Ersetzten nach Satzenden (.,?,!,") |
| 0 sonst |
| |
| |
| BESCHREIBUNG |
| ============ |
| |
| Ersetzt in Strings |
| @WERx, @WESSENx, @WEMx, @WENx durch |
| Objectx->name(<casus>, 1); |
| @WERUx, @WESSENUx, @WEMUx, @WENUx durch |
| Objectx->name(<casus>); |
| @WERQPx, @WESSENQPx, @WEMQPx, @WENQPx durch |
| Objectx->QueryPronoun(<casus>); |
| @WERQAx, @WESSENQAx, @WEMQAx, @WENQAx durch |
| Objectx->QueryArticle(<casus>, 1, 1); |
| @WERQPPGNx, @WESSENQPPGNx, @WEMQPPGNx, @WENQPPGNx durch |
| Objectx->QueryPossPronoun(<gender>, <casus>, <number>); |
| oder den entsprechenden String bei "Objektx". |
| |
| |
| BEMERKUNGEN |
| =========== |
| |
| x steht fuer die Position des Objekts/Strings in *obs, beginnend bei 1. |
| |
| |
| |
| Besonderheiten beim Possessivpronomen (@WERQPPGNx): |
| G muss durch das Geschlecht (M, F oder N) und N durch den Numerus (S |
| oder P) ersetzt werden. |
| Alle Angaben, auch der CASUS, beziehen sich dabei auf das Objekt, welches |
| besessen wird, nicht auf den Besitzer! Dieser ist bereits durch x |
| bestimmt. |
| |
| |
| RUeCKGABEWERT |
| ============= |
| |
| durchersetzter String |
| |
| Beispiele |
| |
| replace_personal("@WER1", ({find_player("gloinson")})) == |
| "Gloinson" |
| |
| replace_personal("@WEMQP1", ({find_player("gloinson")})) == "ihm" |
| |
| // unbestimmter und bestimmter Artikel: replace_personal("@WER1 |
| zueckt @WENU2 und verhaut @WEN3.", |
| |
| ({find_player("gloinson"), |
| find_object("/obj/mpa"), find_object("/obj/wanderer")})) |
| |
| == "Gloinson zueckt eine Zeitung und verhaut den Wanderer." |
| |
| // Beim Possessivpronomen beziehen sich WEN, F und P (Akkusativ, // |
| Femininum, Plural) auf die Taschen, nicht auf Kessa: |
| replace_personal("@WER1 steckt @WESSEN2 Turnschuhe in @WENQPPFP1 " |
| |
| "Taschen.", ({find_player("kessa"), |
| |
| find_player("gloinson")})) |
| |
| == "Kessa steckt Gloinsons Turnschuhe in ihre Taschen." |
| |
| // Ein Beispiel mit laengerem >>*<<obs: replace_personal("@WER1 |
| zieht @WENQPPMP1 neuen Turnschuhe an. @WER2 ist " |
| |
| "so beeindruckt, dass @WERQP2 @WEMQP1 @WENU3 auf die " "@WEN4 |
| haut und die Schuhe in @WEMQPPFS2 Tasche " "verschwinden laesst. |
| @WERU5 schaut zu und kichert " "irre. Wenn das @WER6 gesehen |
| haette!", ({find_player("gloinson"), |
| |
| find_player("kessa"), find_object("/obj/mpa"), "Birne", |
| find_object("/obj/wanderer"), find_netdead("jof")}),1) |
| |
| == "Gloinson zieht seine neuen Turnschuhe an. Kessa ist so |
| beeindruckt, " |
| "dass sie ihm eine Zeitung auf die Birne haut und die Schuhe in |
| ihrer " "Tasche verschwinden laesst. Ein Wanderer schaut zu und |
| kichert " "irre. Wenn das Jof gesehen haette!" |
| |
| |
| SIEHE AUCH |
| ========== |
| |
| AddCmd(L) |
| |
| 5. September 2015, Arathorn |