/* ....[@@@..[@@@..............[@.................. MUD++ is a written from ....[@..[@..[@..[@..[@..[@@@@@....[@......[@.... scratch multi-user swords and ....[@..[@..[@..[@..[@..[@..[@..[@@@@@..[@@@@@.. sorcery game written in C++. ....[@......[@..[@..[@..[@..[@....[@......[@.... This server is an ongoing ....[@......[@..[@@@@@..[@@@@@.................. development project. All ................................................ contributions are welcome. ....Copyright(C).1995.Melvin.Smith.............. Enjoy. ------------------------------------------------------------------------------ Melvin Smith (aka Fusion) msmith@hom.net MUD++ development mailing list mudpp-list@mailhost.net ------------------------------------------------------------------------------ trigobj.cc */ #include "trigs.h" #include "object.h" #include "char.h" bool otrig_lookatme1( Object * , Char * caller ) { caller->out("This is non-standart description handling.\n\r"); return true; } /* * Registration part */ trigfun_entry( otrigT_created ) obj_trigger_created[] = { {0, NULL} }; trigfun_entry( otrigT_update ) obj_trigger_update[] = { {0, NULL} }; trigfun_entry( otrigT_timer_out ) obj_trigger_timer_out[] = { {0, NULL} }; trigfun_entry( otrigT_picked ) obj_trigger_picked[] = { {0, NULL} }; trigfun_entry( otrigT_dropped ) obj_trigger_dropped[] = { {0, NULL} }; trigfun_entry( otrigT_given ) obj_trigger_given[] = { {0, NULL} }; trigfun_entry( otrigT_worn ) obj_trigger_worn[] = { {0, NULL} }; trigfun_entry( otrigT_removed ) obj_trigger_removed[] = { {0, NULL} }; trigfun_entry( otrigT_used ) obj_trigger_used[] = { {0, NULL} }; trigfun_entry( otrigT_looked_at ) obj_trigger_looked_at[] = { {"otrig_lookatme1", otrig_lookatme1}, {0, NULL} }; trigfun_entry( otrigT_item_put_into ) obj_trigger_item_put_into[] = { {0, NULL} }; trigfun_entry( otrigT_item_get_from ) obj_trigger_item_get_from[] = { {0, NULL} }; void * lookupOtrig( int type, const char * name ) { switch ( type ) { default: Cout << "Tried to lookup unknown obj trigger table." << endl; return NULL; case OTRIG_CREATED : returnLookupTrig( obj_trigger_created, name); case OTRIG_UPDATE: returnLookupTrig( obj_trigger_update, name); case OTRIG_TIMER_OUT: returnLookupTrig( obj_trigger_timer_out, name); case OTRIG_PICKED: returnLookupTrig( obj_trigger_picked, name); case OTRIG_DROPPED: returnLookupTrig( obj_trigger_dropped, name); case OTRIG_GIVEN: returnLookupTrig( obj_trigger_given, name); case OTRIG_WORN: returnLookupTrig( obj_trigger_worn, name); case OTRIG_REMOVED: returnLookupTrig( obj_trigger_removed, name); case OTRIG_USED: returnLookupTrig( obj_trigger_used, name); case OTRIG_LOOKED_AT: returnLookupTrig( obj_trigger_looked_at, name); case OTRIG_ITEM_PUT_INTO: returnLookupTrig( obj_trigger_item_put_into, name); case OTRIG_ITEM_GET_FROM: returnLookupTrig( obj_trigger_item_get_from, name); } } const char * lookupOtrigName( int type, void * fun) { switch ( type ) { default: Cout << "Tried to lookup unknown obj trigger table." << endl; return NULL; case OTRIG_CREATED : returnLookupTrigName( obj_trigger_created, fun); case OTRIG_UPDATE: returnLookupTrigName( obj_trigger_update, fun); case OTRIG_TIMER_OUT: returnLookupTrigName( obj_trigger_timer_out, fun); case OTRIG_PICKED: returnLookupTrigName( obj_trigger_picked, fun); case OTRIG_DROPPED: returnLookupTrigName( obj_trigger_dropped, fun); case OTRIG_GIVEN: returnLookupTrigName( obj_trigger_given, fun); case OTRIG_WORN: returnLookupTrigName( obj_trigger_worn, fun); case OTRIG_REMOVED: returnLookupTrigName( obj_trigger_removed, fun); case OTRIG_USED: returnLookupTrigName( obj_trigger_used, fun); case OTRIG_LOOKED_AT: returnLookupTrigName( obj_trigger_looked_at, fun); case OTRIG_ITEM_PUT_INTO: returnLookupTrigName( obj_trigger_item_put_into, fun); case OTRIG_ITEM_GET_FROM: returnLookupTrigName( obj_trigger_item_get_from, fun); } } const char * getOtrigName( int type, int index ) { switch ( type ) { default: Cout << "Tried to lookup unknown obj trigger table." << endl; return NULL; case OTRIG_CREATED : return obj_trigger_created[index].name; case OTRIG_UPDATE: return obj_trigger_update[index].name; case OTRIG_TIMER_OUT: return obj_trigger_timer_out[index].name; case OTRIG_PICKED: return obj_trigger_picked[index].name; case OTRIG_DROPPED: return obj_trigger_dropped[index].name; case OTRIG_GIVEN: return obj_trigger_given[index].name; case OTRIG_WORN: return obj_trigger_worn[index].name; case OTRIG_REMOVED: return obj_trigger_removed[index].name; case OTRIG_USED: return obj_trigger_used[index].name; case OTRIG_LOOKED_AT: return obj_trigger_looked_at[index].name; case OTRIG_ITEM_PUT_INTO: return obj_trigger_item_put_into[index].name; case OTRIG_ITEM_GET_FROM: return obj_trigger_item_get_from[index].name; } }