blob: 44e361dc3d279b457f2c53c402576f824f8b07b0 [file] [log] [blame]
Zesstra18626972017-01-31 10:38:27 +01001P_REAL_RACE
2===========
3
4NAME
5----
Zesstra18626972017-01-31 10:38:27 +01006
7 P_REAL_RACE "real_race"
8
9DEFINIERT IN
10------------
Zesstra18626972017-01-31 10:38:27 +010011
12 /sys/living/description.h
13
14BESCHREIBUNG
15------------
Zesstra3d5121f2018-10-15 20:06:40 +020016
Zesstrabf381122018-10-15 20:08:37 +020017 Diese Property enthaelt die Rasse des Livings und sollte wie P_RACE aus
18 traditionellen Gruenden gross geschrieben werden.
19
20 Diese Property darf nicht durch Shadows ueberschrieben werden.
Zesstra18626972017-01-31 10:38:27 +010021
22 Wirklich interessant ist sie, wenn ein Spieler sich tarnt. Dort kann
23 man mit dieser Property trotz Tarnung feststellen, welche Rasse der
24 Spieler hat.
25
26 Bei NPC enthaelt sie den gleichen Wert wie P_RACE. Wenn P_REAL_RACE
27 allerdings gesetzt wird, kann man damit einen getarnten NPC simu-
28 lieren, da dann P_RACE und P_REAL_RACE voneinander abweichen.
29
Zesstra18626972017-01-31 10:38:27 +010030
31BEISPIEL
32--------
Zesstra18626972017-01-31 10:38:27 +010033
Zesstra3d5121f2018-10-15 20:06:40 +020034.. code-block:: pike
Zesstra18626972017-01-31 10:38:27 +010035
Zesstra3d5121f2018-10-15 20:06:40 +020036 // Ein Zwerg mag Zwergenbrot, fuer Elfen ist es giftig. Selbst wenn der
37 // Elf sich als Zwerg tarnt, wird ihm durch lembas sicher uebel werden:
38 int futter(string arg) {
39 notify_fail("Was willst Du essen?\n");
40 if(!arg || !id(arg)) return 0;
Zesstra18626972017-01-31 10:38:27 +010041
Zesstra3d5121f2018-10-15 20:06:40 +020042 notify_fail("Du kannst nichts mehr essen.\n");
43 if(!this_player()->eat_food(55)) return 0;
Zesstra18626972017-01-31 10:38:27 +010044
Zesstra3d5121f2018-10-15 20:06:40 +020045 write("Du isst ein Stueck Zwegenbrot. Du versuchst es zumindest!\n");
46 say(sprintf("%s beisst in ein Stueck Zwergenbrot. Zahnschmerz!!!\n",
47 this_player()->Name()));
Zesstra18626972017-01-31 10:38:27 +010048
Zesstra3d5121f2018-10-15 20:06:40 +020049 switch( this_player()->QueryProp(P_REAL_RACE) )
50 {
51 case "Zwerg":
52 if ((this_player()->QueryProp(P_RACE))!="Zwerg")
53 write("Zur Tarnung spuckst Du etwas von dem Brot aus!\n");
54 this_player()->buffer_hp(100,10);
55 this_player()->buffer_sp(100,10);
56 break;
Zesstra18626972017-01-31 10:38:27 +010057
Zesstra3d5121f2018-10-15 20:06:40 +020058 case "Elf":
59 write("Das Zwergenbrot brennt wie Feuer auf Deiner Zunge!");
60 // Getarnt?
61 if ((this_player()->QueryProp(P_RACE))!="Elf")
62 write(" Deine Tarnung nutzt Dir da wenig.\n"
63 else
64 write("\n");
65 this_player()->restore_spell_points(-100);
66 this_player()->do_damage(100,this_object());
67 break;
Zesstra18626972017-01-31 10:38:27 +010068
Zesstra3d5121f2018-10-15 20:06:40 +020069 default:
70 write("Du bekommst nur wenig davon herunter..\n");
71 this_player()->buffer_hp(10,1);
72 this_player()->buffer_sp(10,2);
73 break;
74 }
75 remove();
76 return 1;
77 }
Zesstra18626972017-01-31 10:38:27 +010078
79
80
81SIEHE AUCH
82----------
Zesstra3d5121f2018-10-15 20:06:40 +020083
84 :doc:`P_RACE`
85 /std/living/description.c, /sys/living/description.h,
Zesstra18626972017-01-31 10:38:27 +010086
87
Zesstra3d5121f2018-10-15 20:06:40 +020088Last modified: 15.10.2018 Zesstra