How I fake methods:
Code:
#define Boo_EventInit 0
#define Boo_EventFrame 1
typedef struct
{
long Event[2];
} Boo;
...
Foo->Event[Boo_EventInit] = engine_getscript( "Boo_Init");
Than, later in the code, just call:
engine_callscript4( Foo->Event[Boo_EventInit], 0, 0, 0, 0 );
You can even rename the ugly engine functions to SET and CALL.