notstrom | 0d5c125 | 2019-08-01 15:50:00 +0200 | [diff] [blame] | 1 | inherit "/std/room"; |
| 2 | |
| 3 | #include __PATH__(1)"defs.h" |
| 4 | |
| 5 | private void greeting(); |
| 6 | private string* greeted = ({}); |
| 7 | |
| 8 | |
| 9 | protected void create() { |
| 10 | ::create(); |
| 11 | |
| 12 | SetProp(P_INT_SHORT, "Eine schummrige Huette"); |
| 13 | SetProp(P_INT_LONG, BSLF( |
| 14 | "Du kannst hier im Raum Krempel hinlegen, der wird bei Raumreset in die " |
| 15 | "Kiste verschoben. Das kannst Du mit\n" |
| 16 | " xcall $h->reset()\n" |
| 17 | "auch provozieren.")); |
| 18 | |
| 19 | SetProp(P_LIGHT, 1); |
| 20 | SetProp(P_INDOORS, 1); |
| 21 | SetProp(P_LIGHT_TYPE, LT_GLOWING); |
| 22 | |
| 23 | AddItem(__PATH__(1)"obj/kiste", REFRESH_REMOVE); |
| 24 | } |
| 25 | |
| 26 | void reset() { |
| 27 | ::reset(); |
| 28 | |
| 29 | object kiste = present_clone(__PATH__(1)"obj/kiste"); |
| 30 | if (!objectp(kiste)) return; // sollte nicht passieren |
| 31 | |
notstrom | 2323546 | 2019-08-01 15:51:11 +0200 | [diff] [blame^] | 32 | object *zeugs = filter(all_inventory(), function int(object o) { |
| 33 | return (!living(o)); }); |
notstrom | 0d5c125 | 2019-08-01 15:50:00 +0200 | [diff] [blame] | 34 | if (arrayp(zeugs) && sizeof(zeugs)) { |
| 35 | tell_room(TO, BSLF( |
| 36 | "Der Raum gurgelt, die Kiste ruelpst.")); |
| 37 | zeugs->move(kiste, M_PUT); |
| 38 | } else { |
| 39 | tell_room(TO, BSLF( |
| 40 | "Die Kiste geht diesmal leer aus.")); |
| 41 | } |
| 42 | } |