If Tool_special::effect() returns false, don't count it as an actual use of the tool.  For instance, if you cancel an application of bandages, it won't use up AP or a charge.