Well, I don't think it has to be that complicated, a door-opening hammer works like this:
package HammerDoorOpening
{
function HammerImage::onHitObject(%this,%obj,%slot,%col,%pos,%normal)
{
if(%col.getDataBlock().category $= "JVS")
{
%col.doorOpen(0,0,"",%obj.client);
}
else
{
Parent::onHitObject(%this,%obj,%slot,%col,%pos,%normal);
}
}
};
activatePackage(HammerDoorOpening);
So it could be pretty simple to do...
package AlohamoraDoorOpening
{
function AlohamoraImage::onHitObject(%this,%obj,%slot,%col,%pos,%normal)
{
if(%col.getDataBlock().category $= "JVS")
{
%col.doorOpen(0,0,"",%obj.client);
}
else
{
Parent::onHitObject(%this,%obj,%slot,%col,%pos,%normal);
}
}
};
activatePackage(AlohamoraDoorOpening);
^^ Use this format for future door openers, I tested it and it works btw ^^