First, understand that I wrote the Wrap namespace, not Witchlord. It's not actually part of Angelscript, nor is it even an 'official' addon.
It also looks like you've modified the template, and, in fact, this is part of the problem.
It originally looked like this
template<typename R,typename P, typename C, R(C::*M)(), typename P1> R MethodThroughPointer1(P1 p1, P* thisp) { return ((**thisp).*M)(p1); }
And you got compiler errors from that. You should have, because (and I've just tested) the template is bugged. I overlooked something because I didn't really know what I was doing at the time. You also can't just make M a normal template parameter, because of how method pointers work. It doesn't work that way either.
However, this version should work!
template<typename R,typename P, typename C, typename P1, R(C::*M)(P1)> R MethodThroughPointer1(P1 p1, P* thisp) { return ((**thisp).*M)(p1); }
Notice that the order of parameters changed slightly. Also, remember that it is very important to specify the parameter types exactly. If the function takes a const reference, you must include that type information when instantiating the template. This is because it will determine the type of method pointer you must give it. If you specify them wrong, you'll get an error like
1>.\source\bind_entity.cpp(33) : error C2440: 'specialization' : cannot convert from 'bool (__thiscall Tile::c_Entity::* )(const std::string &)' to 'bool (__thiscall Tile::c_Entity::* const )(std::string &)'
If you look at the two function signatures in the error message, the first is the function you gave it, and the second is the signature you told it to expect. I know this behavior is different than the rest of the Wrap templates, they will let you use the un-adorned type as the template argument, and in fact will force you to write const in the definition angelscript sees, but I really can't guess the 'proper form' for arbitrary methods!
You might have encountered this same error, or an error from angelscript, if you left the &s off the typenames in your call to AddAssign the first time around.
The other MethodThroughPointer# functions should be changed accordingly.