Method code for $event_handler.deregister_event()

[Turn on line numbering]
arg event, update_on;
var value, event, src, status;

(> .perms(sender()) <);
if (events.contains(update_on) && events[update_on].contains(event)) {
    // clean it up first.. (ignore status)
    [status, src] = events[update_on][event];
    switch (src) {
        case 'location:
            (| loc.unhook_from_event(event) |);
        case 'this:
            (| .unhook_from_event(event) |);
        default:
            (| src.hook_into_event(event) |);
    }

    // now cleanup 'events'
    value = events[update_on].del(event);
    if (value)
        events = events.add(update_on, value);
    else
        events = events.del(update_on);
    if (!events)
        clear_var('events);
}

["// Created 16-Dec-1996 as a part of ColdCore, see: @help Credit"]

the Cold Dark