mud++0.26/etc/
mud++0.26/etc/guilds/
mud++0.26/log/
mud++0.26/mudC/
mud++0.26/player/
mud++0.26/src/unix/
/*
....[@@@..[@@@..............[@.................. 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;
	}

}