SYNOPSIS
        int remove_action(int|string verb);
        int remove_action(int|string verb, object obj);

BESCHREIBUNG
        Wenn <verb> ein String ist: entferne das erste im Objekt <obj> durch
        add_action() definierte Kommando <verb>. Wenn <obj> nicht
        angegeben wird, wird standardmaessig this_player() verwendet.
        Gib 1 zurueck, wenn ein Kommando gefunden und entfernt wurde,
        sonst 0.

        Wenn <verb> ein Integer ist: wenn verb nicht 0 ist, entferne alle
        durch das Objekt <obj> definierten Kommandi. Wenn <obj> nicht
        angegeben wird, wird standardmaessig this_player() verwendet. Gibt
        die Anzahl der entfernten Kommandi zurueck.

SIEHE AUCH
     Verwandt:      add_action(E), init(E)
     Alternativ:	AddAction(L), AddCmd(L)

7.Aug 2007 Gloinson
