MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame^] | 1 | // MorgenGrauen MUDlib |
| 2 | // |
| 3 | // npc/put_and_get.c.c -- Geben und nehmen fuer NPCs |
| 4 | // |
| 5 | // $Id: put_and_get.c 6371 2007-07-17 22:46:50Z Zesstra $ |
| 6 | #pragma strong_types |
| 7 | #pragma save_types |
| 8 | #pragma range_check |
| 9 | #pragma no_clone |
| 10 | #pragma pedantic |
| 11 | |
| 12 | inherit "std/living/put_and_get"; |
| 13 | #include <moving.h> |
| 14 | #include <properties.h> |
| 15 | |
| 16 | void give_notify( object obj ) |
| 17 | { |
| 18 | mixed* msg; |
| 19 | if (pointerp(msg=QueryProp(P_REJECT))) { |
| 20 | switch(msg[0]) { |
| 21 | case REJECT_GIVE: |
| 22 | say(msg[1]); |
| 23 | give_obj( obj, this_player() ); |
| 24 | break; |
| 25 | case REJECT_LIGHT_MODIFIER: |
| 26 | if (obj->QueryProp(P_LIGHT_MODIFIER) || |
| 27 | obj->QueryProp(P_LIGHT)) break; |
| 28 | case REJECT_DROP: |
| 29 | say(msg[1]); |
| 30 | drop_obj( obj ); |
| 31 | break; |
| 32 | case REJECT_KEEP: |
| 33 | default: say(msg[1]); /* keep it */ |
| 34 | } |
| 35 | } |
| 36 | } |