MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame^] | 1 | NAME: |
| 2 | P_FISH "fish" |
| 3 | |
| 4 | DEFINIERT IN: |
| 5 | /sys/fishing.h |
| 6 | |
| 7 | BESCHREIBUNG: |
| 8 | Enthaelt Einstellungen zu allem, was mit Fischen zu tun hat. |
| 9 | Kann in Fischen, Raeumen und Koedern gesetzt werden. Die verfuegbaren |
| 10 | Optionen und Funktionsweisen sind in den nachfolgenden Abschnitten |
| 11 | aufgefuehrt. |
| 12 | |
| 13 | Fische: |
| 14 | ******* |
| 15 | Die Property legt zusaetzliche Eigenschaften fest: |
| 16 | |
| 17 | F_NOROTTEN |
| 18 | Fisch fault nicht; ggf. sollte hier auch gleich F_NOHEAL gesetzt |
| 19 | werden, weil sonst eine unverderbliche tragbare Tanke erzeugt wuerde. |
| 20 | F_NOTHUNGRY |
| 21 | Fisch frisst Koeder nur, wenn er auch wirklich nachher an der Angel |
| 22 | haengt. Ist er zu schwer fuer die Angel und reisst ab, bleibt der |
| 23 | Koeder erhalten. |
| 24 | F_REPLACE |
| 25 | Fisch soll sich beim Entfernen von der Angel verwandeln. Hierzu ist |
| 26 | die Funktion ReplaceFish() im Fisch zu definieren, die sich um die |
| 27 | Verwandlung kuemmert (z.B. Monster clonen und Fisch zerstoeren; ein |
| 28 | Beispiel findet sich in /d/ebene/fraggle/angel2/obj/saegefisch.c). |
| 29 | F_NOHEAL |
| 30 | Fisch heilt nicht bei Verzehr |
| 31 | |
| 32 | Raum (OPTIONAL): |
| 33 | **************** |
| 34 | Legt die Fischdichte des Gewaessers fest. Der eingestellte Wert wirkt |
| 35 | sich auf die Wartezeit aus, die der Angler verbringen muss, bis ein |
| 36 | Fisch anbeisst. Berechnung im Detail (alle Zahlenwerte in Sekunden): |
| 37 | - Basis-Wartezeit: delay = 80 |
| 38 | - Die Werte von P_FISH von Raum und Koeder werden addiert: |
| 39 | summe = raum->QueryProp(P_FISH) + koeder->QueryProp(P_FISH) |
| 40 | -> positive Werte (Bonus) werden auf 60 begrenzt und mit Zufalls- |
| 41 | komponente von <delay> abgezogen: |
| 42 | delay -= random(summe) |
| 43 | -> negative Werte (Malus) werden auf -300 begrenzt und mit Zufalls- |
| 44 | komponente auf <delay> aufgeschlagen: |
| 45 | delay += random(-summe) |
| 46 | |
| 47 | Zusaetzlich wird ein weiterer Malus auf die Wartezeit faellig, falls |
| 48 | P_WATER in der Angel und/oder P_WATER im Koeder nicht zum aktuellen |
| 49 | Gewaesser passen. Der Malus betraegt jeweils 60+random(60) Sekunden. |
| 50 | |
| 51 | Der Standardwert fuer P_FISH im Raum ist 0 und bedeutet 100 % Bestand. |
| 52 | Positive Werte erhoehen die Dichte, negative senken sie. Positive Werte |
| 53 | sollten nicht >100 sein. |
| 54 | |
| 55 | Sofern sich die Werte fuer P_FISH in den empfohlenen Grenzen bewegen, |
| 56 | koennen Abzuege fuer falsches Gewaesser ueblicherweise kaum durch |
| 57 | Boni auf Angel oder Koeder kompensiert werden. Ausserdem ist zu |
| 58 | bedenken, dass es keine Boni fuer richtige Gewaesserwahl gibt. |
| 59 | |
| 60 | |
| 61 | Koeder (OPTIONAL): |
| 62 | ****************** |
| 63 | Ein Koeder kann mittels P_FISH die Fischdichte modifizieren, um hierueber |
| 64 | ein besseres Beissen der Fische zu simulieren (reduziert die Wartezeit |
| 65 | beim Angeln, siehe oben unter "Raum"). Wenn also der Raum einen Wert |
| 66 | von -100 gesetzt hat und der Koeder +100, entspricht die Fischdichte im |
| 67 | Gewaesser wieder dem Normalwert. |
| 68 | |
| 69 | SIEHE AUCH: |
| 70 | |
| 71 | Properties: P_WATER |
| 72 | Methoden: GetAquarium(L) |
| 73 | |
| 74 | ------------------------------------------------------------------------------ |
| 75 | Zuletzt geaendert: 2014-Aug-21, Arathorn |