#ifndef NATIVEVERB_H #define NATIVEVERB_H class Player; typedef bool (*verbhandler_t)(MudObject *, int argc, const char **argv); typedef bool (*playerverb_t)(Player *, int argc, const char **argv); //! a verb that maps to a function pointer class NativeVerb : public Verb { private : verbhandler_t fn; public : virtual bool invoke(MudObject *invoker, int argc, const char*argv[]); NativeVerb(const char *_id, int _minlen, int, verbhandler_t _fn, PFlag pflag, VFlag vflags=VFL_NONE); }; //! a verb that maps to a function pointer, and can only be run on a Player, not a MudObject. class PlayerVerb : public Verb { private : playerverb_t fn; public : virtual bool invoke(MudObject *invoker, int argc, const char*argv[]); PlayerVerb(const char *_id, int _minlen, int, playerverb_t _fn, PFlag pflag, VFlag vflags=VFL_NONE); }; #endif