MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame^] | 1 | #pragma strong_types,save_types |
| 2 | |
| 3 | #include <defines.h> |
| 4 | #include <moving.h> |
| 5 | #include <properties.h> |
| 6 | #include <language.h> |
| 7 | |
| 8 | // |
| 9 | // Da der Shadow sich nicht im Player befindet, wird ein |
| 10 | // Zusatzobjekt benoetigt. |
| 11 | // 7.10.97 - Die Hook sollte in den Verzeichnissen der Benniequest |
| 12 | // zu finden sein. - Rumata |
| 13 | |
| 14 | #define HOOK "d/wald/kassandra/bennie/obj/pony_hook" |
| 15 | |
| 16 | static object pl; |
| 17 | |
| 18 | void create() |
| 19 | { |
| 20 | if( IS_BLUE(ME) ) return; |
| 21 | shadow( PL, 1); |
| 22 | pl=PL; |
| 23 | //tell_object(this_player(),"Du besteigst das Pony samt Schatten.\n"); |
| 24 | clone_object( HOOK ); // Steuerung des shadows ueber die hook |
| 25 | } |
| 26 | |
| 27 | string _query_title() |
| 28 | { |
| 29 | if( pl->QueryProp(P_GENDER) == FEMALE ) |
| 30 | return "die Ponyreiterin"; |
| 31 | return "der Ponyreiter"; |
| 32 | } |
| 33 | |
| 34 | string _query_msgin() { return "reitet herein"; } |
| 35 | string _query_msgout() { return "reitet"; } |
| 36 | |
| 37 | varargs int move(mixed dest, int method, string dir, string textout,string textin) |
| 38 | { |
| 39 | if( !(method & M_NOCHECK) && dest->QueryProp(P_INDOORS) ) |
| 40 | { |
| 41 | write( "Das Pony weigert sich, dorthin zu traben.\n" ); |
| 42 | return 1; |
| 43 | } |
| 44 | return pl->move( dest, method, dir, textout, textin ); |
| 45 | } |
| 46 | |
| 47 | int _inventory(string str) |
| 48 | { |
| 49 | if( !environment() || set_light(0)>0 ) |
| 50 | write( "Du sitzt auf einem Pony.\n" ); |
| 51 | return pl->_inventory(str); |
| 52 | } |
| 53 | |
| 54 | void absteigen() { |
| 55 | unshadow(); |
| 56 | destruct(ME); |
| 57 | } |
| 58 | |
| 59 | int QueryReiter() { return 1; } |